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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32筆記之十四:基本問(wèn)題,來(lái)討論一下軟件架構(gòu)

          STM32筆記之十四:基本問(wèn)題,來(lái)討論一下軟件架構(gòu)

          作者: 時(shí)間:2016-11-26 來(lái)源:網(wǎng)絡(luò) 收藏
          網(wǎng)上大家都在討論和學(xué)習(xí),但是對(duì)于架構(gòu)這個(gè)基本問(wèn)題卻沒(méi)幾個(gè)人討論。個(gè)人認(rèn)為有個(gè)好的架構(gòu)是寫(xiě)好代碼的基礎(chǔ),可以使后期的調(diào)式工作事半功倍??!

          1、架構(gòu)組成:我的程序代碼分為四種結(jié)構(gòu)

          本文引用地址:http://www.ex-cimer.com/article/201611/322068.htm

          a)順序執(zhí)行代碼

          定義:按照順序逐行執(zhí)行的代碼

          優(yōu)點(diǎn):是思路簡(jiǎn)單,代碼可靠不易被干擾。

          缺點(diǎn):占用資源

          用途:只用來(lái)各種變量、函數(shù)的定義,硬件的初始化程序

          位置:main.c的開(kāi)始一直到main函數(shù)的while函數(shù)之前

          b)空閑執(zhí)行代碼

          定義:在CPU空閑的時(shí)候才執(zhí)行的代碼

          優(yōu)點(diǎn):不占用資源

          缺點(diǎn):執(zhí)行的實(shí)時(shí)性不能保證

          用途:非實(shí)時(shí)任務(wù),調(diào)試信息輸出,不重要的狀態(tài)指示

          位置:main.c的main函數(shù)的while函數(shù)內(nèi)部

          c)中斷執(zhí)行代碼

          定義:由軟硬件事件打斷整個(gè)程序而執(zhí)行的代碼

          優(yōu)點(diǎn):可以保證實(shí)時(shí)性,各種中斷可以安排優(yōu)先順序

          缺點(diǎn):關(guān)系相對(duì)復(fù)雜,互相之間容易干擾

          用途:觸發(fā)性的代碼,比如接收數(shù)據(jù),響應(yīng)外部設(shè)備,按鈕的相應(yīng)

          位置:stm32f10x_it.c內(nèi)部

          d)循環(huán)執(zhí)行代碼

          定義:按照時(shí)間周期執(zhí)行的代碼

          優(yōu)點(diǎn):定期自動(dòng)執(zhí)行

          缺點(diǎn):實(shí)時(shí)性不好

          用途:需要周期執(zhí)行的任務(wù),狀態(tài)檢查及相關(guān)信息輸出,數(shù)據(jù)記錄

          位置:stm32f10x_it.c的SysTickHandler內(nèi)部

          e)DMA自動(dòng)代碼

          定義:不需要主程序干預(yù),外設(shè)自動(dòng)執(zhí)行

          優(yōu)點(diǎn):自動(dòng)刷新數(shù)據(jù),不占用CPU資源

          缺點(diǎn):不能控制

          用途:數(shù)據(jù)通信存儲(chǔ),AD轉(zhuǎn)換

          位置:不需要

          2、架構(gòu)執(zhí)行順序圖


          關(guān)鍵詞: STM32軟件架

          評(píng)論


          技術(shù)專(zhuān)區(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); })();