哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在微控制器上用相對(duì)較少的引腳驅(qū)動(dòng)多個(gè)LED

454398 ? 來源:wv ? 2019-09-03 11:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

第1步:兩個(gè)LED

如何在微控制器上用相對(duì)較少的引腳驅(qū)動(dòng)多個(gè)LED

charlieplexing背后的基本思想最好只用兩個(gè)引腳和兩個(gè)LED來說明。隨意使用此SIMULATION - 切換開關(guān),看看會(huì)發(fā)生什么(模擬中使用的開關(guān)用于將中間引腳連接到+或 - )。

如果你已經(jīng)完成了模擬游戲,或者你只是想要一種不那么互動(dòng)的學(xué)習(xí)方式,請(qǐng)繼續(xù)閱讀。

與標(biāo)準(zhǔn)燈泡不同,LED僅在一個(gè)方向上傳導(dǎo)電流。這意味著當(dāng)您“正確”連接時(shí)LED將發(fā)光,并在連接“錯(cuò)誤”時(shí)充當(dāng)開路。如果以不同方向并聯(lián)連接兩個(gè)LED,則無論極性如何,其中一個(gè)LED都會(huì)發(fā)光。要選擇哪個(gè)LED發(fā)光,您可以調(diào)制哪個(gè)引腳為+和哪個(gè) - (圖像2 )。如果您將booth設(shè)置為+或 - ,則當(dāng)前將無法流動(dòng),關(guān)閉兩個(gè)LED(圖像3 )。

您可能已經(jīng)注意到我只使用了一個(gè)電阻用于兩個(gè)LED。這可以做到,因?yàn)闊o論極性如何,電都“看到”只有一個(gè)LED。要計(jì)算電阻值,請(qǐng)使用標(biāo)準(zhǔn)公式或使用此在線計(jì)算器。請(qǐng)記住,Arduino的最大電流輸出為40mA(推薦20mA)。

步驟2:三個(gè)LED

用兩個(gè)引腳進(jìn)行查詢是沒用的。它消耗兩個(gè)引腳來驅(qū)動(dòng)兩個(gè)LED,并取消了同時(shí)打開它們的選項(xiàng)。

幸運(yùn)的是,當(dāng)你添加第三個(gè)引腳時(shí),它會(huì)好得多。使用三個(gè)引腳進(jìn)行charlieplexing可以控制6個(gè)LED。如果您打算使用SIMULATION進(jìn)行此設(shè)置,請(qǐng)?jiān)陂喿x之前進(jìn)行。

您已經(jīng)看到,只要您翻轉(zhuǎn)一個(gè)開關(guān),兩個(gè)LED就會(huì)亮起。無論你做什么,都沒有兩個(gè)LED點(diǎn)亮。這是因?yàn)?和 - 端子之間總是有兩個(gè)LED(圖像2 )。

此模擬中顯示了此問題的解決方案。您將看到唯一的區(qū)別是我添加了三個(gè)斷開終端的交換機(jī)。我再次建議您在閱讀之前先完成模擬。

新增加的開關(guān)的唯一目的是防止不需要的電流流動(dòng)?,F(xiàn)在你可以只打開你想要的LED,但突然間我們看到鬼影。在運(yùn)行于5V的arduino上,當(dāng)使用紅色或綠色LED時(shí),重影很明顯。這是因?yàn)檫@兩者上的電壓降小于2.5V,因此一些小電流流過+和 - (圖像3 )之間的兩個(gè)LED。如果你要在一個(gè)運(yùn)行在3.3伏特上的微控制器上實(shí)現(xiàn)charlieplexing,就不會(huì)出現(xiàn)重影。

現(xiàn)在關(guān)于電阻器的說法:Charlieplexing通常使用與用于驅(qū)動(dòng)LED的引腳一樣多的電阻器來進(jìn)行。每個(gè)電阻的值是以“經(jīng)典”方式驅(qū)動(dòng)單個(gè)LED所需電阻的一半。

最后解決房間里的大象:我在原理圖中使用了三個(gè)符號(hào):+, - 和x。他們?nèi)绾畏g成arduino? +和 - 很簡(jiǎn)單。將Arduino的引腳配置為OUTPUT并寫入HIGH(+)或LOW( - )。斷開連接(x)狀態(tài)有點(diǎn)不太直觀。如果將引腳配置為INPUT,它將進(jìn)入所謂的高阻抗模式(高阻態(tài)),這意味著電流不能流入或流出該引腳,有點(diǎn)像斷開的引腳。更多關(guān)于我談?wù)揂rduino實(shí)現(xiàn)的步驟。

步驟3:N個(gè)LED

直到現(xiàn)在可以很容易地繪制原理圖而不需要任何交叉線。對(duì)于任何超過三個(gè)引腳,這是不可能的。

您可以嘗試弄清楚上圖中的電路如何工作,或者您可以嘗試此模擬。請(qǐng)注意,我省略了開關(guān)和Arduino。

您將看到原理圖中的LED(圖像1 )排列在NxN網(wǎng)格中。省略了灰色的LED,因?yàn)樗鼈儗⑴c陰極和陽極連接到相同的引腳。第一行中所有LED的陽極(+)連接到pin1,因此第一行中的所有陰極都連接。其他二極管也是如此。

如果你想知道你可以用這種LED安排做什么,不要害怕。這只是一個(gè)原理圖,僅用于簡(jiǎn)單布線。 PCB布局可能非常不同。在這個(gè)模擬中,我采用了與之前完全相同的項(xiàng)目并重新排列LED以形成一個(gè)圓圈(我還更改了代碼,以便LED復(fù)制電位計(jì)的旋轉(zhuǎn))。查詢復(fù)用的另一個(gè)常見用途是LED立方體 - 6個(gè)引腳允許您驅(qū)動(dòng)30個(gè)LED,足以容納3x3x3立方體,而9個(gè)引腳足以容納4x4x4版本!

步驟4:代碼

在向您展示如何為charlieplexing應(yīng)用程序制作電路之前,我想談?wù)勥@樣的Arduino代碼項(xiàng)目。我將通過4個(gè)引腳進(jìn)行示例,與上一步中的SIMULATION中使用的代碼相同。隨意玩它,看看會(huì)發(fā)生什么。

如前所述,所有引腳都需要設(shè)置為三種可能狀態(tài)之一:HIGH(+),LOW( - )和HIGH-Z(未連接)。前兩個(gè)很容易。將引腳配置為OUTPUT并使用digitalWrite(引腳,狀態(tài))在HIGH和LOW之間進(jìn)行選擇。 HIGH-Z(高阻抗)稍微不那么直觀,但不再困難。無論何時(shí)將引腳配置為輸入,它都會(huì)進(jìn)入HIGH-Z模式,這意味著引腳無法吸收或提供任何電流。

最好通過定義哪個(gè)Arduino引腳來啟動(dòng)代碼對(duì)應(yīng)哪個(gè)charlieplexing pin。默認(rèn)情況下,所有引腳都配置為數(shù)字輸入引腳,這意味著它們處于HIGH-Z模式。

接下來是配置引腳以打開所選LED的功能 - charlieWrite(led)。它首先將所有引腳設(shè)置為HIGH-Z。然后是SWITCH語句,將正確的引腳配置為正確的電平輸出。將引腳配置為數(shù)字輸出時(shí),默認(rèn)設(shè)置為L(zhǎng)OW,這就是為什么我只將電平值寫入要設(shè)置為HIGH的引腳。

最后要做的是填充SETUP()和LOOP()函數(shù)。如果您不需要任何其他功能,SETUP()可以保留為空,而LOOP()的內(nèi)容取決于所需的操作模式。

在第一個(gè)DEMO中,代碼設(shè)置為通過所有帶有for語句的LED并按順序打開它們。

第二個(gè)DEMO更先進(jìn)一點(diǎn)。它經(jīng)歷了所有LED和偽造效應(yīng),其中任意數(shù)量的LED同時(shí)打開。 LOOP()首先測(cè)量電位計(jì)值。通過FOR循環(huán),將該測(cè)量值與對(duì)應(yīng)于每個(gè)LED的閾值進(jìn)行比較。如果值高于閾值,則LED亮起,否則忽略。無論發(fā)生什么,都會(huì)調(diào)用相同的delay()。這可確保LED亮度不會(huì)隨著點(diǎn)亮的LED數(shù)量而變化。請(qǐng)注意,比較“while(micros() - time 《1000){}”將是一個(gè)更好的方法,但我不會(huì)折磨模擬器會(huì)好得多。附加的Arduino代碼寫得正確。

步驟5:EAGLE CAD

制作電路。最后。

您可以始終遵循步驟3中的原理圖,并將所有LED和電線放在首選電路CAD程序的原理圖上。這就是我做的方式,直到我想制作一個(gè)240 LED顯示屏(16針)。要放置240個(gè)LED,重命名它們,連接它們。..。..讓我們說它會(huì)耗費(fèi)時(shí)間。..。..

幸運(yùn)的是我去了PCB CAD程序,Eagle CAD(免費(fèi)最多2個(gè))圖層和80cm2區(qū)域以XML格式保存文件。這意味著,我可以使用python幾乎自動(dòng)生成我想要的文件!

我的python代碼生成一個(gè)LED網(wǎng)格以及所有需要的布線。您需要將輸出 .sch 文件放在項(xiàng)目文件夾中,并按照您認(rèn)為合適的方式完成原理圖。您需要至少添加電阻和連接端子。

從那時(shí)起它非常直接。轉(zhuǎn)到電路板編輯器,放置所有組件并激活自動(dòng)路由器:)

Python腳本和支持文件必須在同一個(gè)文件夾中才能工作。您將需要python版本3.x來運(yùn)行它。該腳本生成一個(gè)“schematic.sch”文件,您可以將其放入您的eagle項(xiàng)目文件夾中。您可以通過打開python腳本并更改“package”索引來更改要使用的LED類型(有關(guān)詳細(xì)信息,請(qǐng)參閱代碼注釋,默認(rèn)為5mm LED)。

我還包括兩個(gè)EAGLE CAD一個(gè)簡(jiǎn)單的charlieplexed時(shí)鐘的文件 - 與我用于解釋如何為一個(gè)charlieplexing工作編程Arduino相同。請(qǐng)隨意查看它們。

第6步:時(shí)鐘

我為12個(gè)LED時(shí)鐘做了模擬,我為12個(gè)LED時(shí)鐘制作了原理圖,我為12個(gè)LED時(shí)鐘制作了一個(gè)PCB文件,然后我制作了驅(qū)動(dòng)12個(gè)LED時(shí)鐘的代碼。如果我沒有完全循環(huán)并制作一個(gè)12 LED時(shí)鐘,那將是一種恥辱,現(xiàn)在不會(huì)這樣:)

我制作PCB有一些問題,因?yàn)槲曳浅O胍眉す馇懈顧C(jī)制作它。最后,我不得不放棄那個(gè)夢(mèng)想,回到可信賴的照片轉(zhuǎn)移。如果您知道使用CO2激光器制作PCB的方法,請(qǐng)?jiān)谠u(píng)論中告訴我,因?yàn)槲椰F(xiàn)在還不想放棄這個(gè)夢(mèng)想。

除此之外,我做了PCB盡可能容易制造。蝕刻銅,鉆孔,修補(bǔ)板的形狀,放在表盤上,最后焊接在LED中(如果你錯(cuò)過極性,它仍然會(huì)“工作”,不是你想要的),電阻和跳線。請(qǐng)注意,在選擇顏色時(shí)我選擇了紅色和綠色LED,以避免重影效果。

步驟7:備忘單

如前言所述,Charlieplexing允許您僅使用微控制器上的N個(gè)引腳驅(qū)動(dòng)N *(N-1)個(gè)LED。請(qǐng)記住,您總是可以使用更少的。

同時(shí)幾乎點(diǎn)亮的LED數(shù)量受微控制器的限制。您需要每秒至少刷新所有LED 60次。如果您的微控制器沒有足夠的處理能力,那么在更高的LED數(shù)量下您將無法實(shí)現(xiàn)這一點(diǎn)。如果你在低級(jí)別編程,就很難在Arduino上實(shí)現(xiàn)240個(gè)LED(16個(gè)引腳)。

明智地選擇電阻。您將找到LED的最大額定電流。如果您希望它們持續(xù)點(diǎn)亮(不是虛擬),請(qǐng)選擇電阻將電流限制為該值。如果您同時(shí)有多個(gè)點(diǎn)亮,您可以選擇電阻將電流限制在最高40mA(Arduino的限制)。確保刷新周期內(nèi)的平均電流不會(huì)超過LED的額定值(例如:12個(gè)LED,Imax = 2mA | Ioverclock/12 《2mA ==》 Ioverclock = 24mA)

不要忘記電阻應(yīng)該具有驅(qū)動(dòng)單個(gè)LED的一半電阻,因?yàn)殡娏髁鬟^兩個(gè)電阻。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    49

    文章

    8833

    瀏覽量

    165615
  • led
    led
    +關(guān)注

    關(guān)注

    244

    文章

    24705

    瀏覽量

    692400
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    深入解析 dsPIC33FJ 系列 16 位微控制器與數(shù)字信號(hào)控制器

    的 dsPIC33FJ06GS001/101A/102A/202A 和 dsPIC33FJ09GS302 系列 16 位微控制器與數(shù)字信號(hào)控制器,了解它們的特性、功能以及如何在實(shí)際設(shè)計(jì)中應(yīng)用。 文件下載
    的頭像 發(fā)表于 04-08 18:35 ?1071次閱讀

    何在 K82 微控制器中使用 QSPI 別名區(qū)域?

    我目前正在 FRDM-K82F 評(píng)估板led_demo_qspi_alias 演示項(xiàng)目合作,以更好地了解如何利用 K82 微控制器的 QSPI 別名區(qū)域進(jìn)行調(diào)試。 啟動(dòng)時(shí),程序
    發(fā)表于 04-06 06:32

    Z86E61/Z86E63微控制器:性能、特性與應(yīng)用全解析

    /Z86E63微控制器,看看它有哪些獨(dú)特之處,以及如何在實(shí)際設(shè)計(jì)中發(fā)揮作用。 文件下載: Z86E6116FSC00TR.pdf 一、產(chǎn)品概述 Z86E61/Z86E63微控制器屬于Z8?單芯片
    的頭像 發(fā)表于 04-04 12:40 ?630次閱讀

    探索MAXQ3210微控制器:低功耗高性能的理想之選

    的MAXQ3210微控制器,看看它究竟有哪些獨(dú)特之處。 文件下載: MAXQ3210-EJX+.pdf 一、器件概述 MAXQ3210是一款低功耗、16位RISC微控制器,集成了壓電喇叭驅(qū)動(dòng)器、模擬比較
    的頭像 發(fā)表于 04-04 12:05 ?203次閱讀

    MAX1497/MAX1499:3.5 - 和4.5 - 位單芯片ADC與LED驅(qū)動(dòng)微控制器接口

    MAX1497/MAX1499:3.5 - 和4.5 - 位單芯片ADC與LED驅(qū)動(dòng)微控制器接口 在電子設(shè)計(jì)領(lǐng)域,高精度、低功耗的模數(shù)轉(zhuǎn)換(ADC)一直是工程師們關(guān)注的焦點(diǎn)。今天我
    的頭像 發(fā)表于 04-02 13:40 ?129次閱讀

    RL78/G1P微控制器:通用與傳感控制的低功耗之選

    RL78/G1P微控制器:通用與傳感控制的低功耗之選 在電子設(shè)計(jì)領(lǐng)域,低功耗、高性能的微控制器一直是工程師們追求的目標(biāo)。Renesas的RL78/G1P微控制器就是這樣一款產(chǎn)品,它專為
    的頭像 發(fā)表于 04-01 15:10 ?132次閱讀

    PSOC 4100PS系列微控制器

    PSOC 4100PS系列微控制器PSoC 4100PS系列微控制器是英飛凌(原Cypress)推出的一款基于32位Arm? Cortex?-M0+內(nèi)核的可編程片系統(tǒng)(PSoC),具備高度集成
    發(fā)表于 03-11 09:45

    為什么磁環(huán)采用6極磁化的相對(duì)較少

    在電機(jī)或磁編碼等應(yīng)用中,你會(huì)發(fā)現(xiàn)采用6極磁環(huán)(3對(duì)極)的相對(duì)少見,更常見的是4極、8極等結(jié)構(gòu),這是什么原因呢?
    的頭像 發(fā)表于 03-10 17:17 ?452次閱讀
    為什么磁環(huán)采用6極磁化的<b class='flag-5'>相對(duì)較少</b>?

    STLED316S:一款強(qiáng)大的LED控制器驅(qū)動(dòng)器

    STLED316S:一款強(qiáng)大的LED控制器驅(qū)動(dòng)器 各位電子工程師們,今天要給大家詳細(xì)介紹一款非常實(shí)用的LED控制器
    的頭像 發(fā)表于 01-28 09:45 ?521次閱讀

    PSoC 4100M系列微控制器

    PSoC 4100M系列微控制器PSoC 4100M系列微控制器是英飛凌(原Cypress)推出的一款基于ARM Cortex-M0內(nèi)核的可編程片系統(tǒng)(PSoC),它集成了可配置的模擬和數(shù)字外設(shè)
    發(fā)表于 01-12 09:20

    RA0E2微控制器:低功耗設(shè)計(jì)的理想之選

    。今天,我們就來深入了解一下RA0E2微控制器的詳細(xì)信息。 文件下載: Renesas Electronics RA0E2通微控制器 (MCU).pdf 一、產(chǎn)品概述 RA0E2系列微控制器
    的頭像 發(fā)表于 12-26 17:30 ?897次閱讀

    在筋膜槍應(yīng)用的MCU微控制器方案

    筋膜槍是現(xiàn)在很多人必不可少的放松肌肉的健身工具,而實(shí)現(xiàn)筋膜槍的高效、穩(wěn)定、安全運(yùn)行,則需要內(nèi)部搭載的MCU微控制器來負(fù)責(zé)控制電機(jī)運(yùn)轉(zhuǎn)、保護(hù)電路安全并實(shí)現(xiàn)各種智能功能。英尚微電子的筋膜槍方案采用CH32V007 MCU微控制器為核
    的頭像 發(fā)表于 12-09 16:39 ?839次閱讀
    在筋膜槍<b class='flag-5'>上</b>應(yīng)用的MCU<b class='flag-5'>微控制器</b>方案

    如何使用GPIO模擬ARGB2 LED定時(shí)序列,并在M258系列微控制器(MCU)實(shí)現(xiàn)彩虹波ARGB2 LED效果?

    使用GPIO模擬ARGB2 LED定時(shí)序列,并在M258系列微控制器(MCU)實(shí)現(xiàn)彩虹波ARGB2 LED效果
    發(fā)表于 08-20 06:55

    何在 M55M1 系列微控制器以低功耗模式使用運(yùn)動(dòng)檢測(cè)功能?

    何在 M55M1 系列微控制器以低功耗模式使用運(yùn)動(dòng)檢測(cè)功能。根據(jù)物體檢測(cè)結(jié)果,系統(tǒng)將動(dòng)態(tài)啟用或禁用運(yùn)動(dòng)檢測(cè)塊,以實(shí)現(xiàn)最佳性能和能效。
    發(fā)表于 08-19 06:56

    何在MCXN947微控制器配置安全啟動(dòng)和生命周期

    本文檔旨在介紹如何在MCXN947微控制器配置安全啟動(dòng)和生命周期,以確保產(chǎn)品在量產(chǎn)階段的安全性,防止代碼被竊取和篡改,并且能夠安全地升級(jí)更新固件。通過本應(yīng)用筆記,開發(fā)者可以更好地理解和實(shí)施安全啟動(dòng)和固件更新的最佳實(shí)踐。
    的頭像 發(fā)表于 06-26 09:49 ?2717次閱讀
    如<b class='flag-5'>何在</b>MCXN947<b class='flag-5'>微控制器</b><b class='flag-5'>上</b>配置安全啟動(dòng)和生命周期
    家居| 丹东市| 宜黄县| 郯城县| 松江区| 专栏| 赫章县| 武汉市| 阿拉善右旗| 宁阳县| 调兵山市| 山东| 叙永县| 保德县| 天全县| 镇江市| 岳池县| 大石桥市| 隆子县| 瑞安市| 普安县| 永济市| 宁陵县| 合水县| 苍南县| 东兰县| 乳源| 潜山县| 恩平市| 托克逊县| 如皋市| 监利县| 个旧市| 恭城| 四平市| 缙云县| 广水市| 黑水县| 金昌市| 石嘴山市| 南和县|