<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

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

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

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

          46.gif

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

          使用直接完成功能時(shí),系統(tǒng)軟件可采和AVR精簡(jiǎn)指令的匯編語(yǔ)言編寫,并可采用模塊化結(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語(yǔ)言編程,而且靈活方便,下面給出用MC1449的數(shù)據(jù)轉(zhuǎn)換子程序和接收數(shù)據(jù)子程序。

          47.gif

          4.1 子程序

          由于AT90S1200不能查表。故在顯示子程序中應(yīng)分別進(jìn)行處理,主程序內(nèi)使用了通用寄存器R26中帶為的接收BCD碼,并通過(guò)本子程序轉(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)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();