您的位置:网站首页 > 电器维修资料网 > 正文 >
DDS任意波信号发生器人机交互系统的测试
来源: 日期:2013-12-7 10:02:50 人气:标签:
2 显示系统总体方案设计
显示系统由硬件和软件两部分构成,如图1、图2所示。
硬件部分以hms30c7202微处理器为核心,flash和sdram作为存储设备,从矩阵键盘接受输入,并在lcd上显示相应内容,同时通过uart与dds信号源进行通讯。存储系统中的flash用来固化程序及保存波形数据和系统参数;sdram是系统上电正常运行后的代码和数据载体。
软件部分又可分成底层驱动程序和上层控制程序两部分。底层驱动包括设置系统模式和时钟,初始化存储器,代码拷贝,初始化lcd控制器,中断控制器和uart控制器等。上层控制程序不断查询是否有键按下。若有键按下,则执行相应的任务,lcd显示相应内容;同时若需要,通过uart向dds信号源发出控制命令。
3 lcd驱动电路组成
hms30c7202本身集成lcd控制器,支持stn和tft lcd液晶屏。am-320240ltnqw-00h tft lcd显示屏接口共有54个引脚,它和lcd控制器的连接方法如图3所示。
4 软件系统设计
dds任意波信号发生器人机交互系统中的lcd显示包括汉字和字符的显示、位图的显示以及窗口的显示。
4.1 汉字和字符的显示
由于标准字库太大,而dds任意波信号发生器lcd显示的字符只占很少的一部分,因此需要自己制作一个字库。结合lcd显示屏的大小,汉字字符采用16*16点阵,英文字符和数字采用12*24点阵。为了软件操作上的方便,汉字字库和英文字库相互独立。汉字字模和英文字模的定义如下。
所有汉字字模数据构成数组hzfont ddshztable[],所有英文和数字的字模数据构成数组ywfont ddsentable[],这就是dds任意波信号发生器自己的字库。显示时,首先找到当前要显示的字符在字库中的位置,然后通过显示算法将字符在lcd 上显示出来。
4.2 位图的显示
位图的显示用于dds任意波信号发生器显示开机画面或波形图像。其实现方法是将开机画面对应的位图图像转化成320*240格式的数据,放在数组const char gimage_hello[153600]中,然后将数组起始地址直接赋给lcd显存开始地址就行了。当显示比lcd画面小的位图时,则要定位该位图在lcd屏中的显示位置,然后通过一定的算法显示出位图图像。
4.3 窗口的显示
dds任意波信号发生器窗口的显示内容如图4所示。窗口大致分三个区,一区为左上角的波形显示及说明区,用来显示各种波形或操作提示信息;二区为右边和下边的功能菜单区,用来设置参数和进行波形调制;三区为中部的参数菜单显示区,用于显示波形和调制参数。
为了有效管理窗口显示,给窗口定义了结构体。
菜单分两种,一种是功能菜单,如图4中的频率菜单、调制菜单。这种菜单只要求显示菜单名,则对应menu结构体中的paraflag=0。另一种菜单为参数菜单,见图4中的参数菜单显示区。每个参数菜单有一个参数名和一个参数值,则对应menu结构体中的paraflag=1,text指向参数名字符串,pdata指向参数值字符串。
4.4 键值处理及lcd显示模块
dds任意波信号发生器的上层控制程序的主体就是键值处理及lcd显示模块,其软件流程图如图5所示。它主要完成三方面的功能。(1)按了不同的波形键。由于各种波形的形状、参数种类和个数不尽相同,当按了波形键且和上一次按的波形键不一样时,lcd要刷屏并显示当前波形窗口。(2)按了设置参数键。这一般用来修改波形参数或系统参数。lcd必须提供编辑框或选择框,动态显示键盘输入的数字和单位。对一些需要保存的参数,则还要将这些数据保存在flash中。(3)按了输出键。lcd不需要修改显示画面,hms30c7202通过串口向dds信号源发送命令控制字。
另外为了提高lcd的换屏速度,在换屏显示时并不是更新所有内容,而是只有当前操作修改了哪些参数,lcd才更新显示哪一块内容。
5 结论
本文设计的dds任意波信号发生器人机交互系统已在实际硬件环境中调试通过。lcd显示画面简洁,操作简单直观。同时若要修改菜单内容,调整菜单显示位置,只需修改窗口结构体变量的值,无需修改程序代码,软件系统易于扩展和移植。
本文作者创新点:采用先进的hms30c7202 arm处理器和高性能的m-320240ltnqw-00h tft液晶屏,设计了一个dds任意波信号发生器的人机交互系统。该系统实现方法简单,操作简便,界面显示直观,且易于移植和扩展。
- 1
- 2
- 下一页
【看看这篇文章在百度的收录情况】
相关文章
- 上一篇: 浅谈数字调幅广播信号的发射与接收
- 下一篇: 液晶显示器背光源节电调光方法