方案三:使用单片机和数模转换DAC0832来生成波形。将波形的控制程序注入AT89C52单片机,控制器执行完毕后,周期性向D/A转换器输入数据,D/A转换电路经过对数据信号的处理生成相应的电压波形。控制器的P2口接的是矩阵键盘,波形的种类、幅值和频率也都是通过软件的编程实现的。此方案相对来说易于实现,生成的波形也较为灵活。
通过三种方案之间的对比,方案三更易于实现,也比较符合本次设计的需求。用程序来控制生成三种波形,按下相应的按键,就能在示波器上输出相应的波形。而且波形的幅值与频率也由程序操控,在一定范围内还可以通过按键改变。除此以外,我还使用了LCD显示器,在按键时设置的波形种类和频率,均可在LCD显示器上显示出来。这个方案最终输出的波形很稳定,而且精确度高。就算做成实物,也具有结构紧凑、线路简单的好处。所以,我最终选择第三种方案来完成课题。
2.2.2显示部分
本设计使用LCD液晶显示,容易实现,能够显示字符和数字。而相较而言数码管显示不能显示字符,LED点阵显示效果较差且不易编程。
2.2.3键盘部分
键盘是用来输入数据的一种设备,在单片机应用系统中使用尤其频繁。键盘由多个按键组合而成,按键则是一种处于常开状态的按钮开关。一般状态下,按键的两个触点是断开的,按下按键,触点才会闭合,这个时候这段电路是短路的[6]。在电压上就体现为高电平或者低电平,若高电平表示断开,那么低电平键闭合。所以,检查一下电平的状态,就可知道相应按键是否已被按下。
键盘分为两种:编码和非编码。编码键盘自带实现接口功能所需要的硬件电路,不需要手动就能扫描到按下的按键,同时完成去抖防串等功能。编码键盘还可以使用数字电路生成相应的ASCII码,但是这种键盘的硬件电路较为复杂,而且实物的价格也不便宜,目前一般单片机应用系统不会使用。非编码键盘的按键一般是矩阵的样式,通过硬件或软件的检测,确认被按下的按键,然后该键的信息就会被转变为位置码输入控制器,经过查表得到按键的ASCII码。这种键盘的结构简单,易于操作。
非编码键盘又可分为独立式键盘和矩阵式键盘两种,下面我就结构与功能对这两种键盘进行对比论证。
方案一:矩阵式键盘。如图2-1所示,矩阵键盘的按键触点位于由行、列交叉处。当键盘上所有按键都打开时,所有的行和列上的电路都断开,行上处于高电平。当按下一个按键时,此按键所对应的行列电路都被短路。