信号采样与恢复电路板

B站影视 2025-01-09 15:12 2

摘要:前两天测试了GP8500这款可以将PWM波形转换成模拟电压的芯片。下面基于这颗芯片,制作一个用于课堂演示信号采样与恢复的电路板。用于下学期课堂演示。

一、前言

  前两天测试了GP8500这款可以将PWM波形转换成模拟电压的芯片。下面基于这颗芯片,制作一个用于课堂演示信号采样与恢复的电路板。用于下学期课堂演示。

二、电路设计

  演示电路设计还是以 STC32F12为主,利用 GP8500将 单片机输出的 PWM 转换成 模拟信号.电路板上增加一个3.3V的 LDO, 作为设定频率电位器的参考电压. 使用 TypeC USB插座与计算机通讯. 下面,设计单面电路板, 适合一分钟制板,一分钟之后得到测试电路板,焊接清洗之后进行软件调试.

  不知道为什么,单片机始终无法稳定的通过USB与计算机相连,继而无法下载单片机软件。现在怀疑是增加了这个TypeC的接口引起的问题。为了解决这个问题,接下来,现将TypeC接口去掉,重新制作电路板,焊接测试。

  很可惜,焊接之后,仍然无法稳定的进行下载程序。这是否说明 STC32F系列的单片机,它的开发过程的确不太稳定。

  最终,没有别的办法,还是决定将 核心的MCU最终修改为 STC32G 单片机,另外,在调试的过程中,还发现了前面容易犯错的一个问题,那就是GP8500,它对应的使能端,必须接低电平,而不是高电平。造成这个问题的原因,就是元器件中对应管脚的文字容易造成误解。重新制版之后,焊接电路板,清洗之后进行调试,接下来进行软件开发。

三、输出信号

  现在单片机的内部工作时钟频率为 35MHz,设置PWM的周期为 3500,所以对应的PWM频率为 10kHz 。设置PWM更新中断,为了检测是否中断正常。在中断中改变LED的状态。 通过示波器,检测 LED 的信号。验证了软件中断正常了。

  下面,在PWM中断中,使用一个 0 到 99 的计数器,计算出以正弦波规律变化的占空比,更新 PWM 占空比比较数值之后,最终,可以产生占空比为正弦波的PWM波形。在GP8500的模拟输出中,可以看到稳定的 100Hz的正弦波。

▲ 图1.3.1 输出100Hz正弦波

  还是通过LED,测量一下计算正弦函数的时间。因为 STC32G中没有硬件三角函数加速器,所以,计算sine函数需要比较长的时间。上面黄色信号为 LED信号,高电平表明了中断中计算三角函数消耗的时间,可以看到计算时间占用了中断 75%的时间,因此,设置PWM的频率为 10kHz 也已经达到了 STC32G单片机的上限了。

▲ 图1.3.2 计算正弦波所需要的时间

  下面,启动单片机的ADC功能。读取外部电位器的电压。利用该电压,设置输出 信号的频率,从 50Hz逐步增加到 2000Hz。现在的信号的输出频率为10kHz。能够看到输出信号最高频率可以达到 2kHz。下面,将输出模拟信号的更新频率修改为 2kHz。可以看到,通过改变电位器,实际输出的信号频率,从最低一直变化到1kHz,然后又重新降低到很低的频率。

  本文制作了一个用于课堂演示信号采样与恢复的电路板。虽然前面对该电路中很多环节已经做了测试,但是发现,还是STC32G系列的单片机工作起来非常稳定,STC32F系列的单片机并不稳定。也许这是 F系列的单片机停止更新的 原因。后面对这个电路的附带功能继续进行完善。

[1]

利用PWM输出模拟电压:STC32G 驱动 GP8500:

GP8500 PAC 芯片的特性:

来源:APPLE频道

相关推荐