标题:
UCOSII 在51系列单片机C8051f340的移植移植实例
[打印本页]
作者:
醉心369
时间:
2017-1-6 13:45
标题:
UCOSII 在51系列单片机C8051f340的移植移植实例
UCOSII 在51系列单片机C8051f340的移植实例
0.png
(61.01 KB, 下载次数: 97)
下载附件
2017-1-8 22:48 上传
全部源码下载:
UCOS-II操作系统(创建任务学习).rar
(258.45 KB, 下载次数: 76)
2017-1-6 13:44 上传
点击文件名下载附件
UCOSII C51
下载积分: 黑币 -5
apps的主程序:
/********************************************************************
* 文件名 : usertask.c
* 描述 : UCOS-II的main函数文件,该例子是创建任务实验学习,任务之间可以完全独立,
* 通过在任务中调用OSTimeDly(),来完成任务的挂起,让别的任务运行。
* 这里创建了3个任务,任务1开关LED12、任务2开关LED13、任务3开关LED14。
* 创建人 :云杰
* QQ :494713348
* 电话 :15123350190
* Email :founder_elec@foxmail.com
* 网址 :http://shop66398134.taobao.com
* 时间 :2010年4月10日
* 版本号 :V0.1.0
* 修改记录:
*
*********************************************************************/
#include"includes.h"
#include"absacc.h"
sbit LED12 = P2^3; //LED12管脚定义
sbit LED13 = P0^3; //LED13管脚定义
sbit LED14 = P2^2; //LED14管脚定义
OS_STK xdata StartTaskStk[USER_STACK_SIZE],Task1Stk[USER_STACK_SIZE],Task2Stk[USER_STACK_SIZE];
//定义3个信号量
INT8U err;
void StartTask(void) KCREENTRANT;
void Task1(void) KCREENTRANT;
void Task2(void) KCREENTRANT;
void InitTimer0(void)KCREENTRANT;
void main(void)
{
EA=0;
PCA0MD &= ~0x40; //禁止看门狗
OSCICN |= 0x83; //不分频,使用内部12M晶振,系统时钟频率为12MHz
OSInit();
OSTaskCreate(StartTask,(void *)0,&StartTaskStk[0],0);//创建第一个任务
OSStart();
}
void StartTask(void) KCREENTRANT
{
P0MDOUT = 0x08; // 设置P0.3 输出为推挽方式
P2MDOUT = 0x0c; // 设置P2.2,P2.3输出为推挽方式
XBR1 = 0x40;
LED12 = 1;
LED13 = 1;
LED14 = 1;
InitTimer0();
OSStatInit(); //开启CPU使用率统计
//程序中的任务建议在这里创建,当然也可以在其它任务中创建任务
OSTaskCreate(Task1, (void *)0, &Task1Stk[0], 2);
OSTaskCreate(Task2, (void *)0, &Task2Stk[0], 3);
for(;;)
{
LED12 = ~LED12;
OSTimeDly(20);
}
}
void Task1(void) KCREENTRANT
{
for(;;)
{
LED13 = ~LED13;
OSTimeDly(40);
}
}
void Task2(void) KCREENTRANT
{
for(;;)
{
LED14 = ~LED14;
OSTimeDly(60);
}
}
复制代码
作者:
go2net
时间:
2017-2-27 10:22
不能下载啊
作者:
wuli_51
时间:
2018-1-28 09:57
初来乍到 学习一下
作者:
alex5626
时间:
2019-8-8 17:24
支持一下
作者:
ddong2005
时间:
2019-8-21 13:40
学习中....
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1