📄 main.c
字号:
#include <avr/io.h>
#include <avr/signal.h>
#include <avr/interrupt.h>
#include <avr/delay.h>
const unsigned char seg_table[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
void main (void)
{unsigned char i;
DDRA=0Xff;
PORTA=0x00;
DDRC=0Xf0;
PORTC=0xe0;
do{
DDRB = 0x0f;/*获取列地址*/
PORTB = 0xf0;
_delay_ms(10);
i = PINB;
DDRB = 0xf0;/*获取行地址*/
PORTB = 0x0f;
_delay_ms(10);
i |= PINB;
DDRD=0Xff;
PORTD=i;
DDRA=0Xff;
if (i==0xee) PORTA=seg_table[0];
if (i==0xde) PORTA=seg_table[1];
if (i==0xbe) PORTA=seg_table[2];
if (i==0x7e) PORTA=seg_table[3];
if (i==0xed) PORTA=seg_table[4];
if (i==0xdd) PORTA=seg_table[5];
if (i==0xbd) PORTA=seg_table[6];
if (i==0x7d) PORTA=seg_table[7];
if (i==0xeb) PORTA=seg_table[8];
if (i==0xdb) PORTA=seg_table[9];
if (i==0xbb) PORTA=seg_table[10];
if (i==0x7b) PORTA=seg_table[11];
if (i==0xe7) PORTA=seg_table[12];
if (i==0xd7) PORTA=seg_table[13];
if (i==0xb7) PORTA=seg_table[14];
if (i==0x77) PORTA=seg_table[15];
if (i==0xff) PORTA=0x00;
} while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -