关于mpy电压采集模块的那些事儿(ads1256 ads8688 ad7606)

news2025/2/27 2:59:30

先来个人生碎碎念,越狱第三次失败了,而且第四次也可能失败,没错就是这么尴尬,绝对越狱的事件还有917天,其实比较麻木了,越狱成功与否都无所谓了,其实现在出去,外头的疫情,日子也不会好过。趁着还在里面养精蓄锐,也不失为好选择。
再来说说mpy采集电压的事儿,很多人有电压采集的需要,现在已经给三个模块写了mpy驱动,分别是ads1256 ads8688 ad7606,选模块的时候就注意这么几个参数,通道数、精度、采样速率就可以了。
以前我说过mpy不适合高速项目,所以这里就涉及到较真的采样速率问题了,比如ad7606,官方给的最大采样率,8通道200k,这个速度对于mpy来说已经很吃力了,然后有的详情里面也有写,单片机实际达不到,具体是多少也没说。。
这里我就较真一下,速率到底可以到多少,网上只会给个例程,速度是200hz。。。根本不能说明问题,互联网就是这样,想找点真正的资料很费劲,都是哪几片浅一些的文章抄来抄去。
挑战一下mpy的极限速率,下面是我的发现:
1.pico比esp32快,原因未知,我猜想可能是pico的mpy更科学
2.mcu是可以超频的,超频了之后速度也会上去,esp32最大超频240mhz,pico可以到270mhz
3.spi的读取极限速度测试,测试硬件pico,频率270mhz,跑spi.read(2) 5万次循环,平均速度是90k,也就是一秒读9万次
4.实际不可能这么理想,因为需要拉低点评,还要存储数据或者发送数据,拉低电平这里也很有学问,如果用最普通的方式写:
pin.value(1)
pin.value(0)
出乎意料,有点慢其实,远大于cpu周期
但是pico如果用pio写,会快近一倍!
5.最终的工程是这样的逻辑:
拉低电平
spi读2bytes
串口马上发送
这里串口也是火力全开,波特率921600

最终实际速率,大约40k左右,是我能做到的极限了。

然后简单自学了QT,做了个pc上位机,可以直接将读的数据存txt,并且画图。
大致这个样子:
在这里插入图片描述
在这里插入图片描述
因为是有悬空电压的,所以读书在3200左右,正常。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/39345.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【学生网页设计作业源码】基于HTML+CSS+JavaScript简单的大学生书店(13个页面) 二手书店电子商务网站模板源码

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

常见的数据结构基本介绍

文章目录常见的数据结构介绍栈和队列的介绍数组数据结构链表数据结构二叉树和二叉查找树平衡二叉树红黑树结构常见的数据结构介绍 数据结构是计算机底层存储、组织数据的方式。是指数据相互之间是以什么方式排列在一起的。 通常情况下,精心选择的数据结构可以带来更…

应用ceph文件系统存储(ceph-13.2.10)

记录:333 场景:在CentOS 7.9操作系统上,部署ceph-13.2.10集群。应用ceph文件系统(ceph file system);主要是创建ceph文件系统、客户端挂载ceph文件系统等操作。 版本: 操作系统:CentOS 7.9 ceph版本&am…

JS获取音频的总时长,解决audio.duration 为 NaN || Infinity 问题

目录一、需求分析二、发现问题1.使用浏览器内置播放器<audio>无法显示时长2.获取总时长为 NaN || Infinity三、疑惑点四、解决方案一、需求分析 后端的接口中包含音频链接&#xff0c;前端需要自定义一个播放器播放音频。 二、发现问题 1.使用浏览器内置播放器<audi…

JPA 中使用 @OneToMany 、@ManyToOne 等关系映射注解

JPA 做 ORM(Object Relational Mapping&#xff0c;对象关系映射)时&#xff0c;为了开发效率&#xff0c;通常会在实体类上用 hibernate 的关系关联注解。 包括&#xff1a;OneToOne、 OneToMany 、ManyToOne 、ManyToMany 、JoinTable、以及 JoinColumn 以及 OrderBy&#xf…

汽车Automotive > SOME/IP应用学习

目录 SOME/IP介绍 SOME/IP主要功能 SOME/IP协议 SOME/IP服务类型 SOME/IP-举例 SOME/IP各模块协议 SOME/IP-基础元件 SOME/IP-SoAD SOME/IP-SD协议 SOME/IP-SD举例 SOME/IP-TP协议 SOME/IP-TP举例 SOME/IP介绍 SOME/IP ( Scalable service-Oriented Middleware ove…

面向大规模队列,百万并发的多优先级消费系统设计

大规模队列的核心诉求&#xff0c;不仅需要「快」&#xff0c;还需要兼顾「公平」。01 引言 HTTP是一种常用的通信协议&#xff0c;除了常见网站访问、上传下载&#xff0c;HTTP协议还经常被用在消息推送场景上。 设想你搭建了一个电商平台&#xff0c;有很多大型商家入驻了该…

Kotlin协程Flow浅析

Kotlin协程中的Flow主要用于处理复杂的异步数据&#xff0c;以一种”流“的方式&#xff0c;从上到下依次处理&#xff0c;和RxJava的处理方式类型&#xff0c;但是比后者更加强大。 Flow基本概念 Flow中基本上有三个概念&#xff0c;即 发送方&#xff0c;处理中间层&#x…

HTML+CSS大作业 (水果之家10个网页)

&#x1f380; 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 &#x1f482; 作者主页: 【主页——&#x1f680;获取更多优质源码】 &#x1f393; web前端期末大作业…

数字验证学习笔记——SystemVerilog芯片验证11 ——类的继承

一、类和继承 类的第二核心要素&#xff0c;即类的“继承”&#xff0c;继承也符合我们认识实际的观点&#xff0c;在自然界和科学界我们对世界的认识无外乎归纳法和演绎法。 归纳论证是一种由个别到一般的论证方法。它通过许多个别的事例或分论点&#xff0c;然后归纳出它们所…

17、Mybatis获取参数值的情况3(若mapper接口方法的参数为多个时,可以手动将这些参数放入map中存储)

Mybatis获取参数值的情况3&#xff08;若mapper接口方法的参数为多个时&#xff0c;可以手动将这些参数放入map中存储&#xff09; 第一步&#xff1a; 第二步&#xff1a; 第三步&#xff1a;

Linux系统tcp连接设置

目录net.ipv4.tcp_syn_retriesnet.ipv4.ip_local_port_rangenet.ipv4.tcp_net.core.somaxconnnet.ipv4.tcp_max_syn_backlognet.core.netdev_max_backlognet.ipv4.tcp_synack_retriesnet.ipv4.tcp_abort_on_overflownet.ipv4.tcp_syncookiesnet.ipv4.tcp_fastopennet.ipv4.tcp_…

兆易创新GD32 (四)FreeRTOS 移植 与 CMSIS OS2

可以完全参考STM32系列的方法 FreeRTOS 逛网下载 FreeRTOS源码 https://www.freertos.org/a00104.html GitHub地址 https://github.com/FreeRTOS/FreeRTOS-Kernel 下载后的FreeRTOS-Kernel复制到LIB文件夹下 在KEIL中添加文件&#xff0c;首先是公共部分 添加MDK移植文件CM4F…

含抽水蓄能电站系统的调峰经济调度研究matlab程序(粒子群算法)

含抽水蓄能电站系统的调峰经济调度研究matlab程序&#xff08;粒子群算法&#xff09; 参考文献&#xff1a;抽水蓄能电站的最佳调度方案研究 调峰电源的优化调度是促进电力系统安全稳定运行&#xff0c;实现可靠供电的要措施。因为目前我国的调峰电源严重不足&#xff0c;尤其…

【畅购商城】订单模块之收货人列表

目录 构建订单服务&#xff1a;8100 收货人列表 接口 后端实现&#xff1a;JavaBean 后端实现 前端实现 构建订单服务&#xff1a;8100 步骤一&#xff1a;构建项目&#xff0c;changgou4-service-orders 步骤二&#xff1a;修改pom.xml文件&#xff0c;添加依赖 <de…

Spring核心与设计思想

文章目录Spring 是什么&#xff1f;什么是容器&#xff1f;什么是IoC&#xff1f;传统程序开发控制反转式程序开发对比总结规律理解 Spring IoCDI 概念Spring 是什么&#xff1f; 我们通常所说的 Spring 指的是 Spring Framework&#xff08;Spring 框架&#xff09;&#xff…

ignite集群

ignite集群 基础知识 集群中的结点 Ignite 是一个分布式系统&#xff0c;集群是标配功能。 集群中的 节点&#xff0c;有两类&#xff1a; 服务器结点。具备完全功能的结点。 客户端结点&#xff1a;这个我没有完全理解&#xff0c;但从编程的角度&#xff0c;我初步认为这个…

Jenkins-CentOS安装jenkins

CentOS安装jenkins jenkins适配的jdk版本是17和11 第一步&#xff1a;安装jdk11 &#xff08;1&#xff09;在oracle下载jdk11 jdk-11.0.16.1_linux-x64_bin.tar,放到非root用户的家目录下 &#xff08;2&#xff09;解压&#xff0c;tar -zxvf jdk-11.0.16.1_linux-x64_bin…

校园论坛设计(Java)——介绍篇

校园论坛设计&#xff08;Java&#xff09; 文章目录校园论坛设计&#xff08;Java&#xff09;0、写在前面1、项目介绍2、项目背景3、项目功能介绍3.1 总体设计图3.2 帖子模块3.3 学习模块3.4 个人信息模块3.5 数据报表模块3.6 校园周边模块3.7 用户管理模块3.8 登录注册模块4…

基于桶的排序之基数排序以及排序方法总结

基于桶的排序之基数排序以及排序方法总结 作者&#xff1a;Grey 原文地址&#xff1a; 博客园&#xff1a;基于桶的排序之基数排序以及排序方法总结 CSDN&#xff1a;基于桶的排序之基数排序以及排序方法总结 说明 基于桶的排序有两种&#xff0c;分别是计数排序和基数排…