微控制器等小的mcu一般都有外部匯流排,可以用來接真彩lcd(非同步匯流排介面tft顯示屏)。手機上,大部分都是用同步(先給出乙個位址,然後連續的刷資料)介面的屏。
arm7:工業控制、手機;
arm9:影象顯示;
cortex-a:高效能的應用:手機、山寨本;
cortex-m:低端的應用;
cortex-r:中端的應用,比較少見;
一般情況下,前面的一些中斷(比如前15種)是由arm公司自己設計的,並且是固定的,後面的部分中端則是由不同的晶元廠家定義的。
system timer 即systick,在沒有os時,可以作為通用的定時器使用。在需要os時,可以作為os的系統時鐘。
目前,很多的處理中都會有這樣的現象,同一中斷的禁止和使能分別由不同的暫存器控制。禁止該中斷時,向中斷遮蔽暫存器中對應的位寫入1,使能該中斷時,向中斷使能暫存器的對應位寫入1。
這樣分開控制的好處是:
a.不用將中斷控制暫存器的值先讀出來,進行或運算後再寫回去;
b.直接寫1,不會影響到其它位所控制的中斷;
在處理器電平與外設電平不匹配時可以使用。
若某輸入引腳懸空,有漏電流,會耗電。判斷方法:用手摸時,電流會變動。
a.將不用的引腳設定為0或者1的輸出模式;
b.若配置為輸入引腳,應將內部上拉開啟;
在系統睡眠時,應該將adc和dac關掉,否則會耗電。
a.不要在中斷中餵狗;
b.餵狗越沒有規律越好;
c.如果在任務中餵狗,一定要把餵狗操作放在最低優先順序的任務中,這樣才能確保正常工作的task都被排程到。
sda和scl都是雙向的,開漏驅動的,使用時要加上拉電阻。
i2c協議的通訊過程:
a.傳送start訊號(誰傳送start訊號,誰就是主機)
b.傳送從位址
c.傳輸資料
d.傳送stop訊號
每傳送乙個位元組(8 bit)就要等待從機的ack。
用軟體模擬的i2c匯流排有如下缺點:
a.不能進行匯流排仲裁
b.由於要一直檢測時鐘訊號,因此難於實現從裝置;
很多mcu的邏輯0頁可以任意對映,這樣就可以在flash中燒寫多個系統。通過配置位元組配置系統從不同的位址啟動,這樣可以實現公升級。
嵌入式處理器 常見問題
1.在arm指令集彙編碼中,32位有效立即數是通過迴圈左移偶數字而間接得到的。2.mrs 傳送cpsr或spsr的內容到通用暫存器指令 msr 傳送通用暫存器到cpsr或spsr的指令 3.ldr 字資料載入 4.ios的前身是unix bsd 5.目前數位相機用於儲存相片的大多是flash儲存器 ...
嵌入式Linux基礎 陣列的常見問題
1.c語言處理陣列優點。除少數編譯器出於謹慎考慮會做一些繁瑣的規定外,c語言的陣列下標是在乙個很低的層次上處理的。陣列和指標能非常和諧地在一起工作。將陣列作為引數傳遞給函式時可以使用值傳遞和位址傳遞兩種方式,前者需要完整的複製初始陣列,但比較安全 後者的速度要快得多。2.陣列的下標 陣列的下標總是從...
嵌入式開發中串列埠問題
用筆記本,往往沒有串列埠,一般用usb轉串列埠,總結了下,首先一般這個轉換器都是pl2303的,可以在配套的驅動資料夾下看到乙個pl2303.dat的資料夾,就是它了。window下,用dnw或者securecrt,有時會出現不通,或者不能從pc鍵盤輸入,現在就是這樣 這個時候,確認線是接好的,然後...