01 UART输出模拟量
一、前言
昨天,有人在“串口音乐” VLOG 后面留言,提出了一个很好的问题。那就是利用单片机的串口输出信号低通滤波得到的模拟量,与使用传统的PWM输出信号低通滤波得到的模拟量相比,有什么优势呢? 对此,有人回答道,至少在普通的计算机接口中,UART接口比较普遍,而PWM接口则难觅踪迹。除了以上观点之外,下面还是通过实际对比来看一下 UART 和 PWM 输出模拟量的差异性。
二、测试方法
那么下面设计测试电路,还是使用昨天的STM32单片机,接口做了简化,将 串口2 的输出端口引出,另外把 TIME4 的 两个 PWM 通道引出,最后再加上一个 IO口,用作示波器同步信号。手工铺设单面PCB板。最终有两个飞线,焊接时利用 0 欧姆电阻进行短接。
▲ 图1.2.1 测试电路原理图
▲ 图1.2.2 测试电路PCB版图
通过一分钟制版方法,制作测试电路板。实际上制作了两次。第一次,由于没有对腐蚀液稀释,造成了线路过腐蚀。第二次,在腐蚀液中增加了水,放慢了腐蚀速度,可以看到线路制作的非常完美。下面焊接测试。
焊接电路板。对它进行清洗。可以看到有些地方并没有清洗干净。后面使用超声波再次进行清洗。
三、测试结果
在面包板上搭建测试电路。提供单片机工作电压3.3V。通过探针夹子下载测试软件。
▲ 图1.3.1 串口输出信号
使用示波器观察串口2 输出信号。上面青色信号是 TXD2信号,下面黄色是电路中 IO口输出的 DMA中断信号。两个中断信号之间是 32个发送字节。现在发送的数据为 0x0,看到的这些脉冲是 串口通讯中的停止位。32个字节中总共有 256 比特可以被设置。
现在将 256位可控 比特中 25% 的设置成高电平。这些置为高电平的比特是均匀分布在 256 位中的。作为对比,设置单片机的 TIME4 输出 PWM波形,它的预分频参数设置为 79,这样就可以形成与 串口输出 32个字节相同周期的 PWM信号,PWM 精度也是 256个等级。
在示波器中,紫色的信号为 PWM 波形,占空比也是 25% ,上面是 UART输出的占空比25% 的PWM波形。由此我们知道,UART输出的信号实际上属于 PDM,也就是脉冲密度调制信号。实际调制频率为 1MHz,这是 串口设置的波特率。
▲ 图1.3.2 输出占空比25%对应的输出波形
▲ 图1.3.3 PWM和UART都输出25%占空比的波形
四、信号对比
下面分别做两个测量。一个是测量UART和PWM输出信号中的直流电压,一个是测量在 RC 低通滤波之后,信号中的交流分量的大小。先测量 UART 在不同的占空比设置下对应的直流分量,使用数字万用表DM3068的直流档测量输出信号,通过串口控制单片机 UART 输出信号中高电平所占的比例。从 0 一直到 100%。输出电压直流分量与占空比呈现完美的线性关系。
由于存在着起始位和停止位,所以 输出电压不是从 0V 开始增加,最大值也比信号高电平要低。接下来测量 PWM 信号的直流分量。测量结果显示 输出电压与占空比是正比关系。对比 UART 和 PWM信号中的直流分量,可以看到 UART 输出直流信号的范围 比 PWM 小了 20% 左右。
▲ 图1.4.1 UART输出电压
▲ 图1.4.2 PWM 输出电压
▲ 图1.4.3 UART,PWM输出电压对比
利用RC低通滤波器对 UART 输出信号进行滤波,电阻为 10k欧姆,电容为 0.1微法。利用 DM3068交流档测量输出信号中的交流信号的有效值。记录在不同占空比下,交流信号有效值的大小。从观察的波形上来看,输出信号非常平稳。测量结果也显示,输出信号中的交流分量随着占空比变化呈现大体增加的趋势。最大为 4mV左右。
接下来,测量 PWM信号在同样的RC低通滤波器滤波后存在的交流分量。可以观察到,在输出滤波信号中存在上下波动,测量结果显示 ,当占空比为 50% 的时候,交流分量达到最大,超过了 84mV。对比 串口信号和 PWM信号中的交流分量,我们就可以看出 串口输出的信号的优势,那就是在RC低通滤波之后,信号波动很小,只是 普通 PWM波形的 20分之一左右。
▲ 图1.4.4 UART输出信号中的交流分量
▲ 图1.4.5 PWM输出信号中的交流分量
▲ 图1.4.6 对比UART和PWM输出信号中的交流分量
※ 总 结 ※
本文对比了单片机通过 串口和 PWM 端口输出 直流量的特性。由于存在固定的起始位和停止位,所以串口输出信号的直流分量变化范围只能达到工作电压范围的 80%。但 PWM 输出信号中的直流分量可以达到工作电压的范围。但使用串口输出信号中的交流分量,在同样的 RC 低通滤波情况下,比 PWM 输出信号小了 20倍。这也许是 串口输出模拟量的一个优势吧。
当然,这种优势也是因为它输出位数比较低所带来的。比如实验中,串口输出模拟量只相当于 8位 的 DAC。今天的结果是通过实验测量得到的,理论上的分析,可以用于下学期再信号与系统课程中的实验作业的内容。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !