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

📄 app.c

📁 ucos2.85移植LPC2104的接口和原代码
💻 C
字号:
#include "../ucos/ucos_ii.h"
#include "../bsp/LPC2106.h"
#define TASK_STK_SIZE 64

OS_STK Main_TaskStk[TASK_STK_SIZE];

void SPI_Init(void);
void Main_Task(void *data);
INT8U Send_Data(INT8U data);
extern void TargetInit(void);

int main(void)
{
	OSInit();
	OSTaskCreate(Main_Task, (void *)0, &Main_TaskStk[TASK_STK_SIZE-1],0);
	OSStart();
	return 0;
}

INT8U const DISP_TAB[16] = 
{
	0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 
	0x90, 0x88 ,0x83, 0xc6, 0xa1, 0x86, 0x8e
};

void Main_Task(void *p_arg)
{
	INT8U rcv_data;
	INT8U i;
	p_arg = p_arg;
	TargetInit();
	SPI_Init();
	while(1)
	{
		for(i=0; i<16; i++)
		{
			rcv_data = Send_Data(DISP_TAB[i]);
			OSTimeDlyHMSM(0,0,1,50);
		}
	}
}

void SPI_Init(void)
{
	PINSEL0 = 0x00005500;
	PINSEL1 = 0x00000000;
	IODIR = 0x00000100;
	SPI_SPCCR = 0x52;
	SPI_SPCR = 0x30;
}

INT8U Send_Data(INT8U data)
{
	IOCLR = 0x00000100;
	SPI_SPDR = data;
	while(0==(SPI_SPSR&0x80));
	IOSET = 0x00000100;
	return (SPI_SPDR);
}

⌨️ 快捷键说明

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