7段數碼管價格低廉驅動簡單,能夠顯示數字0~9、字符A、b、C、d、E、 F、P、q、L 等,被廣泛應用于電子產品的簡單數據的顯示。比如溫控儀的溫度及設置參數的顯示、電子鐘的時間顯示、電梯的樓層顯示等。
以前感覺7段數碼管的驅動電路很簡單,而且項目從來沒用過,因此沒有深入分析思考。最近為單片機教材《單片機原理及應用—基于Proteus 和 Keil C》做了一塊配套的單片機課程實驗板,實驗板上有2個2位共陰7段數碼管用于簡單信息顯示。剛開始設計電路如下:

電路焊接完成后測試時發現動態顯示時數碼管的亮度很低。懷疑電阻的取值可能不太合適,在網上查閱了很多資料后更換了電阻值,問題解決。現在把電阻值的估算過程總結如下。
51單片機I/O口的驅動能力有限,因此在P0口和數碼管段碼之間增加了74LS245來增加端口驅動能力。R1~R7、R11~R17起到限流的作用,用以保護數碼管。數碼管點亮時,公共端電流很大,如果直接把公共端連接到單片機引腳,大電流將會灌入單片機引腳,容易導致引腳損壞,因此增加三極管Q1、Q2、Q3、Q4。三極管作為開關管,導通時數碼管驅動電流大部分從C→E通道流入電源地,小部分灌入單片機引腳。三極管作為開關管工作在飽和區和截止區。當三極管導通時數碼管點亮,三極管工作在飽和區。
首先計算最大字電流。4個數碼管,每一個包含8段,每一段工作時平均電流是3mA的話,則最大電流為4*8*3=96mA,約等于100mA。從集電極電流和放大倍數之間的關系圖可知Ic= 100mA時,Hfe>200。理論上Ib=0.5mA就可以使三極管飽和導通。飽和導通時三極管壓降Vbe=0.7V,R=(5-0.7)/Ib=4.3K。為了使三極管可靠導通,一般取基極保護電阻R=1~2K。

接下來計算數碼管段限流電阻取值。首先計算段電流,一般紅色LED壓降約為1.6V,綠色LED壓降約為1.8V。靜態顯示時段電流約為3mA,4個數碼管輪流動態顯示,為了使顯示亮度和靜態顯示時一樣,驅動電流需要提高4倍,于是動態顯示時段驅動電流需要達到3*4=12mA,R=(Vcc-1.6)/(3*4)=0.28K,因此用300Ω的電阻就差不多了。這個電阻的取值直接影響數碼管的顯示亮度。
按照上邊的推導,更換電阻后,數碼管的亮度增加了很多。 |