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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于Memory-link協(xié)議的人機交互系統(tǒng)的可靠性設(shè)計

          基于Memory-link協(xié)議的人機交互系統(tǒng)的可靠性設(shè)計

          作者: 時間:2012-08-15 來源:網(wǎng)絡(luò) 收藏

          3 軟件設(shè)計
          為提高系統(tǒng)軟件性能,很多軟件開發(fā)人員采用一些軟件來增強系統(tǒng)正常運行的可靠性,比如使用看門狗、設(shè)置軟件陷阱等,這些措施的采用都具有普適性。針對于系統(tǒng)來說,頻繁的點擊觸摸屏,短時間內(nèi)產(chǎn)生多次串行通信中斷,而響應(yīng)中斷程序執(zhí)行代碼較長,如果超出中斷嵌套次數(shù),則系統(tǒng)會面臨崩潰的危險。為解決此問題,該系統(tǒng)專門設(shè)計中斷響應(yīng)函數(shù),提供支持多次產(chǎn)生的串行中斷。
          3.1 協(xié)議
          系統(tǒng)通信采用Proface內(nèi)部集成的通信協(xié)議,該協(xié)議支持兩種工作方式:ASCII碼兼容方式和擴展方式。在兼容方式下,只有寫到數(shù)據(jù)區(qū)和讀數(shù)據(jù)區(qū)兩種命令;而在擴展方式下,除此之外,還可以執(zhí)行繪圖命令。
          該系統(tǒng)采用的是ASCII碼兼容、主從訪問方式。其所用通訊命令有以下4條。
          1)主機(單片機)讀命令,如表1所示。

          c1.jpg


          注:讀的數(shù)據(jù)地址占4字節(jié),例如讀取地址50,其HEX格式為0x0032;
          讀的數(shù)據(jù)長度也占4字節(jié),數(shù)據(jù)長度是以字為單位的。
          2)GP應(yīng)答命令,如表2所示。

          c.JPG


          注:每個地址的(WORD)數(shù)據(jù),占4字節(jié)傳送
          3)主機(單片機)寫命令,如表3所示。

          d.JPG


          注:每個地址的(WORD)數(shù)據(jù),占4字節(jié)傳送
          4)GP中斷輸出命令:GP主動發(fā)送一個字節(jié)數(shù)據(jù)到主機。
          3.2 中斷響應(yīng)和驅(qū)動結(jié)構(gòu)
          系統(tǒng)的應(yīng)用中,觸摸屏主要有兩大功能:數(shù)據(jù)顯示和數(shù)據(jù)輸入。數(shù)據(jù)顯示功能只需要單片機利用協(xié)議通過RS4-22將數(shù)據(jù)寫到觸摸屏的邏輯寄存器,觸摸屏就會立刻顯示;數(shù)據(jù)輸入過程比較繁瑣,首先觸摸屏接收數(shù)據(jù)輸入,然后給單片機發(fā)送中斷,單片機識別發(fā)送的中斷號后執(zhí)行響應(yīng)的驅(qū)動程序,將觸摸屏發(fā)送的數(shù)據(jù)進行讀取并保存起來。
          為解決短時間內(nèi),觸摸屏多次發(fā)送輸入中斷產(chǎn)生的隱患,必須使單片機進入中斷后執(zhí)行的時間足夠短(小于等于人的反應(yīng)與觸摸屏中斷發(fā)送時間之和)。為此,文中介紹一種中斷程序執(zhí)行足夠小的代碼執(zhí)行結(jié)構(gòu)。圖4為程序流程圖。

          e.JPG


          觸摸屏每次發(fā)送串行中斷之后,單片機進入串行中斷,根據(jù)觸摸屏發(fā)送來的中斷號,設(shè)定自定義中斷標(biāo)志位并退出中斷等待接收下一次中斷,在無中斷時候,程序執(zhí)行相應(yīng)自定中斷標(biāo)志位有效的中斷函數(shù)。



          評論


          相關(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); })();