新闻资讯
看你所看,想你所想

STM32F103x微控制器与μC/OS-Ⅱ作业系统

STM32F103x微控制器与μC/OS-Ⅱ作业系统

图书内容

本书以引导读者快速全面掌握STM32F103x系列嵌入式微控制器为目的,由浅入深地带领读者走进嵌入式世界。
本书共分为两部分:第一部分以嵌入式基本概念为平台,介绍嵌入式微控制器各模组的使用方法、库函式,从简单的单模组知识到複杂的多模组套用,涵盖Cortex-M3体系结构、开发平台、复位和时钟控制器、NVIC和EXTI模组、GPIO模组、FSMC模组、模数转换器模组、通用定时器模组、通信模组等常用功能模组。第二部分主要介绍μC/OS-Ⅱ作业系统的概念与套用,讲解μC/OS-Ⅱ作业系统的核心、常用的系统服务等知识。本书注重理论知识和实践能力的结合,推荐初学者使用库函式设计嵌入式程式以避免複杂的暂存器操作。

目 录

第1章 嵌入式系统概述 (1)
1.1 嵌入式系统简介 (1)
1.1.1 嵌入式系统定义 (1)
1.1.2 嵌入式系统的特点 (2)
1.1.3 嵌入式系统的套用领域 (3)
1.2 嵌入式系统的组成 (4)
1.3 嵌入式处理器 (5)
1.3.1 嵌入式处理器的分类 (5)
1.3.2 嵌入式处理器的选型原则 (6)
1.4 嵌入式作业系统 (7)
1.5 ARM处理器简介 (10)
1.5.1 ARM处理器的进化过程 (10)
1.5.2 ARM处理器的开发工具 (12)
1.6 嵌入式系统的设计方法 (13)
1.6.1 嵌入式系统的总体结构 (13)
1.6.2 嵌入式系统设计过程 (14)
1.6.3 嵌入式系统的硬/软体协同设计技术 (15)
思考与练习 (16)
第2章 ARM Cortex-M3内部结构 (17)
2.1 Cortex-M3简介 (17)
2.2 指令集 (20)
2.3 流水线 (21)
2.4 暂存器组 (22)
2.5 操作模式和特权等级 (25)
2.6 异常、中断和向量表 (26)
2.7 存储器映射 (29)
2.8 调试支持 (30)
思考与练习 (30)
第3章 STM32F1系列微控制器简介 (31)
3.1 基于Cortex-M3核心的STM32F1微控制器概述 (31)
3.2 STM32F1微控制器的系统结构 (33)
3.3 STM32F1微控制器的存储器结构与映射 (34)
3.4 STM32F1微控制器的嵌入式快闪记忆体 (36)
3.5 STM32F1微控制器的启动配置 (37)
3.6 STM32F1微控制器的电源控制 (38)
3.7 STM32F1微控制器的复位 (39)
3.8 STM32F1微控制器的调试连线埠 (41)
思考与练习 (41)
第4章 建立MDK-ARM5.0开发平台 (42)
4.1 MDK-ARM简介 (42)
4.2 CMSIS标準简介 (44)
4.3 STM32标準外设库 (45)
4.4 安装MDK-ARM5.0 (49)
4.5 创建工程模板 (52)
思考与练习 (57)
第5章 复位与时钟控制器 (58)
5.1 STM32F103x微控制器时钟模组简介 (58)
5.1.1 HSE时钟 (60)
5.1.2 HSI时钟 (60)
5.1.3 PLL (61)
5.1.4 LSE时钟 (61)
5.1.5 LSI时钟 (61)
5.1.6 系统时钟的选择 (62)
5.1.7 时钟安全系统 (62)
5.1.8 RTC时钟 (62)
5.1.9 看门狗时钟 (62)
5.1.10 时钟输出 (62)
5.1.11 片上外设时钟 (63)
5.2 RCC库函式说明 (63)
5.2.1 库函式RCC_DeInit (65)
5.2.2 库函式RCC_HSEConfig (65)
5.2.3 库函式RCC_WaitForHSEStartUp (65)
5.2.4 库函式RCC_AdjustHSICalibrationValue (66)
5.2.5 库函式RCC_HSICmd (66)
5.2.6 库函式RCC_PLLConfig (66)
5.2.7 库函式RCC_PLLCmd (67)
5.2.8 库函式RCC_SYSCLKConfig (67)
5.2.9 库函式RCC_GetSYSCLKSource (68)
5.2.10 库函式RCC_HCLKConfig (68)
5.2.11 库函式RCC_PCLK1Config (69)
5.2.12 库函式RCC_PCLK2Config (69)
5.2.13 库函式RCC_ITConfig (70)
5.2.14 库函式RCC_USBCLKConfig (70)
5.2.15 库函式RCC_ADCCLKConfig (70)
5.2.16 库函式RCC_LSEConfig (71)
5.2.17 库函式RCC_LSICmd (71)
5.2.18 库函式RCC_RTCCLKConfig (72)
5.2.19 库函式RCC_RTCCLKCmd (72)
5.2.20 库函式RCC_GetClocksFreq (72)
5.2.21 库函式RCC_AHBPeriphClockCmd (73)
5.2.22 库函式RCC_APB2PeriphClockCmd (73)
5.2.23 库函式RCC_APB1PeriphClockCmd (74)
5.2.24 库函式RCC_APB2PeriphResetCmd (75)
5.2.25 库函式RCC_APB1PeriphResetCmd (75)
5.2.26 库函式RCC_BackupResetCmd (75)
5.2.27 库函式RCC_ClockSecuritySystemCmd (76)
5.2.28 库函式RCC_MCOConfig (76)
5.2.29 库函式RCC_GetFlagStatus (76)
5.2.30 库函式RCC_ClearFlag (77)
5.2.31 库函式RCC_GetITStatus (77)
5.2.32 库函式RCC_ClearITPendingBit (78)
5.3 使用RCC库函式建立系统时钟 (78)
5.3.1 建立系统时钟的一般流程 (78)
5.3.2 实例 (79)
思考与练习 (79)
第6章 I/O连线埠模组 (81)
6.1 概述 (81)
6.2 GPIO库函式说明 (83)
6.2.1 库函式GPIO_DeInit (84)
6.2.2 库函式GPIO_AFIODeInit (84)
6.2.3 库函式GPIO_Init (84)
6.2.4 库函式GPIO_StructInit (86)
6.2.5 库函式GPIO_ReadInputDataBit (86)
6.2.6 库函式GPIO_ReadInputData (87)
6.2.7 库函式GPIO_ReadOutputDataBit (87)
6.2.8 库函式GPIO_ReadOutputData (87)
6.2.9 库函式GPIO_SetBits (88)
6.2.10 库函式GPIO_ResetBits (88)
6.2.11 库函式GPIO_WriteBit (88)
6.2.12 库函式GPIO_Write (88)
6.2.13 库函式GPIO_PinLockConfig (89)
6.2.14 库函式GPIO_EventOutputConfig (89)
6.2.15 库函式GPIO_EventOutputCmd (90)
6.2.16 库函式GPIO_PinRemapConfig (90)
6.2.17 库函式GPIO_EXTILineConfig (91)
思考与练习 (91)
第7章 中断和事件 (92)
7.1 嵌套向量中断控制器 (92)
7.2 外部中断/事件控制器 (95)
7.3 NVIC库函式说明 (96)
7.3.1 库函式NVIC_PriorityGroupConfig (97)
7.3.2 库函式NVIC_Init (97)
7.3.3 库函式NVIC_SetVectorTable (99)
7.3.4 库函式NVIC_SystemLPConfig (100)
7.4 EXTI库函式说明 (100)
7.4.1 库函式EXTI_DeInit (101)
7.4.2 库函式EXTI_Init (101)
7.4.3 库函式EXTI_StructInit (102)
7.4.4 库函式EXTI_GenerateSWInterrupt (103)
7.4.5 库函式EXTI_GetFlagStatus (103)
7.4.6 库函式EXTI_ClearFlag (103)
7.4.7 库函式EXTI_GetITStatus (103)
7.4.8 库函式EXTI_ClearITPendingBit (104)
思考与练习 (104)
第8章 系统时基定时器 (105)
8.1 概述 (105)
8.2 SysTick库函式说明 (106)
思考与练习 (106)
第9章 实时时钟和备份暂存器 (107)
9.1 实时时钟简介 (107)
9.2 后备暂存器简介 (111)
9.3 RTC库函式说明 (112)
9.3.1 库函式RTC_ITConfig (112)
9.3.2 库函式RTC_EnterConfigMode (113)
9.3.3 库函式RTC_ExitConfigMode (113)
9.3.4 库函式RTC_GetCounter (113)
9.3.5 库函式RTC_SetCounter (113)
9.3.6 库函式RTC_SetPrescaler (114)
9.3.7 库函式RTC_SetAlarm (114)
9.3.8 库函式RTC_WaitForLastTask (114)
9.3.9 库函式RTC_WaitForSynchro (114)
9.3.10 库函式RTC_GetFlagStatus (115)
9.3.11 库函式RTC_ClearFlag (115)
9.3.12 库函式RTC_GetITStatus (115)
9.3.13 库函式RTC_ClearITPendingBit (116)
9.4 BKP库函式说明 (116)
9.4.1 库函式BKP_DeInit (116)
9.4.2 库函式BKP_Init (117)
9.4.3 库函式BKP_TamperPinCmd (117)
9.4.4 库函式BKP_ITConfig (117)
9.4.5 库函式BKP_RTCOutputConfig (117)
9.4.6 库函式BKP_SetRTCCalibrationValue (118)
9.4.7 库函式BKP_WriteBackupRegister (118)
9.4.8 库函式BKP_ReadBackupRegister (119)
9.4.9 库函式BKP_GetFlagStatus (119)
9.4.10 库函式BKP_ClearFlag (119)
9.4.11 库函式BKP_GetITStatus (119)
9.4.12 库函式BKP_ClearITPendingBit (120)
思考与练习 (120)
第10章 嵌入式快闪记忆体 (121)
10.1 嵌入式快闪记忆体简介 (121)
10.1.1 嵌入式快闪记忆体的组织方式 (121)
10.1.2 嵌入式快闪记忆体的读操作 (122)
10.1.3 嵌入式编程和擦除控制器 (123)
10.2 FLASH库函式说明 (128)
10.2.1 库函式FLASH_SetLatency (129)
10.2.2 库函式FLASH_HalfCycleAccessCmd (129)
10.2.3 库函式FLASH_PrefetchBufferCmd (130)
10.2.4 库函式FLASH_Unlock (130)
10.2.5 库函式FLASH_Lock (130)
10.2.6 库函式FLASH_ErasePage (130)
10.2.7 库函式FLASH_EraseAllPages (131)
10.2.8 库函式FLASH_EraseOptionBytes (131)
10.2.9 库函式FLASH_ProgramWord (131)
10.2.10 库函式FLASH_ProgramHalfWord (131)
10.2.11 库函式FLASH_ProgramOptionByteData (132)
10.2.12 库函式FLASH_EnableWriteProtection (132)
10.2.13 库函式FLASH_ReadOutProtection (133)
10.2.14 库函式FLASH_UserOptionByteConfig (133)
10.2.15 库函式FLASH_GetUserOptionByte (133)
10.2.16 库函式FLASH_GetWriteProtectionOptionByte (134)
10.2.17 库函式FLASH_GetReadOutProtectionStatus (134)
10.2.18 库函式FLASH_GetPrefetchBufferStatus (134)
10.2.19 库函式FLASH_ITConfig (134)
10.2.20 库函式FLASH_GetFlagStatus (135)
10.2.21 库函式FLASH_ClearFlag (135)
10.2.22 库函式FLASH_GetStatus (135)
10.2.23 库函式FLASH_WaitForLastOperation (136)
思考与练习 (136)
第11章 USART串口模组 (137)
11.1 USART串口简介 (137)
11.1.1 功能概述 (138)
11.1.2 传送器 (139)
11.1.3 接收器 (140)
11.1.4 产生分数比特率 (141)
11.1.5 多处理器通信 (142)
11.1.6 LIN模式 (143)
11.1.7 USART同步模式 (143)
11.1.8 单线半双工 (144)
11.1.9 智慧卡模式 (145)
11.1.10 红外模式 (146)
11.1.11 USART的中断请求 (147)
11.2 USART库函式说明 (148)
11.2.1 库函式USART_DeInit (149)
11.2.2 库函式USART_Init (149)
11.2.3 库函式USART_StructInit (151)
11.2.4 库函式USART_Cmd (151)
11.2.5 库函式USART_ITConfig (151)
11.2.6 库函式USART_DMACmd (152)
11.2.7 库函式USART_SetAddress (152)
11.2.8 库函式USART_WakeUpConfig (152)
11.2.9 库函式USART_ReceiverWakeUpCmd (153)
11.2.10 库函式USART_LINBreakDetectiLengthConfig (153)
11.2.11 库函式USART_LINCmd (153)
11.2.12 库函式USART_SendData (154)
11.2.13 库函式USART_ReceiveData (154)
11.2.14 库函式USART_SendBreak (154)
11.2.15 库函式USART_SetGuardTime (154)
11.2.16 库函式USART_SetPrescaler (155)
11.2.17 库函式USART_SmartCardCmd (155)
11.2.18 库函式USART_SmartCardNackCmd (155)
11.2.19 库函式USART_HalfDuplexCmd (155)
11.2.20 库函式USART_IrDAConfig (156)
11.2.21 库函式USART_IrDACmd (156)
11.2.22 库函式USART_GetFlagStatus (156)
11.2.23 库函式USART_ClearFlag (157)
11.2.24 库函式USART_GetITStatus (157)
11.2.25 库函式USART_ClearITPendingBit (158)
思考与练习 (158)
第12章 SPI模组 (159)
12.1 SPI简介 (159)
12.1.1 引脚概述 (160)
12.1.2 数据传输模式 (161)
12.1.3 SPI从模式 (162)
12.1.4 SPI主模式 (163)
12.1.5 状态标誌 (163)
12.1.6 利用DMA的SPI通信 (164)
12.1.7 SPI中断 (164)
12.2 SPI库函式说明 (164)
12.2.1 库函式SPI_DeInit (165)
12.2.2 库函式SPI_Init (165)
12.2.3 库函式SPI_StructInit (167)
12.2.4 库函式SPI_Cmd (167)
12.2.5 库函式SPI_I2S_ITConfig (168)
12.2.6 库函式SPI_I2S_DMACmd (168)
12.2.7 库函式SPI_I2S_SendData (168)
12.2.8 库函式SPI_I2S_ReceiveData (169)
12.2.9 库函式SPI_NSSInternalSoftwareConfig (169)
12.2.10 库函式SPI_SSOutputCmd (169)
12.2.11 库函式SPI_DataSizeConfig (170)
12.2.12 库函式SPI_TransmitCRC (170)
12.2.13 库函式SPI_CalculateCRC (170)
12.2.14 库函式SPI_GetCRC (170)
12.2.15 库函式SPI_GetCRCPolynomial (171)
12.2.16 库函式SPI_BiDirectionalLineConfig (171)
12.2.17 库函式SPI_I2S_GetFlagStatus (171)
12.2.18 库函式SPI_I2S_ClearFlag (172)
12.2.19 库函式SPI_I2S_GetITStatus (172)
12.2.20 库函式SPI_I2S_ClearITPendingBit (172)
思考与练习 (173)
第13章 I2C模组 (174)
13.1 I2C简介 (174)
13.1.1 功能描述 (175)
13.1.2 I2C从模式 (176)
13.1.3 I2C主模式 (177)
13.1.4 错误条件 (179)
13.1.5 SDA/SCL线控制 (180)
13.1.6 DMA请求 (180)
13.1.7 I2C的中断 (181)
13.2 I2C库函式说明 (182)
13.2.1 库函式I2C_DeInit (183)
13.2.2 库函式I2C_Init (183)
13.2.3 库函式I2C_StructInit (184)
13.2.4 库函式I2C_Cmd (185)
13.2.5 库函式I2C_ITConfig (185)
13.2.6 库函式I2C_DMACmd (186)
13.2.7 库函式I2C_SendData (186)
13.2.8 库函式I2C_ReceiveData (186)
13.2.9 库函式I2C_DMALastTransferCmd (186)
13.2.10 库函式I2C_GenerateSTART (187)
13.2.11 库函式I2C_GenerateSTOP (187)
13.2.12 库函式I2C_AcknowledgeConfig (187)
13.2.13 库函式I2C_OwnAddress2Config (187)
13.2.14 库函式I2C_DualAddressCmd (188)
13.2.15 库函式I2C_GeneralCallCmd (188)
13.2.16 库函式I2C_Send7bitAddress (188)
13.2.17 库函式I2C_ReadRegister (189)
13.2.18 库函式I2C_SoftwareResetCmd (189)
13.2.19 库函式I2C_SMBusAlertConfig (189)
13.2.20 库函式I2C_TransmitPEC (190)
13.2.21 库函式I2C_PECPositionConfig (190)
13.2.22 库函式I2C_CalculatePEC (190)
13.2.23 库函式I2C_GetPEC (190)
13.2.24 库函式I2C_ARPCmd (191)
13.2.25 库函式I2C_StretchClockCmd (191)
13.2.26 库函式I2C_FastModeDutyCycleConfig (191)
13.2.27 库函式I2C_GetLastEvent (191)
13.2.28 库函式I2C_CheckEvent (192)
13.2.29 库函式I2C_GetFlagStatus (192)
13.2.30 库函式I2C_ClearFlag (193)
13.2.31 库函式I2C_GetITStatus (193)
13.2.32 库函式I2C_ClearITPendingBit (194)
思考与练习 (194)
第14章 DMA控制器 (195)
14.1 DMA简介 (195)
14.2 DMA库函式说明 (199)
14.2.1 库函式DMA_DeInit (200)
14.2.2 库函式DMA_Init (200)
14.2.3 库函式DMA_StructInit (201)
14.2.4 库函式DMA_Cmd (202)
14.2.5 库函式DMA_ITConfig (202)
14.2.6 库函式DMA_GetCurrDataCounte (203)
14.2.7 库函式DMA_GetFlagStatus (203)
14.2.8 库函式DMA_ClearFlag (203)
14.2.9 库函式DMA_GetITStatus (203)
14.2.10 库函式DMA_ClearITPendingBit (204)
思考与练习 (204)
第15章 FSMC模组 (205)
15.1 FSMC简介 (205)
15.2 与非汇流排复用模式的异步16位NOR快闪记忆体接口 (207)
15.2.1 FSMC的配置 (207)
15.2.2 时序计算 (209)
15.2.3 硬体连线 (210)
15.2.4 从外部NOR快闪记忆体存储器执行代码 (211)
15.3 与非汇流排复用的16位SRAM接口 (211)
15.3.1 FSMC配置 (211)
15.3.2 时序计算 (212)
15.3.3 硬体连线 (213)
15.4 与8位的NAND快闪记忆体存储器接口 (213)
15.4.1 FSMC配置 (213)
15.4.2 时序计算 (215)
15.4.3 硬体连线 (217)
15.4.4 错误校验码计算 (217)
15.5 FSMC库函式说明 (218)
思考与练习 (219)
第16章 模数转换器模组 (220)
16.1 ADC简介 (220)
16.1.1 功能描述 (221)
16.1.2 自校準 (223)
16.1.3 可程式的採样时间 (224)
16.1.4 外部触发转换 (224)
16.1.5 双ADC模式 (225)
16.1.6 温度感测器 (226)
16.1.7 ADC的中断事件 (227)
16.2 ADC库函式说明 (227)
16.2.1 库函式ADC_DeInit (228)
16.2.2 库函式ADC_Init (228)
16.2.3 库函式ADC_StructInit (230)
16.2.4 库函式ADC_Cmd (231)
16.2.5 库函式ADC_ITConfig (231)
16.2.6 库函式ADC_DMACmd (231)
16.2.7 库函式ADC_ResetCalibration (232)
16.2.8 库函式ADC_GetResetCalibrationStatus (232)
16.2.9 库函式ADC_StartCalibration (232)
16.2.10 库函式ADC_GetCalibrationStatus (233)
16.2.11 库函式ADC_SoftwareStartConvCmd (233)
16.2.12 库函式ADC_GetSoftwareStartConvStatus (233)
16.2.13 库函式ADC_DiscModeChannelCountConfig (233)
16.2.14 库函式ADC_DiscModeCmd (234)
16.2.15 库函式ADC_RegularChannelConfig (234)
16.2.16 库函式ADC_ExternalTrigConvConfig (235)
16.2.17 库函式ADC_GetConversionValue (235)
16.2.18 库函式ADC_GetDuelModeConversionValue (235)
16.2.19 库函式ADC_AutoInjectedConvCmd (236)
16.2.20 库函式ADC_InjectedDiscModeCmd (236)
16.2.21 库函式ADC_ExternalTrigInjectedConvConfig (236)
16.2.22 库函式ADC_ExternalTrigInjectedConvCmd (237)
16.2.23 库函式ADC_SoftwareStartinjectedConvCmd (237)
16.2.24 库函式ADC_GetsoftwareStartinjectedConvStatus (237)
16.2.25 库函式ADC_InjectedChannleConfig (238)
16.2.26 库函式ADC_InjectedSequencerLengthConfig (238)
16.2.27 库函式ADC_SetInjectedOffset (238)
16.2.28 库函式ADC_GetInjectedConversionValue (239)
16.2.29 库函式ADC_AnalogWatchdogCmd (239)
16.2.30 库函式ADC_AnalogWatchdongThresholdsConfig (239)
16.2.31 库函式ADC_AnalogWatchdongSingleChannelConfig (240)
16.2.32 库函式ADC_TampSensorVrefintCmd (240)
16.2.33 库函式ADC_GetFlagStatus (240)
16.2.34 库函式ADC_ClearFlag (241)
16.2.35 库函式ADC_GetITStatus (241)
16.2.36 库函式ADC_ClearITPendingBit (241)
思考与练习 (241)
第17章 定时器模组 (243)
17.1 TIM简介 (243)
17.1.1 计数功能 (244)
17.1.2 时钟选择 (248)
17.1.3 捕获/比较通道 (250)
17.1.4 定时器同步 (261)
17.2 TIM库函式说明 (265)
17.2.1 库函式TIM_DeInit (268)
17.2.2 库函式TIM_TimeBaseInit (268)
17.2.3 库函式TIM_OC1Init (269)
17.2.4 库函式TIM_ICInit (270)
17.2.5 库函式TIM_BDTRConfig (271)
17.2.6 库函式TIM_TimeBaseStructInit (272)
17.2.7 库函式TIM_OCStructInit (273)
17.2.8 库函式TIM_ICStructInit (273)
17.2.9 库函式TIM_BDTRStructInit (274)
17.2.10 库函式TIM_Cmd (274)
17.2.11 库函式TIM_ITConfig (274)
17.2.12 库函式TIM_GenerateEvent (275)
17.2.13 库函式TIM_DMAConfig (275)
17.2.14 库函式TIM_DMACmd (276)
17.2.15 库函式TIM_InternalClockConfig (277)
17.2.16 库函式TIM_ITRxExternalClockConfig (277)
17.2.17 库函式TIM_TIxExternalClockConfig (278)
17.2.18 库函式TIM_ETRClockMode1Config (278)
17.2.19 库函式TIM_ETRClockMode2Config (279)
17.2.20 库函式TIM_ETRConfig (279)
17.2.21 库函式TIM_SelectInputTrigger (279)
17.2.22 库函式TIM_PrescalerConfig (280)
17.2.23 库函式TIM_CounterModeConfig (280)
17.2.24 库函式TIM_ForcedOC1Config (281)
17.2.25 库函式TIM_ARRPreloadConfig (281)
17.2.26 库函式TIM_SelectCOM (281)
17.2.27 库函式TIM_SelectCCDMA (281)
17.2.28 库函式TIM_CCPreloadControl (282)
17.2.29 库函式TIM_OC1PreloadConfig (282)
17.2.30 库函式TIM_OC1FastConfig (282)
17.2.31 库函式TIM_ClearOC1Ref (283)
17.2.32 库函式TIM_UpdateDisableConfig (283)
17.2.33 库函式TIM_EncoderInterfaceConfig (283)
17.2.34 库函式TIM_OC1PolarityConfig (284)
17.2.35 库函式TIM_OC1NPolarityConfig (284)
17.2.36 库函式TIM_CCxCmd (284)
17.2.37 库函式TIM_CCxNCmd (285)
17.2.38 库函式TIM_SelectOCxM (285)
17.2.39 库函式TIM_UpdateRequestConfig (285)
17.2.40 库函式TIM_SelectHallSensor (286)
17.2.41 库函式TIM_SelectOnePulseMode (286)
17.2.42 库函式TIM_SelectOutputTrigger (286)
17.2.43 库函式TIM_SelectSlaveMode (287)
17.2.44 库函式TIM_SelectMasterSlaveMode (288)
17.2.45 库函式TIM_SetAutoreload (288)
17.2.46 库函式TIM_SetCompare1 (288)
17.2.47 库函式TIM_SetIC1Prescaler (288)
17.2.48 库函式TIM_SetClockDivision (289)
17.2.49 库函式TIM_GetCapture1 (289)
17.2.50 库函式TIM_GetCounter (289)
17.2.51 库函式TIM_GetPrescaler (289)
17.2.52 库函式TIM_GetFlagStatus (290)
17.2.53 库函式TIM_ClearFlag (290)
17.2.54 库函式TIM_GetITStatus (291)
17.2.55 库函式TIM_ClearITPendingBit (291)
思考与练习 (291)
第18章 看门狗模组 (292)
18.1 独立看门狗简介 (292)
18.2 视窗看门狗简介 (293)
18.3 IWDG库函式说明 (295)
18.3.1 库函式IWDG_WriteAccessCmd (295)
18.3.2 库函式IWDG_SetPrescaler (296)
18.3.3 库函式IWDG_SetReload (296)
18.3.4 库函式IWDG_ReloadCounter (296)
18.3.5 库函式IWDG_Enable (296)
18.3.6 库函式IWDG_GetFlagStatus (297)
18.4 WWDG库函式说明 (297)
18.4.1 库函式WWDG_DeInit (297)
18.4.2 库函式WWDG_SetPrescaler (297)
18.4.3 库函式WWDG_SetWindowValue (298)
18.4.4 库函式WWDG_EnableIT (298)
18.4.5 库函式WWDG_SetCounter (298)
18.4.6 库函式WWDG_Enable (298)
思考与练习 (299)
第19章 μC/OS-Ⅱ作业系统概述 (300)
19.1 μC/OS-Ⅱ简介 (300)
19.2 实时系统概念 (300)
19.2.1 前后台系统 (301)
19.2.2 代码的临界段 (301)
19.2.3 任务 (301)
19.2.4 核心 (302)
19.2.5 调度 (303)
19.2.6 可重入型 (303)
19.2.7 不可剥夺型核心 (303)
19.2.8 可剥夺型核心 (303)
19.2.9 时间片轮番调度法 (304)
19.2.10 任务优先权 (304)
19.2.11 死锁 (304)
19.2.12 同步 (304)
19.2.13 任务间的通信 (305)
19.2.14 时钟节拍 (305)
19.2.15 临界段 (306)
19.3 核心结构 (306)
19.3.1 任务控制块 (306)
19.3.2 任务调度 (307)
19.3.3 给调度器上锁和开锁 (307)
19.3.4 空闲任务 (308)
19.3.5 统计任务 (308)
19.3.6 ?C/OS中的中断处理 (308)
19.3.7 时钟节拍 (309)
19.3.8 ?C/OS-Ⅱ初始化与启动 (309)
思考与练习 (309)
第20章 任务管理与通信 (310)
20.1 任务管理 (310)
20.1.1 建立任务 (311)
20.1.2 任务堆叠 (311)
20.1.3 删除任务 (311)
20.1.4 请求删除任务 (312)
20.1.5 改变任务的优先权 (312)
20.1.6 挂起任务 (313)
20.1.7 恢复任务 (313)
20.2 任务之间的通信 (313)
20.2.1 事件控制块 (313)
20.2.2 信号量 (315)
20.2.3 信箱 (316)
20.2.4 讯息伫列 (318)
思考与练习 (320)
第21章 时间管理和记忆体管理 (321)
21.1 时间管理 (321)
21.1.1 任务延时函式 (321)
21.1.2 按时分秒延时函式 (322)
21.1.3 让处在延时期的任务结束延时 (322)
21.1.4 系统时间 (322)
21.2 记忆体管理 (323)
21.2.1 记忆体控制块 (323)
21.2.2 建立一个记忆体分区 (323)
21.2.3 分配一个记忆体块 (324)
21.2.4 释放一个记忆体块 (324)
21.2.5 查询一个记忆体分区的状态 (324)
21.2.6 等待一个记忆体块 (325)
思考与练习 (325)
参考文献 (326)

相关推荐

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com