这是一个带有按钮的简单 7 段显示器,问题是每当我将时钟设为 1 MHZ 时,显示器不会按预期运行,但当我使用 8 MHZ 时钟时,它工作正常。这是代码:
#define F_CPU 1000000L
#include <avr/io.h>
#include <util/delay.h>
int main(void)
{
DDRD &= ~(1<<PD4);
DDRC |= (1<<PC0) | (1<<PC1) | (1<<PC2) | (1<<PC3);
PORTC = 0;
while (1)
{
if(PIND & (1<<PD4)){
_delay_ms(25);
if(PIND & (1<<PD4)){
PORTC++;
}
}
}
}