0 导言
跟着嵌入式体系的广泛使用, 呈现了很多的16位和32位的嵌入式处理器。而传统的8位单片机长时刻用于生产实践, 制作工艺老练、功用愈加牢靠, 依然占有相当大的商场, 特别是在轿车电子等对牢靠性要求极高的范畴。液晶显现位模块具有显现信息量丰厚、功耗低、体积小、质量轻、无辐射等长处。
接触屏作为一种特别的计算机外设, 是现在最天然、便当的一种人机交互办法。T32QM 6450液晶显现模块是带有接触屏功用TFT 型五颜六色LCD显现屏, 分辨率为240×320, 支撑2.6 ×105色显现。其功用强, 使用方便, 接口简略, 具有丰厚的专用操控指令, 可方便地完成画面翻滚显现及接触屏等功用。
1 T32QM6450液晶模块结构
T32QM 6450是液晶模块, 主要由TFT – LCD 显现器、LED背光灯、接触屏、源极驱动IC IS2102和栅极驱动IC IS2202构成, 其间Source Driver担任供给列上各色素点的驱动电压, 而Ga te Driver操控每行像素的选通状况。TFT液晶的每个像素点都是由集成在像素点后边的薄膜晶体管来驱动, 然后能够做到高速度、高亮度、高对比度显现屏幕信息, 能够准确操控显现灰度, LCD经过总线与处理器衔接, 完成数据和指令的传递。
2 T32QM6450与W77E58接口电路
硬件衔接如图1所示。处理器芯片选用W77E58.该芯片是一个快速8051兼容微操控器, 其内核经过从头规划, 提高了时钟速度和存储器拜访周期速度。它的指令集根本与8051相同, 多了一条DEC DPTR指令。8051每12个时钟周期为一个机器周期, 而W77E58每4个时钟周期为一个机器周期, 提高了指令履行速度。别的, W77E58 还可调整MOVX 指令的周期,规模为2~ 9个机器周期, 这种规划使W77E58能够更有用拜访慢速或快速外部RAM 及外设。
图1 液晶屏与W77E58硬件衔接电路
由于W77E58是高速8 位单片机, 而该LCD模块选用16位总线接口, 所以电路顶用了2 片锁存器74HC573, 用P24~P27口别离操控2片锁存器的锁存使能和输出使能引脚LE (下降沿锁存) 、OE (低电平有用), 先给榜首片74HC573的LE一个高电平, 经过P1口传送低8 位数据, 然后给该片的LE 低电平锁存当时数据; 给第二片的LE 高电平, 相同经过P1口传送高8位数据并锁存, 最终一起给2片74H C573的OE低电平, 即可完成16位数据的传送。
该体系是混合电压体系, 液晶模块和ADS7843用3.3 V 供电, 而处理器和锁存器是5 V 供电, 这2部分是不能直接相连的。所以还要处理好电平的转化问题, 电路顶用4 片双向电平转化芯片74LVC4245, 它能够完成3.3 V和5 V的彼此转化。
为完成接触屏功用, 电路顶用1 片接触屏操控器ADS7843.它是电阻式接触屏操控芯片, 具有串行12 位A /D转化功用, 在封闭形式下, 功耗仅为0.5uW, 在12 V、125 kH z的作业形式下功耗为750 uW3. 文中仅结合电路对主要功用加以介绍。CS是芯片选通端; DCLK 是时钟输入端, 由P20 脚软件模仿时钟信号输入; DIN 是数据串行输入端, 操控数据经过该引脚输入; X+ 、Y + 、X- 、Y – 是接触点坐标数据输入端; INT是中止引脚, 用于告诉MCU 有接触事情产生, DOUT 将转化后的接触方位数据串行输出到MCU。
3 LCD 显现的程序规划
3. 1 指令、数据的读写
经过对LCD模块的RS引脚设置1或0 值, 即可完成处理器和LCD之间数据或指令的传送。当设定RS= 1, 传递的是数据信号; 设定RS= 0, 传递的是指令信号, 模块的D8~ D15端口接收到的数据(即高8位)代表寄存器号, D0~ D7接收到的是操控指令。部分子程序如下:
3. 2 字符、汉字及色彩的显现
可调用以上子程序方便地向LCD模块发送操控指令和色彩信息。T32QM 6450模块共有158 个寄存器, 经过调用WriCom 函数可向相关寄存器写入操控指令, 然后调用WriData写入2字节的色彩信息, 其RGB格局为: 赤色为高5位( B it15~B it11), 绿色为中心6位( B it10~ B it5), 蓝色为低5位( B it4~B it0)。经以上操作, 即可在指定方位或区域显现色彩、字符、图象等。如要在屏上坐标为(X, Y) 的点以色彩Co lo r显现一个字符或汉字, 只需知道其点阵数组, 在每个要显现的点调用W r iDa ta(Color)即可。图片的显现原理相似, 用转化东西将图片转化成C格局的数组文件即可。下例为显现字符的程序:
3. 3 翻滚显现画面
要完成指定区域的画面的翻滚显现作用, 能够经过设置寄存器R75~ R80完成, 其间寄存器R75、R76用于设置翻滚区域的起始行; R77、R78设置画面的规模, 即要翻滚显现的行数;R79、R80设置每次翻滚的行数, 即步长。要注意的是, 步长的设置并不是一了百了的, 由于这儿的步长是相对于滚屏初始化设置时的状况而言的, 并非相对于上一次滚屏动作而言。图2举例说明了滚屏的设置及演示作用。
图2 滚屏的设置及进程演示
图2所示进程的C程序如下:
假如依照上述程序调试, 则画面翻滚较快, 作用不明显。
实践使用时, 能够结合定时器, 每隔必定时刻改动一次寄存器R79、R80的值, 一般是按递加的等差数列赋值,能够获得很好的视觉作用。所赋最大值不能超过319, 由于屏幕最大只要320行; 当所赋值为319, 而且R75、R76所赋值为0时, 可完成全屏画面的翻滚显现。
4 结束语
该显现体系调试完成后, 经过串口和GPS 模块衔接, 能够实时显现经度、纬度、时刻等信号, 显现作用杰出。文中给出的子程序的形参多为2 字节的整型值, 可直接用于16位、32位单片机, 兼容性强, 为其在便携式体系中的使用供给了一种办法。