STM32开发指南:多任务调度与死循环解析

需积分: 32 272 下载量 50 浏览量 更新于2024-08-06 收藏 27.79MB PDF 举报
"STM32开发指南 - 正点原子库函数教程" 在嵌入式系统开发中,STM32微控制器是一种广泛应用的处理器,而正点原子提供的开发板和库函数教程是学习STM32的良好资源。本资源涉及到的是STM32的软件开发,特别是基于官方固件库的库开发方法。在描述中提到了一个死循环的例子,用于解释多任务环境下CPU控制权的切换。 标题中提到的"死循环-gb∕t 28035-2011 软件系统验收规范",可能是指在软件系统验收中,死循环可能会导致系统无法正常运行,不符合GB/T 28035-2011标准中关于软件稳定性和效率的要求。死循环通常指的是程序陷入一个无法自行终止的循环,这在多任务系统中可能导致CPU资源的浪费,使得其他任务无法得到执行。 描述中展示了一个简单的任务调度场景,两个任务MyTask和YourTask都在执行一个1秒的延时操作。在RTOS(实时操作系统)中,任务调度器会根据优先级或时间片分配CPU执行权。当一个任务调用延时函数后,它会让出CPU控制权,此时其他任务有机会获得执行。在上述例子中,MyTask和YourTask交替运行,形成一种并发执行的假象,但实际上,由于只有一个CPU,它们是在时间片轮转的基础上交替占有CPU资源。 标签"STM32 正点原子 库开发"表明了讨论的主题是关于STM32微控制器的开发,使用正点原子提供的开发工具和库函数。正点原子的开发板通常配备了丰富的硬件资源,包括各种传感器、通信接口等,方便开发者进行实际项目练习。 部分内容提到了ALIENTEK战舰STM32开发板的硬件资源,包括MCU、IO口、USB串口、JTAG/SWD调试接口、SRAM、LCD/OLED模块、复位电路、串口、RS485接口、CAN/USB接口、EEPROM、游戏手柄接口、SPIFLASH、3D加速度传感器、温湿度传感器、红外接收头、无线模块、LED、按键、电容触摸按键、PS/2接口、OLED/摄像头模块、有源蜂鸣器、SD卡/以太网模块、多功能端口、音频选择、FM收发、音频输出、音频编解码和电源等。这些硬件资源为开发者提供了广泛的实验和应用开发的可能性。 软件篇介绍了RVMDK(RealView MDK)软件的入门,包括STM32官方固件库的简介,讲解了库开发与寄存器开发的区别,以及固件库与CMSIS( Cortex Microcontroller Software Interface Standard)标准的关系,帮助开发者理解和使用STM32的库函数进行开发。 这份资源主要涵盖了STM32的硬件资源介绍、基于正点原子开发板的库函数开发实践,以及软件开发工具RVMDK的使用,对于想要学习STM32开发的人员来说,是一份非常实用的参考资料。