梁工 发表于 2025-8-11 10:47:46

halirkrt 发表于 2025-8-11 07:52
这个只能做到周期连续间隔1来调整,频率做不到,能不能专门做个这样的功能??因为这个频率连续可调的PWM ...

不管是高级PWM还是PCA,都可以做出来,0.01Hz都可以。比如,做高精度频率计(由于1ppm),用高级PWM或PCA产生精确的1S脉冲。

halirkrt 发表于 3 天前

梁工 发表于 2025-8-11 10:47
不管是高级PWM还是PCA,都可以做出来,0.01Hz都可以。比如,做高精度频率计(由于1ppm),用高级PWM或PCA ...

能给发个例程吗?

梁工 发表于 3 天前

halirkrt 发表于 2025-8-21 08:00
能给发个例程吗?
/*************      功能说明      **************
请先别修改程序, 直接下载"05-PCA-3路16位软件定时器-高速脉冲输出-秒级"里的"PCA.hex"测试,下载时选择主频12MHz。

本例程PCA时钟选择Timer0溢出, Timer0设置为12T,16位自动重装模式,1000分频,得到1KHz的时钟供给PCA,PCA定时分辨率为1ms,最长定时65535ms.
PCA0配置为16位软件定时器, 定时时间10秒, 并且允许从P1.1输出高速脉冲周期20秒、0.05Hz.
PCA1配置为16位软件定时器, 定时时间20秒, 并且允许从P1.0输出高速脉冲周期40秒、0.025Hz.
PCA2配置为16位软件定时器, 定时时间30秒, 并且允许从P3.7输出高速脉冲周期60秒、0.01667Hz.
******************************************/

上面的频率够低了吧?
什么?还不够低?
那好,你可以选择6MHz的主频,timer0设置为12T、16位自动重装模式,65536分频,得到7.63Hz的时钟供给PCA,最长定时=65535/7.63=8590秒, 输出脉冲频率=1/(8590*2)=0.0000588Hz,够不够低?





页: 1 [2]
查看完整版本: 单片机型号8G2K32S4,遇到诡异问题