SED1520与PIC单片机的接口设计

发布者:朱颜素韵最新更新时间:2009-12-31 来源: 微计算机信息关键字:液晶显示  SED1520  PIC单片机  汉字显示  LCD接口 手机看文章 扫描二维码
随时随地手机看文章

1引言

    智能仪器仪表设计中,通常都要对测控信息进行显示。受仪器功耗、体积及其它条件的影响,一般CRT显示器往往不太适用。而半导体数码管,虽能显示数码及少数字母,却无法灵活显示各种文字、图形、表格等,有着较大的局限性。而LCD显示器由于具有功能强、功耗低、显示清晰、构造轻巧等优点,被广泛运用于各类智能仪器仪表的显示。PIC单片机是美国MICROCHIP公司推出的高性能单片机,对比传统MCS51系列单片机,它具有内置功能模块多、抗干扰性好、速度快、功耗低等优点,被广泛应用于工业控制领域[1]。本文将以SED1520与PIC16F874为例介绍LCD显示器与PIC单片机接口的实用方法。

2 SED1520的结构、指令及其与PIC单片机的接口电路

    SED1520的结构框图如图1所示,它主要由定时计数器、行列地址寄存与译码电路、显示RAM、MPU接口电路、LCD接口电路组成。它与外部的接口主要分三个部分:一部分是电源、复位信号和时钟;一部分是LCD接口、另一部分是与MPU(微处理器)的接口。与LCD的接口一般已由提供液晶模块的制造商负责,对于液晶模块的使用者,只须掌握与MPU接口的部分。另外,SED1520还需要提供2KHZ的时钟信号[2]。

    SED1520的指令列表如表1,它的显示存储器共有4页(对应页地址0~3),每个页面上都有80个字节(对应列地址为0~79),每个字节中的8位数据都对应着显示屏上同一列的8点行。列地址指针就是管理这80个字节单元的。列地址指针是一个7位加1计数器。由它和页地址寄存器组合唯一指定了显示存储器的某一个单元。SED1520中的RAM共有32行,分为4页,每页8行,这样如果按8*8点阵显示字符,每页可以写一行10个字符,总共写4行,而汉字一般是16*16点阵,则每行可显示5个汉字,共可显示两行。如果将多个SED1520拼起来,就可组成不同显示容量的液晶模块。

    SED1520与PIC16F874的接口电路如图2所示。各引脚说明如下:

 A0:指令/数据选择 。高电平表示传送的是数据,低电平表示传送的是指令。
片选信号,低电平有效,高电平则MPU不访问SED1520。
      读允许,低电平表示MPU从SED1520读数据或指令,高电平无效。
 写允许,低电平表示MPU向SED1520写数据或指令,高电平无效。
 CL:时钟输入端。由PIC16F874的 RC1提供,让其工作于PWM2输出方式。
 D0~D7:数据输入输出引脚。
 复位信号输入端,低电平有效。
 VDD:逻辑电源正。
 VSS:逻辑电源地。

    SED1520的指令的解释和执行不依赖外部时钟,而是由内部时钟同步的,所以它的指令执行的速度很快,一般不需要检测SED1520是否忙。由于PIC16F874的I/O口是输出或输入要对相应寄存器进行设置[3],如图2,PIC16F874的RD口在向SED1520写数据时要被设置成输出口,而读数据时又要被设置成输入口,为了精减程序和提高速度,我们可以不用读SED1520的状态,直接向其写数据。这样SED1520的RD脚直接接高电平,PIC16F874的RC3脚也可省下留作它用。

3具体编程实例

    在具体的实际应用中,我们经常要显示汉字,一般汉字的字模如图4,字节内部的8个位是横排的,而对于SED1520,字节的8个位要竖排,即每个字符要跨8行显示,需要按图5显示汉字

    那么要将字模的各字节按位进行如下计算:将标准字模的字节组1的8个字节的bit7组合起来就成为SED1520汉字字模的字节1,bit6组合起来就成为SED1520汉字字模的字节2,依此类推,就可计算出SED1520汉字字模的32个字节,显示时,先确定字节1的位置(页地址与列地址),然后连续显示字节1~字节16,再页地址加1,列地址为字节1的列地址,设置好后送字节17~字节32即完一成个汉字显示。我们将以12232为例介绍液晶模块的使用方法,12232内置2个SED1520,通过片选来访问不同的SED1520,它可显示4行(对应0~3页地址),每行可显示122个字符,前61个字符对应左边SED1520,后61个字符对应右边SED1520,列地址0~60对应这61个字符的位置,列地址61~79没有使用。对SED1520初始化的程序流程图如图3。清屏是将所有的显示RAM内的数据置0,初始化后,要具体在某个位置显示字符需要设置对应的页地址(行)和列地址,然后向SED1520写数据即可。以下为显示部分初始化程序流程图。

4 结束语

    SED1520是一款性能价格比很高的LCD驱动芯片,将它与单片微机接口可用于各类仪表,具有硬件省、功耗低、软件程序简洁等特点。该接口设计已成功应用于电动汽车电量管理的显示,证明该设计稳定可靠。

    本文作者创新点:单片机在对LCD控制器写数据前一般都要先读它是否忙,以免写数据失败,而PIC单片机的I/O口在读与写的功能转换中要不停地更改该口的设置,这样程序就很繁琐,还有可能导致系统不稳定。作者在通过实际设计与应用后,对LCD控制器省去了读状态检测,根据SED1520的数据手册中介绍的读写时序,进行适当延时,这样精减了程序还省下了在单片机系统设计中比较宝贵的I/O口,而且系统一直稳定。

关键字:液晶显示  SED1520  PIC单片机  汉字显示  LCD接口 引用地址:SED1520与PIC单片机的接口设计

上一篇:基于PIC单片机的CAN总线扩展技术
下一篇:基于PIC单片机开发的高精度数据采集器

推荐阅读最新更新时间:2024-03-16 12:27

PIC单片机的一些学习心得与总结
PIC单片机的概述 PIC16F616是一款14引脚、8位的CMOS单片机。采用精简指令集,仅有35条指令,由于采用了数据总线和指令总线分离的哈佛总线结构,使得除少量指令不是单周期之外,大部分的指令都是单周期指令。这样有利于提高单片机的运行速度和执行效率。 PIC16F616这款单片机供电电压可以在2V到5。5V之间,内部集成了一个RC振荡器,频率可以配置成8MHZ或者4MHZ,也可以用外部晶振提供时钟。内部集成有AD转换、比较器等硬件模块,还具有上电复位、欠压复位、看门狗、代码保护等功能。三个定时器、PWM发生器等可以由用户编程。下面我来一一介绍关于PIC单片机的这些模块和功能。 存储器 PIC16F616分为程
[单片机]
PIC单片机的外接电压检测复位电路举例
1.6.5 PIC单片机的外接电压检测复位电路举例   1.设计思路   有许多型号单片机的内部均不具备掉电复位功能,即使对于内部包含该功能的PIC单片机,其复位门槛电压值是固定不可更改的,有时不能满足用户的需求,因此,外加电压检测复位电路也是较常见的设计方案。   对于片内带有掉电复位功能BOR的PIC单片机,在使用外接电压检测复位电路时,就必须将内部BUR功能禁止,方法是将系统配置字的BUDEN位设置为0。   对于内部不带BOR功能的PIC单片机,其电源控制寄存器PCUN没有BOR标志位,无法准确识别由外接电压检测复位电路引起的单片机复位,因此在程序执行过程中在MCLR引脚施加了人工复位信号引起的复位。   与外接电压检测复
[单片机]
<font color='red'>PIC单片机</font>的外接电压检测复位电路举例
PIC单片机的查表程序设计
PIC的查表程序可以利用子程序带值返回的特点来实现。具体是在主程序中先取表数据地址放入W,接着调用子程序,子程序的第一条指令将W置入PC,则程序跳到数据地址的地方,再由“RETLW”指令将数据放入W返回到主程序。下面程序以F10放表头地址。 MOVLW  TABLE     ;表头地址→F10 MOVWF  10 ┋ MOVLW  1        ;1→W,准备取“1”的线段值 ADDWF  10,1      ;F10+W =“1”的数据地址 CALL  CONVERT MOVWF  6        ;线段值置到B口,点亮LED ┋ CONVERT MOVWF  2        ;W→PC TABLE RETLW  0
[单片机]
<font color='red'>PIC单片机</font>的查表程序设计
DIY自制PIC单片机编程器电路PCB
简介: K128PICP单片机编程器,由国外PIC单片机爱好者制作,适用于对PIC单片机F系列近百种芯片进行读写。该编程器使用USB接口编程,并且从USB取电,编程高压由监控芯片PICl6F628产生的脉冲信号倍压整流后得到。 K128PICP单片机编程器,由国外PIC单片机爱好者制作,适用于对PIC单片机F系列近百种芯片进行读写。该编程器使用USB接口编程,并且从USB取电,编程高压由监控芯片PICl6F628产生的脉冲信号倍压整流后得到。省掉了独立的电源。 通过制作和使用K128,感觉对初学者来说有以下困难:1.USB到RS232串口的转换芯片FT232BM是贴片封装,必须使用PCB板安装。 不能使用万能板,焊接比
[单片机]
DIY自制<font color='red'>PIC单片机</font>编程器电路PCB
PIC单片机(PIC16F877A)串行收发程序
#include pic.h #define uchar unsigned char uchar rtemp,sflag; void SerialInit(void) { TXSTA=0x24; //开启发射使能位、高波特率,TRMT初始值可0可1 RCSTA=0x90; //开启串口、连续接收、 SPBRG=0x19; //4M晶振,波特率9600,则SPBRG初值为25 RCIE=1; //开启串口接收完成中断 GIE=1; //开全局中断 PEIE=1; //开第一外设中断 } void interrupt SerialService(void) //接收中
[单片机]
<font color='red'>PIC单片机</font>(PIC16F877A)串行收发程序
PIC单片机的中断总结
与51或者其他系列的单片机相比,PIC单片机的中断机制有其特殊之处,针对我们一些初学者存在的一些问题和疑惑,我在此做一个个人总结,不当的地方,请站友们指正。sO100 先摘引三个对PIC中断理解的回帖,然后我再对中断活动的过程、应该注意的事项、及一个疑惑进行较详细的总结和解释。 --------------- johnfrank:关于pic中断有些不明白的地方 借用大虾的程序; ;********************中断服务代码 btfssINTCON,T0IE;判断是否为T0中断 gotoother_int btfssINTCON,T0IF;it’sthetimeofT0int gotoo
[单片机]
PIC单片机数码管(流水灯)代码
#INCLUDE p16f886.inc __config _CONFIG1, _INTOSCIO & _WDT_OFF CONTEXT_SAVING UDATA_SHR OFFSET RES 1 RESET CODE 0x0 PAGESEL INIT GOTO INIT CODE INIT BANKSEL TRISC CLRF TRISC BANKSEL PORTC MOVLW B'11111111' MOVWF PORTC BANKSEL TRISA CLRF TRISA BANKSEL PORTA CLRF PORTA BANKSEL ANSEL CLRF ANSEL
[单片机]
内置SED1520控制驱动器的图形液晶显示模块MGLS-12032在智能测试仪中的应用
    摘要: 文章介绍了内置SED1520图形液晶显示模块MGLS-12032的特点和工作原理,给出了MGLS-12032与8031单片机的接口电路,介绍了SED1520的指令集,并结合具体实例给出了显示模块的相关程序。     关键词: 图形显示 液晶 单片机 SED1520 MGLS-12032 1 SED1520功能特点 SED1520是集行、列驱动器和控制器于一体的液晶显示控制驱动器,可广泛用于小规模液晶显示模块,例如香港精电公司的MGLS-12032、MGLS10032等。 SED1520液晶显示驱动器具有以下特性: ●内置显示RAM区,RAM容量为2560位。RAM中的1位数据控制
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved