标题:
按键调节pwm波的占空比,但是仿真的时候按键不能控制占空比,不懂问题出在哪里,求...
[打印本页]
作者:
nusrey
时间:
2020-1-19 11:36
标题:
按键调节pwm波的占空比,但是仿真的时候按键不能控制占空比,不懂问题出在哪里,求...
#include <mega16.h>
#include <delay.h>
unsigned char temp1;
interrupt [INT0] void int0_isr(void)
{
if(OCR0<0xFF)
temp1+=5; //占空比增加
delay_ms(100);
}
interrupt [INT1] void int1_isr(void)
{
if(OCR0>0x63)
temp1-=5; //占空比减少
delay_ms(100);
}
void main(void)
{
DDRB.3=1; //设置pb3为输出
PORTB.3=1; //设置端口输出为高电平
DDRD.2=0x00; //设置PD2为输入
DDRD.3=0x00; //设置PD3为输入
PORTD.2=0x01; //设定端口PD2为内部上拉方式,无信号输输入时处于高电平状态
PORTD.3=0x01; //设定端口PD3为内部上拉方式,无信号输输入时处于高电平状态
// initialize the LCD for 2 lines & 16 columns
MCUCR=0x0A; //设置INT0,INT1为下降沿触发
TCCR0=0x6D; //定时器0工作于快速PWM模式,oc0取正向,1024预分频
TCNT0=0x63; //20ms定时的初始值
OCR0=0xB1; //比较匹配的值为中点
GICR=0xC0;
TIMSK=0x01;
SREG.7=0x01;
temp1=OCR0;
while(1) //依次显示各值
{
;
}
}
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
SREG.7=0x00;
TCNT0=0x63;
OCR0=temp1;
SREG.7=0x01;
}
作者:
lele5211314
时间:
2020-1-19 18:37
用的哪一款单片机
作者:
13425472500
时间:
2020-1-19 22:08
AVR单片机需要全局中断使能才会触发按键中断,即asm("sei");这里好像没有。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1