找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 816|回复: 4
打印 上一主题 下一主题
收起左侧

问一下stc8g关于AD口的模式配置

[复制链接]
跳转到指定楼层
楼主
ID:874002 发表于 2025-2-17 16:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在芯片手册里讲到要配置为高阻输入,但我还发现在IO口那一章讲到,配置为高阻输入有个施密特触发器可以防止干扰信号,并且这个施密特触发器我看寄存器说明上电复位是默认使能的,但是我了解到如果IO口用作ADC时不建议使能这个施密特触发器,在我的实验中一开始没有意识到这个问题,我去采一个正弦波时假如1ms采一次20ms20次一个周期取平均值,我发现可以正常表示一个周期的平均值,但是如果我去找其中细节比如这20次里面的最大值和最小值时,发现并不是每次都能得到理想的理论值的,是不是关掉施密特触发,能够解决这个问题
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:592807 发表于 2025-2-17 19:49 | 只看该作者
你要采集最大值和最小值的看你的ADC电路,滤波和补偿抗干扰弄好了吗
回复

使用道具 举报

板凳
ID:1034262 发表于 2025-2-18 11:15 | 只看该作者
施密特是IO数字输入的,不是模拟输入,所以不影响ADC的,设置为高阻即可。
采样市电计算有效值,一个周期至少要采样200个点,我一般使用400点,即20KHz采样,计算电压有效值、电流有效值、有功功率、视在功率、功率因数、电能,采样时间为400ms,读数会很稳定的。
另外,最好使用STC8H或STC32G系列的12位ADC(我就是用12位的ADC),会得到很好的精度,我常用的是交流电压280V量程、分辨率0.1V,交流电流28A、分辨率0.01A。
回复

使用道具 举报

地板
ID:401564 发表于 2025-2-21 13:57 | 只看该作者
首先,ADC一定是有波动的,波动的大小一般都是5个数字量左右,在单片机ADC电气参数中有表格的,你自己去对一下,取误差的最大值
施密特触发器实际上是针对数字信号的高低电平而言的,对于模拟量没有什么影响
ADC设置直接复制STC下载器中的代码就可以了,IO不同可以自己改一下
剩下的就是你自己代码的滤波了
回复

使用道具 举报

5#
ID:874002 发表于 2025-2-21 15:13 | 只看该作者
谢谢各位
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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