STM32 Proteus UCOSII系统简易时钟计时系统-0054
Proteus仿真小实验:
STM32 Proteus UCOSII系统简易时钟计时系统-0054
功能:
硬件组成:STM32F103R6单片机 +LCD1602显示器
1.单片机程序使用UCOSII操作系统,显示任务、时间计算任务、秒信号产生任务
2.一个简单的时分秒时钟功能。LCD1602显示器显示xx-xx-xx
有功能视频哦:
可以哔哩哔哩B站,搜索UP主“单片机仿真汇”。在其空间中搜索关键词“简易时钟”即可找到对应详细功能视频和介绍。
电路图:
部分源代码:
void main()
{
/UCOSII任务设置///
//START 任务
//设置任务优先级
#define START_TASK_PRIO 10 //开始任务的优先级设置为最低 OS_TICKS_PER_SEC
//设置任务堆栈大小
#define START_STK_SIZE 64
//任务堆栈
OS_STK START_TASK_STK[START_STK_SIZE];
//任务函数
void start_task(void *pdata);
//秒信号任务
//设置任务优先级
#define Miao_TASK_PRIO 1
//设置任务堆栈大小
#define Miao_STK_SIZE 64
//任务堆栈
OS_STK Miao_TASK_STK[Miao_STK_SIZE];
//任务函数
void Miao_task(void *pdata);
//LCD显示任务
//设置任务优先级
#define LCD1602_TASK_PRIO 3
//设置任务堆栈大小
#define LCD1602_STK_SIZE 64
//任务堆栈
OS_STK LCD1602_TASK_STK[LCD1602_STK_SIZE];
//任务函数
void LCD1602_task(void *pdata);
//时间计算任务
//设置任务优先级
#define TIME_TASK_PRIO 2
//设置任务堆栈大小
#define TIME_STK_SIZE 64
//任务堆栈
OS_STK TIME_TASK_STK[TIME_STK_SIZE];
//任务函数
void TIME_task(void *pdata);
}