📄 main.c
字号:
#include <hidef.h> /* common defines and macros */
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"
#include "includes.h"
#define EXT
#include "main.h"
#define __cplusplus
OS_EVENT *Follow_Semp;//数线信号量
OS_EVENT *Swerve_Semp;//转弯信号量
OS_EVENT *Snath_Semp;
OS_EVENT *Updown_Semp;
OS_EVENT *HostServantComm_Semp;
void main(void)
{
PLL_Init(3,1);//PLL锁相环倍频 使用8.4672M晶振和使用16M晶振的时候注意修改锁相环的值 void PLL_Init(uchar synr,uchar refdv)
EnableInterrupts;
DDRA=0xFF;
DDRB=0xFF;
DDRK&=0xDF;
DDRK|=16;
key_Comm=FALSE;//没有加锁向电脑通信
HardwareInit();
OSInit();
Semprintp=OSSemCreate(1);
TaskStartData.PPAGE = 0x38;
Task_FollowLineData.PPAGE = 0x39;
Task_LineCounterData.PPAGE = 0x39;
Task_SpreadShortData.PPAGE = 0x39;
Task_SwerveData.PPAGE = 0x3A;
Task_SnatchData.PPAGE = 0x3B;
Task_UpdownData.PPAGE = 0x3C;
Task_HostServantCommData.PPAGE = 0x3D;
/*创建任务有两种方式:
OSTaskCreate(
void(*task)(void *pd), //指向任务的指针
void *pdata, //传递给任务的参数
OS_STK *ptos, //指向任务堆栈栈顶的指针
INT8U prio //任务的优先级
);
OSTaskCreateExt(
void (*task)(void *pd), //指向任务的指针
void *pdata, //传递给任务的参数
OS_STK *ptos, //指向任务堆栈栈顶的指针
INT8U prio, //任务的优先级
INT16U id, //任务的标识
OS_STK *pbos, //任务堆栈栈底的指针
INT32U stk_size, //任务堆栈的容量
void *pext, //指向附加数据域的指针
INT16U opt //用于设定操作选项
);
*/
OSTaskCreate((void *)0x8000, (void*)&TaskStartData, (void*)&TaskStartStk[TASK_STK_SIZE-1], 8);
OSTaskCreate((void *)0x8000, (void*)&Task_FollowLineData, (void*)&Task_FollowLineStk[TASK_STK_SIZE-1], 9);
OSTaskCreate((void *)0x80EA, (void*)&Task_LineCounterData, (void*)&Task_LineCounterStk[TASK_STK_SIZE-1], 10);
OSTaskCreate((void *)0x8100, (void*)&Task_SpreadShortData,(void*)&Task_SpreadShortStk[TASK_STK_SIZE-1],11);
OSTaskCreate((void *)0x8000, (void*)&Task_SwerveData, (void*)&Task_SwerveStk[TASK_STK_SIZE-1], 12);
OSTaskCreate((void *)0x8000, (void*)&Task_SnatchData, (void*)&Task_SnatchStk[TASK_STK_SIZE-1], 13);
OSTaskCreate((void *)0x8000, (void*)&Task_UpdownData, (void*)&Task_UpdownStk[TASK_STK_SIZE-1], 14);
OSTaskCreate((void *)0x8000, (void*)&Task_HostServantCommData,(void*)&Task_HostServantCommStk[TASK_STK_SIZE-1],15);
OSStart();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -