AD的本身速率最大可以达到1M,去采样一个1KHZ的正弦信号,一个周期内按说可以采集1000个点,但是你去采集然后采集一个输出一个你就会发现一个周期内才采样了10个点,这是为什么呢?
是因为你的串口太慢了,我们知道串口本身是有一个波特率属性的,当你把波特率慢慢调大的时候,你会发现还是那个AD速率,但是一个周期内采样的点变多了,也就是说并不是AD采集的慢,而是我AD采集了你串口呢并不能及时发送,那就是木桶原理了,一个团队的工作速率不是看最快的那个人,而是看最慢的那个人!所以我们怎么样才能获得真实的采样值呢?
首先不能AD采样一次串口输出一次,那也即是说我要一下子采集很多很多个点然后一起通过串口输出出来,有三种方式可供选择:
1、开启AD中断,在中断中把本次采样值存到数组里,当采样次数达到所需要时,在通过串口一次性输出。
2、开启定时器中断,AD设置为连续转换,让AD以他自己的1MHZ去采样,然后我控制定时器的频率,每次定时器进入中断我就把目前正在进行的一次AD采样的值取出来放入数组,这样也能灵活的获取到所需要的值,当然这种方法的优点在于可以降低AD采样的最小速率(FFT变换时,我们要让AD速率尽可能的小)缺点就是不能把所有AD采样的值全部获取到。
3、开启DMA中断,把每次AD采样的值通过DMA存放到数组中,然后设置DMA的缓存大小,当存放的数据达到缓存大小时进入DMA中断,一次性输出所有AD采样数据。

欢迎各位大佬前来指正!

关于STM32的AD采样串口输出相关推荐

  1. STM32驱动矩阵键盘串口输出

    原理:矩阵键盘的原理就是分行和列扫描,来获知按键的行数和列数,然后得到按键的键值.(按键按下时) 矩阵原理图 效果视频演示 STM32驱动矩阵键盘串口输出 硬件部分 f103c8t6核心板 4*4矩阵 ...

  2. STM32 矩阵键盘通过串口输出

    STM32F103C8T6 4*4矩阵键盘 通过串口输出,可以用来写密码锁 程序的思路如下: 1.首先需要配置的是矩阵键盘:配置两个函数:  KEY44_Init(矩阵键盘初始化)和key44_Sca ...

  3. STM32超声波模块测距串口输出/通用定时器中断并输出PWM控制舵机/系统定时器延时

    参考:stm32 超声波模块 原理 实现测距 +舵机使用 作者:点灯小哥 发布时间: 2021-03-10 19:37:16 网址:https://blog.csdn.net/weixin_46016 ...

  4. stm32及LPC1768库函数串口输出重定向

    USART1根据实际需要修改. stm32的SR根据内核寄存器名称修改 int fputc(int ch, FILE *f) { while((USART1->SR&0X40)==0); ...

  5. STM32获取GY-25A倾角传感器串口输出数据

    STM32获取GY-25A倾角传感器串口输出数据 GY-25A模块是新型的倾角传感器模块,具有X和Y两轴模拟角度输出和串口角度输出的功能.这里介绍STM32获取GY-25A串口输出的角度数据.(获取模 ...

  6. STM32多通道ADC采样获取MCP9701模拟温度传感器温度输出数据

    STM32多通道ADC采样获取MCP9701模拟温度传感器温度输出数据 市面上常见的模拟温度传感器有TI的LM35系列,然后使用中并不简便.MCP9701是Microchip公司推出的相似的模拟温度传 ...

  7. STM32串口输出字符串

    目录 串口 步骤 1.确定 IO 口并初始化 2.初始化 UATR 3.UART 中断配置 4.编写 UART 中断服务函数 5.1.方法一:重定向 fputc() 5.2.方法二:将字符串分割成一个 ...

  8. STM32 汇编程序——串口输出 Hello world

    文章目录 一.UART介绍 二.项目建立及编译 1.新建项目 2.代码 3.编译 三.电路连接及烧录 1.串口连接 2.烧录 四.串口输出 五.总结 参考链接 一.UART介绍 通用同步异步收发器(U ...

  9. STC51和STM32使用串口输出中文乱码问题解决

    STC51和STM32使用串口输出中文乱码问题解决 问题描述:在进行串口实验时,我们想通过串口调试助手来输出中文信息, 但是我们经常会发现在串口调试助手上会输出乱码,跟我们预期的中文信息不符,见以下图 ...

  10. STM32使用keil串口输出中文乱码问题

    问题状态:已解决 问题描述:在进行串口实验时,我们发现使用串口调试助手输出的中文全是乱码(不是文件中的中文乱码,是串口输出的时候出现乱码),见以下图片: 解决方案: 1.首先在你的文件中找到main. ...

最新文章

  1. 未发现数据源名称并且未指定默认驱动程序_10个有用的HTML5功能,您可能未使用
  2. 【待继续研究】解析机器学习技术在反欺诈领域的应用
  3. python random模块的使用
  4. python如何运行py程序_如何用Python汇款:Web3.py教程
  5. java应用开发_开发简单的Java应用
  6. ant-design tree 设置默认选中状态_快速掌握文件夹位置的更改和文件的默认打开方式及重命名的操作...
  7. loinc编码_通用检验编码系统(Universal Laboratory Test Code System)于香港电子健康纪录计划的应用...
  8. 在android 采用 android junit test 测试注意
  9. 并发器 Oracle,一周爆肝上线百万高并发系统-oracle中最大并发连接数是多少
  10. J-Link软件和文档包的版本发行说明(4)[V6.50 ~ V6.90a版本]
  11. 计算机电源简单知识,基本知识:电脑电源工作流程以及电路图赏析
  12. pg安装部署linux_Linux下postgresql数据库部署与配置
  13. mysql的主句与从句_什么是主句,什么是从句
  14. 《通用数据保护条例》(GDPR)系列解读五:出海欧洲,企业必须做好四大义务
  15. stem教育在中国法则
  16. 从零开始-自动化立体库设计与计算
  17. [百合原帖]由《联合早报》的一篇文章……
  18. 量子模拟:棋子与量子
  19. DHCP欺骗原理与欺骗攻击
  20. KVM虚机转换为VMware虚机

热门文章

  1. 关于方志鹏博主springcloud系列教程提示:Could not resolve placeholder 'foo' in value ${foo}报错
  2. win10键盘快捷键
  3. 苏宁易购实现逆势增长,但它的非电业务更超出意料
  4. 选用计算机教材的理由原因,教材选用及管理规定
  5. USB打印服务器作用,沁恒股份USB打印机服务器方案概述
  6. trans系列是sci几区_怎么确定SCI论文期刊是几区的
  7. PHP 简单开发实例
  8. Python视频制作 MoviePy框架的基础使用
  9. Google Map Api 谷歌地图接口整理
  10. word2vec模型深度解析