內容簡介
ARM Cortex-M3嵌入式開發及應用(STM32係列)(電子設計與嵌入式開發實踐叢書)采用由簡到難的編寫思路,
首先介紹簡單嵌入式發展趨勢和概念,然後逐步到功能性開發,舉例分析,最後加深難度,介紹高級應用,從而使讀者很容易理解和消化。全書共10章,第1~3章介紹瞭嵌入式係統的基本概念、常用芯片、工具和嵌入式係統的開發過程; 第4章介紹瞭配套學習闆的原理圖和設計思路; 第5~7章介紹瞭STM32的基本使用和各種外設的驅動以及開發應用,並列舉瞭各種典型的應用實例; 第8章介紹瞭μc/OS�並蛟贇TM32上的應用情況; 第9章詳細介紹瞭STM32嵌入式係統中可以使用的一些經典實用算法; 第10章從實用角度列舉瞭支持MODBUS通信協議的通用控製器開發實例。
本書中列舉的實例具有一定難度,適閤具有一定嵌入式基礎的讀者使用,初學者請參考本書提供的共享資料和開發闆的應用代碼。本書的編寫強調實用性和易用性,希望能解決讀者學習和開發過程中的一些實際睏難和問題。
內頁插圖
目錄
第1章嵌入式係統開發技術
1.1嵌入式開發的基本概念
1.1.1嵌入式係統的基本組成
1.1.2嵌入式係統的特點
1.2嵌入式係統發展曆史與現狀
1.3嵌入式係統的組成
1.3.1硬件層
1.3.2中間層
1.3.3係統軟件層
1.4嵌入式係統相關概念
1.4.1嵌入式處理器
1.4.2嵌入式外圍設備
1.4.3嵌入式操作係統
1.4.4嵌入式應用軟件
1.5應用領域
第2章ARM技術概述
2.1ARM體係構架
2.1.1哈佛結構
2.1.2馮·諾依曼結構
2.2ARM的RISC結構特性
2.3常用ARM處理器係列
2.4ARM體係結構和技術特徵
2.5ARM的流水綫
2.6Thumb指令集
2.7Thumb��2指令集
第3章基於STM32的嵌入式係統應用開發
3.1STM32F103係列MCU簡介
3.1.1MCU基本功能
3.1.2係統性能分析
3.2低功耗版本STM32L係列
3.3STM32的開發工具
3.4STM32的固件庫文件
3.5STM32的啓動文件
3.6JTAG簡介
3.7JTAG調試STM32F103過程
3.8SWD仿真模式
3.9JTAG接口及仿真器接口定義
3.10ISP下載器及常用工具
ARM Cortex-M3嵌入式開發及應用(STM32係列)
第4章DevStm 4.0開發闆硬件及設計
4.1電源電路
4.2MCU外圍電路
4.3復位電路
4.4晶振電路
4.5啓動模式設置電路
4.6EEPROM電路
4.7串口電路
4.8RS485接口電路
4.9SD卡接口電路
4.10JTAG電路
4.11按鍵檢測電路
4.12開關檢測電路
4.13網絡接口電路
4.14PWM驅動LED電路
4.15片載A/D轉換電路
4.16AD7708 16位高精度A/D轉換電路
4.17CAN總綫接口電路
4.18OLED顯示接口電路
4.19繼電器驅動電路
4.20SeiSite接口
4.21開發闆原件PCB布局及接口指示說明
第5章STM32基本應用技術
5.1GPIO通用輸入/輸齣接口
5.1.1GPIO端口結構
5.1.2GPIO口輸入/輸齣模式
5.1.3GPIO的庫函數操作
5.1.4GPIO使用示例
5.2係統滴答定時器
5.2.1SysTick端口結構
5.2.2SysTick操作相關的庫函數
5.2.3SysTick使用示例
5.3復位、係統時鍾及實時時鍾RTC
5.3.1復位
5.3.2時鍾
5.3.3復位及時鍾操作相關的庫函數
5.3.4時鍾使用示例
5.4NVIC嵌套嚮量中斷控製器
5.4.1中斷優先級
5.4.2中斷函數定義
5.4.3NVIC操作相關的庫函數
5.4.4NVIC使用示例
5.5EXTI外部中斷
5.5.1GPIO外部中斷
5.5.2EXTI操作相關的庫函數
5.5.3EXTI使用示例
5.6電源控製PWR
5.6.1獨立的A/D轉換器供電和參考電壓
5.6.2電池備份區域
5.6.3電壓調節器
5.6.4電源管理器
5.6.5低功耗模式
5.6.6低功耗模式下的自動喚醒
5.6.7PWR操作相關的庫函數
5.6.8PWR使用示例
第6章STM32F103的進階設計及應用
6.1TIMx定時器
6.1.1TIM1和TIM8高級定時器
6.1.2普通定時器TIMx
6.1.3基本定時器TIM6和TIM7
6.1.4定時器相關的時鍾源
6.1.5計數器模式
6.1.6定時器操作相關的庫函數
6.1.7TIMx使用示例
6.2外設DMA技術
6.2.1DMA基本概念
6.2.2DMA1和DMA2請求詳錶
6.2.3DMA操作相關的庫函數
6.2.4DMA使用示例
6.3備份域寄存器
6.3.1BKP的工作機製
6.3.2BKP操作相關的庫函數
6.3.3BKP使用示例
6.4ADC模/數轉換器
6.4.1ADC主要特徵
6.4.2ADC功能介紹
6.4.3ADC操作相關的庫函數
6.4.4ADC使用示例
6.5DAC數/模轉換器
6.5.1DAC的主要特徵
6.5.2DAC的功能介紹
6.5.3DAC操作相關的庫函數
6.5.4DAC使用示例
6.6看門狗定時器
6.6.1看門狗應用介紹
6.6.2獨立看門狗IWDG
6.6.3窗口看門狗WWDG
6.6.4看門狗操作相關的庫函數
6.6.5看門狗使用示例
第7章STM32F103的通信接口及應用
7.1USART串行通信技術
7.1.1USART介紹
7.1.2USART主要特性
7.1.3USART功能概述
7.1.4USART操作相關的庫函數
7.1.5USART使用示例
7.2SPI通信接口應用
7.2.1SPI簡介
7.2.2SPI和I2S主要特徵
7.2.3SPI功能介紹
7.2.4時鍾信號的相位和極性
7.2.5SPI工作模式
7.2.6SPI操作相關的庫函數
7.2.7SPI使用示例
7.3I2C通信接口應用
7.3.1I2C主要特點
7.3.2I2C功能描述
7.3.3I2C從模式
7.3.4SDA/SCL綫控製
7.3.5SMBus介紹
7.3.6I2C操作相關的庫函數
7.3.7I2C使用示例
7.4CAN總綫通信接口應用
7.4.1bxCAN介紹
7.4.2bxCAN主要特點
7.4.3bxCAN總體描述
7.4.4bxCAN工作模式
7.4.5測試模式
7.4.6CAN操作相關的庫函數
7.4.7CAN使用示例
7.5SDIO接口應用
7.5.1SD卡內部及引腳示意圖
7.5.2SD卡及SPI模式引腳名稱
7.5.3Micro SD引腳示意圖
7.5.4SD模式
7.5.5SDIO操作相關的庫函數
7.5.6SDIO使用示例
第8章μC/OS�並蛟贇TM32上的應用
8.1μC/OS�並虻姆⒄估�史
8.2μC/OS�並蛺逑到峁�
8.2.1任務管理
8.3.2時間管理
8.2.3內存管理
8.2.4通信同步
8.3μC/OS�並蜆丶�函數
8.4μC/OS�並蛑卸媳喑�
8.5μC/OS�並虻難�習方法
8.6μC/OS�並虻氖褂檬道�解析
第9章STM32中嵌入式應用信號處理算法
9.1綫性濾波算法
9.1.1卡爾曼濾波算法應用
9.1.2卡爾曼濾波算法機理
9.1.3簡單例子
9.2常用濾波算法
9.2.1程序判數濾波
9.2.2中值濾波
9.2.3滑動算術平均值濾波
9.2.4滑動加權平均值濾波
9.2.5防脈衝乾擾平均值濾波
9.2.6低通數字濾波
9.3PID過程控製算法
9.3.1模擬控製係統
9.3.2微機過程控製係統
9.3.3數字控製係統
9.3.4模擬PID調節器
9.3.5數字PID控製器
9.3.6PID算法的程序流程
9.3.7標準PID算法的改進
9.3.8積分項的改進
9.3.9采樣周期的選擇
9.3.10數字PID控製的參數選擇
9.3.11數字PID控製的工程實現
9.3.12偏差處理
9.4開關量濾波算法
第10章STM32開發工業級控製器應用
10.1工業級控製器的基本要求
10.2基於STM32F103設計的工業級控製器設計原理圖
10.3硬件關鍵設計驅動解析
10.3.1光耦隔離輸入檢測電路
10.3.2基於達靈頓管的信號繼電器驅動
10.3.3OLED顯示驅動接口驅動
10.4Modbus通信協議
10.4.1Modbus協議概述
10.4.2Modbus協議的數據幀
10.4.3Modbus RTU通信結構模型
10.4.4Modbus RTU協議的實現
參考文獻
前言/序言
嵌入式係統被描述為“以應用為中心、軟件硬件可裁剪的、適應應用係統對功能、可靠性、成本、體積、功耗等嚴格綜閤性要求的專用計算機係統”,由嵌入式硬件和嵌入式軟件兩部分組成。硬件是支撐,軟件是靈魂,幾乎所有的嵌入式産品中都需要嵌入式軟件來提供靈活多樣而且應用特製的功能。由於嵌入式係統應用廣泛,嵌入式軟件在整個軟件産業中占據瞭重要地位,並受到世界各國的廣泛關注,如今已成為信息産業中最為耀眼的“明星”之一。
從20世紀90年代開始,以計算機技術、通信技術和軟件技術為核心的信息技術取得瞭更加迅猛的發展。計算機技術也開始進入一個被稱為後PC技術的時代。
20多年來,嵌入式操作係統得到飛速的發展: 微處理器從8位到16位、32位甚至64位; 從支持單一品種的CPU芯片到支持多品種的; 從單一內核到除瞭內核外還提供其他功能模塊,如文件係統、TCP/IP網絡係統、窗口圖形係統等,並形成包括嵌入式操作係統、中間平颱軟件在內的嵌入式軟件體係。硬件技術的進步,推動瞭嵌入式係統軟件嚮運行速度更快、支持功能更強、應用開發更便捷的方嚮不斷發展。
各種裝備與設備上嵌入式計算與係統的廣泛應用大大地推動瞭行業的滲透性應用。各種各樣的新型嵌入式係統設備在應用數量上已經遠遠超過通用計算機,任何一個普通人可能擁有從大到小的各種使用嵌入式技術的電子産品,小到MP3、PDA等微型數字化産品,大到網絡傢電、智能傢電、車載電子設備。而在工業和服務領域中,使用嵌入式技術的數字機床、智能工具、工業機器人、服務機器人也將逐漸改變瞭傳統的工業和服務方式。
隨著嵌入式係統應用的不斷深入和産業化程度的不斷提升,新的應用環境和産業化需求對嵌入式係統軟件提齣瞭更加嚴格的要求。在新需求的推動下,嵌入式操作係統內核不僅需要具有微型化、高實時性等基本特徵,還將嚮高可信性、自適應性、構件組件化方嚮發展; 支撐開發環境將更加集成化、自動化、人性化; 係統軟件對無綫通信和能源管理的功能支持將日益重要。
本書主要內容來自於我們研發團隊實踐,是研發團隊多年來開發嵌入式係統積纍的經驗匯集,內容更重要地契閤於嵌入式開發應用的實踐。本書以STM32F103MCU應用為主要內容,詳細介紹瞭STM32F103係列MCU的各種功能及其擴展應用,並且列舉瞭這些功能應用的實例。這些實例都是經過嚴格測試、可直接應用到實踐中的例程應用。讀者可以根據自身的需求和功能進行訂製和修改。本書所列舉的代碼都是基於3.5版本最新的庫函數驅動。
主要內容
本書采用由簡到難的編寫思路,首先介紹簡單嵌入式發展趨勢和概念,然後逐步到功能性開發,舉例分析,最後加深難度,介紹到高級應用,從而使讀者很容易進行理解和消化。第1~3章介紹瞭嵌入式係統的基本概念、常用芯片、工具和嵌入式係統的開發過程; 第4章介紹瞭配套學習闆的原理圖和設計思路; 第5~7章介紹瞭STM32的基本使用和各種外設的驅動以及開發應用,並列舉瞭各種典型的應用實例; 第8章介紹瞭μC/OS�並蛟贇TM32上的應用情況; 第9章詳細介紹瞭STM32嵌入式係統中可以使用的一些經典實用算法; 第10章從實用角度列舉瞭支持MODBUS通信協議的通用控製器開發實例。
本書中列舉的實例具有一定難度,適閤具有一定基礎的讀者使用,初學者請參考所帶光盤和開發闆的應用代碼。本書的編寫強調實用性和易用性,希望能解決讀者學習和開發過程中的一些實際睏難和問題。
讀者群定位
本書的讀者需要具有一定的C語言、單片機以及硬件設計基礎,適閤從事嵌入式開發的技術人員、STM32的初學者以及大專院校電子類專業的學生,也適閤從8位、16位跨越到32位MCU開發平颱的開發人員。本書可以作為大專院校課程設計、畢業設計或者電子競賽的培訓和指導教材,也可作為本、專科的單片機和嵌入式係統相關的教材。
書中包含代碼下載使用
本書中所包含的代碼測試程序均可在WWW.SEIPHER.COM下載,下載內容包括: 開發闆的各項功能測試代碼、已經移植好的μC/OS Ⅱ的模闆代碼,讀者可以直接下載和編譯。編譯環境為Keil MDK 5.0以上版本。
讀者可以直接使用例程中的代碼開發新的應用,並快速完成新産品的開發。
聯係作者
讀者在使用本書的過程中,如果遇到相關的技術問題,或者對DevStm 4.0開發闆有興趣,可以通過電子郵件和作者聯係,作者將盡最大努力與廣大讀者一起解決開發過程中遇到的問題,共同進步。
緻謝
本書在編寫過程中,得到瞭作者所在公司同事和傢人的理解和大力支持,清華大學齣版社劉星編輯也做瞭大量的支持工作,感謝王長樂、趙偉萍分彆審閱瞭本書的相關章節內容。
本書編寫過程中參考瞭大量的文獻資料,一些資料來源於互聯網和開源社區,書後的參考文獻未能一一列舉,再次對原作者和開源社區錶示誠摯的謝意。
由於作者水平有限,加之編寫時間倉促,書中難免存在不足和疏漏之處,敬請讀者批評指正。
作者
2016年6月
ARM Cortex-M3嵌入式開發及應用(STM32係列)/電子設計與嵌入式開發實踐叢書 下載 mobi epub pdf txt 電子書