你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【STM32C0评测】8、波形采集

[复制链接]
qintian0303 发布时间:2025-5-4 15:58
      进阶功能的实现,接下我们通过ADC的采集实现波形采集,我们都知道波形相对来说需要一些密集的采集,在通过这些点来绘制出采集到的波形,为了能够观察比较方便,这里实用串口工具进行查看,我们将ADC采集到的数据通过串口发送出来,然后在串口调试窗口的绘图工具进行查看,那么如何产生波形呢?
      这里准备用一种原始的方式进行,就是使用arduino去生成一个波形然后连接到开发板的采集口,咱们看一下生成的波形和串口绘制的波形是否一致。
      下面是我们通过arduino R4生成的DAC的波形:
1.png

      接下来进行一下开发板的配置,这里还需要用到定时器和串口,我们在前面都已经体验了,主要进行一下ADC的配置:
2.png

      前面的外设我们用到了一些引脚,接下来只能用没有变红的通道,这里我们选择了IN4,可以查看对应的引脚是PA4:
3.png

      对应的硬件连接是如下:
4.png

      硬件连接如下:
5.png

      下面配置ADC参数,支持12位分辨率,不过本次测试选择8位,主要为了串口图形显示方便,肯定是分辨率越高越精细,本次准备用定时1ms打印一个数据,8位也是能够支持的:
6.png

      采用的是ADC+DMA的方式进行采集,不连续方式,所以整体的处理就在定时器中进行就可以:
  1. void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
  2. {
  3.   if (htim->Instance == TIM14) {
  4.         HAL_IncTick();
  5.         HAL_ADC_Start_DMA(&hadc1,(uint32_t*)&ADC_data,1);
  6. //        HAL_UART_Transmit(&huart2, (uint8_t *)&ADC_data, 1, 0xFFFF);
  7.         printf("%d\r\n", ADC_data);

  8.     }
  9. }
复制代码
     串口数据绘图如下:
7.png

      可以看到我们生成的波形是1V峰峰值,发送出来的数据是峰值大概是不到80,咱们采用的是8位的采集说以整体数据看着还是可以的。










收藏 评论0 发布时间:2025-5-4 15:58

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版