单片机小技巧

[复制链接]
1108|5
 楼主| shaler 发表于 2022-4-15 17:27 | 显示全部楼层 |阅读模式
单片机应用中,常需要通过输出模拟量来对外部进行控制,增加D/A转换芯片不仅需要占用I/O口资源,同时也会使成本增加。通过单片机的定时器中断来用软件的方法产生PWM,并经过滤波与跟随电路产生准确的模拟量输出。
使用了定时器设置成每100us就中断一次。当TL0加到FF就会产生一次中断,并执行中断函数。如果机器使用的时钟是12MHZ,每1us产生一个计数脉冲100us产生一次中断的话就需要给TL0一个9C的值

未完待续。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
wooda 发表于 2022-4-15 20:21 | 显示全部楼层
本帖最后由 wooda 于 2022-4-15 20:23 编辑

定时器中断输出会收到程序影响导致准确度下降,直接使用pwm模块输出就行,准确度取决于时钟精度以及pwm计数精度。。另外外部不需要这么复杂,直接阻容滤波就可以了。
cooldog123pp 发表于 2022-4-16 16:18 | 显示全部楼层
楼主讲的很详细,非常感谢楼主的讲解,mark一下,收藏学习,受教受教。
mutable 发表于 2022-4-16 16:24 | 显示全部楼层
这是仿真软件么
cjseng 发表于 2022-4-17 13:44 | 显示全部楼层
唯一的问题是:因为没有反馈,也没有基准,单片机的供电电源需要足够稳定,输出才有足够精度。
 楼主| shaler 发表于 2022-4-18 08:25 | 显示全部楼层
用 keil软件与proteus软件的联调  

对着呢   实际应用可以电容过滤 ,反馈要考虑的   
您需要登录后才可以回帖 登录 | 注册

本版积分规则

57

主题

1042

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部