基于AT89S52单片机的简易数字示波器设计
数字示波器是一种用途十分广泛的电子测量仪器。与传统模拟示波器相比,数字存储示波器不仅具有可存储波形、体积小、功耗低,使用方便等优点,而且还具有强大的信号实时处理分析功能,在电子电信类实验室中使用越来越广泛。
随着电子技术的发展和电路结构的变化,对电路测量的要求也变得更高。对广大理工科学生和从事电子等相关行业的普通工作者在电子制作、产品维修等中,很多电路参数需要测量分析,经常需要使用数字示波器。但目前我国使用的高性能数字示波器普遍价格昂贵,所以研究简易数字示波器具有重要意义。
1 系统结构和工作原理
1.1 系统结构
该设计以AT89S52单片机为控制核心,由预处理电路(包括阻抗变换、程控放大、信号调理电路)、A/D数据采集电路、E2PROM存储电路、功能键盘、LCD显示电路以及电源等部分组成。系统结构框图如图1所示。
1.2 工作原理
数字示波器有二个输入通道。预处理电路由阻抗变换、程控放大、信号调理电路组成。输入信号先经阻抗变换电路后进入程控放大电路,根据需要对信号进行放大(衰减)处理,然后信号再进入信号调理电路进行电平调整成为符合A/D转换要求的0~5 V电压。之后输出的模拟信号经过高速A/D转换器AD0809实时采样变成数字信号,经过AT89S52单片机后储存在半导体存储器E2PROM中。单片机从存储器中读出信号
进行运算处理,将波形显示在LCD液晶屏上。所有功能可由键盘操作完成。
2 硬件设计
2.1 单片机
AT89S52是一个低功耗,高性能CMOS8位单片机,具有8 192个在系统可编程FLASH存储器。采用Atmel公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构。
系统采用AT89S52单片机作为主控芯片。单片机首先通过控制A/D转换器把模拟信号转换成数字信号,之后将数字信号存储在E2PROM存储器中,最后在LCD液晶上显示出模拟信号的波形。
2.2 程控放大电路
程控放大电路的作用是对大信号进行衰减,对小信号进行放大,保证输入到A/D转换器的信号幅度在要求的输入电压范围内,以达到最好的测量与观察效果。采用模拟开关CD4051,运算放大器为OPA842,配合精密电位器实现多挡垂直分辨率。在AT89S52单片机中使用寄存器模块设置通道号,通过写入通道号控制模拟开关选通不同的反馈电阻,从而实现不同的放大倍数,具体的电路如图2所示。
2.3 信号调理
由于示波器观察信号大多是正负电压信号,而A/D转换器AD0809是单极性参考电压。为了采样到信号的负电压,就需要给该信号叠加直流量,将负电压部分信号抬高至零电平以上,因此采用信号调理电路,将信号调理在满足A130809的0~5 V范围内。R1,R2,R3,U1即为程控放大电路的简化模块,电路如图3所示。
2.4 数据存储电路
E2PROM是数据存储电路的关键器件,本文选用Atmel公司新近推出的具有I2C总线容量达512 Kb(64 K×8 b)的AT24C512。该芯片的主要特性如下:存储容量为65 536 B;与100 kHz,400 kHz,1 MHzI2C总线兼容;100 000次编程/擦写周期;单电源、读/写电压为1.8~5.5 V;ESD保护电压大于4 kV;写保护功能,当WP为高电平时,进入写保护状态;CMOS低功耗技术,最大写入电流为3 mA;128 B页写入缓存器;自动定时的写周期。SDA线和SCL分别与单片机的P2.4和P2.5口相连。数据存储电路如图4所示。
2.5 其他硬件电路
A/D转换模块:A/D转换器选用ADC0809,ADC0809是CMOS单片型逐次逼近式A/D转换器,可处理8路模拟量的输入,且有三态输出能力,即可与各种微处理器相连,也可单独工作。输入/输出与TTL兼容,转换时间约为100μs。
键盘控制模块:该系统选用5个独立键盘做功能键,作用分别为运行与停止,波形的放大,波形的减小,波形的上移,波形的下移。
LCD液晶显示电路:该设计采用MGL(S)-240128T液晶显示器。单片机P1口与LCD的数据口连接,用于数字信号的读取,P3.6,P3.7作为液晶显示模块的读/写控制信号端口,P2.5作为LCD的片选端口。
3 软件设计
软件设计部分主要包括主程序模块、A/D转换模块、LCD显示模块、按键处理模块,其流程图如图5所示。
3.1 A/D转换部分
当定时器产生中断时,ADC0809将输入的模拟量转换成数字量。ADC0809的转换速率最大可达640 kHz,程序设定了定时器时间间隔为2μs,所以采样频率达到了500 kHz。
3.2 键盘扫描部分
设定了1个按键实现波形的运行与停止,4个独立按键用于改变波形的尺寸。amp和time两个参数分别用于调整幅值和时间轴的大小,当MCU检测到按键被按下时,两个参数的值相应地发生改变,从而改变了波
- 一种数字示波器的微处理器硬件设计(09-08)
- 利用数字示波器调试嵌入式I2C总线(10-03)
- 利用数字示波器调试嵌入式I2C(10-16)
- 使用数字示波器完成EMI预测试(05-06)
- 用于辅助电路分析的示波器数学功能(06-02)
- 采用数字示波器调试嵌入式I2C总线(07-02)