led.h

来自「LPC1114_例程和教程」· C头文件 代码 · 共 41 行

H
41
字号
/*****************************************************
*名  称:数码管驱动头文件
*作  者:天下的人
*时  间:2011年1月22日
******************************************************/
#include "LPC11xx.h"			/* LPC11xx Peripheral Registers */
#define LE_1 LPC_GPIO0->DATA|=(1<<3)      //74LS573	
#define LE_0 LPC_GPIO0->DATA&=~(1<<3)	  //74LS573
const uint8_t table[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f };
/*****************************************************/
 void DELAY_MS(uint32_t a)    //1ms延时函数
{                           
uint32_t i;
while( --a != 0)
  {
   for(i = 0; i<5500; i++);
  }             
}  
/***************************************************
*函数名:数码管显示函数		                       *
*功  能:驱动数码管								   *
*参  数:8位需要显示的数码管值					   *
****************************************************/
void show_led(uint8_t led[8])
  {
     uint8_t i=0;
	 for(i=0;i<8;i++)		            //显示8个数码管 使用循环
	 {
	    LPC_GPIO2->DATA=0x00000000;	    //P2口清零
	    LE_1;						    //使能74LS573
		LPC_GPIO2->DATA=~table[led[i]];	//输出字形码
	//	for(j=0;j<10;j++);
		LE_0;							//锁存数据
		LPC_GPIO2->DATA=0x00000000;		//P2口清零
		LPC_GPIO2->DATA|=(1<<i);		//输出字段
		DELAY_MS(3);					//显示延时
		LPC_GPIO2->DATA=0x00000000;		//P2口清零
	 }
  }
/***************************************************/

⌨️ 快捷键说明

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