⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 app.c

📁 ucos2.86在STM32L152DISCOVERY上的移植
💻 C
字号:

#include "includes.h" 

static OS_STK startup_task_stk[STARTUP_TASK_STK_SIZE];
static OS_STK led1_task_stk[LED1_TASK_STK_SIZE];

static void systick_init(void);

static void systick_init(void) 
{
	RCC_ClocksTypeDef rcc_clocks; 
	RCC_GetClocksFreq(&rcc_clocks); 
	SysTick_Config(rcc_clocks.HCLK_Frequency / OS_TICKS_PER_SEC); 
}

static void led1_task(void *p_arg)
{
	p_arg = p_arg ;        //防止编译器产生警告
	while(1)
	{
		led_on(LED1);
		OSTimeDly(500);
		led_off(LED1);
		OSTimeDly(500);	
	}

}


static void startup_task(void *p_arg)
{ 
	systick_init(); 		/* Initialize the SysTick. */
#if (OS_TASK_STAT_EN > 0) 
	OSStatInit(); 			/* Determine CPU capacity. */ 
#endif						/* TODO: create application tasks here */
	OSTaskCreate(led1_task,0,&led1_task_stk[LED1_TASK_STK_SIZE-1],LED1_TASK_PRIO);

	while(1)
	{
		led_on(LED2);
		OSTimeDly(1000);
		led_off(LED2);
		OSTimeDly(1000);	
	} 
}

int main(void) 
{ 
	BSP_Init();
	OSInit();
	OSTaskCreate(startup_task, (void *)0, &startup_task_stk[STARTUP_TASK_STK_SIZE - 1], STARTUP_TASK_PRIO); 
	OSStart(); 
	return 0; 
}

⌨️ 快捷键说明

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