drv_led.c

来自「这是一个嵌入式系统的ucos-ii的移植程序。」· C语言 代码 · 共 78 行

C
78
字号
/********************************************************************************************************
 *													*
 *	Copyright (C) SEIKO EPSON CORP. 2002								*
 *													*
 *	File name: Drv_led.c										*
 *	  This is LED driver for c33 star.								*
 *													*
 *	Revision history										*
 *		2002.06.4	Andrew Yin	Start.							*
 *													*
 *******************************************************************************************************/
#include "common.h"

void vInitLED( void );
void vLEDOn( void );
void vLEDOff( void );
void vSingleOn(unsigned char number);
void vSingleOff(unsigned char number);

void vInitLED( void )
{
	*( volatile unsigned char * )0x402D0 &= 0x0F0; 
	*( volatile unsigned char * )0x402D2 |= 0x0F;
	*( volatile unsigned char * )0x402D1 &= ~0x0F;
	vLEDOn();
}

void vLEDOn( void )
{
	*( volatile unsigned char * )0x402D1 |= 0x0f;
}

void vLEDOff( void )
{
	*( volatile unsigned char * )0x402D1 &= ~0x0f;
}

void vSingleOn(unsigned char number)
{
	switch(number)
	{
		case 1:
		     *( volatile unsigned char * )0x402D1 |=0x04;
		      break;
		case 2:
		     *( volatile unsigned char * )0x402D1 |=0x02;
		     break;
	        case 3:
	             *( volatile unsigned char * )0x402D1 |=0x01;
	             break;
	        case 4:
	             *( volatile unsigned char * )0x402D1 |=0x08;
	             break;
	        default:
	             break;     
	}
}

void vSingleOff(unsigned char number)
{
	switch(number)
	{
		case 1:
		     *( volatile unsigned char * )0x402D1 &=~0x04;
		      break;
		case 2:
		     *( volatile unsigned char * )0x402D1 &=~0x02;
		     break;
	        case 3:
	             *( volatile unsigned char * )0x402D1 &=~0x01;
	             break;
	        case 4:
	             *( volatile unsigned char * )0x402D1 &=~0x08;
	             break;
	        default:
	             break;     
	}
}

⌨️ 快捷键说明

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