找回密码
 立即注册
查看: 791|回复: 6

软件如何测量STC8G系列共电电压

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2023-11-28 15:49:32

5

主题

8

回帖

55

积分

注册会员

积分
55
发表于 2023-11-28 15:41:42 | 显示全部楼层 |阅读模式
STC8G1K系列,供电电压通过VCC输入, 软件如何测量当前的VCC 值?
查看数据手册, 没有发现有VCC的ADC 通道. 这里咨询一下。

回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:55
  • 最近打卡:2025-05-02 08:32:59

718

主题

1万

回帖

1万

积分

管理员

积分
15630
发表于 2023-11-28 15:56:27 | 显示全部楼层
截图202311281556237682.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-05-02 10:07:51

73

主题

5883

回帖

1万

积分

超级版主

积分
12079
发表于 2023-11-28 16:50:05 | 显示全部楼层
STC8系列都通用的方法:测量15通道的ADC值即可计算出VCC,10位ADC为:VCC = 1.19*1024/ADC15,12位ADC为: VCC = 1.19*4096/ADC15。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2023-11-28 15:49:32

5

主题

8

回帖

55

积分

注册会员

积分
55
发表于 2023-11-30 17:40:23 | 显示全部楼层
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2023-11-28 15:49:32

5

主题

8

回帖

55

积分

注册会员

积分
55
发表于 2023-11-30 17:50:00 | 显示全部楼层
本帖最后由 zhuqingtao 于 2023-11-30 18:03 编辑

但还是有个疑问, 查看数据手册, 在计算 GPIO 的输入电压 Vin 的时候,要读1.19的 ADC (通道15) 和 Vin的 ADC (例如通道14),
VIN = ADC_Vin * 119 / ADC_15, 要取得两个ADC的值,
但计算 供电电压VCC 时, 为什么 只读取 通道15 的ADC?  VCC 管脚输入的ADC 不需要了吗?

点评

ADC的参考电压是VCC,即ADC读到的值是某一通道电压与VCC的比值。 当我们考虑单独一个通道时, ADC(x) = res * V(x) / VCC (式1) 或 V(x) = ADC(x) * VCC / res 其中res为分辨率,10位ADC时 res = 2^10 = 102  详情 回复 发表于 2023-11-30 18:36
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:328
  • 最近打卡:2025-03-09 19:40:01

9

主题

328

回帖

4501

积分

荣誉版主

积分
4501
发表于 2023-11-30 18:36:12 | 显示全部楼层
zhuqi*** 发表于 2023-11-30 17:50
但还是有个疑问, 查看数据手册, 在计算 GPIO 的输入电压 Vin 的时候,要读1.19的 ADC (通道15) 和 Vin ...

ADC的参考电压是VCC,即ADC读到的值是某一通道电压与VCC的比值。

当我们考虑单独一个通道时,
ADC(x) = res * V(x) / VCC        (式1)

V(x) = ADC(x) * VCC / res
其中res为分辨率,10位ADC时 res = 2^10 = 1024 ,12位ADC则是 res = 2^12 = 4096 。

但此时我们并不知道VCC准确的值,因此无法计算通道电压V(x)。
不难想到,如果我们有一个稳定且确定的电压值(即通道15),那么有
ADC(15) = res * V(15) / VCC        (式2)
其中 V(15) = 1.19 V 已知。

将(式1)与(式2)相除,则有
ADC(x) / ADC(15) = V(x) / V(15)

V(x) = ADC(x) * V(15) / ADC(15)
也就是你写出的式子

但此时我们需要的是VCC,上述方式是将VCC消去的方法
注意到(式2)中除了VCC外均为已知量,则可以变形求得VCC
VCC = res * V(15) / ADC(15)

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2023-11-28 15:49:32

5

主题

8

回帖

55

积分

注册会员

积分
55
发表于 2023-12-1 09:12:16 | 显示全部楼层
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 22:10 , Processed in 0.154354 second(s), 89 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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