什么是嵌入式系統(tǒng)?它的設計開發(fā)應該注意什么?嵌入式系統(tǒng)是一種專用的計算機系統(tǒng),作為裝置或設備的一部分。通常,嵌入式系統(tǒng)是一個控制程序存儲在ROM中的嵌入式處理器控制板。事實上,所有帶有數(shù)字接口的設備,如手表、微波爐、錄像機、汽車等,都使用嵌入式系統(tǒng),有些嵌入式系統(tǒng)還包含操作系統(tǒng),但大多數(shù)嵌入式系統(tǒng)都是由單個程序實現(xiàn)整個控制邏輯。
一個嵌入式系統(tǒng)裝置一般都由嵌入式計算機系統(tǒng)和執(zhí)行裝置組成,嵌入式計算機系統(tǒng)是整個嵌入式系統(tǒng)的核心,由硬件層、中間層、系統(tǒng)軟件層和應用軟件層組成。執(zhí)行裝置也稱為被控對象,它可以接受嵌入式計算機系統(tǒng)發(fā)出的控制命令,執(zhí)行所規(guī)定的操作或任務。執(zhí)行裝置可以很簡單,如手機上的一個微小型的電機,當手機處于震動接收狀態(tài)時打開;也可以很復雜,如SONY 智能機器狗,上面集成了多個微小型控制電機和多種傳感器,從而可以執(zhí)行各種復雜的動作和感受各種狀態(tài)信息。
從應用對象上加以定義,嵌入式系統(tǒng)是軟件和硬件的綜合體,還可以涵蓋機械等附屬裝置。國內普遍認同的嵌入式系統(tǒng)定義為:以應用為中心,以計算機技術為基礎,軟硬件可裁剪,適應應用系統(tǒng)對功能、可靠性、成本、體積、功耗等嚴格要求的專用計算機系統(tǒng)。下面就讓我們一起總結嵌入式設計開發(fā)中常見的11個問題。
1、單片機等小的外部總線
單片機等小的MCU一般都有外部總線,可以用來接真彩LCD(異步總線接口TFT顯示屏)。手機上,大部分都是用同步(先給出一個地址,然后連續(xù)的刷數(shù)據)接口的屏。
2、ARM處理器的應用場景
ARM7:工業(yè)控制、手機;
ARM9:圖像顯示;
Cortex-A:高性能的應用:手機、山寨本;
Cortex-M:低端的應用;
Cortex-R:中端的應用,比較少見;
3、ARM處理器的異常
一般情況下,前面的一些中斷(比如前15種)是由ARM公司自己設計的,并且是固定的,后面的部分中端則是由不同的芯片廠家定義的。
4、處理器的System Timer
System Timer 即Systick,在沒有OS時,可以作為通用的定時器使用。在需要OS時,可以作為OS的系統(tǒng)時鐘。
5、同一中斷的禁止和使能分別由不同的寄存器控制
目前,很多的處理中都會有這樣的現(xiàn)象,同一中斷的禁止和使能分別由不同的寄存器控制。禁止該中斷時,向中斷屏蔽寄存器中對應的位寫入1,使能該中斷時,向中斷使能寄存器的對應位寫入1。
這樣分開控制的好處是:
A.不用將中斷控制寄存器的值先讀出來,進行或運算后再寫回去;
B.直接寫1,不會影響到其它位所控制的中斷;
6、OD門輸出
在處理器電平與外設電平不匹配時可以使用。
7、如何設置IO的狀態(tài)以降低功耗
若某輸入引腳懸空,有漏電流,會耗電。判斷方法:用手摸時,電流會變動。
A.將不用的引腳設置為0或者1的輸出模式;
B.若配置為輸入引腳,應將內部上拉打開;
8、ADC和DAC
在系統(tǒng)睡眠時,應該將ADC和DAC關掉,否則會耗電。
9、看門狗的使用
A.不要在中斷中喂狗;
B.喂狗越沒有規(guī)律越好;
10、I2C總線
SDA和SCL都是雙向的,開漏驅動的,使用時要加上拉電阻。
I2C協(xié)議的通訊過程:
A.發(fā)送start信號(誰發(fā)送start信號,誰就是主機)
B.發(fā)送從地址
C.傳輸數(shù)據
D.發(fā)送stop信號
用軟件模擬的I2C總線有如下缺點:
A.不能進行總線仲裁
B.由于要一直檢測時鐘信號,因此難于實現(xiàn)從設備;
11、邏輯0頁
很多MCU的邏輯0頁可以任意映射,這樣就可以在flash中燒寫多個系統(tǒng)。通過配置字節(jié)配置系統(tǒng)從不同的地址啟動,這樣可以實現(xiàn)升級。以上就是嵌入式系統(tǒng)設計開發(fā)的一些注意事項,希望能給大家?guī)椭?