基于单片机的数字存储示波器设计

发布时间 : 星期一 文章基于单片机的数字存储示波器设计更新完毕开始阅读

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊

长 春 大 学 毕业设计(论文)纸

图4-2 测频率原理图示

利用 GATE=1,TR1=1,只有/INT引脚输入高电平时,T1才允许计数,利用此,将外部输入脉冲经/INT引脚上输入,等待高电平的到来 ,当检测到高电平时开定时器开始计数,然后检测低电平 当检测到低电平时已经测得脉冲的脉宽,但我们测得是频率,故在程序中要继续检测等待下一个高电平的到来,此时关定时器停止计数,用此计数值乘以单片机的一个脉冲周期(晶振频率已知),得出周期,然后再经过数据处理便得到输入信号的频率。程序流程图如图4-3所示 。

开始程序初始化Nfw是否为1 Y开定时器TR=1fw是否为0Yfw是否为1Y数据处理结束NN图4-3频率计算程序流程图

4.3.2幅值计算的原理及程序流程图

幅值计算程序是通过采32个点,根据不同的频率计算出不同的采样步长,即32个采样点之间的计数间隔,从而确定采样值,然后将这32个采样点的采样值存放在一维数组中,通过循环比较得出最大值和最小值。然后经过数据处理函数,计算出相应的幅值、峰峰值、有效值,最终修正为为液晶显示数据进行显示。 程序流程图如图4-4所示

第 31 页 共 36页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊

长 春 大 学 毕业设计(论文)纸

开始将第一个采样值赋给aa,bbkkk=0kkk<64Y比较各采样值的大小N求得最大值和最小值计算幅值液晶显示修正结束

图4-4 幅值计算程序流程图

4.4按键子程序

在硬件电路中对按键的硬件设计已经做了详细的描述,为了能清楚地描述程序的流程重抄按键的地址和功能表如表4-1所示

表4-1按键的地址和功能表 地 按 键 功 能 址 KEY1 0X01 KEY2 0X02 KEY3 0X04 KEY4 0X08 KEY5 0X10 KEY6 0X20 KEY7 0X40 KEY8 0X80 采样点数增加8个 采样点数减少8个 显示峰值 显示峰峰值 显示有效值 重新计算频率和长度 显示清屏 复位 表中已经详细的给出了各个按键的功能和地址 ,下面给出按键子程序。按键子程序的流程图如图4-5所示

第 32 页 共 36页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊

长 春 大 学 毕业设计(论文)纸

开始读键值Y0x01采样点数增加8个0x02N0x04N0x08N0x10N0x20N0x40N0x80N跳出判断Y采样点数减少8个Y显示峰值Y显示峰峰值Y显示有效值Y重新计算频率和幅值Y显示清屏Y复位结束图4-5按键字程序流程图

4.5显示子程序

液晶显示器简称LCD(Loguid Crystal Diodes),其显示原理是利用经过处理后的液晶具有能改变光线传输方向的特性,达到显示字符和图形的目的。目前大量使用的是点阵式LCD显示器,它既可以显示字符和数字,又可以显示汉字和图形。本设计中液晶显示屏用的是LCM12864,其特点和管脚功能已在前述硬件电路中叙述过。

由于LCM12864是一个左右半屏独立控制显示的液晶屏,所以利用其结构特点在液晶的左半屏显示重组修正后的波形,在液晶的右半屏显示输入信号的频率和幅值。

显示子程序流程图如图4-6所示 。

第 33 页 共 36页

┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊ ┊ ┊ 订 ┊ ┊ ┊ ┊ ┊ 线 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 装 ┊ ┊ ┊

长 春 大 学 毕业设计(论文)纸

开始打开左半屏N显示波形个数Y1个波形2个波形4个波形液晶初始化计算显示的页行显示波形打开右半屏显示频率幅值结束图4-6显示子程序流程图

第 34 页 共 36页

联系合同范文客服:xxxxx#qq.com(#替换为@)