新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 用AT90S1200代換顯示驅(qū)動(dòng)芯片MC14499的應(yīng)用電路

用AT90S1200代換顯示驅(qū)動(dòng)芯片MC14499的應(yīng)用電路

作者: 時(shí)間:2012-03-20 來源:網(wǎng)絡(luò) 收藏

46.gif

4 軟件設(shè)計(jì)

使用直接完成功能時(shí),系統(tǒng)軟件可采和AVR精簡指令的匯編語言編寫,并可采用模塊化結(jié)構(gòu)設(shè)計(jì)。為達(dá)到 的通訊速度,對(duì)串行數(shù)據(jù)的接收采用中斷方式處理,使用內(nèi)置振蕩器,WDT可使用外部中斷接收CLK信號(hào),具有89條指令代碼,且全部為單字節(jié)指令,可進(jìn)行十位數(shù)字運(yùn)算,在32個(gè)工作寄存器中只有16~31個(gè)寄存器可執(zhí)行立即數(shù)據(jù)的操作,并支持C語言編程,而且靈活方便,下面給出用MC1449的數(shù)據(jù)轉(zhuǎn)換子程序和接收數(shù)據(jù)子程序。

47.gif

4.1 子程序

由于AT90S1200不能查表。故在顯示子程序中應(yīng)分別進(jìn)行處理,主程序內(nèi)使用了通用寄存器R26中帶為的接收BCD碼,并通過本子程序轉(zhuǎn)換為段碼,仍由R26帶出并返回到調(diào)用程序處,本示例為0、1、2、3、4五個(gè)字段碼的轉(zhuǎn)換:
Data:CPI R26,$00 ;數(shù)據(jù)0的轉(zhuǎn)換
BRNE Data0
LDI R26,$7B
RJMP DataD
Data0:CPI R26,$01 ;數(shù)據(jù)1由BCD轉(zhuǎn)換為段碼
BRNE Datal
LDI R26,$48
RJMP DataD
Datal:CPI R26,$02 ;數(shù)據(jù)2的轉(zhuǎn)換
BRNE Data2
LDI R26,$D3
RJMP DataD
Data2:CPI R26,$03 ;數(shù)據(jù)3的轉(zhuǎn)換
BRNE Data3
LDI R26,$D9
RJMP DataD
Data CPI R26,$04 ;數(shù)據(jù)4的轉(zhuǎn)換
BREN Data4
LDI R26,$E8
RJMP DataD

DataD:RET

DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY




評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉