此帖出自实时操作系统RTOS论坛
最新回复
这个程序我感觉没什么问题 可是一下载到单片机中就没反应了 程序停止再DISPLAY(1) 中间 而DISPLAY(2) 根本就不会执行 只有把两个DISPLAY函数中间的时间延时函数取掉才可以 但是两个显示 1 和 2 太快了 是不是程序太大了? 我觉得没啥问题啊 编译后 data是115.0 xdata 227.0 code 6540 我用的是AT89C52单片机 应该能装下啊
/* 本例程uCOS-II 版本为2.51,仅创建一个LED闪烁任务于 P1.0 上,每隔 0.5 秒闪动一次,任务而此例程运行于内 RAM > 300 Byte 的51内核单片机即可。*/
#include "includes.h"
//#include "stdio.h"
sbit LED=P1^7;
sbit LED1=P1^6;
sbit dula=P2^6;
sbit wela=P2^7;
INT8U err;
INT8U code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
OS_EVENT *semp;
OS_STK TaskStartStk[MaxStkSize+1];
OS_STK MyTaskStk[MaxStkSize+1];
OS_STK YouTaskStk[MaxStkSize+1];
void Task(void *ppdata);
void MyTask(void *ppdata);
void YouTask(void *ppdata);
void DigInit();
void Display(INT8U num);
void main(void)
{
DigInit();
OSInit();
InitHardware();
semp=OSSemCreate(0);
OSTaskCreate(Task,(void*)0,&TaskStartStk[0],0);
OSStart();
}
void Task(void *ppdata)
{
ppdata=ppdata;
OSTaskCreate(MyTask,(void*)0,&MyTaskStk[0],1);
OSTaskCreate(YouTask,(void*)0,&YouTaskStk[0],2);
for(;;)
{
LED=~LED;
OSTimeDly(OS_TICKS_PER_SEC/2);
}
}
void MyTask(void *ppdata)
{
INT8U temp;
ppdata=ppdata;
for(;;)
{
P3=0xfd;
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
OSTimeDly(1);
temp=P3;
temp=temp&0xf0;
if(temp!=0xf0)
{
temp=P3;
switch(temp)
{
case 0xed: OSSemPost(semp);
break;
case 0xdd:
break;
case 0xbd:
break;
case 0x7d:
break;
}
}
}
OSTimeDly(1);
}
}
void YouTask(void *ppdata)
{
ppdata=ppdata;
for(;;)
{
OSSemPend(semp,0,&err);
Display(1);
OSTimeDly(50); //就是这里一加上延时 程序就不会往下继续执行了
OSSemPend(semp,0,&err);
Display(2);
}
}
void DigInit()
{
dula=1;
P0=table[0];
dula=0;
wela=1;
P0=0xc0;
wela=0;
}
void Display(INT8U num)
{
dula=1;
P0=table[num];
dula=0;
}
详情
回复
发表于 2009-4-20 16:20
| ||
个人签名处处留心皆学问!
|
||
| |
|
|
| |
|
|
| |
个人签名处处留心皆学问!
|
|
Re: [讨论] 大家在linux与ucos上遇到的问题集中发帖吧!我们会帮您解决! | |
个人签名
加油!在电子行业默默贡献自己的力量!:) |
|
楼主帮忙看看这个怎么回事丫
此帖出自实时操作系统RTOS论坛
| ||
|
||
Re: [讨论] 大家在linux与ucos上遇到的问题集中发帖吧!我们会帮您解决!
此帖出自实时操作系统RTOS论坛
赞赏 | ||
个人签名处处留心皆学问!
|
||
曾经的版主且威望大于2000,或对EEWORLD论坛有突出贡献的坛友
EEWorld Datasheet 技术支持