图3简易示波器系统程序流程图
1.2.1、键盘功能
在这个系统中设置了7个按钮分别为:运行与停止,放大倍数增大,放大倍数减小,采样频率增大,采样频率减小,触发电平上移,触发电平下移。
运行与停止键:是通过开启和关闭ATmega16 ADC转换完毕中断的方式来实现的。
放大倍数的增大与减小:是通过ATmega16控制模拟开关CD4051来实现放大倍数的数字化控制。CD4051为8通道的模拟开关,所以程控放大器可以有8档。
采样频率的增大与减小:是通过控制ATmega16的定时器0的时钟源及定时器的初始值来实现系统所需要的各个采样频率。定时器0的中断频率就等于ADC的采样频率。
触发电平的上移与下移:是通过对采样来的数据进行数字触发时,当数据的二进制值在增加的过程中某个数据的大小刚好与数字触发的二进制数值一样,在此以后的波形数据才存入显示RAM中。
当这7个按键中的某一个被触发,都会置位相应的标志位,以便刷新LCD液晶屏上相应的显示信息。
1.2.3、数字触发功能
如何实现触发呢?用硬件来完成的话又会增加系统硬件电路的复杂度,我就想了一个办法,有软件的方式来实现触发的功能。实现的过程如下: