專注電子技術學習與研究
當前位置:單片機教程網(wǎng) >> MCU設計實例 >> 瀏覽文章

51單片機并行口驅(qū)動LED數(shù)碼管顯示電路及程序

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2007年09月07日   【字體:
   介紹利用51單片機的一個并行口實現(xiàn)多個LED數(shù)碼管顯示的方法,給出了利用此方法設計的多路LED顯示系統(tǒng)的硬件電路結(jié)構(gòu)原理圖和軟件程序流程,同時給出了采用51匯編語言編寫程序。

1 硬件電路

 多位LED顯示時,常將所有位的段選線并聯(lián)在一起,由一個8位I/O口控制,而共陰極點或共陽極點分別由另一個8位I/O口控制;也可采用并行擴展口構(gòu)成顯示電路,通常,需要擴展器件管腳的較多,價格較高。本文將介紹一種利用單片機的一個并行I/O口實現(xiàn)多個LED顯示的簡單方法,圖1所示是該電路的硬件原理圖。其中,74LS138是3線-8線譯碼器,74LS164是8位并行輸出門控串行輸入移位寄存器,LED采用L05F型共陰極數(shù)碼管。
  

 顯示時,其顯示數(shù)據(jù)以串行方式從89C52的P12口輸出送往移位寄存器74LS164的A、B端,然后將變成的并行數(shù)據(jù)從輸出端Q0~Q7輸出,以控制開關管WT1~WT8的集電極,然后再將輸出的LED段選碼同時送往數(shù)碼管LED1~LED8。位選碼由89C52的P14~P16口輸出并經(jīng)譯碼器74LS138送往開關管Y1~Y8的基極,以對數(shù)碼管LED1~LED8進行位選控制,這樣,8個數(shù)碼管便以100ms的時間間隔輪流顯示。由于人眼的殘留效應,這8個數(shù)碼管看上去幾乎是同時顯示。


<51單片機并行口驅(qū)動LED數(shù)碼管顯示電路>

2 軟件編程
  該系統(tǒng)的軟件編程采用MCS-51系列單片機匯編語言完成,并把顯示程序作為一個子程序,從而使主程序?qū)ζ溥M行方便的調(diào)用。圖2所示是其流程圖。具體的程序代碼如下:


<51單片機并行口驅(qū)動LED數(shù)碼管顯示程序>

關閉窗口

相關文章