📄 1.c
字号:
#include <avr/io.h>
#include <avr/delay.h>
void pwm0_init()
{
DDRB|=0b00001000;
TCCR0=0b01101010;
OCR0=0x7f;
TCNT0=0;
}
void pwm1_init()
{
DDRD|=0b00110000;
TCCR1A|=0b10100010;
TCCR1B|=0b00011001;
ICR1=0x7ff;
OCR1A=0x400;
OCR1B=0x400;
}
void pwm2_init()
{
DDRD|=0b10000000;
TCCR2|=0b01101010;
OCR2=0x7f;
TCNT2=0x00;
}
void main()
{
char temp;
PORTA=0xff;
pwm0_init();
pwm1_init();
pwm2_init();
while(1)
{
if(PINA!=0xff)
_delay_ms(2);
if(PINA!=0xff)
temp=PINA;
while(PINA!=0xff);
switch (temp)
{
case 0xfe:OCR1A+=10;break;
case 0xfd:OCR1A-=10;break;
case 0xfb:OCR1B+=10;break;
case 0xf7:OCR1B-=10;break;
case 0xef:OCR0+=5;break;
case 0xdf:OCR0-=5;break;
case 0xbf:OCR2+=5;break;
case 0x7f:OCR2-=5;break;
}
temp=0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -