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

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

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


led:本文所說的led主要是指下列幾種:


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




l 常用nxm led點陣:如8x8 led 點陣模塊、5x7 led點陣模塊等,其也分為共陰和共陽兩種;


l 單個led管。


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


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


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


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


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


圖 3


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


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


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

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

圖 4


圖4


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


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


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


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


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


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


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


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

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


f = 32 * n


式中,


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


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


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


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


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


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


a. 模塊的劃分:


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

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

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

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

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


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


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


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

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

圖6


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

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

8位單片機在嵌入式設(shè)計領(lǐng)域已經(jīng)成為半個多世紀(jì)以來的主流選擇。盡管嵌入式系統(tǒng)市場日益復(fù)雜,8位單片機依然不斷發(fā)展,積極應(yīng)對新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機系列,配備了先進的獨立...

關(guān)鍵字: 單片機 嵌入式 CPU

中國 上海,2025年8月28日——全球領(lǐng)先的智能傳感和發(fā)射器解決方案供應(yīng)商艾邁斯歐司朗(SIX:AMS)今日宣布,其全新UV-C LED在輻射滅菌領(lǐng)域取得重大技術(shù)突破,并獲得評估認可。

關(guān)鍵字: LED 發(fā)射器 光電半導(dǎo)體

在嵌入式系統(tǒng)開發(fā)中,程序燒錄是連接軟件設(shè)計與硬件實現(xiàn)的關(guān)鍵環(huán)節(jié)。當(dāng)前主流的單片機燒錄技術(shù)已形成ICP(在電路編程)、ISP(在系統(tǒng)編程)、IAP(在應(yīng)用編程)三大技術(shù)體系,分別對應(yīng)開發(fā)調(diào)試、量產(chǎn)燒錄、遠程升級等不同場景。...

關(guān)鍵字: 單片機 ISP ICP IAP 嵌入式系統(tǒng)開發(fā)

在嵌入式系統(tǒng)開發(fā)中,看門狗(Watchdog Timer, WDT)是保障系統(tǒng)可靠性的核心組件,其初始化時機的選擇直接影響系統(tǒng)抗干擾能力和穩(wěn)定性。本文從硬件架構(gòu)、軟件流程、安全規(guī)范三個維度,系統(tǒng)分析看門狗初始化的最佳實踐...

關(guān)鍵字: 單片機 看門狗 嵌入式系統(tǒng)

在LED照明技術(shù)向高能效、低電磁干擾(EMI)方向演進的過程中,電流模式控制與動態(tài)負載調(diào)整算法的協(xié)同優(yōu)化成為突破技術(shù)瓶頸的核心路徑。本文將從控制架構(gòu)創(chuàng)新、動態(tài)負載補償機制及EMI抑制策略三個維度,揭示新一代LED驅(qū)動器的...

關(guān)鍵字: LED 動態(tài)負載調(diào)整算法 EMI

在全球倡導(dǎo)節(jié)能減排的大背景下,家電產(chǎn)品的能耗問題日益受到關(guān)注。電視機作為家庭中使用頻率較高的電器之一,其能耗的降低對于節(jié)約能源和減少碳排放具有重要意義。LED 驅(qū)動技術(shù)作為影響電視機能耗的關(guān)鍵因素,正不斷發(fā)展和創(chuàng)新,為實...

關(guān)鍵字: 驅(qū)動技術(shù) 能耗 LED

本文中,小編將對單片機予以介紹,如果你想對它的詳細情況有所認識,或者想要增進對它的了解程度,不妨請看以下內(nèi)容哦。

關(guān)鍵字: 單片機 開發(fā)板 Keil

LED是一種能發(fā)光的半導(dǎo)體電子元件,這種電子元件早期只能發(fā)出低光度的紅光,隨著技術(shù)的不斷進步,現(xiàn)在已發(fā)展到能發(fā)出可見光、紅外線及紫外線的程度,光度也有了很大的提高。

關(guān)鍵字: LED

PCB設(shè)計在EMI抑制中起著關(guān)鍵作用。合理的布局布線能夠有效減少信號的電磁輻射和相互干擾。首先,應(yīng)將功率電路和控制電路進行物理隔離,避免功率電路中的大電流、高電壓信號對控制電路造成干擾。功率器件和電感等高頻器件應(yīng)盡量靠近...

關(guān)鍵字: LED 開關(guān)電源

隨著單片機系統(tǒng)越來越廣泛地應(yīng)用于消費類電子、醫(yī)療、工業(yè)自動化、智能化儀器儀表、航空航天等各領(lǐng)域,單片機系統(tǒng)面臨著電磁干擾(EMI)日益嚴(yán)重的威脅。電磁兼容性(EMC)包含系統(tǒng)的發(fā)射和敏感度兩方面的問題。

關(guān)鍵字: 單片機 電磁兼容
關(guān)閉