www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] LED(liteEMIt diode)顯示是項(xiàng)目開(kāi)發(fā)中經(jīng)常遇到的一種顯示方法,其具有亮度高、全視角、使用壽命長(zhǎng)、驅(qū)動(dòng)簡(jiǎn)單等特點(diǎn),因而在一些高端和大型的器材和設(shè)備上使用較為廣泛。下面就常用的led顯示及驅(qū)動(dòng)方法作

LED(liteEMIt diode)顯示是項(xiàng)目開(kāi)發(fā)中經(jīng)常遇到的一種顯示方法,其具有亮度高、全視角、使用壽命長(zhǎng)、驅(qū)動(dòng)簡(jiǎn)單等特點(diǎn),因而在一些高端和大型的器材和設(shè)備上使用較為廣泛。下面就常用的led顯示及驅(qū)動(dòng)方法作一說(shuō)明:


led:本文所說(shuō)的led主要是指下列幾種:


l 7-段數(shù)碼led,分共陰和共陽(yáng)兩種,原理圖見(jiàn)1和2;




l 常用nxm led點(diǎn)陣:如8x8 led 點(diǎn)陣模塊、5x7 led點(diǎn)陣模塊等,其也分為共陰和共陽(yáng)兩種;


l 單個(gè)led管。


所謂共陰極,即是將所有l(wèi)ed的陰極連接到一起,而共陽(yáng)極則相反,所有的陽(yáng)極被連接到了一起。但不管哪種結(jié)構(gòu),其顯示設(shè)計(jì)的原理基本相同,唯一的是其驅(qū)動(dòng)的電路的設(shè)計(jì)有所差異,一般共陰極采用推(push)電流的方式來(lái)驅(qū)動(dòng),而共陽(yáng)極結(jié)構(gòu)則采用拉(pull)電流的方式來(lái)驅(qū)動(dòng)。


根據(jù)led顯示的硬件設(shè)計(jì)方法的不同,led顯示驅(qū)動(dòng)分為靜態(tài)法和動(dòng)態(tài)法兩大類(lèi),其具體的說(shuō)明和編程方法分述如下:


1. 靜態(tài)顯示驅(qū)動(dòng)法:


  所謂靜態(tài)顯示驅(qū)動(dòng)法,即是指每一個(gè)led燈分別對(duì)應(yīng)一個(gè)獨(dú)立的io驅(qū)動(dòng)口;其點(diǎn)亮和關(guān)閉由該io來(lái)對(duì)其進(jìn)行控制,互不干擾,見(jiàn)圖3(注:對(duì)于io驅(qū)動(dòng)能力弱的mcu,必須增加外部的驅(qū)動(dòng)芯片或驅(qū)動(dòng)三極管等器件)。此種設(shè)計(jì)一般應(yīng)用在對(duì)單個(gè)led的驅(qū)動(dòng)或led數(shù)量較少,且所選的mcu io比較充裕的情況下。比如一些項(xiàng)目的led指示燈、產(chǎn)品的設(shè)計(jì)中只有一個(gè)7-段led碼需要顯示等。


  由于每一個(gè)led均由獨(dú)立的io口來(lái)控制,因此此種顯示驅(qū)動(dòng)的軟件設(shè)計(jì)比較簡(jiǎn)單明了,無(wú)需特別的處理,在需要點(diǎn)亮和關(guān)閉時(shí)設(shè)置相應(yīng)的io輸出口的電平即可(即“0”或“1”,具體須根據(jù)驅(qū)動(dòng)電路的設(shè)計(jì)來(lái)決定)。


圖 3


優(yōu)點(diǎn):電路設(shè)計(jì)簡(jiǎn)單,編程簡(jiǎn)單,而且led的亮度控制容易,只需在驅(qū)動(dòng)端增加相應(yīng)的電流調(diào)節(jié)電阻即可方便地實(shí)現(xiàn)亮度的調(diào)節(jié)(對(duì)于存在獨(dú)立驅(qū)動(dòng)的設(shè)計(jì),還可以通過(guò)調(diào)整驅(qū)動(dòng)電壓來(lái)達(dá)到亮度的調(diào)節(jié))。


缺點(diǎn):由于每一個(gè)led燈需要一個(gè)io口,因此對(duì)io口的需求較大,不易實(shí)現(xiàn)大數(shù)量的led驅(qū)動(dòng)和顯示,擴(kuò)展性能差。


2. 動(dòng)態(tài)的顯示驅(qū)動(dòng)法:

與靜態(tài)顯示方法不同,動(dòng)態(tài)led顯示的設(shè)計(jì)方法是將不同led模塊的所有的led的驅(qū)動(dòng)端一對(duì)一地連接到一起,見(jiàn)圖4,而將其公共極(陰極或陽(yáng)極)分別由不同的io口來(lái)驅(qū)動(dòng)(主要針對(duì)7-段碼和led點(diǎn)陣模塊)。在此,我們稱(chēng)其公共極為掃描線(xiàn)或地址線(xiàn)(因此種連接方法類(lèi)似于存儲(chǔ)器的內(nèi)部連接,每個(gè)led點(diǎn)相當(dāng)與memory中的一個(gè)bit),不同的led模塊(類(lèi)似于memory中的一個(gè)byte)用不同的掃描線(xiàn)地址線(xiàn)來(lái)進(jìn)行選定。

圖 4


圖4


由于所有的led模塊公用了驅(qū)動(dòng)端,因此led的驅(qū)動(dòng)不再像靜態(tài)法一樣為每個(gè)led所獨(dú)享,因此其驅(qū)動(dòng)的設(shè)計(jì)方法也與靜態(tài)法完全不同,需要采用分時(shí)掃描(也稱(chēng)動(dòng)態(tài)掃描)方法來(lái)實(shí)現(xiàn)對(duì)所有l(wèi)ed的顯示驅(qū)動(dòng),其原理如下(以圖4為例):


a.將a0設(shè)置為高電平,也即允許第一組led顯示,同時(shí)將a2,a3,a4設(shè)置為低電平,也即關(guān)閉該陰極所對(duì)應(yīng)的led組的顯示;


b.在p0口輸出a0組對(duì)應(yīng)的顯示數(shù)據(jù)(也稱(chēng)為pattern),如字符點(diǎn)陣數(shù)據(jù),7-段碼對(duì)應(yīng)的數(shù)字的數(shù)據(jù)等,該數(shù)據(jù)可以通過(guò)rom表的形式來(lái)預(yù)先定義;


c.保持一定的時(shí)間t,該時(shí)間即為所設(shè)定定時(shí)器的中斷時(shí)間;


d.將a0口設(shè)置為低電平,關(guān)閉a0組led的顯示;


e.將a1設(shè)置為高電平,其他幾個(gè)設(shè)置為低電平,開(kāi)啟a1組對(duì)應(yīng)的led的顯示;


f.在p0口輸出a1組對(duì)應(yīng)的顯示數(shù)據(jù)(也稱(chēng)為pattern,意義同上);


g.重復(fù)以上步驟,直到所有組被掃描一遍,然后又從a0組開(kāi)始下一個(gè)循環(huán),如此周而復(fù)始,實(shí)現(xiàn)所有l(wèi)ed的動(dòng)態(tài)顯示。

1.該方法的原理利用了人眼對(duì)物體的視覺(jué)延遲來(lái)達(dá)到所有l(wèi)ed的同時(shí)顯示,實(shí)際上,在每一個(gè)時(shí)刻,只有一組led是處于顯示的狀態(tài),而其他led組均為關(guān)閉狀態(tài)。理論上,若兩次顯示之間的時(shí)間間隔小于32ms時(shí),人眼即無(wú)法分辨,因此,為了達(dá)到此要求,led的掃描頻率一般可按照下式計(jì)算得出:


f = 32 * n


式中,


 f為掃描的頻率,對(duì)應(yīng)為定時(shí)器的定時(shí)時(shí)間(t=1/f);


 32 則是由32ms換算而來(lái),32ms對(duì)應(yīng)的頻率剛好為 32Hz;


 n則是總的led的組數(shù)(此例中為n=4)。


根據(jù)此式算出的掃描頻率f實(shí)際上是led 驅(qū)動(dòng)掃描的最小頻率,若低于此頻率,則有可能導(dǎo)致led的閃爍。當(dāng)然,f也不可能越高越好,掃描的頻率太高,相對(duì)而言,每一組led的點(diǎn)亮的時(shí)間就越短,因此有可能導(dǎo)致led的亮度不夠或顯示效果不理想等一些問(wèn)題。當(dāng)然提高led的驅(qū)動(dòng)電壓也可以彌補(bǔ)由此造成的亮度不夠的問(wèn)題。


在此例中,由公式可知其掃描的頻率應(yīng)大于等于128hz,則較為理想。


2. mcu程序的實(shí)現(xiàn):


a. 模塊的劃分:


  在說(shuō)明其編程之前,先說(shuō)明一下模塊化編程思想在led驅(qū)動(dòng)設(shè)計(jì)中的應(yīng)用。為了使程序的結(jié)構(gòu)清晰和維護(hù)的便利,特別是為了使程序的移植等變得可行,在程序的設(shè)計(jì)過(guò)程中應(yīng)盡可能地采用模塊化的設(shè)計(jì)思想,對(duì)于復(fù)雜的程序結(jié)構(gòu)和功能的實(shí)現(xiàn),更應(yīng)該在編程之前理順其相互之間的關(guān)系,劃分好各功能模塊所應(yīng)完成的功能,定義好各模塊之間的數(shù)據(jù)接口和相互關(guān)系。

  一般而言,顯示部分所涉及到的內(nèi)容和功能相對(duì)較廣,比如按鍵的變化、系統(tǒng)狀態(tài)的變化、數(shù)據(jù)的變化等均需在顯示的結(jié)果上表現(xiàn)出來(lái)。因此,為了保證不同的模塊之間的獨(dú)立性,我們將與led顯示的有關(guān)的功能進(jìn)行如下的劃分:

1.掃描驅(qū)動(dòng)模塊:此模塊的功能只完成對(duì)所有l(wèi)ed的掃描,而不關(guān)心所顯示的數(shù)據(jù)的具體變化情況,其從固定的顯示緩沖其中提取每一掃描地址所對(duì)應(yīng)的數(shù)據(jù),該對(duì)應(yīng)關(guān)系是固定的,由程序設(shè)計(jì)時(shí)來(lái)設(shè)定。該實(shí)現(xiàn)的方法類(lèi)似與pc機(jī)中crt的顯示驅(qū)動(dòng)和顯示緩沖;

2.字符、點(diǎn)陣發(fā)生器:由于實(shí)際的數(shù)據(jù)與顯示的數(shù)據(jù)(pattern)之間并非是相同的,因此,需要將實(shí)際的數(shù)據(jù)轉(zhuǎn)化成能夠顯示的數(shù)據(jù)。例如在mcu中的各種計(jì)算的數(shù)據(jù)是以bcd碼或二進(jìn)制碼的形式來(lái)表示的,需要將其轉(zhuǎn)化成7-段碼或nxn點(diǎn)陣的pattern數(shù)據(jù)進(jìn)行顯示;

3. 顯示緩沖刷新和處理模塊:該模塊的功能是接受諸如按鍵、系統(tǒng)狀態(tài)變化、數(shù)據(jù)變化所引起的顯示數(shù)據(jù)的變化。其需要調(diào)用到字符、點(diǎn)陣發(fā)生器來(lái)完成顯示緩沖的刷新,其與按鍵、系統(tǒng)狀態(tài)變化等之間的接口是采用消息的機(jī)制來(lái)實(shí)現(xiàn)。該模塊一般需要根據(jù)不同的顯示內(nèi)容來(lái)進(jìn)行分類(lèi),比如在跑步機(jī)的設(shè)計(jì)中,可以劃分為如下的內(nèi)容:距離、速度、時(shí)間、能量消耗、心率及其他相關(guān)的數(shù)據(jù)。


b. 程序架構(gòu)和實(shí)現(xiàn)


1. 掃描模塊的實(shí)現(xiàn):由于led的掃描驅(qū)動(dòng)是一個(gè)重復(fù)的不間斷的過(guò)程,自然,定時(shí)中斷是最好的實(shí)現(xiàn)方法,其流程如圖6所示,其中bufFPt用于指向當(dāng)前的顯示緩沖區(qū),ai則為當(dāng)前所需顯示的led組的地址編號(hào),從0到n(n為總的led組數(shù));


2. 刷新模塊的實(shí)現(xiàn):在mcu的程序設(shè)計(jì)中,一般將此模塊置于16hz的定時(shí)中斷中(若主程序的循環(huán)周期不固定且最大的循環(huán)時(shí)間大于1/10秒時(shí),常采用此架構(gòu))或主程序循環(huán)體中(此種情況主要時(shí)針對(duì)mcu時(shí)鐘比較高的場(chǎng)合或不需考慮顯示延時(shí)的情況下),通過(guò)檢測(cè)對(duì)應(yīng)的消息來(lái)決定其是否需要執(zhí)行數(shù)據(jù)的刷新。以跑步機(jī)的設(shè)計(jì)為例,其功能流程如圖7所示;

3. 字符、點(diǎn)陣發(fā)生器:由于在一些實(shí)際的應(yīng)用中,可能的顯示內(nèi)容原則上是可預(yù)知的和有限的,特別是漢字的顯示,因此其主要是通過(guò)定義相應(yīng)的點(diǎn)陣來(lái)保存各種需要顯示數(shù)據(jù)。為了便于程序的設(shè)計(jì),一般需將其按照一定的排列規(guī)則來(lái)進(jìn)行定義,同時(shí)也需要為各個(gè)需要顯示的字符和圖符進(jìn)行編碼,編碼的規(guī)則必須有利于程序的設(shè)計(jì)和提高代碼的效率,以求能夠采用統(tǒng)一的查表指令來(lái)實(shí)現(xiàn)。

圖6


注:上述的流程只是一個(gè)原理性的程序說(shuō)明,在實(shí)際的應(yīng)用中,需要根據(jù)mcu的特點(diǎn)及具體的硬件設(shè)計(jì)來(lái)進(jìn)行程序的設(shè)計(jì)與簡(jiǎn)化。比如:在實(shí)際的項(xiàng)目中有8x8(或小于8x8)個(gè)led需要驅(qū)動(dòng),而且所選的mcu又是8位或16位的,則此時(shí)的地址線(xiàn)的掃描將變得非常的簡(jiǎn)單,只要建立字節(jié)變量ai,其初始值為0x01,然后在每次中斷處理程序中需將ai直接輸出到led掃描線(xiàn)所對(duì)應(yīng)的io口即可,隨后將ai左移一位,對(duì)8x8 led情況,當(dāng)ai=0時(shí),表示一遍掃描完成,此時(shí)再將ai設(shè)為0x01即可。對(duì)于顯示的緩沖區(qū)的分配,同樣可以根據(jù)實(shí)際的軟件設(shè)計(jì)來(lái)分配具體的ram地址空間,以進(jìn)一步提高程序的執(zhí)行效率。記住,由于led的掃描需要占用較多的mcu時(shí)間,因此在進(jìn)行掃描驅(qū)動(dòng)的程序設(shè)計(jì)時(shí),需要盡可能采用簡(jiǎn)潔高效的代碼,以便提高mcu的工作效率。舉例來(lái)說(shuō),假如需驅(qū)動(dòng)8x8 led,根據(jù)前面所講的要求,所需的定時(shí)器的中斷頻率必須是大于等于8x32,即256hz,若在此驅(qū)動(dòng)代碼中多增加一條語(yǔ)句,則mcu每秒就需要多執(zhí)行256條代碼,由此可見(jiàn)高效的代碼對(duì)于led驅(qū)動(dòng)程序來(lái)講是多么重要,特別是當(dāng)mcu的時(shí)鐘不夠快時(shí)!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀(guān)點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉