main.c

来自「ucos下can的一个驱动及测试程序」· C语言 代码 · 共 73 行

C
73
字号

#include"..\ucos-ii\includes.h"               /* uC/OS interface */
#include "..\ucos-ii\add\osaddition.h"
#include "..\inc\drivers.h"
#include "..\inc\sys\lib.h"
#include "..\inc\drv\MCP2510.h"
//#include "..\inc\drv\OSFile.h"

#include <string.h>

#include "isr.h"

#pragma import(__use_no_semihosting_swi)  // ensure no functions that use semihosting 


///******************任务定义***************///

OS_STK Main_Stack[STACKSIZE*8]={0, };   //Main_Test_Task堆栈
void Main_Task(void *Id);             //Main_Test_Task
#define Main_Task_Prio     12

/**************已经定义的OS任务*************
#define SYS_Task_Prio				1
#define Touch_Screen_Task_Prio		11
#define Main_Task_Prio     12
#define Key_Scan_Task_Prio      58
#define Lcd_Fresh_prio           59
#define Led_Flash_Prio           60

***************************************/////////

/////////////////////////////////////////////////////
//                  Main function.                //
////////////////////////////////////////////////////
extern U8 isConfigsysLoad;
extern U8 sysCONFIG[];
extern U32 ConfigSysdata[];

int main(void)
{
	CPLDIO_INIT();	// As dast as we can now
	ARMTargetInit();        // do target (uHAL based ARM system) initialisation //
	LCD_Init();
	OSInit();               // needed by uC/OS-II //
	Flash_Reset();
	if(Check_Flash_Id()!=KM29U128_ID) {
		printk("\nKM29U128T is not found.\nStop!!!");
		for(;;);
	}
	initOSDC();
	initOSFile();
	initOSMessage();
	OSTaskCreate(Main_Task,  (void *)0,  (OS_STK *)&Main_Stack[STACKSIZE*8-1],  Main_Task_Prio);// 1
	OSAddTask_Init();
	InitRtc();
	OSStart();              // start the OS //
	// never reached //
	return 0;
}//main


//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
void Main_Task(void *Id)             //Main_Test_Task
{
	for(;;)
		{
			Uart_Printf(0,"Can Test!\n");
			CAN_Test();
			OSTimeDly(100);
		}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?