没有合适的资源?快使用搜索试试~ 我知道了~
首页STM32固件库中文手册:轻松编程与外设驱动
STM32固件库中文手册:轻松编程与外设驱动
需积分: 35 0 下载量 4 浏览量
更新于2024-07-28
收藏 2.79MB PDF 举报
"STM32固件库使用手册的中文翻译版"
STM32固件库是专为基于ARM Cortex-M3内核的STM32F101xx和STM32F103xx系列微控制器设计的一个软件库,旨在简化用户对这些设备的编程工作。这个库包含了丰富的函数、数据结构和宏,覆盖了STM32微控制器的所有外设功能,如GPIO、定时器、串口、ADC、DAC、SPI、I2C等。它不仅提供了详细的驱动描述和应用示例,还确保用户能够快速理解和利用每个外设的功能,无需深入理解底层硬件细节。
固件库的核心是一个统一的应用编程接口(API),它标准化了驱动程序的结构、函数和参数名称,使得不同外设的驱动代码具有一致性和可读性。所有的驱动源代码均遵循严格的ANSI-C标准,确保了代码的可移植性,并且符合MISRA-C2004编码规范,以提高代码质量和安全性。此外,库中的函数输入值在运行时进行了验证,以实现错误检测,这对于调试和开发过程非常有帮助。然而,为了优化最终应用的代码大小和执行效率,这些实时检查可以在产品发布阶段选择性地去除。
STM32固件库虽然通用,能适应各种应用场景,但可能并不总是提供最优化的代码大小和执行速度。对于对性能有严格要求的项目,用户可以参考库中的驱动程序,根据实际需求进行定制和优化。手册的结构分为几个部分,包括定义、文档约定、固件库规则、库的概述、安装指南、使用示例,以及对外设的详细描述和函数设置指南。
在使用STM32固件库时,开发者首先需要了解库的结构,包括各个模块的功能和它们之间的关系。然后,根据设备的配置和应用需求,选择合适的库函数来初始化和控制外设。例如,要使用GPIO口,可以调用初始化函数设置端口模式,然后使用读写函数来操作GPIO引脚。对于更复杂的外设,如串行通信接口或定时器,库提供了高级功能,如中断处理和定时触发。
STM32固件库极大地简化了STM32微控制器的软件开发,减少了学习曲线,提高了开发效率。它提供的驱动程序和应用示例为开发者提供了一个可靠的起点,使他们能够专注于应用程序的创新和优化,而不是底层硬件的实现细节。对于初次接触STM32的开发者,这份中文翻译的手册是极有价值的资源,可以帮助他们更快地熟悉并有效地利用STM32的丰富功能。
表格目录
16/368
译文英文原版为 UM0427 Oct. 2007 Rev 2, 译文仅供参考,与英文版冲突的,以英文版为准
Table 210. I2C_Ack 值.................................................................................................................................. 138
Table 211. I2C_AcknowledgedAddres 值 ..................................................................................................... 138
Table 212. 函数 I2C_StructInit .................................................................................................................... 138
Table 213. I2C_InitStruct 缺省值.................................................................................................................. 138
Table 214. 函数 I2C_ Cmd........................................................................................................................... 139
Table 215. 函数 I2C_ DMACmd ................................................................................................................. 139
Table 216. 函数 I2C_ DMALastTransferCmd ............................................................................................. 140
Table 217. 函数 I2C_ GenerateSTART........................................................................................................ 140
Table 218. 函数 I2C_ GenerateSTOP .......................................................................................................... 141
Table 219. 函数 I2C_ AcknowledgeConfig.................................................................................................. 141
Table 220. 函数 I2C_ OwnAddress2Config................................................................................................. 142
Table 221. 函数 I2C_ DualAddressCmd...................................................................................................... 142
Table 222. 函数 I2C_ GeneralCallCmd ....................................................................................................... 143
Table 223. 函数 I2C_ITConfig..................................................................................................................... 143
Table 224. I2C_IT 值..................................................................................................................................... 143
Table 225. 函数 I2C_ SendData...................................................................................................................144
Table 226. 函数 I2C_ReceiveData............................................................................................................... 144
Table 227. 函数 I2C_ Send7bitAddress ....................................................................................................... 145
Table 228. I2C_Direction 值 ......................................................................................................................... 145
Table 229. 函数 I2C_ ReadRegister............................................................................................................. 145
Table 230. I2C_Register 值 ........................................................................................................................... 146
Table 231. 函数 I2C_ SoftwareResetCmd.................................................................................................... 146
Table 232. 函数 I2C_ SMBusAlertConfig ................................................................................................... 147
Table 233. I2C_ SMBusAlert 值 ................................................................................................................... 147
Table 234. 函数 I2C_ TransmitPEC............................................................................................................. 147
Table 235. 函数 I2C_ PECPositionConfig................................................................................................... 148
Table 236. I2C_ PECPosition 值 ................................................................................................................... 148
Table 237. 函数 I2C_ CalculatePEC............................................................................................................ 14
8
Table 238. 函数 I2C_ GetPEC .....................................................................................................................149
Table 239. 函数 I2C_ ARPCmd ................................................................................................................... 149
Table 240. 函数 I2C_ StretchClockCmd...................................................................................................... 150
Table 241. 函数 I2C_ FastModeDutyCycleConfig ...................................................................................... 150
Table 242. I2C_DutyCycle 值 ....................................................................................................................... 150
Table 243. 函数 I2C_ GetLastEvent............................................................................................................. 151
Table 244. 函数 I2C_ CheckEvent............................................................................................................... 151
Table 245. I2C_Event 值 ............................................................................................................................... 151
Table 246. 函数 I2C_ GetFlagStatus............................................................................................................ 152
Table 247. I2C_FLAG 值 .............................................................................................................................. 152
Table 248. 函数 I2C_ ClearFlag................................................................................................................... 153
Table 249. I2C_FLAG 值 .............................................................................................................................. 153
Table 250. 函数 I2C_ GetITStatus ............................................................................................................... 154
Table 251. I2C_IT 值..................................................................................................................................... 154
Table 252. 函数 I2C_ ClearITPendingBit .................................................................................................... 155
Table 253. I2C_IT 值..................................................................................................................................... 155
Table 254. IWDG 寄存器.............................................................................................................................. 156
Table 255. IWDG 库函数.............................................................................................................................. 157
Table 256. 函数 IWDG_WriteAccessCmd................................................................................................... 157
Table 257. IWDG_WriteAccess 值 ............................................................................................................... 157
Table 258. 函数 IWDG_SetPrescaler........................................................................................................... 158
Table 259. IWDG_Prescaler 值 ..................................................................................................................... 158
Table 260. 函数 IWDG_ SetReload ............................................................................................................. 158
Table 261. 函数 IWDG_ReloadCounter....................................................................................................... 159
Table 262. 函数 IWDG_Enable.................................................................................................................... 159
表格目录
17/368
译文英文原版为 UM0427 Oct. 2007 Rev 2, 译文仅供参考,与英文版冲突的,以英文版为准
Table 263. 函数 IWDG_GetFlagStatus........................................................................................................ 159
Table 264. IWDG_FLAG 值 ......................................................................................................................... 160
Table 265. NVIC 寄存器............................................................................................................................... 161
Table 266. NVIC 库函数............................................................................................................................... 163
Table 267. 函数 NVIC_DeInit...................................................................................................................... 164
Table 268. 函数 NVIC_SCBDeInit.............................................................................................................. 164
Table 269. 函数 NVIC_PriorityGroupConfig .............................................................................................. 165
Table 270. NVIC_PriorityGroup 值 .............................................................................................................. 165
Table 271. 函数 NVIC_Init .......................................................................................................................... 166
Table 272. NVIC_IRQChannel 值................................................................................................................. 166
Table 273. 先占优先级和从优先级值......................................................................................................... 167
Table 274. 函数 NVIC_StructInit.................................................................................................................168
Table 275. NVIC_InitStruct 缺省值.............................................................................................................. 168
Table 276. 函数 NVIC_SETPRIMASK....................................................................................................... 169
Table 277. 函数 NVIC_RESETPRIMASK.................................................................................................. 169
Table 278. 函数 NVIC_SETFAULTMASK................................................................................................. 170
Table 279. 函数 NVIC_ RESETFAULTMASK........................................................................................... 170
Table 280. 函数 NVIC_ BASEPRICONFIG................................................................................................ 171
Table 281. 函数 NVIC_GetBASEPRI.......................................................................................................... 171
Table 282. 函数 NVIC_GetCurrentPendingIRQChannel............................................................................. 172
Table 283. 函数 NVIC_GetIRQChannelPendingBitStatus .......................................................................... 172
Table 284. 函数 NVIC_ SetIRQChannelPendingBit.................................................................................... 173
Table 285. 函数 NVIC_ ClearIRQChannelPendingBit................................................................................ 173
Table 286. 函数 NVIC_GetCurrentActiveHandler ...................................................................................... 174
Table 287. 函数 NVIC_GetIRQChannelActiveBitStatus............................................................................. 174
Table 288. 函数 NVIC_GetCPUID.............................................................................................................. 175
Table 289. 函数 NVIC_SetVectorTable ....................................................................................................... 175
Table 290. NVIC_ VectTab 值....................................................................................................................... 175
Table 291. 函数 NVIC_GenerateSystemReset............................................................................................. 176
Table 292. 函数 NVIC_GenerateCoreReset................................................................................................. 176
Table 293. 函数 NVIC_SystemLPConfig .................................................................................................... 177
Table 294. LowPowerMode 值...................................................................................................................... 177
Table 295. 函数 NVIC_SystemHandlerConfig............................................................................................ 177
Table 296. SystemHandler 值........................................................................................................................ 178
Table 297. SystemHandler 定义.................................................................................................................... 178
Table 298. SystemHandler_NMI 定义 .......................................................................................................... 179
Table 299. SystemHandler_HardFault 定义.................................................................................................. 179
Table 300. SystemHandler_MemoryManage 定义 ....................................................................................... 179
Table 301. SystemHandler_BusFault 定义.................................................................................................... 180
Table 302. SystemHandler_UsageFault 定义................................................................................................ 180
Table 303. SystemHandler_SVCall 定义 ...................................................................................................... 180
Table 304. SystemHandler_DebugMoniter 定义 .......................................................................................... 181
Table 305. SystemHandler_PSV 定义........................................................................................................... 181
Table 306. SystemHandler_Systick 定义 ...................................................................................................... 181
Table 307. 函数 NVIC_SystemHandlerPriorityConfig................................................................................ 182
Table 308. SystemHandler 类型.................................................................................................................... 182
Table 309. 函数 NVIC_GetSystemHandlerPendingBitStatus...................................................................... 183
Table 310. SystemHandler 类型.................................................................................................................... 183
Table 311. 函数 NVIC_ SetSystemHandlerPendingBit ............................................................................... 183
Table 312. SystemHandler 类型.................................................................................................................... 184
Table 313. 函数 NVIC_ClearSystemHandlerPendingBit............................................................................. 184
Table 314. SystemHandler 类型.................................................................................................................... 184
Table 315. 函数 NVIC_ GetSystemHandlerActiveBitStatus ....................................................................... 184
表格目录
18/368
译文英文原版为 UM0427 Oct. 2007 Rev 2, 译文仅供参考,与英文版冲突的,以英文版为准
Table 316. SystemHandler 类型.................................................................................................................... 185
Table 317. 函数 NVIC_ GetFaultHandlerSources ....................................................................................... 185
Table 318. SystemHandler 类型.................................................................................................................... 185
Table 319. 函数 NVIC_GetFaultAddress..................................................................................................... 186
Table 320. SystemHandler 类型.................................................................................................................... 186
Table 321. PWR 寄存器................................................................................................................................187
Table 322. PWR 库函数................................................................................................................................188
Table 323. 函数 PWR_DeInit....................................................................................................................... 188
Table 324. 函数 PWR_BackupAccessCmd.................................................................................................. 189
Table 325. 函数 PWR_PVDCmd................................................................................................................. 189
Table 326. 函数 PWR_PVDLevelConfig..................................................................................................... 190
Table 327. PWR_PVDLevel 值..................................................................................................................... 190
Table 328. 函数 PWR_WakeUpPinCmd...................................................................................................... 190
Table 329. 函数 PWR_EnterSTOPMode ..................................................................................................... 191
Table 330. PWR_Regulator 值 ...................................................................................................................... 191
Table 331. PWR_Regulator 值 ...................................................................................................................... 191
Table 332. 函数 PWR_EnterSTANDBYMode ............................................................................................ 191
Table 333. 函数 PWR_GetFlagStatus .......................................................................................................... 192
Table 334. PWR_FLAG 值 ........................................................................................................................... 192
Table 335. 函数 PWR_ClearFlag................................................................................................................. 192
Table 336. RCC 寄存器 ................................................................................................................................193
Table 337. RCC 库函数 ................................................................................................................................194
Table 339. 函数 RCC_HSEConfig............................................................................................................... 195
Table 340. RCC_HSE 定义........................................................................................................................... 195
Table 341. 函数 RCC_WaitForHSEStartUp................................................................................................. 196
Table 342. 函数 RCC_AdjustHSICalibrationValue...................................................................................... 196
Table 343. 函数 RCC_HSICmd ................................................................................................................... 197
Table 344. 函数 RCC_PLLConfig ............................................................................................................... 197
Table 345. RCC_PLLSource 值 .................................................................................................................... 197
Table 346. RCC_PLLMul 值
......................................................................................................................... 198
Table 347. 函数 RCC_PLLCmd................................................................................................................... 198
Table 348. 函数 RCC_SYSCLKConfig ....................................................................................................... 199
Table 349. RCC_SYSCLKSource 值 ............................................................................................................ 199
Table 350. 函数 RCC_GetSYSCLKSource ................................................................................................. 199
Table 351. 函数 RCC_HCLKConfig............................................................................................................ 200
Table 352. RCC_HCLK 值............................................................................................................................ 200
Table 353. 函数 RCC_PCLK1Config .......................................................................................................... 200
Table 354. RCC_PCLK1 值 .......................................................................................................................... 201
Table 355. 函数 RCC_PCLK2Config .......................................................................................................... 201
Table 356. RCC_PCLK1 值 .......................................................................................................................... 201
Table 357. 函数 RCC_ITConfig................................................................................................................... 202
Table 358. RCC_IT 值................................................................................................................................... 202
Table 359. 函数 RCC_USBCLKConfig....................................................................................................... 202
Table 360. RCC_USBCLKSource 值............................................................................................................ 203
Table 361. 函数 RCC_ADCCLKConfig...................................................................................................... 203
Table 362. RCC_ADCCLKSource 值 ........................................................................................................... 203
Table 363. 函数 RCC_LSEConfig ............................................................................................................... 204
Table 364. RCC_LSE 定义 ........................................................................................................................... 204
Table 365. 函数 RCC_LSICmd.................................................................................................................... 204
Table 366. 函数 RCC_RTCCLKConfig....................................................................................................... 205
Table 367. RCC_RTCCLKSource 值............................................................................................................ 205
Table 368. 函数 RCC_RTCCLKCmd .......................................................................................................... 205
Table 369. 函数 RCC_GetClocksFreq ......................................................................................................... 206
表格目录
19/368
译文英文原版为 UM0427 Oct. 2007 Rev 2, 译文仅供参考,与英文版冲突的,以英文版为准
Table 370. 函数 RCC_AHBPeriphClockCmd ............................................................................................. 207
Table 371. RCC_AHBPeriph 值.................................................................................................................... 207
Table 372. 函数 RCC_APB2PeriphClockCmd............................................................................................ 207
Table 373. RCC_AHB2Periph 值.................................................................................................................. 208
Table 374. 函数 RCC_APB1PeriphClockCmd............................................................................................ 208
Table 375. RCC_AHB1Periph 值.................................................................................................................. 208
Table 376. 函数 RCC_APB2PeriphResetCmd............................................................................................. 209
Table 377. 函数 RCC_APB1PeriphResetCmd............................................................................................. 209
Table 378. 函数 RCC_BackupResetCmd..................................................................................................... 210
Table 379. 函数 RCC_ClockSecuritySystemCmd ....................................................................................... 210
Table 380. 函数 RCC_MCOConfig ............................................................................................................. 210
Table 381. RCC_MCO 值 ..............................................................................................................................211
Table 382. 函数 RCC_ GetFlagStatus...........................................................................................................211
Table 383. RCC_FLAG 值 .............................................................................................................................211
Table 384. 函数 RCC_ ClearFlag................................................................................................................. 212
Table 385. 函数 RCC_ GetITStatus ............................................................................................................. 212
Table 386. RCC_IT 值................................................................................................................................... 212
Table 387. 函数 RCC_ClearITPendingBit ................................................................................................... 213
Table 388. RCC_IT 值................................................................................................................................... 213
Table 389. RTC 寄存器................................................................................................................................. 214
Table 390. RTC 库函数................................................................................................................................. 215
Table 391. 函数 RTC_ITConfig................................................................................................................... 216
Table 392. RTC_IT 值 ................................................................................................................................... 216
Table 393. 函数 RTC_EnterConfigMode..................................................................................................... 216
Table 394. 函数 RTC_ExitConfigMode....................................................................................................... 217
Table 395. 函数 RTC_GetCounter ............................................................................................................... 217
Table 396. 函数 RTC_SetCounter................................................................................................................ 218
Table 397. 函数 RTC_SetPrescaler .............................................................................................................. 218
Table 398. 函数
RTC_ SetAlarm.................................................................................................................. 219
Table 399. 函数 RTC_GetDivider................................................................................................................ 219
Table 400. 函数 RTC_WaitForLastTask....................................................................................................... 220
Table 401. 函数 RTC_WaitForSynchro........................................................................................................ 220
Table 402. 函数 RTC_ GetFlagStatus .......................................................................................................... 221
Table 403. RTC_FLAG 值............................................................................................................................. 221
Table 404. 函数 RTC_ClearFlag .................................................................................................................. 221
Table 405. 函数 RTC_GetITStatus............................................................................................................... 222
Table 406. 函数 RTC_ClearITPendingBit.................................................................................................... 222
Table 407. SPI 寄存器................................................................................................................................... 223
Table 408. SPI 库函数................................................................................................................................... 224
Table 409. 函数 SPI_DeInit.......................................................................................................................... 225
Table 410. 函数 SPI_Init .............................................................................................................................. 225
Table 411. SPI_Mode 值................................................................................................................................226
Table 412. SPI_Mode 值 ............................................................................................................................... 226
Table 413. SPI_DataSize 值 .......................................................................................................................... 226
Table 414. SPI_ SPI_CPOL 值...................................................................................................................... 226
Table 415. SPI_SPI_CPHA 值 ...................................................................................................................... 226
Table 416. SPI_NSS 值 ................................................................................................................................. 226
Table 417. SPI_BaudRatePrescaler 值 .......................................................................................................... 226
Table 418. SPI_FirstBit 值 ............................................................................................................................ 227
Table 419. 函数 SPI_StructInit..................................................................................................................... 227
Table 420. SPI_InitStruct 缺省值.................................................................................................................. 227
Table 421. 函数 SPI_ Cmd........................................................................................................................... 228
Table 422. 函数 SPI_ITConfig..................................................................................................................... 228
表格目录
20/368
译文英文原版为 UM0427 Oct. 2007 Rev 2, 译文仅供参考,与英文版冲突的,以英文版为准
Table 423. SPI_IT 值..................................................................................................................................... 228
Table 424. 函数 SPI_ DMACmd.................................................................................................................. 229
Table 425. SPI_DMAReq 值......................................................................................................................... 229
Table 426. 函数 SPI_ SendData ...................................................................................................................229
Table 427. 函数 SPI_ReceiveData ............................................................................................................... 230
Table 428. 函数 SPI_NSSInternalSoftwareConfig....................................................................................... 230
Table 429. SPI_DMAReq 值......................................................................................................................... 230
Table 430. 函数 SPI_SSOutputCmd ............................................................................................................ 231
Table 431. 函数 SPI_DataSizeConfig .......................................................................................................... 231
Table 432. SPI_DMAReq 值......................................................................................................................... 231
Table 433. 函数 SPI_ TransmitCRC............................................................................................................. 232
Table 434. 函数 SPI_ CalculateCRC............................................................................................................ 232
Table 435. 函数 SPI_ GetCRC.....................................................................................................................233
Table 436. SPI_CRC 值................................................................................................................................. 233
Table 437. 函数 SPI_GetCRCPolynomial.................................................................................................... 233
Table 438. 函数 SPI_BiDirectionalLineConfig............................................................................................ 234
Table 439. SPI_CRC 值................................................................................................................................. 234
Table 440. 函数 SPI_ GetFlagStatus............................................................................................................ 234
Table 441. SPI_FLAG 值 .............................................................................................................................. 235
Table 442. 函数 SPI_ ClearFlag................................................................................................................... 235
Table 443. 函数 SPI_ GetITStatus................................................................................................................235
Table 444. SPI_IT 值..................................................................................................................................... 236
Table 445. 函数 SPI_ ClearITPendingBit .................................................................................................... 236
Table 446. SysTick 寄存器............................................................................................................................ 237
Table 447. SysTick 库函数............................................................................................................................ 238
Table 448. 函数 SysTick_CLKSourceConfig .............................................................................................. 238
Table 449. SysTick_CLKSource 值 .............................................................................................................. 238
Table 450. 函数 SysTick_SetReload ............................................................................................................ 239
Table 451. 函数 SysTick_CounterCmd........................................................................................................ 239
Table 452. SysTick_Counter 值..................................................................................................................... 239
Table 453. 函数 SysTick_ITConfig.............................................................................................................. 240
Table 454. 函数 SysTick_GetCounter.......................................................................................................... 240
Table 455. 函数 SysTick _ GetFlagStatus.................................................................................................... 241
Table 456. SysTick_FLAG 值 ....................................................................................................................... 241
Table 457. TIM 寄存器 ................................................................................................................................. 243
Table 458. TIM 库函数 ................................................................................................................................. 244
Table 459. 函数 TIM_DeInit........................................................................................................................ 246
Table 460. 函数 TIM_TimeBaseInit............................................................................................................. 246
Table 461. TIM_ClockDivision 值................................................................................................................ 247
Table 462. TIM_CounterMode 值 ................................................................................................................. 247
Table 463. 函数 TIM_OCInit....................................................................................................................... 247
Table 464. TIM_OCMode 定义 .................................................................................................................... 248
Table 465. TIM_Channel 值.......................................................................................................................... 248
Table 466. TIM_OCPolarity 值 ..................................................................................................................... 248
Table 467. 函数 TIM_ICInit......................................................................................................................... 249
Table 468. TIM_ICMode 定义 ...................................................................................................................... 249
Table 469. TIM_Channel 值.......................................................................................................................... 249
Table 470. TIM_Channel 值.......................................................................................................................... 250
Table 471. TIM_ICSelection 值 .................................................................................................................... 250
Table 472. TIM_ICPrescaler 值..................................................................................................................... 250
Table 473. 函数 TIM_TimeBaseStructInit................................................................................................... 251
Table 474. TIM_TimeBaseInitStruct 缺省值 ................................................................................................ 251
Table 475. 函数 TIM_TimeBaseStructInit................................................................................................... 251
剩余367页未读,继续阅读
2021-10-02 上传
2022-06-01 上传
2020-03-19 上传
2014-01-07 上传
2022-09-20 上传
点击了解资源详情
2021-09-10 上传
2021-10-15 上传
2024-10-12 上传
lcw1989
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功