创隆科技 发表于 2023-1-19 21:18:10

PWM-定时器赋值可不能马虎随意了

PWM测量脉宽,用于测速。

以前的程序没啥问题,用到32就不行了?。
查程序也没查出来啥问题。
最后仔细看手册说“先赋值高8位再赋值低8位”
问题解决!!!
也给大家提个醒特别是51过来的,
以前赋值可以先低8位再高8位
大家一定养成良好习惯,无论操作啥都先赋值高8位再赋值低8位

fgx 发表于 2023-1-27 16:41:52

我也是遇到同样的问题,我用定时器0做500ms的定时中断,试了你说的方法,好像也没有用,数据手册给的例程是先低位再高位,我都不知道这是遇到了啥问题,一直进入不了中断。

神农鼎 发表于 2023-1-27 17:03:49

楼上,你是不细心,楼主讲的是PWM 定时器,我已答复你,你看下你的贴
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=833#lastpost

创隆科技 发表于 2023-1-29 21:32:42

fgx 发表于 2023-1-27 16:41
我也是遇到同样的问题,我用定时器0做500ms的定时中断,试了你说的方法,好像也没有用,数据手册给的例程是 ...

找问题,程序就直接点
定时器自动装载,定时器里直接置零端口
主程序弄个端口做暂时取反!
首先至少知道程序是不是运行了
再看定时器状态。

梁工 发表于 2023-1-29 23:26:46

fgx 发表于 2023-1-27 16:41
我也是遇到同样的问题,我用定时器0做500ms的定时中断,试了你说的方法,好像也没有用,数据手册给的例程是 ...

直接下载STC官方例程的HEX测试,示波器看定时器中断取反的IO输出方波。STC ISP的范例程序就有。

fgx 发表于 2023-1-30 21:33:20

创隆科技 发表于 2023-1-29 21:32
找问题,程序就直接点
定时器自动装载,定时器里直接置零端口
主程序弄个端口做暂时取反!


我找到问题了,是我外接的一个逻辑分析仪,我发现这个逻辑分析仪对IO口供电,估计就是逻辑分析仪的事情了,我换了示波器问题就解决了

fgx 发表于 2023-1-30 21:34:21

梁工 发表于 2023-1-29 23:26
直接下载STC官方例程的HEX测试,示波器看定时器中断取反的IO输出方波。STC ISP的范例程序就有。 ...

是我逻辑分析仪的问题,换了示波器就没有错了

梁工 发表于 2023-1-31 12:09:00

fgx 发表于 2023-1-30 21:34
是我逻辑分析仪的问题,换了示波器就没有错了

经常看到有人用逻辑分析仪看信号波形,我认为是用错仪器了,逻辑分析仪用于研究逻辑关系,波形的少许失真不会影响逻辑分析。而示波器是看波形的,只要采样合适,带宽合适,就不会丢信息。

还有个别用户数字示波器也不大会用,比如用很慢的扫描速度(例如100ms/DIV)来观察10KHz的PWM波形,会发现时断时续,或者用100ms/DIV的速度看一个10KHz的正弦波,会观察到一个几Hz的正弦波,这还是由于采样频率和被测频率的频差造成的。

创隆科技 发表于 2023-2-1 21:51:22

首先确保程序运行了,也就是芯片有电,复位正常。芯片工作了。主程序里弄个指示灯取反,就可以看出来!定时器按我说的直接置零让对应端口指示灯亮,如果能亮,查程序
页: [1]
查看完整版本: PWM-定时器赋值可不能马虎随意了