完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
一直在这里没有搞明白,关于PWM调制STC的手册前前后后看了很多遍,有那位大神可以解释下。1)T0溢出设置频率是不是设置下CMOD=0x04 然后就是打开T0的16位重载后就结束了。还是需要在T0中断函数中设置什么吗?
2)假如打开T0的16位重载后就可以了之后,那么T0中断还可以用吗?两者相互影响吗?是先载入CCPnH的数据还是先执行T0中断函数? |
|
相关推荐
5 个讨论
|
|
|
使用定时器分中断法和查询法,如果使用查询法就是查询溢出标志TF0是否为1,如果为1说明定时时间到,即执行相关任务,但一定要软件清0。举例:
//输出周期1ms方波 #include ***it OUT = P1^0; //初始化定时器 void Timer0Init(void) //500微秒@11.0592MHz { AUXR |= 0x80; //定时器时钟1T模式 TMOD &= 0xF0; //设置定时器16位重载模式 TL0 = 0x66; //设置定时初值 TH0 = 0xEA; //设置定时初值 TF0 = 0; //清除TF0标志 TR0 = 1; //定时器0开始计时 } //主函数 void main(void) { Timer0Init(); //初始化定时器 while(1) { if(TF0==1) //查询定时器0溢出标志为1 { OUT=~OUT; //OUT取反 TF0=0; //定时器0溢出标志清0 } } } |
|
|
|
|
|
|
|
wulinwl 发表于 2017-7-28 06:35 这位仁兄,我是问STC15单片机中PWM设置成T0溢出模式的问题,不是我如何通过T0溢出中断或者查询TF使某个脚输出方波。我是疑问设置成T0溢出模式后是否还需要中断,还是说PCA计时器的速度根据T0的溢出速度来加快或者加慢使整个CL在到达T0溢出时刚好为FF?哪样的话,我就可以不用去管这个T0了,T0中断也和PWM没有任何关系,因为T0中断通过软件执行指令,而CL置0是由硬件直接操作。2者应该可以同时进行。我去,我觉得我理解的很有道理啊。。。
|
|
|
|
|
|
|
|
|
有大神来指点一下吗
|
|
|
|
|
|
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
140 浏览 0 评论
483 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
815 浏览 0 评论
1346 浏览 2 评论
804 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16903 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 19:19 , Processed in 0.534219 second(s), Total 41, Slave 34 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
11042