图书介绍
21天学通ARM嵌入式开发PDF|Epub|txt|kindle电子书版本网盘下载
![21天学通ARM嵌入式开发](https://www.shukui.net/cover/5/30732091.jpg)
- 薛园园编著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121141621
- 出版时间:2011
- 标注页数:418页
- 文件大小:107MB
- 文件页数:420页
- 主题词:微处理器,ARM-系统设计
PDF下载
下载说明
21天学通ARM嵌入式开发PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一篇 走进嵌入式系统开发25
第1章 嵌入式系统开发概述(教学视频:44分钟)25
1.1何为嵌入式系统25
1.1.1嵌入式系统的概念25
1.1.2嵌入式系统的基本结构26
1.1.3嵌入式处理器26
1.2嵌入式系统的特点及发展趋势27
1.3嵌入式系统的开发过程28
1.3.1芯片选择28
1.3.2配置硬件平台28
1.3.3 BootLoader移植28
1.3.4操作系统裁减29
1.3.5系统移植29
1.3.6应用程序开发29
1.4如何成为嵌入式开发人员29
1.5小结30
1.6习题30
第2章 嵌入式操作系统简介(教学视频:37分钟)31
2.1嵌入式操作系统概述31
2.1.1嵌入式操作系统的发展历史31
2.1.2嵌入式操作系统的分类31
2.1.3嵌入式操作系统的特点32
2.2主流嵌入式操作系统简介32
2.2.1 VxWorks32
2.2.2 pSOS33
2.2.3 Palm OS33
2.2.4 QNX34
2.2.5 OS-934
2.2.6 LynxOS34
2.2.7 Windows CE34
2.2.8 μC/OS-Ⅱ35
2.2.9嵌入式Linux36
2.2.10 FreeRTOS36
2.3小结36
2.4习题36
第3章ARM处理器构架(教学视频:53分钟)38
3.1 ARM体系结构概述38
3.1.1 ARM简介38
3.1.2 CISC的体系结构39
3.1.3 RISC的体系结构39
3.1.4 ARM微处理器的应用领域39
3.1.5 ARM体系结构的特点40
3.2 ARM处理器系列40
3.2.1 ARM7微处理器40
3.2.2 ARM9微处理器41
3.2.3 ARM9E微处理器41
3.2.4 ARM10E微处理器42
3.2.5 ARM11微处理器42
3.2.6 SecurCore微处理器42
3.2.7 StrongARM微处理器42
3.2.8 Xscale微处理器43
3.2.9 Cortex-M3微处理器43
3.2.10基于ARM核的芯片选择43
3.3 ARM处理器结构44
3.3.1 ARM的系统构架44
3.3.2 ARM的流水线结构44
3.3.3 ARM的存储器结构45
3.4 ARM编程模型45
3.4.1工作模式和工作状态46
3.4.2特权访问和用户访问46
3.4.3数据类型46
3.4.4存储器格式46
3.5 ARM开发调试工具综述47
3.6小结47
3.7习题47
第4章 搭建嵌入式开发平台(教学视频:39分钟)49
4.1基于ARM的RealView MDK开发环境49
4.1.1 RealView MDK简介49
4.1.2 RealView MDK系统安装需求49
4.1.3 RealView MDK的安装50
4.1.4 RealView MDK集成开发环境总览51
4.1.5 RealView MDK的菜单栏51
4.1.6 RealView MDK的工具栏55
4.1.7 RealView MDK的快捷键58
4.2基于ARM Cortex-M3的STM32选型表58
4.3基于ARM Cortex-M3的STM32最小开发系统59
4.4程序下载方式60
4.5小结61
4.6习题61
第二篇ARM嵌入式系统开发基础62
第5章ARM CORTEX-M3指令集(教学视频:30分钟)62
5.1数据传送指令62
5.1.1寄存器间数据传送指令62
5.1.2存储器数据传送指令62
5.1.3索引数据传送指令63
5.2数据处理指令64
5.2.1算术四则运算指令64
5.2.2逻辑及移位操作指令65
5.2.3数据序转及位操作指令66
5.3子程序呼叫及转移指令66
5.4隔离指令67
5.5不支持的指令67
5.6小结68
5.7习题68
第6章 基于ARM CORTEX-M3的STM32在应用编程(教学视频:31分钟)70
6.1在应用编程简介70
6.2 STM32的启动配置70
6.3 STM32的在应用编程71
6.3.1电路原理图71
6.3.2 BootLoader固件下载步骤72
6.4小结74
6.5习题75
第7章 嵌入式实时操作系统FREERTOS(教学视频:42分钟)76
7.1嵌入式实时操作系统FreeRTOS简介76
7.2嵌入式操作系统基本概念76
7.2.1多任务77
72.2调度77
7.2.3上下文切换78
7.2.4实时应用和调度78
7.3 FreeRTOS的API模块78
7.3.1定制78
7.3.2任务创建和删除80
7.3.3任务控制81
7.3.4内核控制82
7.4小结83
7.5习题83
第8章 嵌入式系统UC/OS-Ⅱ(教学视频:39分钟)85
8.1 UC/OS-Ⅱ嵌入式系统简介85
8.2 UC/OS- Ⅱ任务管理85
8.2.1建立任务OSTaskCreate86
8.2.2建立任务OSTaskCreate Ext86
8.2.3任务堆栈88
8.2.4堆栈检验OSTaskStkChk88
8.2.5删除任务OSTaskDel89
8.2.6请求删除任务OSTaskDelReq90
8.2.7改变任务的优先级OSTask ChangePrio91
8.2.8挂起任务OSTaskSuspend92
8.2.9恢复任务OSTaskResume93
8.2.10获得有关任务的信息OSTaskQuery94
8.3任务之间的通信与同步95
8.3.1信号量95
8.3.2邮箱95
8.3.3消息队列95
8.4小结96
8.5习题96
第三篇 深入ARM嵌入式控制器98
第9章 通用I/O接口(教学视频:48分钟)98
9.1通用I/O接口的结构98
9.1.1 GPIO的基本结构98
9.1.2 GPIO的功能99
9.1.3 GPIO的功能配置100
9.1.4复用功能与重映射101
9.2通用I/O接口的编程方法104
9.2.1 GPIO寄存器结构105
9.2.2 GPIO寄存器复位函数GPIO Delnit105
9.2.3复用功能寄存器复位函数GPIO_AFIODelnit106
9.2.4参数初始化函数GPIO_Init106
9.2.5复位GPIO_InitStruct函数GPIO_StructInit108
9.2.6读输入引脚函数GPIO_ReadlnputDataBit108
9.2.7读输入端口函数GPIO_ReadInputData108
9.2.8读输出引脚函数GPIO_ReadOutputDataBit109
9.2.9读输出端口函数GPIO_ReadOutputData109
9.2.10置位引脚函数GPIO_SetBits109
9.2.11清除引脚位函数GPIO_ResetBits109
9.2.12置位或清除引脚函数GPIO_WriteBit110
9.2.13写端口函数GPIO_Write110
9.2.14引脚配置锁定函数GPIO_PinLockConfig110
9.2.15选择事件输出引脚函数GPIO_EventOutputConfig111
9.2.16使能事件输出函数GPIO_EventOutputCmd111
9.2.17改变引脚映射函数GPIO_PinRemapConfig111
9.2.18选择EXTI线函数GPIO_EXTILineConfig112
9.3综合练习113
9.4小结113
9.5习题114
第10章FLASH(教学视频:24分钟)115
10.1 Flash闪存的结构115
10.2 Flash闪存的基本特性116
10.2.1 Flash闪存读取116
10.2.2 Flash闪存编程和擦除116
10.3 Flash的编程方法116
10.3.1 Flash寄存器结构117
10.3.2设置代码延时值函数Flash_SetLatency118
10.3.3使能或禁用半周期访问函数Flash_HalfCycleAccessCmd118
10.3.4使能或禁用预取缓冲区函数Flash_PrefetchBufferCmd118
10.3.5解锁擦除控制器函数Flash_Unlock118
10.3.6锁定擦除控制器函数Flash_Lock119
10.3.7擦除页函数Flash_ErasePage119
10.3.8擦除全部页函数Flash_EraseAllPages119
10.3.9擦除选项字节函数Flash_EraseOptionBytes120
10.3.10字写入函数Flash_ProgtamWord120
10.3.11半字写入函数Flash_ProgramHalfWord121
10.3.12写选项字节函数Flash_ProgramOptionByteData121
10.3.13页写保护函数Flash_EnableWriteProtection122
10.3.14使能或禁用读保护函数 Flash_ReadOutProtection123
10.3.15 写选项字节函数Flash_UserOptionByteConfig124
10.3.16获取选项字节函数Flash_GetUserOptionByte125
10.3.17获取写保护选项字节函数Flash_GetWriteProtectionByte125
10.3.18获取读保护状态函数Flash_GetReadOutProtectionStatus125
10.3.19获取预取缓冲区状态函数Flash_GetPrefectchBufferStatus125
10.3.20使能或禁用中断函数Flash_ITConfig126
10.3.21获取标志位状态函数Flash_GetFlagStatus126
10.3.22清除挂起标志函数Flash_C1earFlag127
10.3.23获取Flash状态函数Flash_GetStatus127
10.3.24等待操作结束函数Flash_WaitForLastOperation127
10.4综合练习128
10.5小结130
10.6习题130
第11章ADC系统(教学视频:52分钟)132
11.1 ADC系统概述132
11.2 ADC系统功能特性133
11.2.1 ADC开关控制133
11.2.2 ADC时钟133
11.2.3 ADC通道选择133
11.2.4 ADC的转换模式133
11.2.5中断134
11.2.6模拟看门狗134
11.2.7 ADC的扫描模式134
11.2.8 ADC的注入通道管理134
11.2.9间断模式135
11.2.10 ADC的校准模式135
11.2.11 ADC的数据对齐136
11.2.12可编程的通道采样时间136
11.2.13外部触发转换136
11.2.14 DMA请求137
11.2.15双ADC模式137
11.2.16温度传感器138
11.3 ADC系统的编程方法139
11.3.1 ADC寄存器结构140
11.3.2 ADC寄存器复位函数ADC_Delnit141
11.3.3参数初始化函数ADC_Init141
11.3.4复位ADC_InitStruct函数ADC_StructInit143
11.3.5使能或禁用ADC模块函数ADC_Cmd143
11.3.6使能或禁用DMA请求函数ADC_DMACmd143
11.3.7使能或禁用ADC中断函数ADC_ITConfig144
11.3.8复位ADC校准寄存器函数ADC_ResetCalibration144
11.3.9获取复位校准寄存器状态函数ADC_GetResetCalibrationStatus144
11.3.10开始ADC校准函数ADC_StartCalibration145
11.3.11获取ADC校准状态ADC_GetCalibrationStatus145
11.3.12使能或禁用软件转换函数ADC_SoftwareStartConvCmd145
11.3.13获取软件开始转换状态函数ADC_GetSoftwareStartConvStatus146
11.3.14配置常规组非连续模式函数ADC_DiseModeChannelCountConfig146
11.3.15使能或禁用常规组非连续模式函数ADC_DiscModeCmd146
11.3.16配置ADC常规信道函数ADC_RegularChannelConfig147
11.3.17使能或禁用外部触发函数ADC_ExtemalTrigConvCmd148
11.3.18获取转换结果函数ADC_GetConversionValue148
11.3.19获取双重转换结果函数ADC_GetDualModeConversionValue148
11.3.20使能或禁用自动注入组转换函数ADC_AutoInjectedConvCmd149
11.3.21使能或禁用非连续模式函数ADC_InjectedDiscModeCmd149
11.3.22配置外部触发器函数ADC_ExtemalTrigInjectedConvConfig149
11.3.23使能或禁用注入信道转换函数ADC_ExtemalTrigInjectedConvCmd150
11.3.24使能或禁用开始注入信道转换函数ADC_SoftwareStartInjectedConvCmd150
11.3.25获取启动转换注入状态函数ADC_GetSoftwareStartInjectedConvStatus151
11.3.26配置ADC注入信道函数ADC_InjectedChannelConfig151
11.3.27配置注入信道音序器长度函数ADC_InectedSequencerLengthConfig152
11.3.28设置注入信道转换值位移函数ADC_SetInjectedOffset152
11.3.29获取注入信道转换结果函数ADC_GetInjectedConversionValue153
11.3.30使能或禁用模拟看门狗函数ADC_AnalogWatchdogCmd153
11.3.31配置模拟看门狗域值函数ADC_AnalogWatchdogThresholdsConfig154
11.3.32配置模拟看门狗保护函数ADC_AnalogWatchdogSingleChannelConfig154
11.3.33使能或禁用温度传感函数ADC_TempSensorVrefintCmd154
11.3.34获取ADC标志函数ADC_GetFlagStatus155
11.3.35清除挂起标志函数ADC_ClearFlag155
11.3.36获取中断函数ADC_GetlTStatus155
11.3.37清除中断挂起位函数ADC_ClearITPendingBit156
11.4综合练习156
11.5小结157
11.6习题157
第12章 中断系统(教学视频:32分钟)159
12.1嵌套向量中断控制器(NVIC)159
12.2 NVIC的编程方法161
12.2.1 NVIC寄存器结构162
12.2.2复位NVIC外设函数NVIC_Delnit163
12.2.3复位SCB外设函数NVIC_SCBDelnit163
12.2.4配置优先级组函数NVIC_PriorityGroupConfig163
12.2.5初始化NVIC外设函数NVIC_Init163
12.2.6复位NVIC_InitStruct 函数NVIC_StructInit164
12.2.7使能PRIMASK优先级函数NVIC_SETPRIMASK165
12.2.8用PRIASK优先级函数NVIC_RESETPRIMASK165
12.2.9使能FAULTMASK优先级函数NVIC_SETFA-ULTMASK165
12.2.10禁用FAULTMASK优先级函数NVIC_RESET_FAULTMASK165
12.2.11配置执行优先级函数NVIC_BASEPRICONFIG165
12.2.12获取BASEPRI掩码值函数NVIC_GetBASEPRI166
12.2.13获取挂起服务的IRQ通道标识符函数NVIC_GetCunentPendingRQChannel166
12.2.14获取IRQ通道挂起位函数NVIC_GedRQChannelPendingBitStatus166
12.2.15设置中断挂起位函数NVIC_GetlRQChannelPendingBit166
12.2.16清除中断挂起位函数NVIC_ClearlRQChannelPendingBir167
12.2.17返回活动句柄函数NVIC_GetCurrentActiveHandle167
12.2.18获取IRQ通道活动位函数NVIC_GetlRQChannelActiveBitStatus167
12.2.19获取ID号函数NVIC_GetCPUID167
12.2.20设置向量表和偏移量函数NVIC_SetVectorTable168
12.2.21系统复位函数NVIC_GenerateSystemReset168
12.2.22核复位函数NVIC_GenerateCoreReset168
12.2.23低功耗模式条件函数NVIC_SystemLPConfig168
12.2.24使能或禁用系统句柄函数NVIC_SystemHandlerConfig169
12.2.25配置系统句柄优先级函数NVIC_SystemHandlerPriorityConfig169
12.2.26获取系统句柄挂起位函数NVIC_GetSystemHandlerPendingBitStatus170
12.2.27设置系统句柄挂起位函数NVIC_SetSystemHandlerPendingBit170
12.2.28清除系统句柄挂起位函数NVIC_ClearSystemHandlerPendingBit171
12.2.29获取系统句柄活动位函数NVIC_GetSystemHandlerActiveBitStatus171
12.2.30获取系统故障句柄源函数NVIC_GetFaultHandlerSources172
12.2.31获取故障句柄位置函数NVIC_GetFaultAddress172
12.3外部中断/事件控制器(EXTI)173
12.3.1 EXTI主要特性173
12.3.2 EXTI功能说明173
12.4 EXTI的编程方法174
12.4.1 EXTI寄存器结构174
12.4.2复位EXTI外设函数EXTI_Delnit175
12.4.3初始化EXTI外设函数EXTI_Init175
12.4.4复位EXTI_InitStruct函数EXTI_StructInit176
12.4.5软中断函数EXTI_GenerateSWlnterrupt176
12.4.6获取标志状态函数EXTI_GetFlagStatus176
12.4.7清除挂起标志函数EXTI_ClearFlag176
12.4.8获取EXTI置位函数EXTI_GetITStatus177
12.4.9清除挂起位函数EXTI_ClearITPendingBit177
12.5综合练习177
12.6小结181
12.7习题181
第13章 异步串行通信接口(教学视频:59分钟)184
13.1 USART结构184
13.1.1 USART特征描述184
13.1.2 USART发送器184
13.1.3 USART接收器185
13.1.4 LIN模式185
13.1.5 USART同步模式186
13.1.6 USART单线半双工通信186
13.1.7 USART的智能卡功能186
13.1.8 USART的IrDA模式186
13.1.9 USART的DMA通信187
13.1.10 USART的硬件流控制188
13.1.11 USART的中断请求188
13.2 USART编程方法188
13.2.1 USART寄存器结构189
13.2.2 USART寄存器复位函数USART_Delnit190
13.2.3参数初始化函数USART_Init190
13.2.4复位USART_InitStruct函数USART_StrucInit192
13.2.5使能或禁用USART函数USART_Cmd192
13.2.6使能或禁用中断函数USART_ITConfig193
13.2.7使能或禁用DMA函数USART_DMACmd193
13.2.8设置节点地址函数USART_SetAddress194
13.2.9选择唤醒方式函数USART_WakeUpConfig194
13.2.10 USART模式函数USART_ReceiverWakeUpCmd194
13.2.11 LIN间隔检波长度函数USART_LINBreakDetectionConfig195
13.2.12使能或者禁用LIN模式函数USART_LINCmd195
13.2.13发送数据函数USART_SendData195
13.2.14接收数据函数USART_ReceiveData196
13.2.15传输间断字符函数USART_SendBreak196
13.2.16设置预警时间函数USART_SetGuardTime196
13.2.17设置时钟预分频器函数USART_SetPrescaler196
13.2.18使能或者禁用智能卡模式函数USART_SmartCardCmd197
13.2.19使能或禁用NACK函数USART_SmartCardNackCmd197
13.2.20使能或者禁用半双工模式函数USART_HalfDuplexCmd197
13.2.21配置IrDA模式函数USART_IrDAConfig198
13.2.22使能或者禁用IrDA模式函数USART_IrDACmd198
13.2.23获取标志是否置位函数USART_GetFlagStatus198
13.2.24清除未决标志函数USART_ClearFlag199
13.2.25获取中断状态函数USART_GetITStatus199
13.2.26清除中断未决位函数USART_ClearITPendingBit200
13.3 CAN结构200
13.3.1初始化模式201
13.3.2正常模式201
13.3.3睡眠模式201
13.3.4测试模式202
13.3.5静默模式202
13.3.6环回模式202
13.3.7环回静默模式202
13.4 CAN编程方法202
13.4.1 CAN寄存器结构203
13.4.2 CAN寄存器复位函数CAN_Delnit204
13.4.3参数初始化函数CAN_Init204
13.4.4过滤参数初始化函数CAN_FilterInit207
13.4.5复位CAN_InitStruct函数CAN_StructInit208
13.4.6使能或禁用CAN中断函数CAN_ITConfig209
13.4.7初始化报文发送函数CAN_Transmit209
13.4.8检查报文发送函数CAN_TransmitStatus211
13.4.9取消发送函数CAN_CancelTransmit211
13.4.10释放FIFO函数CAN_FIFORelease212
13.4.11获取挂起报文数量函数CAN_MessagePending212
13.4.12报文接收函数CAN_Receive212
13.4.13低功耗模式函数CAN_Sleep213
13.4.14唤醒CAN模块函数CAN_WakeUp214
13.4.15获取CAN标志函数CAN_GetFlagStatus214
13.4.16清除挂起标志CAN_ClearFlag214
13.4.17获取中断状态函数CAN_GetITStatus215
13.4.18清除中断挂起位函数CAN_ClearITPendingBit216
13.5综合练习217
13.6小结218
13.7习题219
第14章 同步串行通信接口(教学视频:52分钟)221
14.1 SPI结构221
14.1.1 SPI从模式工作原理222
14.1.2 SPI主模式工作原理222
14.1.3 SPI通信的CRC223
14.1.4 SPI的DMA通信223
14.1.5 SPI的中断请求223
14.2 SPI编程方法224
14.2.1 SPI寄存器结构224
14.2.2复位SPI外设寄存器函数SPI_DeInit225
14.2.3初始化外设SPIx寄存器函数SPI_Init225
14.2.4设置SPI_ InitStruct结构成员函数SPI_StructInit226
14.2.5使能或者禁用SPI外设函数SPI_Cmd226
14.2.6使能或者禁用SPI中断函数SPI_ITConfig226
14.2.7使能或者禁用SPI的DMA请求函数SPI_DMACmd227
14.2.8发送数据函数SPI_SendData227
14.2.9接收数据函数SPI_Receive Data227
14.2.10配置NSS引脚函数SPI_NSSIntemalSoftwareConfig227
14.2.11使能或者禁用SPI_SS输出函数SPI_SSOutputCmd228
14.2.12设置SPI数据大小函数SPI_DataSizeConfig228
14.2.13发送CRC值函数SPI_TransmitCRC228
14.2.14使能或者禁用CRC值计算函数SPI_CalculateCRC228
14.2.15获取CRC寄存器值函数SPI_GetCRC229
14.2.16获取CRC多项式寄存器值函数SPI_GetCRCPolynomial229
14.2.17双向模式下数据方向函数SPI_BiDirectionalLineConfig229
14.2.18获取SPI标志位函数SPI_GetFlagStatus230
14.2.19清除挂起标志位函数SPI_ClearFlag230
14.2.20获取SPI中断函数SPI_GetlTStatus30
14.2.21清除中断挂起位函数SPI_ClearITPendingBit231
14.3 I2C结构231
14.3.1 I2C从模式工作原理232
14.3.2 I2C主模式工作原理233
14.3.3 SMBus功能233
14.3.4 I2C的DMA功能233
14.3.5 I2C的中断请求234
14.4 I2C编程方法235
14.4.1 I2C寄存器结构236
14.4.2复位I2C外设寄存器函数I2C_Delnit236
14.4.3初始化I2C外设函数I2C_Init237
14.4.4复位I2C_InitStruct结构函数I2C_Structlnit238
14.4.5使能或者禁用I2C外设函数I2C_Cmd238
14.4.6使能或者禁用DMA请求函数I2C_DMACmd238
14.4.7标示最后DMA传输函数12C_DMALastTransferCmd239
14.4.8产生起始信号函数I2C_GenerateSTART239
14.4.9产生停止信号函数I2C_GenerateSTOP239
14.4.10使能或者禁用应答函数I2C_AcknowledgeConfig240
14.4.11配置I2C首地址2函数I2C_OwnAddress2Config240
14.4.12使能或者禁用双重地址模式函数I2C_DualAddressCmd240
14.4.13使能或者禁用通用调用特性函数I2C_GeneralCallCmd241
14.4.14使能或者禁用I2C中断函数I2C_ITConfig241
14.4.15 发送数据函数I2C_SendData241
14.4.16接收数据函数12C_ReceiveData242
14.4.17发送地址字节函数I2C_Send7bitAddress242
14.4.18读取I2C寄存器函数I2C_ReadRegister242
14.4.19使能或禁用软件复位函数I2C_SoftwareResetCmd242
14.4.20配置驱动SMBAlert引脚函数I2C_SMBusAlertConfig243
14.4.21使能或者禁用PEC传输函数I2C_TransmitPEC243
14.4.22选择PEC位置函数I2C_PECPositionConfig243
14.4.23使能或禁用PEC计算值函数I2C_CalculatePEC244
14.4.24获取PEC值函数12C_GetPEC244
14.4.25使能或者禁用I2C_ARP函数I2C_ARPCmd244
14.4.26使能或禁用I2C时钟伸展函数I2C_StretchClockCmd245
14.4.27配置占空比函数I2C_FastModeDutyCycleConfig245
14.4.28获取最近的I2C事件函数I2C_GetLastEvent245
14.4.29检查I2C事件函数I2C_CheckEvent246
14.4.30获取I2C标志位函数I2C_GetFlagStatus246
14.4.31清除挂起标志函数I2C_ClearFlag246
14.4.32获取I2C中断函数I2C_GetITStatus247
14.4.33清除中断挂起位函数I2C_ClearITPendingBit247
14.5综合练习248
14.6小结250
14.7习题251
第15章 通用定时器系统(教学视频:39分钟)253
15.1系统计时器(SysTick)及其编程方法253
15.1.1 SysTick寄存器结构253
15.1.2配置SysTick时钟源函数SysTick_CLKSourceConfig253
15.1.3设置SysTick重载值函数SysTick_Setreload254
15.1.4使能或禁用SysTick计数器函数SysTick_CounterCmd254
15.1.5使能或者取消SysTick中断函数SysTick_ITConfig254
15.1.6获取SysTick计数器值函数SysTick_GetCounter255
15.1.7获取SysTick标志位函数SysTick_GetFlagStatus255
15.2通用定时器(TIM)结构255
15.2.1时基单元256
15.2.2计数器的模式256
15.2.3通用定时器的特殊工作模式257
15.3通用定时器(TIM)的编程方法258
15.3.1TIM寄存器结构260
15.3.2复位TIM外设寄存器函数TIM_Delnit261
15.3.3初始化TIMx时间基单元函数TIM_TimeBaselnit261
15.3.4初始化TIMx外设函数TIM_OClnit函数261
15.3.5初始化TIMx外设函数TIM_ICInit263
15.3.6初始化TIM_TimeBaselnitStruct结构函数TIM_TimeBaseStructInit263
15.3.7初始化TIM_OCInitStruct结构函数TIM_OCStructInit264
15.3.8初始化TIM_ICInitStruct结构函数TIM_ICStructlnit264
15.3.9使能或者禁用TIM外设函数TIM_Cmd264
15.3.10使能或者禁用TIM中断函数TIM_ITConfig265
15.3.11配置DMA接口函数TIM_DMAConfig265
15.3.12使能或者禁用DMA请求函数TIM_DMACmd265
15.3.13配置TIMx内部时钟函数TIM_ntemalClockConfig266
15.3.14配置TIMx内部触发器为外部时钟函数TIM_ITRxExternalClockConfig266
15.3.15配置TIMx触发器为外部时钟函数TIM_TixExternal Config266
15.3.16配置TIMx外部时钟模型1函数TIM_ETRClockMode1Config266
15.3.17配置TIMx外部时钟模型2函数TIM_ETRCIockMode2Config267
15.3.18配置TIMx外部触发函数TIM_ETRConfig267
15.3.19选择TIMx输入触发源函数TIM_SelectInputTrigger267
15.3.20设置TIMx预分频函数TIM_PrescalerConfig268
15.3.21设置TIMx计数器模式函数TIM_CounterModeConfig268
15.3.22设置TIMx输出1函数TIM_ForcedOCIConfig268
15.3.23设置TIMx输出2函数TIM_ForcedOC2Config269
15.3.24设置TIMx输出3函数TIM_ForcedOC3Config269
15.3.25设置TIMx输出4函数TIM_ForcedOC4Config269
15.3.26使能或禁用ARR上的预装载寄存器函数TIM_ARRPreloadConfig270
15.3.27选择外设捕获比较DMA源函数TIM_SelectCCDMA270
15.3.28使能或禁用CCR1上的预装载寄存器函数TIM_OC1PreloadConfig270
15.3.29使能或禁用CCR2上的预装载寄存器函数TIM_OC2PreloadConfig271
15.3.30使能或禁用CCR3上的预装载寄存器函数TIM_OC3PreloadConfig271
15.3.31使能或禁用CCR4上的预装载寄存器函数TIM_OC4PreloadConfig271
15.3.32设置捕获比较1快速特征函数TIM_OC1FastConfig272
15.3.33设置捕获比较2快速特征函数TIM_OC2FastConfig272
15.3.34设置捕获比较3快速特征函数TIM_OC3FastConfig272
15.3.35设置捕获比较4快速特征函数TIM_OC4FastConfig273
15.3.36清除或者保持OCREF1信号函数TIM_ClearOC1Ref273
15.3.37清除或者保持OCREF2信号函数TIM_C1earOC2Ref273
15.3.38清除或者保持OCREF3信号函数TIM_ClearOC3Ref274
15.3.39清除或者保持OCREF4信号函数TIM_ClearOC4Ref274
15.3.40使能或禁用更新事件函数TIM_UpdateDisableConfig274
15.3.41设置TIMx编码界面函数TIM_EncoderlnterfaceConfig275
15.3.42设置事件由软件产生函数TIM_GenerateEvent275
15.3.43设置TIMx通道1极性函数TIM_OC1PolarityConfig275