<abbr id="kc8ii"><menu id="kc8ii"></menu></abbr>
  • <input id="kc8ii"><tbody id="kc8ii"></tbody></input><table id="kc8ii"><source id="kc8ii"></source></table><kbd id="kc8ii"></kbd>
    <center id="kc8ii"><table id="kc8ii"></table></center>
  • <input id="kc8ii"></input>
    <abbr id="kc8ii"></abbr>
  • <abbr id="kc8ii"></abbr>
  • <center id="kc8ii"><table id="kc8ii"></table></center>
    <abbr id="kc8ii"></abbr>
    你的位置:首頁 > 互連技術 > 正文

    使用引腳復用減少8位單片機的引腳使用

    發布時間:2023-09-26 責任編輯:lina

    【導讀】本文將介紹兩個利用通用輸入/輸出(GPIO)引腳復用來減少項目引腳使用的示例。第一個示例使用了“查理復用算法”技術,第二個示例使用了定時外設和中斷來快速切換引腳輸入狀態和輸出狀態,以在驅動 LED 的同時讀取按鍵。


    本文將介紹兩個利用通用輸入/輸出(GPIO)引腳復用來減少項目引腳使用的示例。第一個示例使用了“查理復用算法”技術,第二個示例使用了定時外設和中斷來快速切換引腳輸入狀態和輸出狀態,以在驅動 LED 的同時讀取按鍵。

    PIC?和 AVR?單片機上的引腳復用

    通用輸入/輸出(GPIO)引腳是單片機設計時的重要考量之一。您需要足夠的引腳將單片機連接到設計中的所有其他組件;但是,超過所需的引腳可能會導致設計成本增加,并且占用電路板上更多空間。此外,減少設計中的所需引腳數量可能就可以選擇另一種不同的封裝。如果有一種方法可以從較小的封裝中擠出更多的 I/O引腳就好了!幸運的是,我們確實有方法可以在這種情況下釋放引腳。

    下面是 Microchip 應用團隊使用 AVR DD 系列單片機創建的兩個示例。首先,我們將探討通過一種稱為“查理復用算法”的技術復用 GPIO 引腳來控制 LED。接下來,我們將看一下如何使用單個引腳同時運行獨立的按鍵和 LED。

    查理復用算法的核心思想是利用單片機引腳可以處于的三種狀態:數字高電平、數字低電平和高阻抗數字輸入狀態(也稱為高阻態或三態)。通過使用這三種狀態而不僅僅是典型的高電平和低電平,用戶可以使用 n 個引腳驅動最多(n2-n)個獨立的LED。在此示例中,三個指定的引腳可以驅動六個獨立的 LED。

    那么查理復用算法的工作原理到底是什么呢?為了理解這一點,我們需要看一個示例。


    使用引腳復用減少8位單片機的引腳使用


    這里我們用三個 I/O 引腳驅動六個 LED。

    如果我們只想導通 LED1,則需要將 PA2 設為高電平,PA3 設為低電平,PA4設為高阻態。電流將流過 LED1 并使其導通,同時使所有其他 LED 保持關斷狀態。


    使用引腳復用減少8位單片機的引腳使用


    這里的三態十分重要,因為如果 PA4 為“低電平”,它也會意外導通 LED5。如下面所示:


    使用引腳復用減少8位單片機的引腳使用


    高阻抗邏輯狀態確保電流只流過 LED1。利用 I/O 引腳狀態的相應組合(要獲得預期行為,用戶必須將一個引腳設為高電平、一個引腳設為低電平,其余引腳設為高阻抗),可以為電路中的任何 LED 重復此過程。

    雖然在任意給定時刻這種方法只會點亮一個 LED,但是快速改變 I/O 狀態可創造出點亮多個 LED 的錯覺。(LED 調光的工作原理是通過在單個 LED 上使用脈沖寬度調制,原理與此非常相似)。可以在下面看到:(點擊圖片查看動態效果)


    使用引腳復用減少8位單片機的引腳使用


    第二個示例涉及到在單個引腳上改動一個 LED 和一個按鍵。

    從有利的角度看,可利用中斷和定時器來實現此目的。單片機引腳大部分時間都在驅動 LED。然而,一個定時外設會定期在單片機內部觸發中斷,將引腳從輸出快速切換為輸入,然后檢查按鍵的狀態。雖然這會暫時停止驅動 LED,但如果這個過程可以做得足夠快,那么在檢查按鈕狀態的時候,對 LED 造成的影響幾乎不可見。

    我們在下面的示例中使用了這種方法。單片機不停地驅動一個閃爍的 LED,同時定期檢查按鍵,如果按鍵被按下,就會點亮一個單獨的 LED。(點擊圖片查看動態效果)


    使用引腳復用減少8位單片機的引腳使用


    盡管本文章只涵蓋了這兩種技術的基礎知識,但我們的 Microchip 應用團隊發布的相應 GitHub 頁面包含了圖表、示例代碼和更詳細的說明。請訪問該頁面或我們的 AVR DD 產品系列頁面來了解更多信息。

    (作者:Nate Thompson 和 Alexandru Sabiuta)


    免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問題,請聯系小編進行處理。


    推薦閱讀:    

    用基于IP的通用協議實現智能家居物聯網通信大一統

    LVDS 接收器故障安全偏置網絡

    利用經過認證的 LoRaWAN 模塊加速遠距離連接的開發

    揭秘800G OSFP VR8模塊技術與多領域應用                                                                                                                                                               

    無源器件,電容并不總是容性的!


    特別推薦
    技術文章更多>>
    技術白皮書下載更多>>
    熱門搜索
    ?

    關閉

    ?

    關閉

    人妻无码中文字幕免费视频蜜桃| 4hu亚洲人成人无码网www电影首页| 久久国产精品无码HDAV| 亚洲欧美精品一中文字幕| 成人午夜精品无码区久久| 无码人妻精品中文字幕免费| 88久久精品无码一区二区毛片| 久久久99精品成人片中文字幕| 亚洲AV无码AV男人的天堂不卡| 色欲A∨无码蜜臀AV免费播| 中文字幕亚洲一区二区va在线| 一二三四社区在线中文视频| 国产在线观看无码免费视频| 欧美中文字幕无线码视频| 亚洲精品无码永久中文字幕| 最近免费中文字幕中文高清| 色综合天天综合中文网| 中文无码久久精品| 熟妇人妻不卡中文字幕| 亚洲中文字幕无码一去台湾| 久久精品?ⅴ无码中文字幕| 精品日韩亚洲AV无码| 无码国产伦一区二区三区视频| 亚洲国产精品成人精品无码区| 国产成人无码一区二区在线观看| 日韩人妻无码一区二区三区久久99| 日韩精品无码Av一区二区| 国产品无码一区二区三区在线蜜桃| 97无码人妻福利免费公开在线视频| 高清无码午夜福利在线观看| 久久亚洲精品无码aⅴ大香| 久久亚洲精品无码VA大香大香| 国产AV无码专区亚洲AV漫画 | 18禁无遮拦无码国产在线播放 | 91精品久久久久久无码| 国产aⅴ无码专区亚洲av| av区无码字幕中文色| 亚洲AV中文无码乱人伦在线视色| 国产精品中文久久久久久久| 色婷婷综合久久久久中文一区二区 | 少妇人妻偷人精品无码视频 |