嵌入式微處理器原理與應用——基於ARM Cortex-M3微控制器(STM32系列)(第2版)
嚴海蓉、李達、杭天昊、時昕
相關主題
商品描述
目錄大綱
目錄
第1章緒論
1.1微處理器定義
1.2ARM發展歷程
1.3ARM體系結構與特點
1.4處理器選型
1.4.1嵌入式微處理器選型的考慮因素
1.4.2嵌入式微處理器選型示例
第2章ARM核體系結構
2.1寄存器
2.2ALU
2.3存儲部件
2.4中斷控制
2.5總線
2.6外圍接口I/O
2.7流水線
2.8ARM協處理器接口
第3章ARM指令集
3.1指令簡介
3.2ARM尋址方式
3.2.1數據處理指令的操作數的尋址方式
3.2.2字及無符號字節的Load/Store指令的尋址方式
3.2.3雜類Load/Store指令的尋址方式
3.2.4批量Load/Store指令的尋址方式
3.2.5協處理器Load/Store指令的尋址方式
3.3Cortex指令集
3.3.1數據傳送類指令
3.3.2數據處理指令
3.3.3其他計算類指令
3.3.4飽和運算
3.3.5無條件跳轉指令
3.3.6標志位與條件轉移指令
3.3.7IFTHEN指令塊
3.3.8Barrier隔離指令
3.3.9其他一些有用的指令
3.3.10對內存的互斥訪問
3.4偽指令
3.5內嵌匯編
第4章CortexM3特性
4.1特殊功能寄存器
4.2中斷建立全過程的演示
4.3復位序列
4.4中斷咬尾
4.5晚到異常
4.6位帶操作
4.7互斥訪問
第5章C語言與匯編語言混編
5.1ATPCS與AAPCS
5.2嵌入式C編寫與編譯
5.3C語言與匯編語言混編規範
5.3.1內嵌匯編
5.3.2匯編程序中訪問C全局變量
5.3.3C語言與匯編語言的相互調用
5.4C語言與匯編語言混編實踐
5.4.1Keil使用和STM32固件庫
5.4.2建立自己的第一個Keil程序
第6章STM32輸入/輸出
6.1pin配置
6.1.1單獨的位設置或位清除
6.1.2外部中斷/喚醒線
6.1.3復用功能
6.1.4軟件重新映射I/O復用功能
6.1.5GPIO鎖定機制
6.1.6輸入配置
6.1.7輸出配置
6.1.8復用功能配置
6.1.9模擬輸入配置
6.2輸入/輸出基本概念(寄存器、輸入/輸出類型)
6.2.1基本概念
6.2.2寄存器詳解
6.2.3復用I/O配置寄存器
6.2.4通用I/O和AFIO使用的配置步驟
6.3通用I/O鎖定機制
6.4系統時鐘
6.4.1時鐘配置
6.4.2時鐘輸出的使能控制
6.5輸入/輸出常用固件庫函數
6.5.1GPIO_DeInit函數
6.5.2GPIO_AFIODeInit函數
6.5.3GPIO_Init函數
6.5.4GPIO_StructInit函數
6.5.5GPIO_ReadInputDataBit函數
6.5.6GPIO_ReadInputData函數
6.5.7GPIO_ReadOutputDataBit函數
6.5.8GPIO_ReadOutputData函數
6.5.9GPIO_SetBits函數
6.5.10GPIO_ResetBits函數
6.5.11GPIO_WriteBit函數
6.5.12GPIO_Write函數
6.5.13GPIO_PinLockConfig函數
6.5.14GPIO_EventOutputConfig函數
6.5.15GPIO_EventOutputCmd函數
6.5.16GPIO_PinRemapConfig函數
6.5.17GPIO_EXTILineConfig函數
6.6GPIO控制LED燈
6.6.1硬件設計
6.6.2軟件設計
6.7GPIO控制蜂鳴器
6.7.1硬件設計
6.7.2軟件設計
6.8跑馬燈實驗
6.8.1硬件設計
6.8.2軟件設計
6.9LCD1602驅動
6.9.1硬件設計
6.9.2軟件設計
6.101wire總線
第7章串行通信模塊與中斷程序
7.1接口與通信標準
7.1.1I2C接口
7.1.2通用同步/異步收發器(USART)
7.1.3串行外設接口(SPI)
7.1.4控制器區域網絡(CAN)
7.1.5通用串行總線(USB)
7.2串口USART實例
7.3掃描鍵盤
7.4繼電器
7.5脈寬調制
7.6步進電動機
7.7GPS模塊定位數據讀取
7.7.1GPS模塊定位原理
7.7.2硬件設計
7.7.3軟件實現
7.8Profibus總線
7.8.1Profibus的組成
7.8.2Profibus的傳輸
7.8.3ProfibusDP實現案例
第8章STM32帶操作系統編程
8.1RAM、Flash啟動
8.2小型操作系統STM32移植
8.2.1μCOSⅡ內核簡介
8.2.2開始移植
8.2.3程序開發模式討論
第9章綜合案例
9.1硬件連接方式
9.2驅動軟件編寫
9.2.1串口通信
9.2.2數據採集
9.2.3小車的方向控制
9.2.4小車的速度控制
9.3ZStack軟件框架
9.3.1任務調度
9.3.2ZigBee無線傳輸系統開發
9.4電腦端程序開發
附錄ASTM32F10x.h中的定義
附錄BLCD1602程序