找回密码
 立即注册
楼主: consoleyou

工程需求:使用MCU的ADC采样0~1.8V电压,经过MCU调整后(校正后),输出0~1.8V电压。

[复制链接]
  • 打卡等级:常住居民II
  • 打卡总天数:95
  • 最近打卡:2025-06-17 10:15:05

74

主题

6094

回帖

1万

积分

超级版主

积分
12735
发表于 2025-6-5 16:43:43 | 显示全部楼层
conso*** 发表于 2025-6-5 15:17
采样STC应该没有问题,主要是输出,8051和8H系列都没有DAC。

没有DAC,可以用PWM代替DAC输出的。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:95
  • 最近打卡:2025-06-17 10:15:05

74

主题

6094

回帖

1万

积分

超级版主

积分
12735
发表于 2025-6-5 16:49:16 | 显示全部楼层
conso*** 发表于 2025-6-5 15:17
采样STC应该没有问题,主要是输出,8051和8H系列都没有DAC。

说出你要求的处理这么困难吗?我都不知道你要输出的是什么量。
读取摇杆实际就是读电位器或霍尔输出的电压,我一般校准就是先读取中点电压,然后读取两个端点的电压,如果信号是线性的,就进行线性处理,如果不是线性的,根据其非线性曲线处理。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:471
  • 最近打卡:2025-06-17 10:08:07

8

主题

72

回帖

774

积分

高级会员

积分
774
发表于 2025-6-5 18:09:52 | 显示全部楼层
梁*** 发表于 2025-6-5 16:49
说出你要求的处理这么困难吗?我都不知道你要输出的是什么量。
读取摇杆实际就是读电位器或霍尔输出的电 ...

对霍尔摇杆的输出端进行采样,范围在0~1.8V之间。因为霍尔摇杆通常会有误差,影响手柄摇杆的回中和外圈范围,所以需要MCU进行校准,校准后,再通过DAC,输出信号,这个信号范围也是在0~1.8V之间,传递给手柄自身的MCU。
微信截图_20250605180854.png
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:471
  • 最近打卡:2025-06-17 10:08:07

8

主题

72

回帖

774

积分

高级会员

积分
774
发表于 2025-6-5 18:23:26 | 显示全部楼层
conso*** 发表于 2025-6-5 18:09
对霍尔摇杆的输出端进行采样,范围在0~1.8V之间。因为霍尔摇杆通常会有误差,影响手柄摇杆的回中和外圈范 ...

在保证采样和输出速度的情况下,当然采样精度越高越好,输出电压越平滑越好。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:144
  • 最近打卡:2025-06-15 07:43:58
已绑定手机

6

主题

36

回帖

496

积分

中级会员

积分
496
发表于 2025-6-5 22:11:59 | 显示全部楼层
conso*** 发表于 2025-6-5 18:23
在保证采样和输出速度的情况下,当然采样精度越高越好,输出电压越平滑越好。 ...

这个实现不难 我制作的一个玩具使用遥感电位器。就存在遥感电位器更换中点不一致的问题。如果中点不到位 会出现停止状态电机还在动作,更换遥感电位器的时候就需要中点调整。
我的VREF =3.3V 。12为ADC取样 0--4096  理论遥感电位器回中位置2048.但是实际有的在2048以下  有的在2048以上。我矫正是这样的  如果实际ADC= 2080,那么我校准的  ADC矫正 = 实际ADC 对于外圈同样的方法。这个时候唯一回出现的就是电位器比方说正半圈实际ADC=2080-4096   副半圈 = 0--2080 。正负半圈不完全对称。但是使用非常顺手,不会出现中点偏移问题
另外中点不是绝对的。比如中点2048  我一般程序认为 2030--2066 正负18   我都认为是在中点。只有超过这个范围才需要矫正
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:471
  • 最近打卡:2025-06-17 10:08:07

8

主题

72

回帖

774

积分

高级会员

积分
774
发表于 2025-6-6 10:20:36 | 显示全部楼层
13259*** 发表于 2025-6-5 22:11
这个实现不难 我制作的一个玩具使用遥感电位器。就存在遥感电位器更换中点不一致的问题。如果中点不到位  ...

是的,您这个是在自己设计的电路上做校准,比较好操作。我这边的要求是在原手柄的电路上,附加一个电路,对原信号进行截留,然后再校准输出。所以需要MCU提供ADC和DAC功能,而且要2路,因为要校准X轴和Y轴。先用ADC采集原主板上电位器的信号,经过校准处理后,再以模拟信号(DAC)的方式发给原主板上的MCU采集脚上。您说的中点取值范围,实际上就是游戏手柄中所说的死区,也是回中的一个办法。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:409
  • 最近打卡:2025-06-17 00:48:11

8

主题

353

回帖

2476

积分

金牌会员

积分
2476
发表于 6 天前 | 显示全部楼层
只要ADC和输出PWM分辨率和速度足够,任何单片机都可以实现非线性校准功能
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-18 00:31 , Processed in 0.131378 second(s), 90 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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