下面還介紹了一種利用89C52單片機的一個并行口實現多個LED數碼管顯示的簡單方法,給出了利用此方法設計的多路LED顯示系統的硬件電路結構原理圖和軟件程序流程,同時給出了采用MCS-51匯編語言編寫的具體程序。
在單片機應用系統中,普遍使用成本低廉、配置靈活的數碼管(LED)做顯示器。常用的為4~8位八段LED數碼管顯示器,即需要4~8個LED數碼管。實現這種顯示的方法很多,但是,必須采用相應的措施才能實現多個LED的顯示。本文介紹了一種設計方法,利用該方法設計的多路LED數碼管顯示系統具有硬件設備簡單,可移植性好,成本低廉的特點,在各種儀表顯示系統中應用效果良好。
1 硬件電路
多位LED顯示時,常將所有位的段選線并聯在一起,由一個8位I/O口控制,而共陰極點或共陽極點分別由另一個8位I/O口控制;也可采用并行擴展口構成顯示電路,通常,需要擴展器件管腳的較多,價格較高。本文將介紹一種利用單片機的一個并行I/O口實現多個LED顯示的簡單方法,圖1所示是該電路的硬件原理圖。其中,74LS138是3線-8線譯碼器,74LS164是8位并行輸出門控串行輸入移位寄存器,LED采用L05F型共陰極數碼管。
顯示時,其顯示數據以串行方式從89C52的P12口輸出送往移位寄存器74LS164的A、B端,然后將變成的并行數據從輸出端Q0~Q7輸出,以控制開關管WT1~WT8的集電極,然后再將輸出的LED段選碼同時送往數碼管LED1~LED8。位選碼由89C52的P14~P16口輸出并經譯碼器74LS138送往開關管Y1~Y8的基極,以對數碼管LED1~LED8進行位選控制,這樣,8個數碼管便以100ms的時間間隔輪流顯示。由于人眼的殘留效應,這8個數碼管看上去幾乎是同時顯示。
2 軟件編程
該系統的軟件編程采用MCS-51系列單片機匯編語言完成,并把顯示程序作為一個子程序,從而使主程序對其進行方便的調用。圖2所示是其流程圖。具體的程序編碼如下:
3 結束語
該設計方法已多次應用于學生試驗單片機led顯示電路和多種儀器顯示系統中。只要將該顯示程序調入其它主程序中,即可完成顯示功能。經過多次使用證明:該方法可移植性好、實用性強。
-
led
+關注
關注
240文章
22907瀏覽量
650121 -
單片機
+關注
關注
6023文章
44376瀏覽量
628383 -
顯示電路
+關注
關注
6文章
95瀏覽量
33116
發布評論請先 登錄
相關推薦
評論