《深入淺出嵌入式底層軟件開發(fā)》包含ARM裸機程序開發(fā)、嵌入式Linux系統(tǒng)建構、Linux驅動程序開發(fā)三部分。從軟硬件的分界面開始,循序漸進,逐一詳細介紹嵌入式底層軟件開發(fā)的各個技術要點,技術體系全面;既有一定的理論,但更加強調實戰(zhàn)性;深入淺出,能讓讀者以最少的時間成本代價獲得嵌入式底層軟件開發(fā)的技術精髓。
《深入淺出嵌入式底層軟件開發(fā)》適合硬件工程師、軟件工程師、嵌入式軟件的從業(yè)人員、教授嵌入式軟件開發(fā)課程的老師、意欲從事嵌入式軟件開發(fā)工作的大學生閱讀。
楊鑄,電子科技大學通信與信息工程工學碩士;北京郵電大學工學學士學位,專業(yè)為計算機軟件。作為主要組織人員,組織完成了中國移動四川分公司最早的短信系統(tǒng)平臺的建設;早期專注于Microsoft的OS和Database的技術研究與職業(yè)培訓,是微軟在中國的早期MCT之一,MCP號1694198;參與完成國家863計劃項目——信息安全產品演示和驗證平臺的子課題并與合作公司完成產品化開發(fā)—內部網絡監(jiān)管系統(tǒng);中后期專注于嵌入式軟件開發(fā)的研究與職業(yè)培訓,精于ARM體系結構與嵌入式Linux。
第1篇 ARM體系結構與編程
第1章 ARM匯編編程基礎
1.1 ARM CPU寄存器
1.1.1 普通寄存器R0~Rl5
1.1.2 狀態(tài)寄存器CPSR與SPSR
1.1.3 流水線對PC的值的影響
1.2 基本尋址方式與基本指令
1.2.1 最常見尋址方式精解
1.2.2 最常見指令精解
1.3 ARM匯編偽操作
1.3.1 匯編偽操作在匯編程序中的使用范例
1.3.2 最常見匯編偽操作精解
1.3.3 匯編偽操作列表
1.4 ADS開發(fā)環(huán)境的使用
1.4.1 在ADS中進行裸機程序的編輯、編譯、運行
1.4.2 在AXD中進行裸機程序調試的方法與步驟
1.5 RealView MDK開發(fā)環(huán)境的使用
1.5.1 在MDK開發(fā)環(huán)境下編寫裸機程序
1.5.2 MDK調試裸機程序的方法與步驟
1.6 其他常見尋址模式與常見指令
1.6.1 其他常見尋址模式
1.6.2 其他常見指令
第2章 ARM編程進階
2.1 ARM匯編偽指令
2.1.1 精解ldr偽指令
2.1.2 精解adr
2.1.3 精解adrl偽指令
2.1.4 nop偽指令
2.2 ATPCS與混合編程
2.2.1 ATPCS規(guī)則精解
2.2.2 精解C和ARM匯編程序間的相互調用
2.3 裸機硬件的控制方法與例程
2.3.1 建立真實硬件的開發(fā)和調試環(huán)境
2.3.2 軟件控制(驅動)硬件的編程原理
2.3.3 裸機硬件控制程序實例
2.3.4 啟動例程
2.4 看門狗定時器
2.4.1 看門狗定時器的用途
2.4.2 看門狗工作原理
2.4.3 看門狗實驗
2.5 系統(tǒng)時鐘
2.5.1 系統(tǒng)工作時鐘頻率
2.5.2 時鐘驅動實驗
2.6 SDRAM內存
2.6.1 3C2440存儲器地址段(Bank)
2.6.2 SDRAM內存工作原理
2.6.3 SDRAM的讀操作
2.6.4 SDRAM預充電操作
2.6.5 SDRAM突發(fā)操作
2.6.6 SDRAM寫操作
2.6.7 SDRAM的刷新
2.6.8 內存驅動實驗
2.7 UART串口
2.7.1 同步通信和異步通信
2.7.2 數(shù)據(jù)的串行和并行通信方式
……
第2篇 嵌入式Linux系統(tǒng)建構
第3篇 Linux驅動程序開發(fā)
參考文獻