|
hhh74c922.gif (1.33 MB, 下載次數(shù): 107)
下載附件
2021-4-1 10:32 上傳
演示程序:
#include <avr/io.h>
#include <util/delay.h>
#define INT8U unsigned char
#define INT16U unsigned int
//蜂鳴器
#define beep( ) PORTD^= _BV(PD7)
//按鍵判斷有鍵按下時74922AD向pa7發(fā)送高電平
#define key_pressed ((PINA & 0x80) == 0x80)
//獲取按鍵
#define key_no (PINA & 0x0f)
//數(shù)碼管段碼
const INT8U SEG_CODE [ ] =
{
0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,
0X7F,0X6F,0X77,0X7C,0X39,0X5E,0X79,0X71
};
//發(fā)聲子程序
void sounder( )
{
INT8U i ;
for (i=0 ; i<100 ; i++)
{
_delay_us(190); beep( );
}
}
int main()
{
DDRA =0X00; PORTA=0XFF;
DDRC=0XFF; PORTC=0X00;
DDRD=0XFF; PORTD=0XFF;
while (1)
{
if ( key_pressed ) //有鍵按下
{
PORTC = SEG_CODE[key_no];
sounder( );
}
}
}
|
評分
-
查看全部評分
|