<wbr id="n9wtc"></wbr>
      <tbody id="n9wtc"><dfn id="n9wtc"></dfn></tbody>
        <bdo id="n9wtc"></bdo>
        <bdo id="n9wtc"></bdo>
          <progress id="n9wtc"></progress>
            <progress id="n9wtc"><strong id="n9wtc"></strong></progress>
                  <progress id="n9wtc"><strong id="n9wtc"></strong></progress>
                      <progress id="n9wtc"></progress><progress id="n9wtc"></progress>
                      131 1300 0010
                      開關電源
                      當前位置: 首頁>> 電源技術>>開關電源>>
                    1. 導航欄目
                    2. 逆變電源
                    3. 開關電源
                    4. 電機伺服
                    5. 其他電源
                    6. 串行LED顯示電路設計
                      串行LED顯示電路設計
                    7. 串行LED顯示電路設計
                    8.   發布日期: 2018-12-12  瀏覽次數: 1,107

                      在單片機系統設計中,LED顯示方式由于具有使用方便、價格低廉等優點而得到廣泛應用。在采用并行顯示方式時,顯示電路的段碼與位控碼要占用單片機的較多口線,盡管可采用8155等接口芯片進行擴展,但口線利用率仍較低,不能滿足大型控制系統的要求。采用串行顯示方式則只需占用2至3根口線,節約單片機大量的I/O線,且使用效果很好。本任務利用74HC595A實現多位LED串行顯示。

                       


                      真的很實用!串行LED顯示電路設計

                      74HC595芯片

                      1.74HC595A工作原理

                      74HC595A內部含有8位移位寄存器和8位D鎖存器,內部結構見圖所示。

                       


                      真的很實用!串行LED顯示電路設計

                      74HC595A內部邏輯結構

                       


                      真的很實用!串行LED顯示電路設計

                      74HC595與數碼管連接

                      串行移位寄存器接收外部輸入串行數據,一方面可進行串行數據輸出,同時向鎖存器提供8位并行輸入數據,并具有異步復位功能;8位鎖存器可三態輸出并行數據。該芯片具有串行輸入、并行輸出兩個獨立的時鐘信號。

                       


                      真的很實用!串行LED顯示電路設計

                      74HC595A邏輯功能表

                      注:U:不變;N:數據刷新;Z:高阻。

                      2.應用電路設計

                      下圖為12位LED顯示器應用電路。若采用普通的LED并行顯示方式需擴展單片機接口,電路復雜、成本高。本系統利用三片74HC595A芯片實現12位串行LED顯示控制。使用時,在串行時鐘的控制下,可將顯示器位控碼與段控碼逐位串行輸入至三個芯片中,然后利用鎖存信號實現并行輸出,完成12數數碼顯示更新。利用此顯示方式僅占用單片機三根口線,極大節約單片機口線資源。采用串行數據輸入,顯示速度相對較慢,實際使用時顯示效果穩定、可靠,完全滿足設計要求。

                       


                      真的很實用!串行LED顯示電路設計

                      12位LED串行顯示應用電路

                      初始位控碼設定為顯示第一位數碼管(共陰極),見下表第一行位控碼。每顯示完一位,需要改變位控碼以顯示下一位,下表反映了位控碼的變化情況。1區寄存器R6、R7用于存放處理位控碼。

                       


                      真的很實用!串行LED顯示電路設計

                      12位LED顯示器位控碼形成示意圖

                      3. 顯示程序工作方式

                      本程序采用定時方式控制顯示器工作。12位顯示器采用動態掃描顯示,每位顯示器顯示時間大約為1.67ms,由定時器T0控制。T0定時時間到產生顯示中斷,進入顯示中斷程序顯示下一位數據。這種顯示方式可提高CPU的工作效率,可準確控制顯示器的刷新速度。

                      4.中斷顯示子程序應用

                      編制一程序,在12位數碼管上依次顯示0、1、2、3、4、5、6、7、8、9、0、1

                      ORG 0000H

                      DSDATE BIT P1.0 ;串行數據輸入

                      DSCLK BIT P1.1 ;串行移位時鐘

                      DSLUCK BIT P1.2 ;并行鎖存時鐘

                      DISBUF EQU 51H ;顯示緩沖區首址

                      DS20 EQU 34H ;20ms定時寄存器(12位顯示計數器)

                      LJMP MAIN ;轉主程序

                      ORG 000BH

                      LJMP TIMINT ;轉定時顯示中斷子程序

                      MAIN: MOV SP,#70H ;置椎棧指針

                      MOV 51H,#00H ;預置顯示緩沖區

                      MOV 52H,#01H

                      MOV 53H,#02H

                      MOV 54H,#03H

                      MOV 55H,#04H

                      MOV 56H,#05H

                      MOV 57H,#06H

                      MOV 58H,#07H

                      MOV 59H,#08H

                      MOV 5AH,#09H

                      MOV 5BH,#00H

                      MOV 5CH,#01H

                      MOV 08H,#DISBUF ;1區R0指向顯示緩沖區首址

                      MOV 0EH,#07H ;置初始位控碼(1區R6)

                      MOV 0FH,#0FFH ;置初始位控碼(1區R7)

                      MOV TMOD,#01H ;置T0為1.67ms定時器

                      MOV TL0,#00H

                      MOV TH0,#0FAH

                      MOV DS20,#12 ;置顯示位數計數器

                      SETB TR0 ;啟動T0

                      SETB EA ;開中斷

                      SETB ET0 ;開T0中斷

                      HERE: SJMP HERE

                      TIMINT: PUSH PSW ;定時顯示中斷子程序,狀態字進棧

                      MOV PSW,#08H ;重置狀態字,選擇1區工作寄存器

                      PUSH ACC ;累加器進棧

                      PUSH B ;B寄存器進棧

                      CLR TR0 ;停止T0定時

                      MOV TH0,#0FAH ;重置1.67ms定時初值

                      MOV TL0,#00H

                      SETB TR0 ;啟動T0定時

                      MOV R5,0FH ;位控碼送R4、R5

                      MOV R4,0EH

                      LCALL DIS1 ;調用顯示一位數碼管子程序

                      SETB C ;形成顯示下一位位控碼并置于1區R6、R7中

                      MOV A,R6

                      SETB ACC.4

                      RRC A

                      MOV R6,A

                      MOV A,R7

                      RRC A

                      MOV R7,A

                      DJNZ DS20,LOOP1 ;12位顯示完了否,沒完退出,若顯示完重置

                      MOV DS20,#12 ;重置顯示計數器

                      MOV R0,#DISBUF ;重置顯示緩沖區指針

                      MOV R7,#0FFH ;重置初始位控碼

                      MOV R6,#07H

                      LOOP1: POP B ;恢復現場

                      POP ACC

                      POP PSW

                      RETI ;中斷返回

                      DIS1: MOV DPTR,#TAB ;顯示一位數碼管子程序,指向段碼表

                      MOV A,@R0 ;取待顯示字符數據

                      INC R0 ;修改緩沖區指針

                      MOVC A,@A+DPTR ;查表取顯示字符段碼

                      MOV R3,A ;將段碼與位控碼組合成20位有效串行碼

                      MOV R1,#0CH ;20位有效串行碼置于R3、R4、R5中

                      MOV A,@R1

                      SWAP A

                      MOV @R1,A

                      MOV A,R3

                      XCHD A,@R1

                      MOV A,@R1

                      SWAP A

                      MOV @R1,A

                      MOV A,R3

                      SWAP A

                      MOV R3,A

                      MOV R1,#20 ;置串行輸出計數器

                      DIS0: MOV A,R3 ;R3、R4、R5串行移位,由R5高位輸出。

                      RRC A

                      MOV R3,A

                      MOV A,R4

                      RRC A

                      MOV R4,A

                      MOV A,R5

                      RRC A

                      MOV R5,A

                      MOV DSDATE,C ;最高位送至595芯片串行輸入端

                      SETB DSCLK ;產生595芯片串行輸入信號

                      NOP

                      CLR DSCLK ;串行輸入鎖存

                      DJNZ R1,DIS0 ;20位二進碼輸出完否,沒完繼續

                      SETB DSLUCK ;產生595芯片并行輸出信號,字符開始顯示

                      NOP

                      CLR DSLUCK ;輸出字符數據由595芯片鎖存

                      RET

                      TAB: DB 3FH,06H,5BH ;顯示段碼表

                      DB 4FH,66H,6DH

                      DB 7DH,07H,7FH

                      DB 6FH,00H,40H

                      END


                    9. ·上一篇:
                      ·下一篇:
                    10. 其他關聯資訊
                      深圳市日月辰科技有限公司
                      地址:深圳市寶安區松崗鎮潭頭第二工業城A區27棟3樓
                      電話:0755-2955 6626
                      傳真:0755-2978 1585
                      手機:131 1300 0010
                      郵箱:hu@szryc.com

                      深圳市日月辰科技有限公司 版權所有:Copyright?2010-2023 www.nikuware-sos.com 電話:13113000010 粵ICP備2021111333號
                      漂亮人妻偷人精品视频_国产理论片午午伦夜理片2021_凸输偷窥xxxx间谍自由_国模gogo中国人体私拍
                      <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>