实例12: 函数发生器 - 单片机开发技术实例(一)

实例名称:函数发生器。
实例所需主要资源 AT89C52 、MAX517 、JCM12864M 、4 x4 矩阵键盘
实例目标:根据液晶显示模块(LCM) JCM12864M 的提示,用户通过4 x4 矩阵键盘将控制信号,如波形、周期(大于500ms) .输入到AT89C52 单片机. MAX517D/A 转换芯片不断将单片机发送过来的数字信号转换为相应的模拟电压信号,从而产生不同周期的正弦波、方波及三角波。
实例目的:学习MAX517D/A 转换芯片的使用,掌握JCM12864M 显示模块、4 X 4 矩阵键盘的应用,进一步学习设计单片机与外围硬件的接口电路。
1 硬件设计
1. 1 硬件总体方案设计
函数发生器是一种多波形的信号源,它能产生正弦波、方波、三角波,还能改变波形的周期。由实例目标可知,该系统硬件设计需要完成矩阵键盘输入、液晶显示、D/A 转换三大主要功能,因此硬件方案可分为键盘模块、液晶显示模块(LCM) , D/A 转换模块,系统模块图如图所示。

各模块设计思路如下:
1) 键盘模块:用户通过4 x4 矩阵键盘向单片机输入波形及周期等控制命令。键盘上从第一行开始依次是O-F键:其中数字键有10个,分别为键盘上的0-9 键:波形选择键有三个,分别为方波(对应键盘上A 键}、三角波(B 键)、正弦披(D 键) 其他功能键有三个,分别为确认/暂停键(F 键)、返回键(C键)、开始键(E 键)。
2) 液晶显示摸块(LCM),提示用户每一步如何输入,显示用户输入波形及周期。
3) D/A 转换模块:D/A 转换器将单片机发送的数字信号转换为相应的模拟电压信号。
下面将逐一介绍各模块的工作原理以及与单片机的接口电路
1.2 4 x4 矩阵键盘中断方式下与单片机接口电路设计
键盘在单片机应用系统中能实现向单片机输入数据、传送命令等功能,是人工干预单片机的主要手段。当需要的按键较多时,为了少占用单片机的I/O线资源,通常采用矩阵式键盘。矩阵式键盘由行线和列线组成,按键位于行和列的交叉点上,这种行列式键盘结构能有效地提高单片机系统中I/0 口的利用率。由于键盘扫描只是CPU 工作的内容之一, CPU 还要做其他的工作,如液晶显示、D/A 转换等,为了保证CPU 能及时响应按键操作,又不过多占用CPU 的工作时间,键盘的工作方式选为中断扫描方式。图所示为4 x4 矩阵键盘中断方式下与单片机接口电路,四条列线接在p2口低4 位,并经过一个四与门(74LS21 )后接到单片机外部中断0口(P3.2) ,四条行线接在P2口高4 位。