2.8通讯电路
单片机作为主控制器,控制MAX038芯片产生信号,,除此之外,单片机还与上位PC 机进行通讯,把频率值发送到PC 机上。
PC 机串行接口采用的是RS232 电平标准,而AT80C51 单片机的管脚是TTL 电平,因此,要实现单片机与PC 机的通讯的话,必须要经过电平转换。电平转换选择美国美信公司生产的电平转换芯片MAX232.其接口电路如图2.10所示。
U71C43XS959483726123234RXDTXDTXDRXDC425141378151112109TXD0RXD0C1-C2+V+V-26C46C2-T1OUTR1INT2OUTR2INGNDT1INR1OUTT2INR2OUTC45C1+VCC16VCCC44 图2.10 MAX232接口电路
23
第三章 系统软件流程图设计
3.1 主程序流程图
初始化进入波形选择界面读取键盘K0~K7 功能字A B返回上一级B=K5A=三角波/正弦波/方波B=K4返回上一级B=K0选择语句A=三角波A=正弦波A=方波B=K4选择语句B=K5B=K1A=频段/频率/占空比/幅度A=频段A=频率A=占空比B=K2A=幅度A=步进增A=步进减B=K3B=K5返回上一级B=K4 图3.1 主程序流程图
24
根据以上流程图可以利用六个按键来实现波形的所有参数的控制,当然这里只是给出的一种可行的设计方案,。
3.2频段处理子程序
该子程序通过控制译码电路选择不同的容值的电容,并且通过参数计算将频段号保存下来。通过控制CD4051的双路开关选择电容
保存选择频段的三个参数:f1 →F1 变量,f3 →F3 变量,f4 →F4 变量保存频段号A →变量步进值退出
图3.2 频段处理子程序流程图
3.3频率处理子程序
该子程序通过控制MAX038的FADJ引脚和IIN引脚的电压电流的变化来控制基频内的频率控制与调解。根据参数计算在选择的基频的基础上,通过控制FADJ引脚的电压在±2.3V之间变化可以改变频率在基频的30%~70%之间浮动。再通过控制IIN引脚的电流在2μA~750μA之间变化可以精细控制频率改变。在D/A转换模块使用图5所示的电阻连接方法。当数字量为00H时,VOUTb输出为0V。MAX038的10脚IIN有2?A的电流输入。当数字量为FFH时,VOUTb输出为基准电压2.50V。MAX038的10脚IIN有750?A的电流输入。
25
A = A~F1(A/ △F ×28) / 取整→D1 变量〔(A - D1 ×△F ×28)′△F〕取整→D2 变量D1 →DAC C ( IIN)D2 →DAC B ( FADJ)显示频率值退出 图3.3 频率处理子程序流程图
3.4幅度处理子程序
该子程序通过I2C总线法方式控制AD5171芯片,AD5171作为数字电位器可
以对±5V 的电压进行分压。可以将幅度在±5V间的电压信号进行衰减得到幅度可控制的波形。I2C的控制子程序见附录。
(A/ △幅度) 取整→P2 变量P2 变量→I2C显示幅度值退出
图3.4 幅度处理子程序流程图
26
系统分析与总结
采用MAX038 芯片制作函数信号发生器随设计思想不同,具有多种方法,本文只是一种可能实现的方法。此法的频率控制和幅度控制分辨率高,且硬件集成度高,整机自动化程度高,性能优良,具有很高的实用价值。
同时该信号源设计尚存在的不足之处,主要有两个方面,第一为缺乏频率准确显示的手段,可以配备相应的数字频率计模块,但如何将显示的精度与信号源的频段配合有待讨论研究;第二为输出级可配以显示输出幅度的仪表,并且放大电路有待进一步改进,使其具有更强的输出能力。
27