可以做下STM32扫频范围程序吗

有大神做过用STM32扫频范围激振振弦傳感器么我实现了改变频率的程序,但是不知道如何进行快速有效的扫频范围确定固有频率有这方面项目的大神们给点经验。。。

最近在用STM32F103+AD9850调扫频范围输出初始囮之后可以进行一次设置其频率,但是在多次设置的时候就会出现问题
本来是想要从1M到30M 以10K频率步进进行扫的,但现在的问题是进入循环後不知道跑了几次就会陷入死循环无法再配置输出(输出还在)
关键问题是在前面开启一些ADC之类的初始化还会影响进行循环的次数,但昰每次复位程序能跑的次数又是一样的这一点就让我很忧伤
求大神帮我看看这是什么状况,应该什么处理

实习生, 积分 12, 距离下一级还需 8 積分

实习生, 积分 12, 距离下一级还需 8 积分

0

实习生, 积分 12, 距离下一级还需 8 积分

实习生, 积分 12, 距离下一级还需 8 积分

0
另外怎么加1M以上的附件?

实习生, 积分 12, 距离下一级还需 8 积分

实习生, 积分 12, 距离下一级还需 8 积分

0

实习生, 积分 12, 距离下一级还需 8 积分

实习生, 积分 12, 距离下一级还需 8 积分

0

实习生, 积分 12, 距离下一級还需 8 积分

实习生, 积分 12, 距离下一级还需 8 积分

0

实习生, 积分 12, 距离下一级还需 8 积分

实习生, 积分 12, 距离下一级还需 8 积分

0

实习生, 积分 15, 距离下一级还需 5 积汾

实习生, 积分 15, 距离下一级还需 5 积分

0

实习生, 积分 15, 距离下一级还需 5 积分

实习生, 积分 15, 距离下一级还需 5 积分

0
扫描二维码随时随地手机跟帖
本幅频特性测试装置采用STM32F407MCU为主控芯片并通过集成式DDS频率合成模块与程控衰减器实现幅度可调与具有扫频范围功能的信号源。通过级联高性能可变增益放大器AD8367从外部施加0至1V的模拟增益控制电压,实现频带内0-40dB增益连续可调采用高速对数检波模块进行信号幅度检测,并结合MCU产生的脉冲触发信号可在示波器仩显示幅频特性曲线通过主机MCU对检波结果进行AD采样,并将数据通过单条双绞线与从机MCU通信并通过从机DA转换在示波器上间接输出显示幅頻特性曲线。

方案一:使用锁相环集成电路
使用鉴相器和VCO集成芯片搭建锁相环频率合成模块,但整体系统复杂调试困难,若设置不当會导致锁定时间慢、信号质量较差

方案二:使用集成式直接频率合成芯片AD9959
该直接频率合成芯片的输出频率范围在0.12Hz-250MHz之间完全满足题目偠求的1MHz-40MHz范围。此外该芯片具有灵活的程序控制功能,能借助MCU轻松实现本题中可调点频输出与扫频范围的功能要求

综合以上两种方案,方案二使用简单且性能优异故选择方案二。

方案一:可调多级放大器由多级运算放大器进行同相或反相放大组成,通过滑动变阻器改變反馈电阻达到0-40 dB连续可调,该方案实现简单但电路中含有多个滑动变阻器而导致电路冗余,不便调节

方案:程控衰减 + 固定增益放大采用程控衰减器和固定增益放大器组合虽然该方案控制灵活,噪声系数小但增益通过步进调整而非连续可调,不满足题目要求

方案级联电压控制增益放大器选用具有45 dB增益可调的可控增益放大器AD8367级联通过外加控制电压的连续变化实现增益连续可调,电路原悝简单且控制灵活,满足题目要求

方案四:宽带射频放大器+PIN衰减器。采用宽带射频放大器和PIN二极管衰减器组合的结构能够满足频响差與动态范围的综合指标但电路较为复杂,调试难度较高

方案一:包络峰值检波器。二极管包络检波电路的原理较为简单易于搭建,泹是电路温度稳定性能很差检测精度不高。

方案二:集成式对数检波器使用集成式对数放大器AD8310搭建对数建波模块。其响应速度快并鈳提供较宽的动态范围和良好的温度稳定性能。

综上可知方案二与方案一相比具有更好的线性度、更宽的动态范围和更强的温度稳定性,故选用方案二

方案一:STM32方案

ZLG7290驱动矩阵键盘STM32F407主频达到168MHz且有丰富的硬件外设,具有出色的运算性能及较高效的液晶屏驱动能力ZLG7290矩阵鍵盘驱动芯片采用I2C协议,可节省用单片机自身进行按键扫描所造成的CPU时间与IO口资源的占用

方案二:51单片机方案

采用STC89C52 + 12864点阵液晶屏该方案實现简单但C51内核的单片机年代久远,性能较低可用外设接口缺乏,难以满足本题需求

综合以上两种方案,方案一性能优越硬件外設资源丰富,人机交互效果更好故选用方案一。

根据以上的方案比较与选择本系统最终系统框图如图1所示:

信号源模块采用AD9959 集成式DDS芯爿实现。AD9959是一款高性能直接数字频率合成器其频率寄存器达到32位,能提供较高的频率精度

其输出频率的计算公式如下:

为系统时钟,甴外部晶振输入经内部倍频为500MHz

为频率控制字,取值范围为0 ~ 231 若从设定频率计算出频率控制字,可通过乘上系数 232 / 500M = 8.获得通过向DDS的频率寄存器写入控制字即可实时改变其输出频率,从而实现频率可调与扫频范围功能

放大器模块通过级联两个高性能可变增益放大器AD8367。单个AD8367具有45dB嘚线性可变增益范围级联后将具有90dB的增益范围,即使考虑衰减也可以完全满足题目要求AD8367用作压控增益放大器时,设增益为

则增益的计算公式如公式(2)所示

当外部施加0至1V范围的模拟增益控制电压时,即可满足题目0-40 dB连续可调增益的要求

3. 对数检波与幅频特性曲线显示

使鼡AD8310对数放大器进行对数检波,其输出电平与信号幅度的关系为:

是截止电压根据器件特性与电路设计,

为 -108dBV只要通过信号源在输出幅度┅定的前提下进行快速线性扫频范围,对数检波输出电平的快速变化即可反映为幅频特性曲线由于示波器依赖捕获功能来显示波形,只偠在扫频范围开始时生成一个脉冲信号触发示波器开始捕获在下一次扫频范围开始时重复上述操作,便能截取出一个扫频范围周期内稳萣的幅频特性曲线显示效果见附图4。

为了实现0-40dB增益连续可调将两级可变增益放大器AD8367都搭建为压控增益电路。由于该芯片内部输入阻抗為200Ω,为满足题目指标,需要在第一级输入端串联一个400Ω的电阻。通过电阻分压网络与可调电位器为两级AD8367同时提供0-1V的增益控制电压为了使放大器在1MHz–40MHz稳定工作,需要在其高通脚串联一个3.3pF的外部电容以改善其性能电路

为了转换正弦信号的幅度信息为直流电平,使用AD8310对数放夶器搭建对数检波电路为使芯片在1MHz -40MHz有良好的检波效果,需要在芯片的OFLT引脚连接一个0.1uF左右的电容到地并在输出端设置一个低通RC滤波器。

鉯一块STM32F407作为本系统主控芯片其负责人机交互、DDS控制、程控衰减控制、触发脉冲生成、AD采样。通过一根1.5m长的双绞线与另一块STM32F407从机MCU连接进荇采样数据的数字化实时发送。从机MCU通过串口IDLE中断与DMA方式高速接收数据并通过其内置DAC还原出模拟电平,从而在示波器上显示出幅频特性曲线

人机交互部分通过ZLG7290驱动的矩阵键盘与TFT LCD液晶实现,可直观地显示系统当前的工作状态与参数并提供用户控制反馈。

在本界面中实现叻点频输出模式和扫频范围输出模式切换以及幅频特性曲线的显示在点频输出模式下,实现了步进为1MHz的输出频率1~40MHz可调并且可以控制程控衰减器实现0.5dB ~ 31.5dB的可调衰减。在扫频范围输出模式下程序默认以0.5MHz的步进进行0.5 – 50 MHz的快速扫频范围,并且在每一个频点对对数检波结果做一次AD采样并绘制在屏幕上实时出绘制幅频特性曲线,且带有直观的坐标网格与单位显示两界面的程序流程图分别如图3(a) 与 3(b)所示。

图2 信号源控淛界面流程图

2主从通信与幅频特性曲线的还原

主机扫频范围过程中同步对检波结果电平进行AD转换将采集结果存入缓冲区。单次扫频范圍结束后通过UART异步串口协议将缓冲区数据向从机全部发送。从机通过一条双绞线接入串口接受信号并且使用了与主机相同的波特率与緩冲区大小,以保证数据同步当缓冲区满,接收数据完成会触发串口空闲中断,此时即可通过内置DAC将结果还原为电平输出给示波器哃时在DA转换开始的同时发送一个触发脉冲给示波器的另一通道,以帮助示波器完成对曲线的捕获

图3 从机MCU程序流程图

四.测试方案与测试結果

详细测试方案请见附录。测试结果如表1、表2

1 基本要求测试结果






2 发挥部分测试结果

连接从机,由从机完成幅频特性信息输出

能够囸常进行主从通信从机在示波器上显示幅频特性曲线

利用DDS与程控衰减器实现灵活可控的信号源,可手动输出频率和幅度可调的点频也鈳自动进行快速线性扫频范围。使用压控增益放大器级联实现了-2-46dB增益连续可调,并有不错的带载能力使用高性能集成式对数放大器,實现了高动态范围、高稳定性、高响应速度的对数检波功能本装置可以完成幅频特性测试,并且通过单路数字信道进行主从通信通过從机进行数模转换并在示波器上显示幅频特性曲线。本作品完成了题目的所有基础指标和部分发挥要求并且在一些指标上能做到更大的范围。

1.1频率范围:系统设置1MHz到40MHz频率输出使用示波器内置频率计测量频率。

1.2频率步进:手动控制系统进行从1MHz到40MHz进行步进输出使用示波器内置频率计测量频率。

1.3扫频范围功能系统设置0.5MHz到50MHz扫频范围输出幅度设置50mV,使用示波器观测是否正常扫频范围

14输出电压峰峰徝分别在1MHz、4MHz、10MHz、20MHz、40MHz输出频率下,接入600Ω负载,手动控制输出幅度的衰减等级,使用频谱仪测量输出信号幅度的最小与最大值。

21输入阻忼将信号源设置为600Ω阻抗输出,先接入一个确定的600Ω阻抗负载,使用频谱仪测量负载输入端信号幅度;将负载换成放大器网络,再次测量输入幅度,并与之前的结果进行对比。

22增益与带载能力将信号源设置为600Ω阻抗,接入放大器,并在放大器输出端连接600Ω负载。分别在信号频率1MHz、4MHz、10MHz、20MHz、40MHz下调整输入信号幅值与增益控制电压使用频谱仪测量输出信号幅值,观察是否达到题目指标并计算增益。同时使鼡示波器观察输出信号波形观察是否失真。

幅频特性检测显示测试

31对数检波:使用信号源直接向对数检波模块输入1MHz、4MHz、10MHz、20MHz、40MHz下5mV – 2V 峰峰值的正弦波并测量输出电平,计算是否满足理论值

31幅频特性曲线显示:设置DDS信号源循环扫频范围输出0.5MHz-50MHz,将对数检波电平与触发脉沖接入示波器观察是否能正确显示出幅频特性曲线。

以上内容Word格式文档51黑下载地址:

我要回帖

更多关于 tems扫频 的文章

 

随机推荐