当前位置: 首页 > ds >正文

使用MounRiver Studio Ⅱ软件写一个CH592F芯片的ADC采集程序,碰到的问题

  1. MounRiver Studio Ⅱ 默认是不开启浮点计算的,所以有些浮点功能不能用,碰到问题是
    while (1) {DelayMs (100);tmp = Read_Temperature (0);sprintf (tempBuffer, "temp:%.2f\r\n", tmp);          // 格式化温度值到字符串。使用%f要开启相应的浮点运算,不然容易报错UART0_SendString (tempBuffer, strlen (tempBuffer));  // 发送温度字符串}

如果不开完整的浮点运算,这个

sprintf (tempBuffer, “temp:%.2f\r\n”, tmp);

输出的只会是“temp:”,而没有后面数据。

解决方式是勾选 Use float with nano printf(-u_printf_float)
在这里插入图片描述

2.遇到的第二个问题是,测量的电压值不准,原因是没有照CH592F手册给的公式计算,公式如下:
在这里插入图片描述
大致的流程就是先设置衰减度,然后根据相应公式计算

ADC_ExtSingleChSampInit (SampleFreq_3_2, ADC_PGA_1_2);//ADC_PGA_1_2是-6dBvoltage = ((float)adc_value / ADC_MAX-1)* VREF ;//然后更加相应公式计算,ADC_MAX是1024,VREF是1.05
http://www.xdnf.cn/news/12870.html

相关文章:

  • Qt Test功能及架构
  • LangChain4j 学习教程项目
  • Go 语言 sync.WaitGroup 深度解析
  • 2025年交安B证备考题库及答案
  • Redis 高频知识点及解析
  • 在 Win10 上 WSL 安装 Debian 12 后,Linux 如何启动 SMTP 服务?
  • GIC700概述
  • Redis主从复制的原理一 之 概述
  • 提升打字效率,全功能解析打字通
  • 【面试篇 9】c++生成可执行文件的四个步骤、悬挂指针、define和const区别、c++定义和声明、将引用作为返回值的好处、类的四个缺省函数
  • 双面沉金线路板制作流程解析:高可靠性PCB的核心工艺
  • 计算机基础知识(第五篇)
  • C#提取CAN ASC文件时间戳:实现与性能优化
  • Dynadot专业版邮箱工具指南(五):将域名邮箱添加至Outlook客户端
  • MySQL(62)如何进行数据库分片?
  • 数据库防丢失技术指南
  • 26N60-ASEMI工业电机控制专用26N60
  • 使用 SAM + YOLO + ResNet 检测工业开关状态:从零到部署
  • 纳米AI搜索与百度AI搜、豆包的核心差异解析
  • 湖北理元理律师事务所:债务咨询中的心理支持技术应用
  • Linux【4】------RK3568启动和引导顺序
  • model.classifier 通常指模型的分类头 是什么,详细举例说明在什么部位,发挥什么作用
  • 5月微短剧备案情况:当代都市剧成为主流
  • python asyncio的作用
  • 开源技术驱动下的上市公司财务主数据管理实践
  • Python异步编程-协程
  • MySQL SQL 优化:从 INSERT 到 LIMIT 的实战与原理
  • 让DeepSeek写2025年高考作文
  • PCB设计教程【大师篇】——STM32开发板电源设计(电压基准、滤波电容)
  • 大故障,阿里云核心域名疑似被劫持