<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 元件/連接器 > 設計應用 > 驅動(dòng)電子骰子至少需要幾個(gè)I/O口?

驅動(dòng)電子骰子至少需要幾個(gè)I/O口?

作者: 時(shí)間:2017-10-21 來(lái)源:網(wǎng)絡(luò ) 收藏

  最近一時(shí)沖動(dòng),買(mǎi)了一個(gè)成本非常低的套件。組裝的過(guò)程還是挺有古典趣味的。這個(gè)電路的設計風(fēng)格還停留在70年代:一個(gè)CD4017,一個(gè)NE555,一對晶體管。當然,我開(kāi)始思考,怎樣用最高效的方式來(lái)實(shí)現呢?當然這意味著(zhù)需要用到微控制器;而且還要達到我們資源利用盡可能低的目標。那么用一個(gè)帶有3個(gè)I/O口的ATtiny10能夠實(shí)現嗎?

本文引用地址:http://dyxdggzs.com/article/201710/366881.htm

  的圖案包含7個(gè)LED,但是,你可能很快就發(fā)現其中六個(gè)LED都是成對亮滅的,所以我們就具有3對LED外加一個(gè)額外的LED需要控制。這需要四個(gè)I/O口——但還是太多了!

  要減少需要的I/O口,一個(gè)很顯然的使用方法是“技術(shù)(Charliplexing)”,你能在網(wǎng)上找到很多關(guān)于技術(shù)的電路圖。簡(jiǎn)單來(lái)說(shuō),技術(shù)允許使用n個(gè)I/O口控制n²-n個(gè)LED。所以當我們采用查理復用技術(shù)時(shí),我們就需要三個(gè)I/O口就夠了。但對于我們使用的ATtiny10來(lái)說(shuō)還是太多了,因為我們還需要一個(gè)額外的I/O口來(lái)“搖骰子”。

  查理復用技術(shù)使用了微控制器I/O引腳的三態(tài)特性。同時(shí)激活的只有兩個(gè)I/O口——其中一個(gè)為高電平,另一個(gè)為低電平——而其他引腳就是高阻抗狀態(tài)。只有以正確的極性和激活的引腳直接相連的LED才能發(fā)光。而不與引腳直接相連的路徑上的LED——比如連接到激活引腳的的是兩個(gè)串聯(lián)的LED——那么這些LED就不會(huì )發(fā)光,這是因為二極管的非線(xiàn)性電流-電壓特性導致的。

  現在,你可能會(huì )疑惑當只有一個(gè)I/O口(而不是兩個(gè))激活時(shí)會(huì )發(fā)生什么了?在查理復用技術(shù)的方案中什么也不會(huì )發(fā)生,但我們可以利用這一點(diǎn)。

  以上的電路展示了怎樣以不同的方案連接LED。除了兩個(gè)I/O引腳之間的反平行對之外,作為查理復用技術(shù)的使用習慣,LED還需要連接到VCC(5V)和GND。串聯(lián)的四個(gè)LED(LED1-4與LED5-8)的正向電壓之和超過(guò)5V,所以當PB0和PB2處于高阻抗(Z)狀態(tài)時(shí),這些燈都不會(huì )發(fā)光。

  當PB0和PB2中有一個(gè)引腳處于高電平或低電平狀態(tài),而另一個(gè)引腳為高阻抗狀態(tài)時(shí),那就會(huì )有一對LED會(huì )發(fā)光。而當PB0為高電平而PB2為低電平或恰好相反時(shí),LED9或LED10就將和一對LED并聯(lián)。這時(shí)大部分的電流會(huì )流過(guò)單個(gè)LED,所以這時(shí)只有LED9或LED10會(huì )發(fā)光。

  上表是可能的編碼??吹搅藛???jì)蓚€(gè)引腳可以控制六個(gè)部分的LED!這正是我們所需要的,任務(wù)完成了。

  但需要說(shuō)明一點(diǎn):?jiǎn)蝹€(gè)LED的亮度并不同于串聯(lián)的兩個(gè)LED。這可能需要在查理復用技術(shù)中進(jìn)行校正。但是事實(shí)上由于人眼對光亮度的差異并沒(méi)有特別敏感,兩者的差異只能說(shuō)是勉強可見(jiàn)。

  簡(jiǎn)單測試一下(LED并未像骰子一樣排列)??雌饋?lái)我們新的多復用技術(shù)能很好地工作。注意一點(diǎn),該電路需要由AVR I/O接口的內部阻抗。這確實(shí)有效,但是在“真正”的設計中應當避免。

  我們可以講這種新的方案成為“查理復用+(Charlieplex Plus)”。分析表明,依靠這樣的技術(shù),一個(gè)I/O口可以比普通的查理復用技術(shù)多控制兩個(gè)LED。也就是說(shuō)n個(gè)I/O口所能控制的LED數量就為2n+n²-n = n²+n。具體情況如上表所示。

  你應該在你的設計中采用這種思路嗎?恐怕不應該,因為這種做法的缺陷和限制甚至比現有的查理復用還多。但是這卻很有趣!

  所以回到最初,控制骰子最少需要多少個(gè)I/O口呢?

  答案是2.



關(guān)鍵詞: 骰子 電子 DIY 查理復用

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>