用AT90S1200代換顯示驅動芯片MC14499的應用電路
4.2 數據接收子程序
首先把狀態寄存器的數據送到R18暫存,然后分別接收小數點及四位BCD碼,并將數據寄存在R20、R21、R22、R23、R24中,程序如下:
PROG:IN R18,SREG ;狀態標志寄存
CLC
SBIC PIND,0
SEC
ROL R29
ROL R28
ROL R27
INC R16
CPI R16,$14
BRNE PROGD
MOV R20,R27;小數點位置位的接收,寄存在R20
ANDI R20,$0F
MOV R21,R28 ;顯示首位數據接收
SWAP R21
ANDI R21,$0F
MOV R22,R28 ;第二位接收
ANDI R22,$0F
MOV R23,R29 ;第三位接收
SWAP R23
ANDI R23,$0F
MOV R24,R29 ;第四位接收
ANDI R24,$0F
CLR R16
CLR R27
CLR R38
CLR R29
CPI R24,$0A
BRL0 RPOGD
CLR R20
LDI R21,$0F
LDI R22,$0F
LDI R23,$0F
LDI R24,$00
PROGD RETI
5 結束語
文中所述的方案已被成功應用于無功補償控制器的顯示系統中,經使用表明:AT90S1200不僅可以完全取代MC14499進行驅動顯示,而且還具有功耗低、使用方便的特獨性能,僅用8只外接電阻即可驅動四位動態顯示系統,且接口非常靈活,可方便地與任何單片機接口,并可編程為串行同步接口、I2C接口、 SPI接口等,更重要的是提出了一種用MCU代換ADIC設計方案和實現思路,并經過實用表明完全可行,也比較有實用價值。
DIY機械鍵盤相關社區:機械鍵盤DIY
評論