亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        eBox構(gòu)建STM32快速輔助開發(fā)系統(tǒng)

        2016-05-30 04:13:01申同強(qiáng)宋國志荊淑霞
        關(guān)鍵詞:開發(fā)應(yīng)用程序創(chuàng)新

        申同強(qiáng) 宋國志 荊淑霞

        摘 要:eBox是一個(gè)運(yùn)行在STM32平臺上的涵蓋了驅(qū)動(dòng)層、系統(tǒng)層、標(biāo)準(zhǔn)應(yīng)用軟件層、用戶軟件層和bootloader的軟硬件一體化的解決方案。豐富的標(biāo)準(zhǔn)驅(qū)動(dòng)和標(biāo)準(zhǔn)應(yīng)用,像用Arduino那樣方便,性能又遠(yuǎn)高于arduino。操作系統(tǒng)的支持讓eBox滿足多任務(wù)系統(tǒng)的需求;標(biāo)準(zhǔn)應(yīng)用提供多種控制算法、通信協(xié)議,滿足不同應(yīng)用場所的需求。

        關(guān)鍵詞:STM32;應(yīng)用程序;創(chuàng)新;開發(fā)

        1 STM32開發(fā)現(xiàn)狀

        就目前的開發(fā)方式而言,國內(nèi)并沒有一套完整的生態(tài)系統(tǒng),來支持用戶的快速開發(fā),影響了企業(yè)開發(fā)的效率。主要原因有以下幾點(diǎn):

        ①官方固件庫是面向STM32本身設(shè)計(jì)的,接口不夠友好,使用比較困難,用戶必須十分了解STM32本身特性,才能應(yīng)用其固件庫。

        ②驅(qū)動(dòng)問題:由于設(shè)計(jì)電路板的差異性,會導(dǎo)致同樣的芯片驅(qū)動(dòng)程序無法在不同的電路板上運(yùn)行,需要一個(gè)移植過程,移植非常困難。這樣就導(dǎo)致用戶永遠(yuǎn)無法避免移植的問題。

        ③缺少標(biāo)準(zhǔn)應(yīng)用程序庫的積累:由于工程師沒有一個(gè)很好的架構(gòu)控制,不能保證其代碼的高重復(fù)利用率,就會導(dǎo)致工程師要不斷的自己去重復(fù)這個(gè)開發(fā)過程。

        和Arduino相比雖然硬件資源更豐富,主頻更高,但是軟件發(fā)展卻遠(yuǎn)遠(yuǎn)不如Arduino發(fā)展的快。所以要重新整合STM32的軟硬件資源,將其系統(tǒng)化、結(jié)構(gòu)化。這樣在同一的架構(gòu)下才能保證慢慢的形成一個(gè)較為完備的生態(tài)系統(tǒng)。eBox就是一個(gè)完成這種系統(tǒng)化的軟件支持。

        2 eBox軟件系統(tǒng)

        2.1 eBox整體架構(gòu)

        eBox開發(fā)平臺致力于開創(chuàng)新的開發(fā)模式,簡化用戶開發(fā),增強(qiáng)代碼復(fù)用率,實(shí)現(xiàn)多人協(xié)同聯(lián)合開發(fā)。提供一套完整的開發(fā)解決方案,能適應(yīng)于工業(yè)現(xiàn)場、運(yùn)動(dòng)控制、數(shù)據(jù)采集處理、消費(fèi)類電子產(chǎn)品、物聯(lián)網(wǎng)等不同應(yīng)用場合的開發(fā)。

        良好的程序框架有利于多人同時(shí)開發(fā)的分工合作。統(tǒng)一的編程標(biāo)準(zhǔn)便于程序的移植和重復(fù)利用。一個(gè)龐大的工程如果沒有一個(gè)良好的程序結(jié)構(gòu)和統(tǒng)一的編程標(biāo)準(zhǔn),會導(dǎo)致程序耦合關(guān)系混亂、層次不明朗、代碼易讀性差、二次利用率低、難以維護(hù)等缺點(diǎn)。所以eBox軟件系統(tǒng)嚴(yán)格地規(guī)范了架構(gòu),來保證所有代碼能按照其特性進(jìn)行層次區(qū)分。

        2.2 面向?qū)ο缶幊?/p>

        eBox是基于c/c++編程實(shí)現(xiàn)的。采用c++的幾大優(yōu)勢:

        ①面向?qū)ο蟮乃悸房梢愿玫亟鉀Q問題。

        ②封裝性和隱蔽性:可以對一個(gè)對象進(jìn)行封裝處理,把它的一部分屬性和功能對外界屏蔽。這樣做的好處是大大降低了操作對象的復(fù)雜程度。

        ③抽象性:抽象的過程是將有關(guān)事物的共性歸納、集中的過程。抽象的作用是表示同一類事物的本質(zhì)。在eBox中,這種抽象應(yīng)用最多,最直觀的就是驅(qū)動(dòng)層。將一種外設(shè)芯片抽象出一個(gè)類。這個(gè)類包含了芯片的所有屬性和方法。

        2.3 外設(shè)固件庫

        外設(shè)固件庫是指STM32內(nèi)部的設(shè)備包括IO、UART、TIMER、SPI、IIC、RTC、FLASH、CAN、USB、WDG等設(shè)備。固件庫將所有外設(shè)以c++的方式重新封裝。為用戶提供人性化的用戶接口。以外設(shè)某種應(yīng)用特性作為初始化參數(shù)。

        外設(shè)固件庫除了支持所有MCU外設(shè)功能外,還提供了很多系統(tǒng)功能,方便用戶的使用,比如millis()、micros()服務(wù)為用戶提供了基本的時(shí)間戳服務(wù),delay_ms(),delay_us()提供標(biāo)準(zhǔn)的延時(shí)功能、random()為用戶提供隨機(jī)數(shù)產(chǎn)生的功能,還有很多字符串處理函數(shù)方便了用戶的字符串查找、替換、數(shù)字轉(zhuǎn)換。eBox固件庫為用戶提供了很多標(biāo)準(zhǔn)的常用函數(shù),這樣可以簡化用戶的編程,提高工程師開發(fā)的效率。

        2.3.1 串口

        2.3.2 使用示例

        從以上可以看出使用這種封裝方式可以大大簡化用戶的底層代碼復(fù)雜度。

        2.3.3 驅(qū)動(dòng)層

        eBox驅(qū)動(dòng)是指基于eBox固件庫針對某種芯片做的讀寫、控制程序它有標(biāo)準(zhǔn)的驅(qū)動(dòng)程序框架做限制,不能任意編寫,在eBox平臺上可以實(shí)現(xiàn)任意合理硬件的兼容性,可移植性。

        eBox驅(qū)動(dòng)模式徹解決變傳統(tǒng)STM32編程驅(qū)動(dòng)的移植性差、功能不齊全等問題。讓應(yīng)用工程師和驅(qū)動(dòng)工程師合理分工,加快項(xiàng)目開發(fā)進(jìn)度。驅(qū)動(dòng)可以多次利用,提高代碼使用價(jià)值。開源驅(qū)動(dòng)分享平臺可以為大家提供大量驅(qū)動(dòng)代碼,盡可能的包含更多的芯片驅(qū)動(dòng),方便用戶使用。

        2.3.4 驅(qū)動(dòng)層架構(gòu)

        2.3.5 按鍵驅(qū)動(dòng)架構(gòu)

        驅(qū)動(dòng)層很好地利用了c++類的特性。將非用戶信息進(jìn)行屏蔽,只留出擁護(hù)需要的方法。

        2.3.6 驅(qū)動(dòng)使用示例

        2.4 標(biāo)準(zhǔn)應(yīng)用層

        2.4.1 網(wǎng)絡(luò)通信

        eBox的網(wǎng)絡(luò)功能非常簡潔,功能也非常強(qiáng)大,給用戶提供了一套標(biāo)準(zhǔn)的socket接口,除此之外還有TCP、UDP、DNS等網(wǎng)絡(luò)支持,大大方便用戶對網(wǎng)絡(luò)的需求。

        2.4.2 文件系統(tǒng)

        文件系統(tǒng)是在嵌入式領(lǐng)域中經(jīng)常遇到的一個(gè)問題, eBox將此功能集成起來。留給用戶的只有fatfs的標(biāo)準(zhǔn)接口。如果用戶想在自己的board上使用eBox,只需修改sd的初始化的接口即可。

        當(dāng)然標(biāo)準(zhǔn)庫不僅僅包含這兩項(xiàng),還有很多其他的內(nèi)容比如常用數(shù)學(xué)庫、控制算法庫、色彩轉(zhuǎn)換庫等隨著不斷的發(fā)展會有更多的應(yīng)用庫加載進(jìn)來,工程師可根據(jù)自己的需求來選擇不同的庫實(shí)現(xiàn)自己的算法。

        3 總結(jié)

        eBox是借鑒Arduino的思路來對STM32編程進(jìn)行系統(tǒng)的改造,徹底改變STM32編程的分散化現(xiàn)狀,打造一個(gè)完整的生態(tài)系統(tǒng)。目前eBox可以支持STM32F103全系列MCU。在今后的發(fā)展中會不斷地把eBox移植到其他MCU平臺。例如8051、NXP、飛思卡爾等。再構(gòu)建一個(gè)超級生態(tài)圈,讓應(yīng)用層幾乎不做任何修改就可以實(shí)現(xiàn)跨平臺移植。這是eBox最終發(fā)展的目的。

        參考文獻(xiàn):

        [1]田軍鋒,林滸,姚壯,李杰.數(shù)控系統(tǒng)S型曲線加減速快速規(guī)劃研究[J].小型微型計(jì)算機(jī)系統(tǒng),2013(01).

        [2]于洋,劉平.S型速度曲線進(jìn)給率控制研究[J].制造技術(shù)與機(jī)床,2012(09).

        猜你喜歡
        開發(fā)應(yīng)用程序創(chuàng)新
        刪除Win10中自帶的應(yīng)用程序
        河南方言文化資源的保護(hù)及其開發(fā)利用的研究
        遵義紅色旅游開發(fā)對策研究
        基于J2EE和Ionic的ITer學(xué)習(xí)APP設(shè)計(jì)與開發(fā)
        單片機(jī)在電子技術(shù)中的應(yīng)用和開發(fā)
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        三星電子將開設(shè)應(yīng)用程序下載商店
        微軟軟件商店開始接受應(yīng)用程序
        亚洲精品国产第一区二区尤物| 国产三级视频不卡在线观看 | 国产精品一区二区电影| 四虎精品影视| 女同性恋精品一区二区三区| 中文字幕日韩人妻高清在线| 一本久道久久丁香狠狠躁| 一本色道久久亚洲综合| 亚洲av无码国产综合专区| 亚洲熟女乱色一区二区三区| 波多野结衣一区| 亚洲人成影院在线高清| 久久精品一区二区三区不卡牛牛| 东京热加勒比国产精品| 亚洲国产精品国自产拍久久蜜av| 48久久国产精品性色aⅴ人妻| 丰满少妇大力进入av亚洲| 中文字幕欧美一区| 人妻丰满少妇一二三区| 亚洲一区二区日韩精品| 亚洲av色影在线| 欧美成人精品午夜免费影视| 国产久视频国内精品999| 国产成人久久精品77777综合| 在线看片免费人成视久网不卡| 亚洲精品一品区二品区三区| 男人和女人做爽爽免费视频| 亚洲色www成人永久网址| 91情侣视频| 国产av一区二区网站| 日本一区二区三区免费播放| 久久97精品久久久久久久不卡| 成人亚洲欧美久久久久| 亚洲高清国产拍精品熟女| 国产三区三区三区看三区| 情人伊人久久综合亚洲| 亚洲综合色自拍一区| 伊人狠狠色j香婷婷综合| 蜜桃码一区二区三区在线观看| 国产午夜福利片在线观看| 免费观看性欧美大片无片|