?? main.c
字號:
/****************************************************************************
* File:Main.C
* 功能:計數器,通過兩個按鍵來控制加減計數器,并輸出數碼管顯示.。
****************************************************************************/
#include "config.h"
#define CON 0x000000ff //控制P0.0~P0.7
#define TASK_STK_SIZE 64
OS_STK Main_TaskStk[TASK_STK_SIZE];
OS_STK Task0Stk[TASK_STK_SIZE];
void Main_Task(void *data);
void Task0(void *data);
/****************************************************************************
* 名稱:main()
* 功能:主函數,啟動多任務環境
****************************************************************************/
int main (void)
{
OSInit();
OSTaskCreate(Main_Task, (void *)0, &Main_TaskStk[TASK_STK_SIZE - 1], 0);
OSStart();
return(0);
}
/****************************************************************************
* 名稱:Main_Task()
* 功能:初始化目標板,建立其他任務
****************************************************************************/
void Main_Task(void *pdata)
{
pdata=pdata;
TargetInit();
OSTaskCreate(Task0, (void *)0, &Task0Stk[TASK_STK_SIZE - 1], 1);
PINSEL0=0x0;
IODIR=CON;
IOCLR=CON;
OSTaskSuspend(OS_PRIO_SELF);
}
/****************************************************************************
* 名稱:Task0()
* 功能:任務
****************************************************************************/
void Task0(void *pdata)
{ uint16 temp;
pdata=pdata;
temp=0;
for(;;)
{
if((IOPIN&0x00030000)!=0x00030000)
OSTimeDly(OS_TICKS_PER_SEC/50);
if((IOPIN&0x00030000)!=0x00030000)
{
if((IOPIN&0x00030000)==0x00020000)
temp++;
if((IOPIN&0x00030000)==0x00010000)
temp--;
while((IOPIN&0x00030000)!=0x00030000);
IOCLR=CON;
IOSET=temp;
}
}
OSTaskResume(0);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -