庆祝我用ICCAVR7.22的代码生成器生成的产生方波的代码成功(那是相当的准确),但也有一个
我用ICCAVR7.22的代码生成器生成的产生40KHz方波的代码很给力啊,硬件测试为39.9992KHz,频率是相当的准确啊1、为什么要生成40KHz的方波,但却要设置成80KHz呢??????????????????????
2、这个方波的毛刺太太的讨厌,怎么也干不掉,,,请高手出招
下面是设置:
我用外部8M的晶振,这里设置8对吗?????深入浅出avr书里说这里填分频后的,这个有点不理解
http://cache.amobbs.com/bbs_upload782111/files_38/ourdev_632316OLCV32.png
(原文件名:1.png)
http://cache.amobbs.com/bbs_upload782111/files_38/ourdev_632317UOP108.png
(原文件名:2.png)
这里为什么填80呢,,,,明明我要40k的啊??????(如果这里写40k,生成的方波只有20k)
http://cache.amobbs.com/bbs_upload782111/files_38/ourdev_632318KLZTSX.png
(原文件名:3.png)
这是示波器上得到的波形:
http://cache.amobbs.com/bbs_upload782111/files_38/ourdev_632319ISQZ3Z.jpg
(原文件名:照片2552.jpg) 芯片熔丝位有没有对?这个方波的毛刺太太的讨厌,怎么也干不掉,是你的显波器太次了,没那么容易干掉的。毛刺和芯片无关. 因为你选的是TOGGLE,80K的Toggle当然生成40K的方波咯 回复【1楼】yhyf_heart
-----------------------------------------------------------------------
哦,,,示波器的问题???? 回复【2楼】Gorgon Meducer 傻孩子
-----------------------------------------------------------------------
谢谢傻孩子大哥的光临
原来是这么回事啊,,,这个错误我以前也犯过,,
从此后要改过 回复【1楼】yhyf_heart
-----------------------------------------------------------------------
熔丝位没有错 回复【3楼】guxingganyue
-----------------------------------------------------------------------
大哥,那个外部晶振怎么填了???、
我单片机外部接几M的的晶振在这里就写几M吗???? 回复【1楼】yhyf_heart
-----------------------------------------------------------------------
大哥说的没错,,我用泰克的示波器看了看,,果然很好
http://cache.amobbs.com/bbs_upload782111/files_38/ourdev_632427D0LICW.jpg
(原文件名:Rigol示波器显示的波形.jpg)
http://cache.amobbs.com/bbs_upload782111/files_38/ourdev_632428C0433Z.jpg
(原文件名:泰克示波器显示的波形.jpg) 不会吧?两个示波器的差距这么大呀 你知道上次的代码错在哪吗?
一边设置成CTC模式,一边开的确是定时器溢出中断...还软件重装载,
其实这个时候定时器是工作在普通模式而不是CTC模式,准才不正常。 探头上一般有个可调的电容,你调整下应该波形有所好转。 回复【8楼】STM32_Study
-----------------------------------------------------------------------
我试验的结果就是这样啊
假如某个电路真的产生毛刺,那让示波器干掉了,不就不能反映真相了吗??????
期待,,,,,,, 回复【9楼】hsztc
-----------------------------------------------------------------------
谢谢谢谢,,,上次是我没设置好中断了干什么那项 哪位知道这是为什么呢???
我设置输出快速PWM(模式14),中断时OC1A脚上取反,但实际测量就是不输出波形,,,,为什么呢(我是按资料上设置的
但这个资料写的使我有点迷惑,-------------“WGM13:0 = 15: 比较匹配时OC1A 取反 ,OC1B不占用物理引脚。WGM1 为其
它值时为普通端口操作,非OC1A/OC1B 功能”---------------1、OC1A 取反了,到底输出不输出呢(实际上没输出),2、OC1A
取反 ,OC1B不占用物理引脚,是不是这时OC1A也不占用物理脚呢 )
寄存器设置如下:
TCCR1A = 0x42; TCCR1B = 0x19;//启动定时器--------------------------这样设溢出后OC1A是取反,但没波形输出
TCCR1A = 0x82; TCCR1B = 0x19;//启动定时器--------------------------这样设溢出后OC1A是清零,有方波输出
下面是官方e文资料和翻译的有明显错误的中文资料截图:::
下面这句话到底怎么翻译呢???WGM13:0=14或15时,OC1A脚上到底有没有输出呢?????
http://cache.amobbs.com/bbs_upload782111/files_38/ourdev_632532OGPOZX.jpg
(原文件名:1.jpg)
http://cache.amobbs.com/bbs_upload782111/files_38/ourdev_632533DVYFBS.jpg
(原文件名:2.jpg)
http://cache.amobbs.com/bbs_upload782111/files_38/ourdev_632534XXQRW5.jpg
(原文件名:3.jpg)
页:
[1]