使用引腳複用減少8位單片機的引腳使用
發布時間:2023-09-26 責任編輯:lina
【導讀】本文將介紹兩個利用通用輸入/輸出(GPIO)引腳複用來減少項目引腳使用的示例。第一個示例使用了“查理複用算法”技術,第二個示例使用了定時外設和中斷來快速切換引腳輸入狀態和輸出狀態,以在驅動 LED 的同時讀取按鍵。
本文將介紹兩個利用通用輸入/輸出(GPIO)引腳複用來減少項目引腳使用的示例。第一個示例使用了“查理複用算法”技術,第二個示例使用了定時外設和中斷來快速切換引腳輸入狀態和輸出狀態,以在驅動 LED 的同時讀取按鍵。
PIC®和 AVR®單片機上的引腳複用
通用輸入/輸出(GPIO)引腳是單片機設計時的重要考量之一。您需要足夠的引腳將單片機連接到設計中的所有其他組件;danshi,chaoguosuoxudeyinjiaokenenghuidaozhishejichengbenzengjia,bingqiezhanyongdianlubanshanggengduokongjian。ciwai,jianshaoshejizhongdesuoxuyinjiaoshuliangkenengjiukeyixuanzelingyizhongbutongdefengzhuang。ruguoyouyizhongfangfakeyicongjiaoxiaodefengzhuangzhongjichugengduode I/O引腳就好了!幸運的是,我們確實有方法可以在這種情況下釋放引腳。
下麵是 Microchip 應用團隊使用 AVR DD 係列單片機創建的兩個示例。首先,我們將探討通過一種稱為“查理複用算法”的技術複用 GPIO 引腳來控製 LED。接下來,我們將看一下如何使用單個引腳同時運行獨立的按鍵和 LED。
查理複用算法的核心思想是利用單片機引腳可以處於的三種狀態:數字高電平、數字低電平和高阻抗數字輸入狀態(也稱為高阻態或三態)。通過使用這三種狀態而不僅僅是典型的高電平和低電平,用戶可以使用 n 個引腳驅動最多(n2-n)個獨立的LED。在此示例中,三個指定的引腳可以驅動六個獨立的 LED。
那麼查理複用算法的工作原理到底是什麼呢?為了理解這一點,我們需要看一個示例。
這裏我們用三個 I/O 引腳驅動六個 LED。
如果我們隻想導通 LED1,則需要將 PA2 設為高電平,PA3 設為低電平,PA4設為高阻態。電流將流過 LED1 並使其導通,同時使所有其他 LED 保持關斷狀態。
這裏的三態十分重要,因為如果 PA4 為“低電平”,它也會意外導通 LED5。如下麵所示:
高阻抗邏輯狀態確保電流隻流過 LED1。利用 I/O 引腳狀態的相應組合(要獲得預期行為,用戶必須將一個引腳設為高電平、一個引腳設為低電平,其餘引腳設為高阻抗),可以為電路中的任何 LED 重複此過程。
雖然在任意給定時刻這種方法隻會點亮一個 LED,但是快速改變 I/O 狀態可創造出點亮多個 LED 的錯覺。(LED 調光的工作原理是通過在單個 LED 上使用脈衝寬度調製,原理與此非常相似)。可以在下麵看到:(點擊圖片查看動態效果)
第二個示例涉及到在單個引腳上改動一個 LED 和一個按鍵。
從有利的角度看,可利用中斷和定時器來實現此目的。單片機引腳大部分時間都在驅動 LED。然而,一個定時外設會定期在單片機內部觸發中斷,將引腳從輸出快速切換為輸入,然後檢查按鍵的狀態。雖然這會暫時停止驅動 LED,但如果這個過程可以做得足夠快,那麼在檢查按鈕狀態的時候,對 LED 造成的影響幾乎不可見。
我們在下麵的示例中使用了這種方法。單片機不停地驅動一個閃爍的 LED,同時定期檢查按鍵,如果按鍵被按下,就會點亮一個單獨的 LED。(點擊圖片查看動態效果)
盡管本文章隻涵蓋了這兩種技術的基礎知識,但我們的 Microchip 應用團隊發布的相應 GitHub 頁麵包含了圖表、示例代碼和更詳細的說明。請訪問該頁麵或我們的 AVR DD 產品係列頁麵來了解更多信息。
(作者:Nate Thompson 和 Alexandru Sabiuta)
免責聲明:本文為轉載文章,轉載此文目的在於傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯係小編進行處理。
推薦閱讀:
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
- 1200餘家企業齊聚深圳,CITE2026打造電子信息產業創新盛宴
- 掌握 Gemini 3.1 Pro 參數調優的藝術
- 築牢安全防線:電池擠壓試驗機如何為新能源產業護航?
- Grok 4.1 API 實戰:構建 X 平台實時輿情監控 Agent
- 電源芯片國產化新選擇:MUN3CAD03-SF助力物聯網終端“芯”升級
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall




