SPCE061A与液晶模块HS12864-1的接口及其编程介绍
摘要:介绍了液晶显示模块HS12864-1的结构和功能特点,设计了其与凌阳SPCE061A单片机的接口电路以及字符显示控制程序,实现了所需字符的显示功能。
1 引言
在以单片机为核心的嵌入式测控系统中,单片机与显示器件的接口是一个必不可少的环节,具体工作包括选择显示的器件类型,接口采用串行或并行方式以及显示驱动的确定等问题。典型的显示器件是LED数码管,其亮度高,适应于大多数应用场合。缺点是接口电路复杂,功耗高。液晶显示器件是利用液晶的电光效应制作的,具有功耗低、接口控制方便等优点[1],而且模块的接口信号和操作指令具有广泛的兼容性,并能直接与单片机接口,它还具有专用指令,可方便地实现各种不同的操作,同样的显示面积LCD其功耗比LED显示器小几百倍,所以它特别适宜与COMS电路直接相配,液晶显示器件已成为当代高新技术产业(信息产业中最重要的信息处理手段之一,在各类测量及控制仪表中被广泛的应用。
液晶显示器件可分为波段式、字符式和点阵式。其中,点阵式液晶显示器件不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现分区开窗口、反转、闪烁等动态显示功能,当在点阵式LCD上显示汉字时,应先取得汉字的点阵构成数据,然后将其写入点阵式LCD的显示存储器中进行显示。本文介绍基于凌阳SPCE061A单片机的液晶显示控制设计。
2HS12864-1液晶模块的工作原理
HS12864-1是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成。可实现图形显示,也可以显示8×4个(16×16点阵)汉字。HS12864-1液晶内置HD61102图形液晶显示模块,驱动和控制系统是由1片HD61102 作为64 路行驱动器,同时HD61102配备了一套显示存储器的管理电路和与MCU接口电路,可以直接与MCU的总线连接[5]。HS12864-1的结构见图1。
图1 HS12864-1的结构
表1 HS12864-1指令表
指 令 | 指 令 码 | 功能 | |||||||||
R/W | D/I | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||
显示 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1/0 | 控制显示器的开关, |
起始行 | 0 | 0 | 1 | 1 | 显示起始行(0····63) | 指定开始显示行 | |||||
设置X地址 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | X:0···7 | 设置X地址 | ||
设置Y地址 | 0 | 0 | 0 | 1 | Y地址(0···63) | 设置地址(Y地址) | |||||
读 状 态 | 1 | 0 | B U S Y | 0 | ON/ OFF | R S T | 0 | 0 | 0 | 0 | 读取状态RST 1:复位0:正常ON/OFF 1:显示开 0:显示关BUSY 0:READY 1:IN OPERATION |
写数据 | 0 | 1 | 显示数据 | 数据写入DDRAM | |||||||
读数据 | 1 | 1 | 显示数据 | 数据读入DDRAM |
3 HS12864-1与SPCE061A单片机的硬件接口设计
SPCE061A 是继SPCE500A等之后凌阳科技推出的又一款16位结构的微控制器。CPU内核采用凌阳最新推出的16位u nsp微处理器芯片,比MCS-51 8位机的MCU集成度更高,使用更加灵活方便,缩短了开发周期和成本。
采用RISC 的SPCE061A 比8位的MCS 51系列执行效率高,速度更快,较宽的工作电压,低功耗抗干扰的设计,使061A在电池供电的应用领域更具特色,其内置2K字SRAM和32K FLASH,32位通用可编程输入/输出端口,具有WatchDog等功能,在仪器仪表、工业控制和通讯产品等方面应用日益广泛。
在程序设计方面μ'nSP?单片机的汇编指令针对C语言进行了优化,所以其汇编的指令格式很多地方直接类似于C语言。另外其开发仿真环境IDE也直接提供了C语言的开发环境,C函数和汇编函数可以方便地进行相互调用[2,3]。HS12864-1与SPCE061A单片机的硬件接口电路见图2。
图2中采用并行通信方式,单片机的IOA0-IOA7口与液晶模块的DB0-DB7口相连作为数据输入输出用;即IOB0- IOB 4口与液晶模组的CS1、CS2、D/I、R/W、E相连作为单片机对液晶的控制口。
4显示程序设计
在液晶上显示整屏字符或图像有两种方法:一种是将所要显示的字模数据一次性发送到显示数据RAM中;另外一种是在屏幕上指定位置进行单独显示[4]。两种方法都要在控制器空闲的条件下进行操作,在操作之前都要先读取忙标志,判断控制器是否处于忙状态,在一般情况下,可以用延时等待的方法代替。
本系统程序主要包括主程序和几个子程序块: LCD初始化, 液晶显示屏选择,LCD显示,还有若干个控制子程序。主程序分别调用这些子程序实现对液晶显示器操作控制。程序流程图见图3。
图3 程序流程图
凌阳单片机的编程语言常用的有二种:汇编语言和C语言。汇编语言的机器代码生成效率很高但可读性不强,而C语言在大多数情况下其机器代码
及其 编程 介绍 接口 HS12864-1 液晶 模块 SPCE061A 相关文章:
- 系统总线的组成及其特点(12-14)
- ARM嵌入式微处理器的发展及其面临的挑战(05-08)
- 信息钮扣iButton的电子锁原理及其设计(09-23)
- MB89163单片机介绍及其在遥控器中的应用(09-14)
- 嵌入式实时操作系统的可裁剪性及其实现(09-06)
- EP7209 ARM单芯片系统功能特征及其嵌入式应用简介(08-31)