无线幅频仪制作(WiFi通信)-含STM32源程序,JAVA上位机与设计报告

资料下载地址:无线幅频仪制作(WiFi通信)-含STM32源程序,JAVA上位机与设计报告

目录

项目功能

[1、 系统方案1.1 比较与选择](#1、 系统方案1.1 比较与选择)

[1.1.1 控制器的论证与选择](#1.1.1 控制器的论证与选择)

[1.1.2 信号源的论证与选择](#1.1.2 信号源的论证与选择)

[1.1.3 放大器模块的论证与选择](#1.1.3 放大器模块的论证与选择)

[1.1.4 键盘与显示模块的论证与选择](#1.1.4 键盘与显示模块的论证与选择)

[1.1.5 网络通信模块的论证与选择](#1.1.5 网络通信模块的论证与选择)

[1.2 方案描述](#1.2 方案描述)

[2、理论分析与计算2.1 信号发生器的电路设计](#2、理论分析与计算2.1 信号发生器的电路设计)

[2.2 放大器设计](#2.2 放大器设计)

[2.3 频率特性测试仪器](#2.3 频率特性测试仪器)

3、电路与程序设计

[3.1 电路设计](#3.1 电路设计)

[3.2 程序设计](#3.2 程序设计)

4、实物图片

项目功能

本装置测量放大器的幅频特性,并将数据绘成直观的图线。系统以32位高性能单片机STM32F103为主控制器,由数字式频率合成器AD9854产生所需信号,通过键盘与OLED显示屏直观控制扫频、点频等模式与频率、幅值等参数,产生一路稳定幅值的正弦扫频信号。信号通过自制的0~40dB可调增益放大器,经均值响应功率检波器AD8361检波后得到直流信号,即放大器输出信号的幅值信息;再经单片机内部模/数转换器采样,处理计算后,将幅值、频率信息发送至Wi-Fi模块ESP-32,使得局域网内的设备可以获取幅频特性数据。作品另配有计算机应用程序和安卓APP,可以方便地显示幅频特性曲线,从而实现放大器的远程幅频特性测试。

1、 系统方案 1.1 比较与选择

本系统主要由控制器、信号源模块、放大器模块、键盘显示模块、网络模块、电源模块组成,下面分别论证这几个模块的选择。

1.1.1 控制器的论证与选择

方案一:采用51单片机控制。51系列单片机是廉价、易得的微控制器,但由于其采用集中指令结构,运行速度不够可观。在执行大型程序时,51单片机容易显现出功耗大、不稳定的缺点。

方案二:采用FPGA控制。FPGA即现场可编程门阵列,是作为专用集成电路领域中的一种半定制电路而出现的,解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA一般来说功耗较低。但在开发过程中往往需要快速增减一些简单功能,如串口通信等,而此类功能有可能占用过多的逻辑门资源,因此采用FPGA开发整个系统则较为不便。

方案三:采用STM32单片机控制。STM32系列单片机具有开发方便、I/O口数量多等特点。ARM内核使得其运行速度明显优于51系列单片机。STM32F103属于增强型系列,是同类产品中性能最高的产品。

综合以上两种方案与实际情况,选择方案三。

1.1.2 信号源的论证与选择

方案一:采用分立元件和中小规模集成电路构成波形发生器采用RC串并联振荡器生成正弦信号。该方案的优点:技术成熟,可供参考的资料较多。缺点:外围元器件多,调试工作量较大,频率稳定度和准确度差,很难满足频率变化的范围要求,更难准确地实现频率步进的要求。

方案二:利用专用直接数字合成DDS芯片AD9851实现波形发生器。AD9851可以产生一个稳定的频率和相位且可数字化编程的模拟正弦波输出。但是该芯片理论上可达到70MHz,其实在实际应用中,当频率达到30MHz时,波形就失真了,而且外围电路较为复杂,需耗费大量时间。

方案三:采用AD9854芯片构成信号源。AD9854芯片可产生一高稳定的频率、相位、幅度可编程的正弦和余弦信号,允许输出的信号频率高达150MHz,而数字调制输出频率可达100MHz,满足项目40M的要求。

综合以上三种方案,选择方案三。

1.1.3 放大器模块的论证与选择

方案一:选用两级电压反馈运算放大器OPA847放大,再由数字衰减器PE4302衰减。OPA847是宽带超低噪声电压反馈运算放大器,常被用于前级放大,且带宽可高达3.9GHz,噪声极小。数字衰减器可以实现对DC~4.0GHz信号产生最大31.5dB的衰减,步进为0.5dB,但不可以实现系统增益连续可变。

方案二:选择运放AD8009。通过调AD8009 R1和Rf,实验发现可以实现单片运放0~40dB的要求,但是不能满足项目输入阻抗600Ω的要求。

方案三:选择压控正益放大器VCA824级联,外加AD690调节输入阻抗,满足项目要求。

综合以上三种方案,选择方案三。

1.1.4 键盘与显示模块的论证与选择

(1)键盘:

方案一:独立键盘。控制简单,但是占用单片机IO口资源太多。

方案二:矩阵键盘。控制较为复杂,但是占用单片机IO口资源少。

方案三:周立功键盘。控制较为复杂,操作点单,但功能强大。

(2)显示器:

方案一:TFT。功能强大,但是用于控制DDS显得过于复杂。

方案二:OLED。IIC通信方式,占用单片机IO口资源少,满足需求。

方案三:12864。操作简单,但占用单片机IO口资源多而且费电。

综合以上几种方案,选择周立功键盘和OLED。

1.1.5 网络通信模块的论证与选择

方案一:使用ESP-8266作为TCP客户端,与主机建立一对一通信。ESP-8266常被用作单片机WiFi模块使用,可以通过串口传输AT指令加以控制。

方案二:使用ESP-32建立TCP服务端,供局域网内其他设备访问。ESP-32是上海乐鑫公司出品的性能更强的物联网模块,同时也可以单独作为单片机使用。另外,设立TCP服务端,也使得让电脑客户端软件和手机APP同时访问成为可能。

综合以上两种方案,选择方案二。

1.2 方案描述

根据上文得出方案:系统以STM32为主控板,以ZLG键盘和OLED屏为交互方式,控制DDS AD9854进行扫频,经过自制的放大器,由均值检波器AD8361读出幅值信息。幅频特性数据通过ESP-32实现串口透传,由特别编写的计算机程序和安卓APP接收和绘制。

2、理论分析与计算 2.1 信号发生器的电路设计

经讨论后,我们决定采用DDS AD9854。我们按照官方提供的电路,完成了如下设计。

图1 正交扫频信号源子系统电路原理图(大图见附录)

2.2 放大器设计

为了达到放大性能、带宽、输入阻抗和带载能力的要求,我们以OPA690跟随器为第一级,设定输入阻抗600Ω,继而用两级VCA824达到信号0~40dB放大的要求。经测试,20MHz下,该系统可完成0~44.6dB连续可调的要求。

图2 放大器系统电路原理图(大图见附录)

2.3 频率特性测试仪器

由于示波器有X Y输入模式,由单片机DA产生的电压信息直接输入通道CH1、CH2,当扫描足够快时,由于视觉暂留现象,屏幕上便会留下幅频特性曲线。

3、电路与程序设计

3.1 电路设计

图4系统电路原理图

3.2 程序设计

这里主要对两个设备进行了编程:STM32和ESP-32。STM32使用μVision官方SDK,ESP-32使用新兴的嵌入式综合开发平台PlatformIO设计,也可以在ArduinoIDE内进行开发。程序详见附录2。

计算机客户端采用Java编写,手机端APP使用AndroidSDK进行设计。

4、实物图片

相关推荐
喵叔哟几秒前
重构代码中引入外部方法和引入本地扩展的区别
java·开发语言·重构
尘浮生6 分钟前
Java项目实战II基于微信小程序的电影院买票选座系统(开发文档+数据库+源码)
java·开发语言·数据库·微信小程序·小程序·maven·intellij-idea
不是二师兄的八戒30 分钟前
本地 PHP 和 Java 开发环境 Docker 化与配置开机自启
java·docker·php
爱编程的小生42 分钟前
Easyexcel(2-文件读取)
java·excel
带多刺的玫瑰1 小时前
Leecode刷题C语言之统计不是特殊数字的数字数量
java·c语言·算法
美式小田1 小时前
单片机学习笔记 9. 8×8LED点阵屏
笔记·单片机·嵌入式硬件·学习
兰_博1 小时前
51单片机-独立按键与数码管联动
单片机·嵌入式硬件·51单片机
计算机毕设指导62 小时前
基于 SpringBoot 的作业管理系统【附源码】
java·vue.js·spring boot·后端·mysql·spring·intellij-idea
Gu Gu Study2 小时前
枚举与lambda表达式,枚举实现单例模式为什么是安全的,lambda表达式与函数式接口的小九九~
java·开发语言
Chris _data2 小时前
二叉树oj题解析
java·数据结构