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

📄 led.c

📁 在飞利浦公司的ARM7芯片LPC2148上完成UCOS的移植
💻 C
字号:
//#include "LPC214x.H"
#include "LED.H"
#include "config.h"
//********UC/OS模板来自高手之手,鄙人挪用*********************/
/*************************M*********************************/
/******挪用:月亮 QQ:228939191 ******************************/
#define Led1Pin		(1 << 18) 	// P1.18 is LED1 pin
#define Led2Pin		(1 << 19) 	// P1.19 is LED1 pin
#define Led3Pin		(1 << 20) 	// P1.20 is LED1 pin 
    
#define Led4Pin		(1 << 21) 	// P1.21 is LED1 pin
#define Led5Pin		(1 << 22) 	// P1.22 is LED1 pin
#define Led6Pin     (1 << 23) 	// P1.23 is LED1 pin
#define Led7Pin     (1 << 24) 	// P1.24 is LED1 pin
#define Led8Pin     (1 << 25) 	// P1.25 is LED1 pin

#define AlarmPin	(1 << 7)    // P0.7蜂鸣器

#define cs244 12

void Init_Uart0(unsigned int Baud)
 {
   /* initialize the serial interface   */
  PINSEL0 = 0x00000005;           /* Enable RxD0 and TxD0                     */
  U0LCR = 0x83;                   /* 8 bits, no Parity, 1 Stop bit            */
  U0DLM=(unsigned char)(Baud>>8);
  U0DLL = (unsigned char)Baud;                     
  
  U0LCR = 0x03;                   /* DLAB = 0     */
 }

void delay (unsigned int i) {                        /* Delay function */
unsigned int n;
while(i>1)
{
	for(n=65535;n>1;n--);
	i--;
}
}
void  Sent_Byte(unsigned char data)
{  
	U0THR = data;				    // 发送数据

   while( (U0LSR&0x40)==0 );	    // 等待数据发送完毕
}
void  Sent_Str(unsigned char const *str)
{  while(1)
   {  if( *str == '\0' ) break;
      Sent_Byte(*str++);	    // 发送数据
   }
}

void RtcInit(void)
{
    /* RTC初始化 */
  PREINT = Fpclk / 32768 - 1;	    // 设置基准时钟分频器
  PREFRAC = Fpclk - (Fpclk / 32768) * 32768;
   
    YEAR = 2008;				    // 初化年
    MONTH = 7;				        // 初化月
    DOM = 7;				        // 初化日
	HOUR=15;
	MIN=10;
	SEC=0;
   
  CIIR = 0x01;				    // 设置秒值的增量产生一次中断
  CCR = 0x01;				        // 启动RTC
}

const int LetTab[]={Led1Pin,Led2Pin,Led3Pin,Led4Pin,Led5Pin,Led6Pin,Led7Pin,Led8Pin};
/**************************************************************/ 
void IO_Int(void)
{   
 	IO0DIR|= AlarmPin|
			 1<<cs244;					//设置P0.7蜂鸣器 输出
 	PINSEL0&=0xffff3fff;

	IO1DIR=0x00FF0000;
	IO1DIR|=Led1Pin|Led2Pin|Led3Pin|Led4Pin|Led5Pin|Led6Pin|Led7Pin|Led8Pin;

	IO0CLR |=1<<cs244;
}
/**************************************************************/ 
void LedCS0(int sign)
{
	if(sign)
		IO1CLR|=Led1Pin;
	else
		IO1SET|=Led1Pin;
}
/**************************************************************/ 
void LedCS1(int sign)
{
	if(sign)
		IO1CLR|=Led2Pin;
	else
		IO1SET|=Led2Pin;
}
/**************************************************************/ 
void LedCS2(int sign)
{
	if(sign)
		IO1CLR|=Led3Pin;
	else
		IO1SET|=Led3Pin;
}
/**************************************************************/ 
void LedCS3(int sign)
{
	if(sign)
		IO0CLR|=AlarmPin;
	else
		IO0SET|=AlarmPin;
}
/**************************************************************/ 
void LedCS4(int sign)
{
	if(sign)
		IO1CLR|=Led4Pin|Led5Pin|Led6Pin|Led7Pin|Led8Pin;
	else
		IO1SET|=Led4Pin|Led5Pin|Led6Pin|Led7Pin|Led8Pin;
}


⌨️ 快捷键说明

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