📄 test.c
字号:
/*
*********************************************************************************************************
* uC/OS-II
* The Real-Time Kernel
*
* (c) Copyright 1992-2002, Jean J. Labrosse, Weston, FL
* All Rights Reserved
*
* EXAMPLE #1
*********************************************************************************************************
*/
//#include "includes.h" //change by cmj ,includes => config
#include "config.h"
#define BEEP 0x00000080 /* P0.7为蜂鸣器控制 */
#define SPI_IOCON 0x00003DD0 /* SPI接口和LED1、LED2、LED3、LED4等的I/O设置字 */
/*
*********************************************************************************************************
* CONSTANTS
*********************************************************************************************************
*/
#define TASK_STK_SIZE 128 /* Size of each task's stacks (# of WORDs) */
/*
*********************************************************************************************************
* VARIABLES
*********************************************************************************************************
*/
OS_STK Task1Stk[TASK_STK_SIZE]; /* Tasks stacks */
OS_STK TaskStartStk[TASK_STK_SIZE];
/*
*********************************************************************************************************
* FUNCTION PROTOTYPES
*********************************************************************************************************
*/
void Task1(void *data); /* Function prototypes of tasks */
void TaskStart(void *data); /* Function prototypes of Startup task */
/*$PAGE*/
/*
*********************************************************************************************************
* MAIN
*********************************************************************************************************
*/
//void main (void) //change bu cmj
int main (void)
{
OSInit(); /* Initialize uC/OS-II */
OSTaskCreate(TaskStart, (void *)0, &TaskStartStk[TASK_STK_SIZE - 1], 0);
OSStart(); /* Start multitasking */
}
/*
*********************************************************************************************************
* STARTUP TASK
*********************************************************************************************************
*/
void TaskStart (void *pdata)
{
pdata = pdata; /* Prevent compiler warning */
TargetInit();
OSTaskCreate(Task1, (void *)0, &Task1Stk[TASK_STK_SIZE - 1], 1);
for (;;) {
OSTimeDlyHMSM(0, 0, 1, 0); /* Wait one second */
}
}
void Task1 (void *pdata)
{
uint8 i;
pdata = pdata;
IOSET = BEEP;
IODIR = SPI_IOCON; // 设置SPI控制口为输出
for (;;)
{ for(i=0; i<10; i++)
{
IOSET = 0x00003C00;
IOCLR = i<<10; // 设置LED显示输出
OSTimeDlyHMSM(0,0,0,400); /* Delay 1 clock tick */
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -