📄 led.c
字号:
#include "Include.h"
//硬件连接:
//Power: PD4
void LedInit(void)
{
//PD4设置为输出
DDRD|=1<<PD4;
LedOn();
}
void LedOn(void)
{
HC595Init();
PORTD|=1<<PD4;
}
void LedOff(void)
{
HC595Off();
PORTD&=0xEF;
}
/*
void LedGreenOn(unsigned char i)
{
LedOff();
LedOn();
switch(i)
{
case KEY_0:
DisPlayWord[1]=0xFB;
DisPlayWord[2]=0xFF;
break;
case KEY_1:
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0xFE;
break;
case KEY_2:
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0xFD;
break;
case KEY_3:
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0xFB;
break;
case KEY_4:
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0xF7;
break;
case KEY_5:
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0xEF;
break;
case KEY_6:
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0xDF;
break;
case KEY_7:
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0xBF;
break;
case KEY_8:
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0x7F;
break;
case KEY_9:
DisPlayWord[1]=0xFE;
DisPlayWord[2]=0xFF;
break;
case KEY_A:
DisPlayWord[1]=0xF7;
DisPlayWord[2]=0xFF;
break;
case KEY_B:
DisPlayWord[1]=0xFD;
DisPlayWord[2]=0xFF;
break;
default:
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0xFF;
break;
}
Refresh595();
}
*/
const unsigned char LedGreenWord1[]={0xFB,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xF7,0xFD,0xFF};
const unsigned char LedGreenWord2[]={0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0xFF,0xFF,0xFF,0xFF};
void LedGreenOn(unsigned char KeyNum)
{
LedOff();
LedOn();
if(KeyNum>KEY_B)
{
KeyNum=KEY_B+1;
}
DisPlayWord[1]=LedGreenWord1[KeyNum];
DisPlayWord[2]=LedGreenWord2[KeyNum];
Refresh595();
}
void LedTest(void)
{
LedOn();
while(1)
{
DisPlayWord[0]=0;
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0xFF;
Refresh595();
DelayNmS(200);
DisPlayWord[0]=0xFF;
DisPlayWord[1]=0;
DisPlayWord[2]=0xFF;
Refresh595();
DelayNmS(200);
DisPlayWord[0]=0xFF;
DisPlayWord[1]=0xFF;
DisPlayWord[2]=0;
Refresh595();
DelayNmS(200);
}
}
void LedGreenTest(void)
{
unsigned char i=0;
while(1)
{
LedGreenOn(i);
DelayNmS(200);
i++;
if(i>KEY_B)
{
i=0;
}
}
}
void LedGreenALLOn(void)
{
DisPlayWord[0]=0xFF;
DisPlayWord[1]=0;
DisPlayWord[2]=0;
LedOn();
}
void LedRedOn(void)
{
LedOff();
DisPlayWord[0]=0;
LedOn();
}
//红灯动作1:
// 闪烁,蜂鸣器短叫3
void LedRedAction1(void)
{
unsigned char i=0;
for(i=0;i<3;i++)
{
LedRedOn();
BellOn();
DelayNmS(LED_FLASH_TIME);
LedOff();
BellOff();
DelayNmS(LED_FLASH_TIME);
}
}
void LedRedAction2(void)
{
unsigned char i=0;
for(i=0;i<2;i++)
{
LedRedOn();
BellOn();
DelayNmS(LED_FLASH_TIME);
LedOff();
BellOff();
DelayNmS(LED_FLASH_TIME);
}
LedRedOn();
BellOn();
DelayNmS(LED_LIGHT_TIME);
DelayNmS(LED_LIGHT_TIME);
DelayNmS(LED_LIGHT_TIME);
LedOff();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -