|
发表于 2007-12-19 21:51:09
|
显示全部楼层
支持自制示波器
可以参考 http://blog.gkong.com/more.asp?name=zhouchs&id=22329
示波器利用飞利浦P89LPC935单片机的AD转换功能采集电压信号,成组采集并存储到内部RAM,通过串口发送到微机。微机侧用VB编程控制单片机,处理单片机传回的数据,显示2通道电压波形。在传统的示波器基础上还增加了简易的8通道逻辑分析功能。
一、电路原理
虚拟示波器电路主要由单片机、信号处理、通信和电源等几部分组成,电路原理见图1。
图1:虚拟示波器电路原理图
管脚AD00、AD10对应通道CHA、CHB输入的交流信号,端口P2对应CH1~8输入的直流脉冲信号,管脚RXD、TXD是串行通信接口,管脚P0.6接入需要外部触发时的同步信号,管脚P3.0、P3.1外接12M晶振。单片机AD转换参考电压与电源电压相同为3V,可接受的信号为直流0~3V,为了能采集交流信号,把输入信号往高平移1.5V,这样就可以采集交流1.5V的信号。单片机端口设为仅为输入时,端口可承受最大5V的直流电压,用于逻辑分析的8路输入信号都用稳压二极管限制输入电压为直流-0.7~5V,防止损坏单片机。通信部分采用常见的集成电路MAX232将单片机串行通信信号电平转换为标准的微机串口信号电平。电源部分可采用外接9V直流电源。电源一路经7805稳压后给运放LM324供电,另一路通过由Q1、TL431构成的3V稳压电路给单片机供电。单片机电源电压同时是AD转换参考电压,要求稳定度比较高,否则影响信号采集精度。
二、单片机编程
单片机与微机间的通信协议定义见表1和表2。
表1:微机向单片机发送的数据格式
字节序列
1
2
3
4
5
内容
DB
00~F3
00~FF
00~FF
00~04
意义
前导字节
工作模式
定时高字节
定时低字节
同步选择
表2:单片机向微机返回的数据格式
模式
数据排列顺序
数据字节数
CHA或CHB单通道
A1,A2,A3… 或B1,B2,B3…
230
CHA+CHB双通道
A1,B1,A2,B2,A3,B3…
460
逻辑6通道
C1,D1,E1,F1,G1,H1,C2,D2,E2,F2,G2,H2, …
230
微机向单片机发送的数据中,第1字节是前导字节,确定一帧数据的开始位。第2字确定示波器的工作模式,0:CHA,1:CHB,2:CHA+CHB,3:逻辑分析。第3、4字节是定时数据高、低字节,确定数据采集间隔时间,控制时基变化。第5字节04代表内部同步,00~03代表外部同步方式。单片机返回的数据单纯是采集到的成组数据。
单片机数据处理能力弱,所以只负责数据采集,数据处理工作由微机侧完成,CHA或CHB通道都是采集230个数据,实际显示用200个数据,前30个数据用于内部同步时选取最小值作为同步点。逻辑分析每通道230个数据,实际显示200个,前30个数据用于内部同步时选取最小值作为同步点。
三、软件界面与使用
软件用VB编写,运行后界面见图2。左侧是显示屏,双击显示屏会弹出选择背景颜色的对话框,改变背景颜色。右侧是操作面板。
工作模式框内有4个选择按钮,分别为A通道、B通道、双通道、逻辑分析;
同步选择框内有4个选择按钮,分别为无同步、软件同步、外部同步连续触发、外部同步单次触发;
外部同步方式选择框内有4个选择按钮,分别为高电平、低电平、上升沿、下降沿;
*注意* 以上三个选择在按下“启动”按钮后将不能更改,如要更改,必须暂停,更改后再启动。
时基框内有调节时基的按钮,同时显示当前水平每格代表的时间;CHA、CHB框内位移调节按钮可以把波形向上或向下平移,端口选择设定为虚拟示波器与微机连接串口对应的编号,一般为1或2,其他编号多是由USB或PCI等接口转换过来的。选择不存在的端口启动时会提示端口不存在,在内部同步时选择错误的端口如果没有通信数据返回,软件弹出对话框提示检查设备连接是否正常,设备电源是否打开。“保存”按钮的作用是把显示波形存为图像(.bmp)文件,以备以后察看。“启动”按钮是切换按钮,点击在“启动”和“暂停”间切换。要退出程序,直接点击右上角的X。
VB程序中使用了部分控件,在没安装VB的微机上单独运行时会提示找不到这些控件,运行安装程序可以解决上诉问题。
电压坐标每格0.2V,加衰减后自行计算。时间坐标即时基,可调节。
图2 软件界面
四、接线
1、和微机串口间连接线只需对应接2、3、5脚3根线即可。
2、电源接9V电池或7.2V的锂电,接整流电源对测量信号会有一些干扰。
3、逻辑分析CH1~CH8加地线接出9根线
4、模拟输入接A、B、C三根线,注意C是公共端,但不接地。根据需要加衰减电路,如果想使用标准示波器探头,注意衰减电路内阻为1M。
5、电路没有采取光电隔离措施,请不要测量超出量程的电压以及和市电没有隔离的电路。
|
|