嵌入式系統開發學習(1)

來源:互聯網
上載者:User

標籤:

嵌入式系統開發流程

嵌入式系統的一般開發流程如下:

嵌入式作業系統
  • 管理資源
  • 提高系統可靠性
  • 硬體虛擬化
  • 即時效能
  • 多任務

現有的嵌入式作業系統
VxWorks pSOS PalmOS QNX OS-9 LynxOS WindowsCE uC/OS 嵌入式Linux FreeRTOS

ARM體系架構

ARM:Advanced RISC Machines
ARM處理器共有37個寄存器,分為若干個組(BANK)。
大多數資料操作都在寄存器中完成。

ARM分類

ARM7: 32bit 馮-諾依曼體繫結構

電腦處理的資料和指令一律用位元表示;順序執行;電腦硬體由運算器、控制器、儲存空間、輸入裝置和輸出裝置五大部分組成。

ARM9: 32bit 哈佛結構
使用兩個獨立的儲存空間模組,分別儲存指令和資料,每個儲存模組都不允許指令和資料並存;
使用獨立的兩條匯流排,分別作為CPU與每個儲存空間之間的專用通訊路徑,而這兩條匯流排之間毫無關聯。

ARM10E:支援DSP指令集

ARM11
SecureCore
StrongARM
Xscale
Cortex-M3

大端格式和小端格式

16bit寬的數0x1234在Little-endian模式(以及Big-endian模式)CPU記憶體中的存放方式(假設從地址0x4000開始存放)為:

記憶體位址 小端模式存放內容 大端模式存放內容
0x4000 0x34 0x12
0x4001 0x12 0x34

32bit寬的數0x12345678在Little-endian模式以及Big-endian模式)CPU記憶體中的存放方式(假設從地址0x4000開始存放)為:

記憶體位址 小端模式存放內容 大端模式存放內容
0x4000 0x78 0x12
0x4001 0x56 0x34
0x4002 0x34 0x56
0x4003 0x12 0x78

大端小端沒有誰優誰劣,各自優勢便是對方劣勢:
小端模式 :強制轉換資料不需要調整位元組內容,1、2、4位元組的儲存方式一樣。
大端模式 :符號位的判定固定為第一個位元組,容易判斷正負。

下面這段代碼可以用來測試一下你的編譯器是大端模式還是小端模式:

short int x; //short int 16bitchar x0,x1; //char 8bitx=0x1122;x0=((char*)&x)[0];  //低地址單元x1=((char*)&x)[1];  //高地址單元

若x0=0x11,則是大端; 若x0=0x22,則是小端……

參考http://blog.csdn.net/blog_lee/article/details/38926379

嵌入式系統開發學習(1)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.