ST MCU Finder
安装免费手机应用,
寻找理想的ST MCU

[STM8] 8pin STM8能干啥?+简易峰值记录器

[复制链接]
509|19
 楼主 | 2019-1-6 17:21 | 显示全部楼层 |阅读模式
本帖最后由 纪国圣 于 2019-1-6 17:53 编辑

平常峰值记录通过使用模拟电路搭建。这种方法不仅对使用者要求较高,物料成本也较高。可以使用STM8S001做一个简易的峰值记录器,用于信号频率不高的场合。具体想法见下图所示:

以上是使用STM8S001J3。
不过更推荐使用STM8L050J3,因为其AD为12bit,采样率可达1 Msps,而且带有DMA,方便使用。具体如下:



本帖子中包含更多资源

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

x
| 2019-1-7 12:45 | 显示全部楼层
峰峰值能达到多少  如果超过了怎么分压呢
| 2019-1-7 12:53 | 显示全部楼层
滤波也要考虑到啊
| 2019-1-7 12:56 | 显示全部楼层
是不是应该加一个隔离啊
| 2019-1-7 14:15 | 显示全部楼层
峰值 如何检测啊
这段程序有没有呢?
 楼主 | 2019-1-7 23:49 | 显示全部楼层
本帖最后由 纪国圣 于 2019-1-8 00:12 编辑

补充一下,简单画出ADC前的信号处理电路:

本帖子中包含更多资源

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

x
 楼主 | 2019-1-8 00:00 | 显示全部楼层
labasi 发表于 2019-1-7 12:45
峰峰值能达到多少  如果超过了怎么分压呢

这个取决于你的输入范围和要求的精度。比如用如下的分压电路:
可以达到输入-10~+10V,输出为0~3.3V(视选取的电阻比例决定)。



使用STM8L050J3的12bit的ADC,ADC参考电压即电源电压为3.3V时,分辨率为(V这一端)0.0049V。
如果V超过-10~+10V,则可以在u端加上下拉二极管限幅。之后加一个跟随器和RC电路连接至单片机的AD即可。


本帖子中包含更多资源

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

x
 楼主 | 2019-1-8 00:14 | 显示全部楼层
paotangsan 发表于 2019-1-7 12:53
滤波也要考虑到啊

这款单片机内存太小,做简单的滤波算法很容易RAM不够用。在这个方案上只能不滤波。
 楼主 | 2019-1-8 00:18 | 显示全部楼层
renzheshengui 发表于 2019-1-7 12:56
是不是应该加一个隔离啊

看情况,如果直接接在同一个板子上的放大电路,加个跟随器和RC电路就可以了。大信号的话分压和保护是要做的。如果外接信号(不同地),隔离肯定是要加的。
 楼主 | 2019-1-8 00:27 | 显示全部楼层
本帖最后由 纪国圣 于 2019-1-8 00:31 编辑
wangjiahao88 发表于 2019-1-7 14:15
峰值 如何检测啊
这段程序有没有呢?

现成的程序没有。简单的讲个思路:先通过PB5的状态决定是否开启ADC采集。在PB5引脚被触发后先将峰值变量清零,然后开启ADC和DMA。单片机在等到DMA送来的数据后,判断是否大于现有的峰值变量并决定是否改变峰值变量。在PB5引脚恢复原先的状态后通过UART+DMA将峰值数据发送出去。程序还是比较好写的,关键是内存使用的把握。还有为了省内存和程序运行时间,在寻找峰值时直接用ADC输出的数据而不用转换,在发送数据时决定是否转换为电压值。
| 2019-1-8 11:36 | 显示全部楼层
纪国圣 发表于 2019-1-8 00:00
这个取决于你的输入范围和要求的精度。比如用如下的分压电路:
可以达到输入-10~+10V,输出为0~3.3V(视 ...

阻值的取舍还要考虑匹配的问题吗
| 2019-1-8 11:36 | 显示全部楼层
纪国圣 发表于 2019-1-7 23:49
补充一下,简单画出ADC前的信号处理电路:

好的 已经非常详细了 谢谢
| 2019-1-8 11:43 | 显示全部楼层
纪国圣 发表于 2019-1-8 00:14
这款单片机内存太小,做简单的滤波算法很容易RAM不够用。在这个方案上只能不滤波。 ...

考虑硬件滤波可以不
| 2019-1-8 11:49 | 显示全部楼层
纪国圣 发表于 2019-1-8 00:27
现成的程序没有。简单的讲个思路:先通过PB5的状态决定是否开启ADC采集。在PB5引脚被触发后先将峰值变量清 ...

好的 太感谢了
| 2019-1-8 14:24 | 显示全部楼层
你这个是很不错的
 楼主 | 2019-1-10 18:20 | 显示全部楼层
paotangsan 发表于 2019-1-8 11:43
考虑硬件滤波可以不

硬件滤波当然很好。在信号放大电路部分增加低通或带通滤波器以滤除噪声,可以提高精确度。感谢补充
| 2019-1-12 17:29 | 显示全部楼层
楼主打算做出来不,我想说上面的峰值保持电路根本不能用。用仿真软件的波形,在实际中根本没有
 楼主 | 2019-1-13 12:34 | 显示全部楼层
windows100 发表于 2019-1-12 17:29
楼主打算做出来不,我想说上面的峰值保持电路根本不能用。用仿真软件的波形,在实际中根本没有 ...

这个方案的局限在于AD采集速率和处理速度上,结果肯定是有误差的,被采集波形的频率也要受到限制。但是对于硬件搭建的峰值保持电路,受限于开关管的泄漏电流,电容的损耗角、运放的建立时间等因素,输出也不可能完全准确,而且随时间推移输出必然会下降。最重要温飘会很麻烦。
这个方案适用于低成本,对精度和信号速率要求不高的场合。对于高速信号,网络上已经有相关的数字处理电路的文章。
对于波形的问题,我想示波器都可以采集出最大值(虽然受到AD精度影响并不太准确),那么这个方案有何不可?欢迎探讨
| 2019-1-14 11:29 | 显示全部楼层
纪国圣 发表于 2019-1-13 12:34
这个方案的局限在于AD采集速率和处理速度上,结果肯定是有误差的,被采集波形的频率也要受到限制。但是对 ...

我经验和理论都没你扎实,但是这个电路我实际焊出来,做过,都是没有对应波形。如果你做出来了,请告诉我怎么实现,适用范围是怎样。
| 2019-2-1 15:53 | 显示全部楼层
纪国圣 发表于 2019-1-10 18:20
硬件滤波当然很好。在信号放大电路部分增加低通或带通滤波器以滤除噪声,可以提高精确度。感谢补充{:lol: ...

非常感谢您的肯定
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

快速回复 返回顶部 返回列表