下载此文档

互斥信号量AB两个任务程序.doc


文档分类:研究生考试 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
【文件名称】
【功能描述】互斥信号量实验代码
【程序版本】
【创建人及创建日期】昆明理工王老师//2013-12-13 16:30
【修改人及修改日期】
****************************************************************************/
#include ""
/************************任务、堆栈、优先级定义***************************/
OS_STK Main_Task_Stack[STACKSIZE_M];
void Task_Main( void *Id ) ;
#define Main_Task_PRIO 4
OS_STK Task_A_Stack[STACKSIZE_M];
void Task_A( void *Id ) ;
#define Task_A_PRIO 16
OS_STK Task_B_Stack[STACKSIZE_M];
void Task_B( void *Id ) ;
#define Task_B_PRIO 15
OS_EVENT *LED_Mutex; //LED互斥信号量
void Main(void)
{
char Id0 = '1';
U8 err;
SystemInit();
Delay(5000);//延时等待有效复位
Led( OFF ) ;
Led_Set(0x00);//关闭底板LED
Uart_Printf("\n\n昆明理工大学...\n\n");

OSInit();

//创建LED互斥信号量
LED_Mutex = OSMutexCreate(13,&err) ;
if ( err != OS_NO_ERR);
Uart_Printf( "创建LED_Mutex失败,错误码%d\n\0", err ) ;


//创建主任务
OSTaskCreate(Task_Main, (void *)&Id0,
(OS_STK *)&Main_Task_Stack[STACKSIZE_M-1], Main_Task_PRIO);
OSStart();
}
void Task_Main(void *p_arg)
{
char Id1 = '2';
char Id2 = '3';
U16 ver ;
(void)p_arg;

Uart_Printf("uCOS-II实时操作系统初始化...\n");
OSTimeSet(0);
Uart_Printf("uCOS-II实时操作系统时钟设定.\n");
ver = OSVersion();
Uart_Printf("uCOS-II实时操作系统版本:%d\n",ver);
Uart_Printf("\nuCOS-II实时操作系统开始运行...\n");
Uart_Printf("请注意串口输出及LED灯闪烁,\0");
Uart_Printf("注意AB两个任务之间消息传递及调度关系!\n\n");

TimersStart

互斥信号量AB两个任务程序 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人ayst8776
  • 文件大小25 KB
  • 时间2018-12-03