利用S3C4510实现显示模块的设计.doc_第1页
利用S3C4510实现显示模块的设计.doc_第2页
利用S3C4510实现显示模块的设计.doc_第3页
利用S3C4510实现显示模块的设计.doc_第4页
利用S3C4510实现显示模块的设计.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文介绍了利用S3C4510B的通用I/O口,采用串行方式控制液晶模块显示的方法。并给出了S3C4510B与LCD模块的硬件连接图和显示程序的部分原代码。 1 引言 随着科技的发展,ARM在社会各个方面的应用越来越广。ARM芯片广泛应用于无线产品、PDA、GPS、网络、消费电子产品、STB及智能卡。 S3C4510B是SAMSUNG公司生产的基于ARM7TDMI的RISC微处理器,主频可达50MHZ。液晶显示是嵌入式系统中反映系统输入/输出的人机交互界面,液晶显示以其微功耗、体积小、显示内容丰富、模块化,接口电路简单等诸多优点得到广泛应用。由于S3C4510B主要是针对以太网应用系统设计的,所以其内部没有LCD控制模块,这样在一些需要人机可视话交互过程中会产生诸多不便。我们在看重高性价比的情况下,利用S3C4510B的通用I/O口来控制液晶显示屏的软硬件方法,实现了与LCD控制模块一样的功能。 2 S3C4510B介绍 S3C4510B是三星公司的一款基于以太网应用系统的高性价比16/32位(精简指令集)RISC微控制器,内含一个由ARM公司设计的ARM7TDMI RISC处理器核,ARM7TDMI为低功耗、高性能的16/32核。支持大、小端模式,内部架构为大端模式,外部存储器可为大、小端模式;基于JTAG的调试方案;边界扫描接口。支持ROM/SRAM、FLASH、DRAM和外部I/O以8/16/32位的方式操作。最适合用于对价格及功耗敏感的应用场合。 除了ARM7TDMI核以外,S3C4510B比较重要的片内外围功能模块包括: 2个带缓冲描述符(Buffer Descriptior)的HDLC通道; 2个UART通道; 2个GDMA通道; 2个32位定时器; 18个可编程的I/O口。 S3C4510B提供了18个可编程的通用I/O端口,用户可将每个端口配置为输入模式、输出模式或特殊功能模式,由片内的特殊功能寄存器IOPMOD和IOPCON控制。所传输的数据存放在寄存器IOPDATA中。 端口0端口7的工作模式仅由IOPMOD寄存器控制。另外通过设置IOPCON寄存器,端口8端口11可用作外部中断请求INTREQ0INTREQ3的输入。端口12、端口13可用作外部DMA请求XDREQ0、XDREQ1的输入。端口14、端口15可作为外部DMA请求的应答信号XDACK0、XDACK1,端口16可作为定时器0的溢出TOUT0,端口17可作为定时器1的溢出TOUT1。 I/O口模式寄存器IOPMOD中的低位用于配置I/O口P17P0的工作方式。0为输入、1为输出。 3 OCMJ4X8C液晶模块 该款液晶采用台湾矽创电子公司生产的ST7920中文图形控制芯片。液晶屏幕为128X64点。其可以显示字母、数字符号、中文字型及图形,具有绘图及文字画面混合显示功能。内置2M中文字型ROM(CGROM)总共提供8192个中文字型(16X16点阵),16K半宽字型ROM(HCGROM)总共提供126个符号字型(16X8点阵),64X16位字型产生RAM(CGRAM),另外绘图显示画面提供个个64X256点的绘图区域(GDRAM),可以和文字画面混合显示。提供多功能指令:画面清除(Display clear)、光标归位(Return home)、显示打开/关闭(Display on/off)、光标显示/隐藏(Cursor on/off)、显示字符闪烁(Display character blink)、光标移位(Cursor shift)、显示移位(Display shift)、垂直画面旋转(Vertical line scroll)、反白显示(By_line_reverse display)、待命模式(Standby mode)。 OCMJ4X8C(128X64)引脚说明(表1) 管脚号 管脚符号 说明 1 VSS 逻辑电源地 2 VDD 逻辑电源+5V 3 NC 无连接 4 RS(CS) 高:数据/低:指令(串行输入的片选) 5 R/W(SID) 高:读/低:写(串行数据) 6 E(SCLK) 使能端(串行时钟) 7-14 DB0-DB7 并行数据端 15 PSB 高:并行/低:串行 16 NC 无连接 17 /RST 系统复位 低电平有效 18 NC 无连接 19 LEDA 背光电源+5V 20 LEDK 背光电源0V 硬件电路: 对于该款液晶模块,当PSB端接高电平时,模块将进入并行模式,并行模式又分为8-位和4-位传输模式。当PSB段接低电平时,模块将进入串行模式。该设计采用4线串行输入方式,所以将PSB端接地。并将背光电源端LEDA接电源+5V,LEDK接地。 然后,将S3C4510B的IO口分别与液晶模块相接如下:IO3SCLK、IO5CS、IO7SID、IO9/RST。这里要注意的是需要通过软件设置S3C4510B相应的特殊功能寄存器,将IO3,IO5,IO7,IO9设置为输出模式。硬件连接图如图1所示:图1:硬件连接图 4 软件实现 软件开发环境为ARM SDT V2.5。程序分为两部分:首先为ARM初始化,使用汇编语言书写。然后才是用C语言书写的显示主程序。 下面分别将两部分结合原代码略加说明。 汇编语言部分: IOPMOD EQU 0x3FF5000 ;定义IO口模式寄存器 IOPDATA EQU 0x3FF5008 ;定义IO口数据寄存器 IMPORT Main AREA Init,CODE,READONLY ENTRY LDR R0, =0x3FF0000 LDR R1, =0xE7FFFF80 ;配置SYSCFG,片内4Kcache,4KSRAM STR R1, R0 LDR SP, =0x3FE1000 ;SP指向4KSRAM的尾地址,堆栈向下生成 LDR R0, =0X3FF5000 LDR R1, =0X000002A8 ;设置IO3,IO5,IO7,IO9为输出模式 STR R1,R0 BL Main B . END C语言部分:因篇幅有限,这里就不完整的给出源程序了,只列出几个子函数。 #include typDef.h #define IOPMOD (*(volatile unsigned *)0x03FF5000) #define IOPDATA (*(volatile unsigned *)0x03FF5008) /*定义子函数如下*/ void clr_lcd_rst(void) IOPDATA &=0XFDFF; 清零复位引脚 void set_lcd_rst(void) IOPDATA |=0X0200; 置位复位引脚 void clr_lcd_sclk(void)IOPDATA &=0XFFF7; 时钟端置低 void set_lcd_sclk(void)IOPDATA |=0X0008; 时钟端置高 void clr_lcd_sid(void)IOPDATA &=0XFF7F; 串行输出数据0 void set_lcd_sid(void)IOPDATA |=0X0080; 串行输出数据1 void clr_lcd_cs(void)IOPDATA &=0XFFDF; 清零使能端 void set_lcd_cs(void)IOPDATA |=0X0020; 置位使能端 void print_led_p0(void)IOPDATA |=0X0001; 使led0亮 void print_led_p1(void)IOPDATA |=0X0002; 使led1亮 void off_led_p0(void)IOPDATA &=0XFFFE; 使led0灭 /*液晶初始化部分*/ void Init_lcd(void) set_lcd_rst(); delay(4); write_lcd(0,0x01); 清除显示 delay(4); write_lcd(0,0x0c); 显示状态设置 delay(4); write_lcd(0,0x30); 设置为8位控制接口 delay(4); 图2:串行写操作时序图 程序严格按照串行的写操作时序(如图2所示)。此外应该注意当模块在接受指令前,微处理器必须先确认模块内部处于非忙碌状态,即读取BF标志时BF需为0,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延迟一段较长的时间,即是等待前一个指令确实执行完成,指令执行的时间请参考指令表中的个别指令说明。 5结束语 本文介绍的方法可以实现汉字字符,英文字母,图形显示。除了上述的静态显示方式外,还可以通过编程来实现字符的动态显示及一些特效(如字符的移动,渐变,闪烁)显示。达到了与内置控制器相同的功能。 6创新点 本文的创新之处在于通过使用ARM微处理器的4个通用I/O口就达到了控制液晶模块显示的功能,节省了硬件资源,仅仅增加了少量软件代码,为人机交互界面中的LCD控制驱动与接口提供了一种实用方案。 参考文献: 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论