树状菜单界面的软件设计方案分析
1 引言
随着信息产业的迅速发展,作为信息显示终端之一的LCD器件也得到了空前的发展。液晶显示器(LCD)具有显示信息丰富、功耗低、体积小、重量轻、超薄等许多其他显示器无法比拟的优点。近些年来被广泛应用于单片机控制的智能仪器、仪表和低功耗电子产品中。为LCD配置驱动电路,就形成了液晶显示模块LCM(Liquid Crystal Module)。它的基本组成部件除了LCD、驱动电路外一般还有连接件、背光源等。液晶显示模块同一个系统中的其他电路一样,有简单的接口,并提供了丰富的控制显示的指令系统。为整机的开发节约了时间。AVR单片机是Atmel公司推出的具有精简指令集RISC结构的新型8位单片机。具有丰富的硬件接口。它采用低功耗、非挥发的CMOS工艺制造,内部分别集成Flash、EEPROM和SRAM三种不同性能和用途的存储器。除了可以通过SPI口和一般的编程器对AVR单片机的Flash程序存储器和EEPROM数据存储器进行编程外,大多数的AVR单片机还具有ISP在线编程和IAP在级应用编程的特点。其中一些高档的AVR单片机,例如ATmega64、ATmegal28等还具有mG接口。这些优点为使用AVR单片机开发设计和生产产品提供了极大的方便。
介绍了图像点阵式液晶模块CM320240与AVR单片机ATmega64相结合实现终端设备显示控制的一种方法。给出了硬件电路的设计以及系统软件架构的搭建,并阐述了一种树形菜单界面的设计方法。
2系统硬件设计
2.1 液晶模块CM3XPA0-7及ATmega64单片机简介
CM320240-7是一个中英文文字与绘图模式的点阵式液晶显示模块(LCM),点阵数是320*240。内建512KB的ROM字型码,可以显示中文字型、数字符号、英日欧文等字母。在文字模式中,可接受标准中文文字内码直接显示中文,而不需要进入绘图模式描述中文,可以节省许多微处理器时间,提升液晶显示中文的处理效率。ATmaga64是一款高档的AVR单片机,具有丰富的硬件资源。
(1)先进的RISC结构,130条指令,大多数指令执行时间为单个时钟周期,32个8位通用工作寄存器。全静态工作,工作于16MHz时性能高达16MIPs,只需两个时钟周期的硬件乘法器。
(2)非易失性程序和数据存储器。64K字节系统可编程Flash,具有独立锁定位的可选Boot代码区,通过片上Boot程序实现系统内编程真正的读写同时操作2K字节的EEPROM,4K字节片内SRAM,64K字节可选外部程序存储空间,可以对锁定位进行编程以实现用户程序的加密。
(3)JTAG接口(与IEEE1149.1标准兼容),符合JrIAG标准的边界扫描功能,支持扩展的片内调试功能,可以通过JTAG接口实现Flash、EEPROM、熔丝位和锁定位的编程。
(4)外设丰富,两个具有独立预分频器和比较器功能的8位定时器/计数器。两个具有预分频器、比较功能和捕捉功能的16位定时器/计数器。具有独立振荡器的实时计数器RTC,两路8位PWM通道。8路十位ADC,面向字节的两线接口册,与12C完全兼容。两个可编程的串行USART,可工作于主杌/从机模式的SPI串行接口。具有独立片内振荡器的可编程看门狗定时器。
(5)还具有一些特殊的处理器特点:上电复位以及可编程的掉电检测,片内经过标定的RC振荡器,软件选择时钟频率,具有六种睡眠模式。
2.2系统硬件组成
系统硬件平台主要由MCU、人机接口(液晶模块和键盘)、通信接口三部分组成,系统框图如图1所示。
图1系统硬件框图
单片机与设备主机之间使用标准的UART串口通信,硬件接13比较简单,加一片TTL到RS232的电平转换芯片即可。
键盘我们采用常用的六键小键盘,即回车、返回、上、下、左、右。由于ATmega64单片机的I/O资源比较丰富,共有53个可编程的I/O口,并且我们采用六键键盘,因此可以直接将按键连到I/O口上面。如果使用较多的按键开关,还可以使用矩阵键盘的方式以节省I/O,这里不赘述。AVR单片机的I/O端口具有上拉电阻,所以我们无需加外部上拉电阻,只需软件初始化的时候使能这些按键接口的上拉电阻即可。将每个按键的一端接地,另一端除了分别连接到PC0一PC5端口之外,还连接到一个与非门上面,与非门的输出脚连到单片机的一个外部中断上面。这样,当任意一个按键按下的时候。与非门的输出都由低变高,使单片机产生中断。所以既可以使用查询方式进行键盘操作,也可以使用中断方式,增加了设计灵活性。
CM320240-7液晶模块支持8080和6800系列的MCU,同时也提供了4一Bit或8一Bit的数据总线接口。我们这里使用的是8080方式下的8一Bit数据总线接口,8080系列MCU与6800系列的MCU最大的不同是读、写的控制信号是分开的,RD为低时进行读取动作,WR为低时进行写入动作。MCU对液晶模块的命令寄存器和DisplayRAM进行读写操作时
- SN2005学习系统 数字语音室解决方案(05-19)
- 以可编程DSP架构应对TD-SCDMA以及TD-LTE带来的设计挑战 (02-14)
- ARM-μCLinux嵌入式系统启动引导的实现(07-26)
- 多核处理器架构及调试方案(03-28)
- 基于DSP的电源解决方案(06-13)
- 间歇性Bug最佳解决方案(09-24)