以文本方式查看主題

-  曙海教育集團論壇  (http://www.scb-ycwb.com/bbs/index.asp)
--  ARM技術討論專區  (http://www.scb-ycwb.com/bbs/list.asp?boardid=14)
----  ARM LPC2132和UCOS II 寫的第一個程序  (http://www.scb-ycwb.com/bbs/dispbbs.asp?boardid=14&id=1447)

--  作者:wangxinxin
--  發布時間:2010-11-18 9:23:45
--  ARM LPC2132和UCOS II 寫的第一個程序
,這是我學習ARM LPC2132和UCOS II 后,寫的第一個程序。采用實時多任務內核UCOS II,功能是分別點亮LED1,LED2,LED3,LED4,主任務對應LED1,任務2,3,4分別對應LED2,3,4,學習2個月后的成果,謹以此獻給lyping朋友,和熱愛PIC的朋友們。

#include "config.h" #include "stdlib.h"

#define TaskStkLengh 512 //Define the Task0 stack length 定義用戶任務0的堆棧長度

OS_STK Main_Stack[TaskStkLengh]; //主任務堆棧

//任務1 OS_STK Task1_Stack[TaskStkLengh];//任務1堆棧

//任務2 OS_STK Task2_Stack[TaskStkLengh];//任務2堆棧

///任務3 OS_STK Task3_Stack[TaskStkLengh];//任務3堆棧

#define LED2 (1 << 19) // P1.18控制LED2 #define LED3 (1 << 20) // P1.18控制LED3 #define LED4 (1 << 21) // P1.18控制LED4

//任務1函數定義 void Task1_Task(void *pdata) { uint32 i; pdata=pdata; while (1) { i++; OS_ENTER_CRITICAL(); IO1CLR = LED2; //點亮LED2 OSTimeDly(OS_TICKS_PER_SEC / 2); OS_EXIT_CRITICAL(); OSTimeDly(1000); //延時掛起 } }

//任務2函數定義 void Task2_Task(void *pdata) { uint32 i; pdata=pdata; while (1) { i++; OS_ENTER_CRITICAL(); IO1CLR = LED3; //點亮LED3 OSTimeDly(OS_TICKS_PER_SEC / 2); OS_EXIT_CRITICAL(); OSTimeDly(1000); //延時掛起 } }

//任務3函數定義 void Task3_Task(void *pdata) { uint32 i; pdata=pdata; while (1) { i++; OS_ENTER_CRITICAL(); IO1CLR = LED4; //點亮LED4 OSTimeDly(OS_TICKS_PER_SEC / 2); OS_EXIT_CRITICAL(); OSTimeDly(1000); //延時掛起 } }

//主任務的定義 void Main_Task(void *pdata) { pdata=pdata; TargetInit (); //在此處開放定時中斷 IO1SET = 0xffffffff; OSTimeDly(100); IO1CLR = 0x00040000; OSTimeDly(OS_TICKS_PER_SEC/2); OSTaskCreate(Task1_Task,(void *)0,&Task1_Stack[TaskStkLengh-1],12); OSTaskCreate(Task2_Task,(void *)0,&Task2_Stack[TaskStkLengh-1],14); OSTaskCreate(Task3_Task,(void *)0,&Task3_Stack[TaskStkLengh-1],16); while(1) { OSTimeDly(1000); } }

//主函數開始 int main() { //這里寫對目標初始化函數 OSInit(); //千萬不要在此處開放定時中斷,即調用TargetInit(); PINSEL1=0X00000000; //引腳設為GPIO功能 IO1DIR =0XFFFFFFFF; //引腳設為輸出模式 IO1SET =0Xffffffff; //引腳全部設為滅狀態 OSTaskCreate(Main_Task,(void *)0,&Main_Stack[TaskStkLengh-1],10); OSStart(); //此函數永遠不會返回 return 0; }


主站蜘蛛池模板: 欧美高清在线精品一区| 青青青青草原国产免费| 最近免费中文在线视频| 国产强被迫伦姧在线观看无码| 久久精品亚洲一区二区三区浴池| 草草影院最新发布地址| 性xxxxfreexxxxx喷水欧美| 人人妻人人爽人人澡人人 | 亚洲成a人片77777老司机| 日本高清xxxxx| 无码午夜人妻一区二区三区不卡视频 | 激情图片在线视频| 蜜桃导航一精品导航站| 欧美国产日韩在线观看| 国产小视频免费观看| 中文字幕精品无码亚洲字| 真实国产乱子伦对白视频37p| 国产老妇伦国产熟女老妇视频 | 日本电影免费久久精品| 午夜福利一区二区三区在线观看 | 国产视频一二三区| 久久精品国产99精品国产2021 | 扒开内裤直接进| 亚洲精品熟女国产| 丁香六月综合网| 开心久久婷婷综合中文字幕| 亚洲欧洲精品成人久久曰| 99久久精品国产一区二区蜜芽| 欧美丰满熟妇xxxx性ppx人交| 国产亚洲人成在线影院| chinese乱子伦xxxx视频播放| 欧美午夜春性猛交xxxx| 向日葵视频app免费下载 | 中文字幕在线看| 欧美理论片在线观看一区二区| 国产午夜精品无码| jealousvue熟睡入侵中| 最近韩国免费观看hd电影国语 | 久久久久久亚洲精品无码| 人妻体内射精一区二区| 国产福利91精品一区二区|