完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
想用atmega48产生相位修正的pwm,datasheet里说的是在bottom置位中断标志TOVn,因此我想在中断里改变占空比,但是就是不出来波形,不知道问题出在哪,各位大侠帮忙给看看,谢谢!
#include #include #include SIGNAL(SIG_OVERFLOW0) { OCR0A =128; //比较设定值 OCR0B=128; } void timer_init() { TCCR0A=0b10110001; //升序比较匹配时OC0A=0,降序时比较匹配时置OC0A=1,TOP固定等于255 TCCR0B=0b00000001; //时钟不分频,一旦设定时钟,TCNT0就开始不断的计数 TIMSK0=1<<0; //使能定时器0中断 } void port_init() { DDRD=(1<<6)|(1<<5); //端口方向设置为输出才有效 } void device_init() { timer_init(); port_init(); } int main(void) { device_init(); while (1); } |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
AVR Atmega16 Bootloader程序与上位机LabView程序
5172 浏览 6 评论
#include <ioavr.h>这个头文件我应该下什么编译器
7792 浏览 0 评论
3071 浏览 2 评论
3124 浏览 1 评论
10104 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 00:17 , Processed in 0.555894 second(s), Total 51, Slave 38 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号