Cortex-M3 嵌入式系統開發 — STM32 單片機體系結構、編程與項目實戰 (微課視頻版)
薑付鵬、劉通、王英合
買這商品的人也買了...
-
$620$527 -
$1,380$1,352 -
$6,150$5,843 -
$8,230$7,819 -
$7,960$7,562 -
$330$314 -
$420$328 -
$301輕松玩轉 STM32Cube
-
$450$351 -
$280機器學習入門到實戰 — MATLAB 實踐應用
-
$620$527 -
$300$270 -
$680$537 -
$439STM32 自學筆記, 3/e
-
$500$390 -
$480$379 -
$414$393 -
$454OpenCV 4.5 電腦視覺開發實戰 (基於 VC++)
-
$834$792 -
$354$336 -
$560數字圖像處理與機器視覺 — Visual C++ 與 Matlab 實現, 2/e
-
$296STM32F4xx 嵌入式系統及通信接口開發案例
-
$474$450 -
$534$507 -
$714$678
相關主題
商品描述
本書從單片機應用的角度,系統的介紹STM32F107原理以及開發方法,共包含十六個篇章。 第一、二章是基礎篇,第一章介紹CrotexM3內核概況以及指令集,以及ST公司的STM系列單片機選型方法和開發工具。第二章介紹STM32F107單片機的的基礎架構以及存儲組織、時鐘、電源和啟動配置。 第四章介紹STM32F107單片機的NVIC和系統時鐘定時器。 第三章、第五章一直到第十三章是STM32F107單片機的外設篇,系統介紹了單片機的定時器、通信接口、ADC/DAC、USB、以太網接口等外設接口的原理和編程方法。 第十四章到十六章是進階篇,針對單片機應用的常用軟件技術,介紹了嵌入式界面設計方法、RTOS的使用、以及物聯網網關的設計方法。
目錄大綱
目錄
第1篇入門篇
第1章ARM及CortexM3概述
1.1ARM概述
1.1.1ARM公司
1.1.2RISC
1.1.3ARM微處理器
1.1.4ARM微處理器內核及其架構的發展簡史
1.2CortexM3內核
1.2.1Cortex內核的分類
1.2.2CM3內核的特點
1.2.3CM3內核的指令集
本章小結
第2篇準備篇
第2章天信通STM32F107開發板
2.1STM32系列MCU
2.2STM32F107芯片
2.3STM32F107開發板資源
本章小結
第3章MDK開發環境
3.1STM32官方固件庫
3.1.1庫開發與寄存器開發
3.1.2CMSIS
3.1.3STM32官方固件庫包
3.2MDK5簡介
3.3MDK5的安裝
3.3.1MDK5的安裝步驟
3.3.2MDK5的註冊
3.4基於固件庫新建工程模板
3.5程序的下載和調試
3.5.1程序的下載
3.5.2程序的調試
本章小結
第4章STM32基礎知識簡介
4.1STM32的系統架構
4.2STM32的時鐘系統
本章小結
第3篇詳解篇
第5章GPIO埠及其應用
5.1GPIO埠概述
5.2GPIO埠的相關寄存器
5.2.1埠配置低寄存器
5.2.2埠配置高寄存器
5.2.3埠輸入數據寄存器
5.2.4埠輸出數據寄存器
5.2.5埠位設置/清除數據寄存器
5.2.6埠位清除數據寄存器
5.3GPIO埠的相關庫函數
5.3.1GPIO_Init()函數
5.3.2GPIO_SetBits()函數和GPIO_ResetBits()函數
5.3.3GPIO_Write()函數和GPIO_WriteBit()函數
5.3.4GPIO_ReadInputDataBit()函數、GPIO_ReadInputData()函數、
GPIO_ReadOutputDataBit()函數和
GPIO_ReadOutputData()函數
5.3.5GPIO_DeInit()函數
5.4GPIO埠的應用實例
5.4.1流水燈
5.4.2按鍵控制LED
本章小結
第6章寄存器的名稱和地址的映射關系及位帶操作
6.1寄存器的名稱和地址的映射關系
6.2位帶操作
6.2.1位帶操作概述
6.2.2位帶操作應用實例
本章小結
第7章NVIC與中斷管理
7.1CM3的異常及其優先級管理
7.2NVIC概述
7.3NVIC相關的寄存器
7.3.1中斷使能寄存器組和中斷失能寄存器組
7.3.2中斷掛起寄存器組和中斷解掛寄存器組
7.3.3中斷激活標志位寄存器組
7.3.4中斷優先級寄存器組
7.4NVIC相關的庫函數
7.4.1NVIC_PriorityGroupConfig()函數
7.4.2NVIC_Init()函數
本章小結
第8章EXTI控制器及其應用
8.1EXTI控制器概述
8.2EXTI相關的寄存器
8.2.1中斷屏蔽寄存器
8.2.2事件屏蔽寄存器
8.2.3上升沿觸發選擇寄存器
8.2.4下降沿觸發選擇寄存器
8.2.5軟件中斷事件寄存器
8.2.6掛起寄存器
8.3EXTI相關的庫函數
8.3.1GPIO_EXTILineConfig()函數
8.3.2EXTI_Init()函數
8.3.3EXTI的中斷處理函數
8.3.4EXTI_GetITStatus()函數和EXTI_ClearITPendingBit()函數
8.3.5EXTI_GetFlagStatus()函數和EXTI_ClearFlag()函數
8.4EXTI外部中斷的應用實例
本章小結
第9章SysTick定時器及其應用
9.1SysTick定時器概述
9.2SysTick定時器相關的寄存器
9.2.1SysTick控制及狀態寄存器
9.2.2SysTick重裝載數值寄存器
9.2.3SysTick當前數值寄存器
9.3SysTick定時器相關的庫函數
9.3.1SysTick_CLKSourceConfig()函數
9.3.2SysTick_Config()函數
9.4SysTick定時器的應用實例
9.4.1中斷方式實現定時
9.4.2查詢方式實現定時
本章小結
第10章USART及其應用
10.1串行通信基礎知識簡介
10.1.1異步通信和同步通信
10.1.2串行通信的數據傳輸方向
10.1.3串行通信的數據傳輸速率
10.1.4串行通信的錯誤校驗
10.2USART概述
10.3USART相關的寄存器
10.3.1狀態寄存器
10.3.2數據寄存器
10.3.3波特率寄存器
10.3.4控制寄存器1
10.4USART相關的庫函數
10.4.1USART_Init()函數
10.4.2USART_DeInit()函數
10.4.3USART_Cmd()函數
10.4.4USART_ITConfig()函數
10.4.5USART_SendData()函數
10.4.6USART_ReceiveData()函數
10.4.7USART_GetITStatus()函數和USART_GetFlagStatus()函數
10.4.8USART_ClearITPendingBit()函數和
USART_ClearFlag()函數
10.5埠引腳的復用功能
10.5.1埠引腳復用功能的概念
10.5.2調用庫函數實現埠引腳的復用功能
10.6USART的應用實例
本章小結
第11章獨立看門狗及其應用
11.1看門狗概述
11.2IWDG概述
11.3IWDG相關的寄存器
11.3.1鍵寄存器(IWDG_KR)
11.3.2預分頻寄存器(IWDG_PR)
11.3.3重裝載寄存器(IWDG_RLR)
11.4IWDG相關的庫函數
11.4.1IWDG_WriteAccessCmd()函數
11.4.2IWDG_SetPrescaler()函數
11.4.3IWDG_SetReload()函數
11.4.4IWDG_ReloadCounter()函數
11.4.5IWDG_Enable()函數
11.5IWDG的應用實例
本章小結
第12章窗口看門狗及其應用
12.1WWDG概述
12.2WWDG相關的寄存器
12.2.1控制寄存器(WWDG_CR)
12.2.2配置寄存器(WWDG_CFR)
12.2.3狀態寄存器(WWDG_SR)
12.3WWDG相關的庫函數
12.3.1WWDG_SetPrescaler()函數
12.3.2WWDG_SetWindowValue()函數
12.3.3WWDG_EnableIT()函數
12.3.4WWDG_SetCounter()函數
12.3.5WWDG_Enable()函數
12.3.6WWDG_GetFlagStatus()函數
12.3.7WWDG_ClearFlag()函數
12.4WWDG的應用實例
本章小結
第13章通用定時器及其應用1
13.1通用定時器概述
13.2中斷定時相關的寄存器
13.2.1計數器當前值寄存器
13.2.2預分頻器寄存器
13.2.3自動重裝載寄存器
13.2.4控制寄存器1
13.2.5DMA/中斷使能寄存器
13.2.6狀態寄存器
13.3中斷定時相關的庫函數
13.3.1TIM_TimeBaseInit()函數
13.3.2TIM_ITConfig()函數
13.3.3TIM_Cmd()函數
13.3.4TIM_GetITStatus()函數
13.3.5TIM_ClearITPendingBit()函數
13.4中斷定時的應用實例
本章小結
第14章通用定時器及其應用2
14.1通用定時器捕獲/比較通道的輸出
14.2通用定時器的PWM模式
14.3PWM脈寬調制相關的寄存器
14.3.1輸出模式下的捕獲/比較模式寄存器1/2
14.3.2輸出模式下的捕獲/比較使能寄存器
14.3.3輸出模式下的捕獲/比較寄存器
14.4PWM脈寬調制相關的庫函數
14.4.1TIM_OCxInit()函數
14.4.2TIM_SetComparex()函數
14.4.3TIM_OCxPreloadConfig()函數
14.5PWM脈寬調制的應用實例
本章小結
第15章通用定時器及其應用3
15.1通用定時器捕獲/比較通道的輸入
15.2通用定時器的輸入捕獲模式
15.3通用定時器輸入捕獲相關的寄存器
15.3.1輸入模式下的捕獲/比較模式寄存器
15.3.2輸入模式下的捕獲/比較使能寄存器
15.3.3輸入模式下的捕獲/比較寄存器
15.4通用定時器輸入捕獲相關的庫函數
15.4.1TIM_ICxInit()函數
15.4.2TIM_OCxPolarityConfig()函數
15.4.3TIM_SetCounter()函數
15.5輸入捕獲的應用實例
本章小結
第16章實時時鐘
16.1RTC概述
16.2RTC相關的寄存器
16.2.1RTC控制寄存器高位
16.2.2RTC控制寄存器低位
16.2.3RTC預分頻裝載寄存器
16.2.4RTC預分頻餘數寄存器
16.2.5RTC計數器寄存器
16.2.6RTC鬧鐘寄存器
16.3RTC應用相關的其他寄存器
16.3.1備份數據寄存器
16.3.2備份區域控制寄存器
16.3.3APB1外設使能寄存器
16.3.4電源控制寄存器
16.4RTC相關的庫函數
16.4.1RTC_WaitForLastTask()函數
16.4.2RTC_WaitForSynchro()函數
16.4.3RTC_EnterConfigMode()函數
16.4.4RTC_ExitConfigMode()函數
16.4.5RTC_GetCounter()函數
16.4.6RTC_SetCounter()函數
16.4.7RTC_SetPrescaler()函數
16.4.8RTC_SetAlarm()函數
16.4.9RTC_ITConfig()函數
16.4.10RTC_GetFlagStatus()函數和RTC_GetITStatus()函數
16.4.11RTC_ClearFlag()函數和RTC_ClearITPendingBit()函數
16.5RTC應用相關的其他庫函數
16.5.1RCC_RTCCLKConfig()函數
16.5.2RCC_RTCCLKCmd()函數
16.5.3PWR_BackupAccessCmd()函數
16.5.4RCC_LSEConfig()函數
16.5.5RCC_GetFlagStatus()函數
16.5.6BKP_ReadBackupRegister()函數
16.5.7BKP_WriteBackupRegister()函數
16.6RTC應用實例
本章小結
第17章電源控制
17.1電源管理
17.1.1獨立的A/D轉換器供電和參考電壓
17.1.2電池備份區域
17.1.3電壓調節器
17.2低功耗模式
17.2.1睡眠模式
17.2.2停止模式
17.2.3待機模式
17.2.4低功耗模式下的自動喚醒
17.3電源控制相關的寄存器
17.3.1電源控制寄存器
17.3.2電源控制/狀態寄存器
17.3.3系統控制寄存器
17.4電源控制相關的庫函數
17.4.1PWR_WakeUpPinCmd()函數
17.4.2PWR_EnterSTANDBYMode()函數
17.4.3PWR_EnterSTOPMode()函數
17.4.4PWR_GetFlagStatus()函數
17.4.5PWR_ClearFlag()函數
17.5電源控制的應用實例
本章小結
第18章ADC
18.1ADC概述
18.1.1ADC簡介
18.1.2ADC的主要特徵
18.1.3ADC的功能描述
18.2ADC相關的寄存器
18.2.1ADC狀態寄存器
18.2.2ADC控制寄存器1
18.2.3ADC控制寄存器2
18.2.4ADC採樣時間寄存器
18.2.5ADC規則序列寄存器
18.2.6ADC註入數據寄存器
18.2.7ADC規則數據寄存器
18.2.8時鐘配置寄存器
18.3ADC相關的庫函數
18.3.1ADC_DeInit()函數
18.3.2ADC_Init()函數
18.3.3ADC_Cmd()函數
18.3.4ADC_ITConfig()函數
18.3.5ADC_ResetCalibration()函數
18.3.6ADC_GetResetCalibrationStatus(ADC_TypeDef*ADCx)
函數
18.3.7ADC_StartCalibration(ADC_TypeDef*ADCx)函數
18.3.8ADC_GetCalibrationStatus(ADC_TypeDef*ADCx)函數
18.3.9ADC_SoftwareStartConvCmd()函數
18.3.10ADC_RegularChannelConfig()函數
18.3.11ADC_GetConversionValue()函數
18.3.12ADC_TempSensorVrefintCmd()函數
18.3.13ADC_GetFlagStatus()函數和ADC_GetITStatus()函數
18.3.14ADC_ClearFlag()函數和ADC_ClearITPendingBit()函數
18.4ADC的應用實例
18.4.1讀取外部電壓值
18.4.2獲取內部溫度值
本章小結
第19章DAC
19.1DAC概述
19.1.1DAC簡介
19.1.2DAC的主要特徵
19.2DAC的功能描述
19.2.1使能DAC通道和DAC緩存
19.2.2DAC的數據格式
19.2.3DAC的轉換
19.2.4DAC的輸出電壓
19.2.5DAC的觸發選擇
19.3DAC相關的寄存器
19.3.1DAC控制寄存器
19.3.2DAC軟件觸發寄存器
19.3.3DAC通道1的12位右對齊數據保持寄存器
19.3.4DAC通道1的12位左對齊數據保持寄存器
19.3.5DAC通道1的8位右對齊數據保持寄存器
19.3.6DAC通道1數據輸出寄存器
19.4DAC相關的庫函數
19.4.1DAC_DeInit()函數
19.4.2DAC_Init()函數
19.4.3DAC_Cmd()函數
19.4.4DAC_SetChannel1Data()函數和DAC_SetChannel2Data()
函數
19.4.5DAC_GetDataOutputValue()函數
19.4.6DAC_DMACmd()函數
19.4.7DAC_SoftwareTriggerCmd()函數
19.5DAC的應用實例
本章小結
參考文獻
微課視頻清單
視 頻 名 稱時長/min位置
1. ARM及CortexM3概述0:37:30第1章章首
2. 課程硬件開發平臺0:35:35第2章章首
3. 課程軟件開發環境10:51:57第3章章首
4. 課程軟件開發環境20:49:343.2節節首
5. 課程軟件開發環境30:43:053.5.1節節首
6. 課程軟件開發環境40:36:123.5.2節節首
7. STM32基礎知識簡介10:45:49第4章章首
8. STM32基礎知識簡介20:25:374.2節節首
9. GPIO埠及其應用10:39:02第5章章首
10. GPIO埠及其應用20:40:235.2節節首
11. GPIO埠及其應用30:48:285.3節節首
12. GPIO埠及其應用40:56:035.4.1節節首
13. GPIO埠及其應用50:45:215.4.2節節首
14. 寄存器的名稱和地址的映射關系及位帶操作10:35:36第6章章首
15. 寄存器的名稱和地址的映射關系及位帶操作20:50:166.2節節首
16. NVIC與中斷管理10:53:51第7章章首
17. NVIC與中斷管理20:51:367.3節節首
18. EXTI 控制器及其應用10:43:13第8章章首
19. EXTI 控制器及其應用20:50:328.3節節首
20. EXTI 控制器及其應用30:34:278.4節節首
21. SysTick定時器及其應用10:40:15第9章章首
22. SysTick定時器及其應用20:59:349.4節節首
23. USART及其應用10:52:01第10章章首
24. USART及其應用20:54:2210.2節節首
25. USART及其應用30:48:0410.4節節首
26. USART及其應用40:41:5610.6節節首
27. USART及其應用50:47:3610.6節節末
28. 獨立看門狗(IWDG)及其應用10:47:57第11章章首
29. 獨立看門狗(IWDG)及其應用20:35:4111.4節節首
30. 窗口看門狗(WWDG)及其應用10:38:09第12章章首
31. 窗口看門狗(WWDG)及其應用20:46:1612.2節節首
32. 通用定時器及其應用1_10:53:27第13章章首
33. 通用定時器及其應用1_20:44:4513.2節節首
34. 通用定時器及其應用1_30:31:3713.4節節首
35. 通用定時器及其應用2_10:45:40第14章章首
36. 通用定時器及其應用2_20:44:1114.2節節首
視 頻 名 稱時長/min位置
37. 通用定時器及其應用2_30:45:2214.3節節首
38. 通用定時器及其應用2_40:32:1614.4節節首
39. 通用定時器及其應用2_50:35:2914.5節節首
40. 通用定時器及其應用3_10:38:44第15章章首
41. 通用定時器及其應用3_20:43:4215.3節節首
42. 通用定時器及其應用3_30:42:2915.4節節首
43. 通用定時器及其應用3_40:40:5915.5節節首
44. 電源控制10:28:20第17章章首
45. 電源控制20:32:2017.2節節首
46. 電源控制30:44:0817.2.2節節首
47. 電源控制40:44:0617.3節節首
48. 電源控制50:36:0817.5節節首
49. ADC10:47:11第18章章首
50. ADC20:57:1318.1.3節節首
51. ADC30:48:5018.2節節首
52. ADC40:41:5618.3節節首
53. ADC50:53:1318.4.1節節首
54. ADC60:38:4318.4.2節節首
55. DAC10:46:57第19章章首
56. DAC20:40:4519.3節節首
57. DAC30:36:2819.5節節首