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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 牛人業(yè)話 > 嵌入式微系統(tǒng)msOS成型記之一:何為嵌入式微系統(tǒng)

          嵌入式微系統(tǒng)msOS成型記之一:何為嵌入式微系統(tǒng)

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

            ,顧名思義就是嵌入式微型操作系統(tǒng),然而操作系統(tǒng)一詞在嵌入式行業(yè)里往往專指之類的帶任務(wù)切換的系統(tǒng),所以為了有別于這個(gè)專用名詞,往往用開發(fā)平臺(tái)一詞來(lái)代替,所以更準(zhǔn)確的名字為嵌入式微型開發(fā)平臺(tái)。

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

            大家肯定會(huì)問,這樣的嵌入式操作系統(tǒng)跟到底有什么區(qū)別,那么我們就要從項(xiàng)目需求開始說(shuō)起。

            某個(gè)公司需要在嵌入式芯片(MCU51或者STM32)上開發(fā)一個(gè)控制項(xiàng)目,涉及LCD界面、多種不同接口速度的外設(shè)、多種不同速度的業(yè)務(wù)邏輯控制,下圖為常見的一種工業(yè)自動(dòng)化項(xiàng)目需求。

            

           

            作為項(xiàng)目負(fù)責(zé)人,首先要分析清晰項(xiàng)目需求,假設(shè)這個(gè)項(xiàng)目有點(diǎn)復(fù)雜,涉及多路采樣及多路PWM輸出,所以選擇STM32之類的高性能處理器,之后再考慮軟件設(shè)計(jì)。

            這個(gè)項(xiàng)目設(shè)計(jì)到多路輸入傳感器及多路輸出,有高速的業(yè)務(wù)邏輯控制,也有低速的菜單界面,為了把低速的菜單界面與高速的業(yè)務(wù)邏輯分開獨(dú)立編程,所以引入嵌入式操作系統(tǒng),比如,會(huì)方便程序設(shè)計(jì)。

            uC/OS除了任務(wù)切換功能等有限的功能外,沒有別的,所以其它的東西還是需要我們自己添加,菜單界面就是一個(gè)。界面編程里面,簡(jiǎn)單的界面用狀態(tài)機(jī)還比較容易編程,但若涉及到稍微復(fù)雜一點(diǎn)的界面,傳統(tǒng)的狀態(tài)機(jī)編程思想就完全不適合了,代碼很難維護(hù)修改,為了提高可維護(hù)性,需要引入一個(gè)標(biāo)準(zhǔn)的菜單界面編程庫(kù)(GUI),雖然現(xiàn)在網(wǎng)上也有不少,但適合自己的卻很難找,往往需要自己編寫一套菜單界面庫(kù),這個(gè)工作量很大,難度也很難,最后往往退回到傳統(tǒng)狀態(tài)機(jī)菜單編程方式。

            其它的硬件相關(guān)的設(shè)備驅(qū)動(dòng)庫(kù),都需要自己來(lái)完成,比如按鍵、串口、步進(jìn)驅(qū)動(dòng)等等。若這個(gè)項(xiàng)目需要多人協(xié)同開發(fā)、長(zhǎng)期維護(hù),則還需要制定架構(gòu)標(biāo)準(zhǔn),一些接口規(guī)范,命名標(biāo)準(zhǔn),而這么多的要求,對(duì)于大部分的小、微型企業(yè)的嵌入式項(xiàng)目負(fù)責(zé)人來(lái)說(shuō),要求太高了。所以最后這個(gè)項(xiàng)目負(fù)責(zé)人,往往自己一個(gè)人埋頭苦干,什么標(biāo)準(zhǔn)什么規(guī)范都沒有,經(jīng)過較長(zhǎng)的一段時(shí)間開發(fā)加上后期的修修補(bǔ)補(bǔ),項(xiàng)目勉強(qiáng)的交差了。然而當(dāng)這個(gè)負(fù)責(zé)人離職的時(shí)候,面臨著無(wú)人接手的窘境。

            我們?cè)倏聪M(fèi)類電子產(chǎn)品的開發(fā)模式,以MTK6225功能手機(jī)為例,RTOS采用Nucleus,菜單界面軟件庫(kù)采用PlutoMMI,此外還需要多媒體、文件系統(tǒng),電話本、短消息等中間件,之后是各種硬件設(shè)備驅(qū)動(dòng),整個(gè)軟件架構(gòu)類似ARM公司提倡的CMSIS架構(gòu)。

            

           

            MTK提供了整套硬件參考設(shè)計(jì)、PCB設(shè)計(jì)、生產(chǎn)流程、測(cè)試流程,軟件開發(fā)標(biāo)準(zhǔn)??蛻敉ㄟ^不長(zhǎng)的時(shí)間培訓(xùn)即可掌握手機(jī)的開發(fā)設(shè)計(jì),一般10來(lái)人的手機(jī)設(shè)計(jì)公司,在具有一定的手機(jī)設(shè)計(jì)經(jīng)驗(yàn)的基礎(chǔ)上,只需要2、3個(gè)月就可以設(shè)計(jì)出一款MTK提供的參考手機(jī),之后公司基于這個(gè)參考手機(jī)做硬件上的機(jī)型改進(jìn)及軟件上的界面調(diào)整即可。到了Android時(shí)代更是簡(jiǎn)單了,因?yàn)锳ndroid軟件屬于通用軟件,所以軟件更是不需要培訓(xùn)了。

            其他消費(fèi)類電子,比如以前的VCD、DVD、MP3、MP4等等,都采用類似的方式,只有采用這種方式,源頭廠家才可以快速的切入市場(chǎng),并且可以同時(shí)管理、維護(hù)很多下游客戶,比如MTK的下游山寨手機(jī)公司上千家,大的手機(jī)廠家也有近百家之多。因?yàn)椴捎昧藰?biāo)準(zhǔn)的設(shè)計(jì)模版,應(yīng)用開發(fā)、客戶維護(hù)人員都不是很多,尤其是維護(hù)人員,大大降低,獲得高額的利潤(rùn)。而因?yàn)椴捎脴?biāo)準(zhǔn)通用的軟件架構(gòu)平臺(tái),迅速的培養(yǎng)了大量的通用手機(jī)軟件人員,而這些軟件人員都可以在各個(gè)手機(jī)公司立即干活,不存在更換一個(gè)公司之后還需要培訓(xùn)的問題,這樣下游廠家也不需要擔(dān)心人才流動(dòng)引起的工作交接問題。

            從以上例子可以看到,通用標(biāo)準(zhǔn)化的開發(fā)設(shè)計(jì),帶來(lái)的好處是巨大的:提高了開發(fā)效率、縮短了開發(fā)周期、便于產(chǎn)品長(zhǎng)期維護(hù),容納更多的下游客戶。

            到今天已經(jīng)完善,也有大量的實(shí)際使用例子,比如PID算法庫(kù)、步進(jìn)驅(qū)動(dòng)庫(kù)及擴(kuò)展大屏幕串口屏等,非常適合于工業(yè)場(chǎng)合,形成了一個(gè)控制體系。很多網(wǎng)友基于應(yīng)用于自己的項(xiàng)目中了。

          注:本文為連載性質(zhì),總計(jì)十二篇。

          pid控制相關(guān)文章:pid控制原理




          關(guān)鍵詞: 嵌入式微系統(tǒng) msOS uC/OS

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