共4条
1/1 1 跳转至页
问
我在程序中使用了pwm输出,但其中有段时间要关掉它一段时间
程序里是这么关的
PWMCR=0;
ATCSR2|=0x40;
打开是这样
PWMCR=0x40;
ATCSR2|=0x40;
单片机是7flit15b,请问这样操作有没有什么影响? 答 1: 说句俗话“这个要具体问题具体分析”啦lite15b的pwm偶也用过一下下,我觉得怎样关掉还是要看你的具体情况咯。
象你这样将pwmcr关掉当然是可以的咯。这样PWM引脚就不会有输出了,但是这个时候,counter还是在跑的。如果你把ATCSR2的ENCNTR2清掉,此时计数器就会停止在当前值,等到你重新使能ENCNTR2后,计数器会继续从之前的那个值开始计数。
具体怎么操作,看你的具体情况了。
不知道楼主在用的时候碰到什么问题了? 答 2: 关pwm出问题了我打开了比较中断,比较中断的时候pwm输出应该是低的,这个时候我
操作了
PWMCR=0;
ATCSR2|=0x40;
然后过点时间再打开
PWMCR=0x40;
ATCSR2|=0x40;
这样的话,pwm是否会是正常的?或者有波动?
答 3: 不好意思,还是不明白你到底要干吗?你还是没有说你到底出现什么问题,你到底想要达到什么样的效果?对你来说,怎么样的pwm信号算是正常,怎样算是不正常?或者是关掉以后出现了什么状况。。。或者是打开后又出现什么异常呢,请把现象描述清楚,大家才好帮你找问题的呀
程序里是这么关的
PWMCR=0;
ATCSR2|=0x40;
打开是这样
PWMCR=0x40;
ATCSR2|=0x40;
单片机是7flit15b,请问这样操作有没有什么影响? 答 1: 说句俗话“这个要具体问题具体分析”啦lite15b的pwm偶也用过一下下,我觉得怎样关掉还是要看你的具体情况咯。
象你这样将pwmcr关掉当然是可以的咯。这样PWM引脚就不会有输出了,但是这个时候,counter还是在跑的。如果你把ATCSR2的ENCNTR2清掉,此时计数器就会停止在当前值,等到你重新使能ENCNTR2后,计数器会继续从之前的那个值开始计数。
具体怎么操作,看你的具体情况了。
不知道楼主在用的时候碰到什么问题了? 答 2: 关pwm出问题了我打开了比较中断,比较中断的时候pwm输出应该是低的,这个时候我
操作了
PWMCR=0;
ATCSR2|=0x40;
然后过点时间再打开
PWMCR=0x40;
ATCSR2|=0x40;
这样的话,pwm是否会是正常的?或者有波动?
答 3: 不好意思,还是不明白你到底要干吗?你还是没有说你到底出现什么问题,你到底想要达到什么样的效果?对你来说,怎么样的pwm信号算是正常,怎样算是不正常?或者是关掉以后出现了什么状况。。。或者是打开后又出现什么异常呢,请把现象描述清楚,大家才好帮你找问题的呀
3楼
if(bit_is_set(PINB,PINB0))
{
temp=PIND&0xe0;
switch(temp)
{ case 0x00:outailpwm(); outailpwm()是什么意思?
break;
case 0x20:outelepwm();
break;
case 0x40:outthrpwm();
break;
case 0x60:outrudpwm();
break;
case 0x80:outkspwm();
break;
default:break;
}
cbi(TCCR1B,ICES1);
TIFR1|=0x20;
}
else
{ PORTC&=0x00;
sbi(TCCR1B,ICES1);
TIFR1|=0x20;
}
}
这个程序能实现什么?
谢谢
{
temp=PIND&0xe0;
switch(temp)
{ case 0x00:outailpwm(); outailpwm()是什么意思?
break;
case 0x20:outelepwm();
break;
case 0x40:outthrpwm();
break;
case 0x60:outrudpwm();
break;
case 0x80:outkspwm();
break;
default:break;
}
cbi(TCCR1B,ICES1);
TIFR1|=0x20;
}
else
{ PORTC&=0x00;
sbi(TCCR1B,ICES1);
TIFR1|=0x20;
}
}
这个程序能实现什么?
谢谢
共4条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |