Task_Led2_PRIO                     8            LED2 闪烁任务
Task_Led3_PRIO                     9            LED3 闪烁任务
为了兼顾实时效率及 CPU 的负荷。将 ucosII 的时钟节拍设置为 10ms, ucosII 需要提供周期性信号源,用于实现时间延时和确认超时,时钟节拍的含义就是任务和任务之间最短切换时间。这个节拍也不能设置的非常短,会造成 CPU 负荷过大,会造成任务执行兼顾不周。 某些高优先级任务总是在执行,有些低优先级任务得不到执行。 但节拍也不能设置的非常长,这会造成任务执行的实时性变差。 一般 10-100ms 就可以了。
下面分析一下这个程序的结构。
打开工程,可以在工程结构栏看到这个例程的工程结构(如下图)
Startup 组项:
包含了适用于 STM32F103 高容量系列的启动文件。 这是程序的执行的入口文件。在上电启动时,主要完成了对堆栈的初始设置,设置中断向量表,以及跳转到最终指向 main()函数的 C 库。
APP 组项:
App.c 里包含了任务的建立、各任务的原型以及 ucosII 内核的启动。
Stm32f10x_it.c 里包含了各个中断服务程序。在这个例程中,只用到了两个中断,一个是 systick 中断,一个是串口 1 中断。 Systick 中断为 ucosII 内核提供了 10ms 的时钟节拍。
BSP 组项:
 
Com.c 包含了串口 1 的初始化。
Bsp.c 包含了对所用到外设的初始化。
FWLIB 组项:
 
这个组项里包含了例程所用的到的 STM32 的各外设固件库。
Misc.c 是和中断设置有关系的固件库
Stm32f10x_gpio.c 是和通用端口有关系的库
Stm32f10x_rcc.c 是和外设时钟有关系的库
Stm32f10x_usart.c 是和串口有关系的库
 组项:
以下的文件都是 ucosII2.86 源码。 这些文件已经移植到 STM32 平台下,可以直接包含到工程里使用。
 
CM3 组项:
 
Core_cm3.c 包含了 Coretex-M3 内核的外设访问层源文件。
System_stm32f10x.c 包含了和 Coretex-M3 系统时钟有关系的外设访问层源文件。
3.4    软件程序设计
3.4.1    ADC处理程序

此程序是本课题数据采集设计与实现的主要程序
上一篇:MATLAB模糊-PID的电锅炉温度控制及仿真+文献综述
下一篇:iFIX火电厂输煤监控系统设计+文献综述

动车组滚动轴承FCM智能诊断研究

基于51单片机自动门智能控制系统设计

STC89C52单片机智能温度监测系统设计

动车组滚动轴承SVM智能诊断研究

MATLAB动车组滚动轴承RBF智能诊断研究

Arduino的家居智能安防系统的设计+程序+电路图

LABVIEW+AT89C51单片机智能药箱系统设计+源代码

浅谈传统人文精神茬大學...

多元化刑事简易程序构建探讨【9365字】

中国古代秘书擅权的发展和恶变

拉力采集上位机软件开发任务书

高校网球场馆运营管理初探【1805字】

《醉青春》导演作品阐述

国内外无刷直流电动机研究现状

辩护律师的作证义务和保...

谷度酒庄消费者回访调查问卷表

浅谈新形势下妇产科护理...