1.低频信号发生器
该功能又可以分为两类:
a. 标准信号发生器。产生低频的正弦波、三角波、方波和锯齿波等,这些波形的频率、幅值可变。也可以产生象心电信号、脉搏波、脑电信号、肌电信号等一些常见的生物电信号。
b. 非标准信号发生器。通过数据采集和通信下载两种方式得到波形数据。
2.存储示波器
该功能又可以分为两个:
a. 实时存储示波显示。对被观察的模拟信号进行采样、存储和显示。在该功能中,可以把采集到的数据存储下来作为信号发生器中的用户信号源。
b. 信号发生示波显示。在示波器上以数字存储示波显示的方式显示所发生的信号。
在示波显示时,该装置可以有两类显示方式:(1)滚动显示和冻结显示。(2)刷新显示和冻结显示。
根据上述要求,我们可以得到系统的功能框图,如图11-2所示。

根据前面提到设计要求和图11-2,我们可以分析系统所需的硬件资源(限于篇幅和为了突出关键问题,暂不考虑模拟电路和电源),如表11-2所列。

由表11-2和根据尽量采用新型单片机和大规模集成电路的原则,可以选用ADI公司的8051兼容单片机ADuC831。ADuC831的内部结构如图12-3所示。

ADuC831的主要性能如下(黑体字表明重点考虑和特别适合本设计的参数):
模拟
8通道/247kSPS/12bit ADC:具有DMA(Direct Memory Access,直接存贮器存取)控制。
2通道/12bit电压输出DAC
2通道/16bitPWM
片内温度传感器
片内电压基准源
存储器
片内62k字节FLASH/EE程序存储器
片内4k字节FLASH/EE数据存储器
片内2304字节RAM数据存储器
8051内核
8051兼容指令集(最高16MHz速度)
12个中断源,2级优先级
双数据指针
扩展的11位堆栈指针
片上外设
3个16位定时器
UART、I2C和SPI三种串口
看门狗定时器
电源监视器
电源
3V或5V工作
正常、闲置和关闭三种工作模式
关闭工作模式时的功耗:20A@3V
显然,ADuC831完全满足前面所提到的要求。不仅如此,ADC831还有下面几个重要的特点应该特别说明:
1. 它不像标准8051那样采用12分频,ADC831是一个时钟执行一条指令,实际运行速度比标准的8051高近20倍。
2. 具有双数据指针,这在特别有利于同时需要采样和传送数据的场合提高传送数据的速度(像本设计中实时采样显示波形时那样)。
3. 只需要1根RS-232串口线,就能够完成程序的调试、下载和烧录,不需要任何硬件仿真器和烧录器。特别方便用户的开发和产品的在线升级。
多功能低频信号发生和存储示波器的系统硬件框图如图11-4所示。
其中液晶显示器采用K50713。这是一种小型的大规模集成并带有驱动器和控制器的点阵型液晶模块。它的外观尺寸为42mm×39mm,有29个外部引脚。它直接受单片机控制,接收8位串行或并行数据,同时可将数据显示,并将数据存储在模块内的数据存储器中(DDRAM)。由于DDRAM中的数据显示单元与液晶屏的点阵单元存在一一对应关系,并且KS0713液晶模块数据的读写操作不受外部时钟的控制,因而KS0713的显示具有很高的灵活性。K50713液晶模块带有液晶必需的电源驱动电路,这样可用最少的元件和最小的功耗实现模块的功能。K50713可以显示4行、每行8个16×16点阵的汉字。可以满足显示仪器工作状态和人机对话的要求。
X84系列串行EEPR0M具有体积小、功耗低、工作电压范围广等特点外,还具备型号多、容量大、二总线协议,容量扩展配置方便、灵活等优点,可以直接用于系统与系统之间,单数据总线通信,消除了常规单片机系统设置片外数据存储器对端口和地址总线的占用和依赖,以及数据写入电路设计和电源要求的过于复杂等缺点。利用串行EEPRK0M的串行特性为单片机应用系统设计片外发数据存储器,提供了低成本系统结构和节约系统引脚资源的优点。所以,这里选择了X84系列中的X84161作为非标准信号和PC机下载的数据存储器,X84161有16k字节的容量,可以设定为存储16个数据。
由于LCD、X84161和数据下载等都采用了串口,因此,采用多路开关来切换单片机与它们之间的通信。
采用T2EX端作为示波同步输出信号端,可以利用定时器T2溢出时自动产生输出脉冲,简化程序设计和节约机时。
把模拟示波信号的输出和信号发生输出分别用两个通道的DAC,充分利用了单片机的资源,同时也使用更方便。
由于外部扩展主要采用串口实现,不仅简化了电路的连接,更重要的是节省了P0、P2口的口线。这样,P0、P2口就可以作为普通I/O口使用。
按键输入利用了P0口,P0口作为输入时,一定要应该加上拉电阻才能正常工作。
P2口作为输出控制线,分别用于控制程控放大器的增益、LCD的显示和串口通信的多路开关。
把输入和输出的口线分开,避免了操作时输入端口与输出端口的相互干扰,方便程序的编写和调试。



