首 页       用户登录  |  用户注册
设为首页
加入收藏
联系我们
按字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
按声母检索 A B C D E F G H J K L M N O P Q R S T W X Y Z 数字 符号
您的位置: 5VAR论文频道论文中心理工论文电子通信
   ARM微控制器LPC210X的LCD接口技术      ★★★ 【字体: 】  
ARM微控制器LPC210X的LCD接口技术
收集整理:佚名    来源:本站整理  时间:2009-01-11 00:03:44   点击数:[]    

阵。其中number代表存在Flash中的汉字排名序列号,只要把页、列、汉字序号实参值传到汉字显示子程序中进行调用即可显示汉字了。参考上面程序便能很方便地写出字母、数字的显示子程序。

程序中使用寄存器名称时要先在头文件中将其映射到对应地址,如对IOSET做如下定义:

#define IOSET(*((volatile unsigned long *)0xE0028004))

其它类似。

另外,要定义设置引脚连接GPIO,以及GPIO方向设置。

PINSEL0=0xX0000000;//设置用到的13个引脚连接到GPIO,为X的根据应用系统配置

PINSEL1=0xXXXXXXXX;

IODIR=IO_USE; //设置用到的13线方向为输出

当然,完整的应用还必须包括ARM时钟代码、启动代码等。

2.2 串行转换法

从上面可以看出,尽管用8个GPIO口模块总线非常容易与液晶显示器建立连接,但是占用口线太多。为节省口线,可以考虑加入串入并出的移位寄存器74HC595,用LPC210X的GPIO口复用SPI功能或直接用GPIO口模拟SPI功能进行驱动,后者更加方便。下面用这种方式进行说明,同样为方便,选用了连续的GPIO口P0.0~P0.7,具体设计系统要按实现情况进行配置,框图如图2所示。

该种方法通过3个GPIO口模拟SPI对74HC595进行控制,驱动液晶数据显示。

模拟SPI的GPIO口配置如下:

#define SPI_CLK 0x00000001 //时钟线为P0.0

#define SPI_DATA 0x00000002 //传输数据线为P0.1

#define SPI_CS 0x00000004 //74HC595选通线为P0.2

传输字模数值到数据线上的子程序:

void SendData(unsigned char date){

unsigned char i;

IOCLR=SPI_CS; //SPI_CS=0

for(i=0;i<8;i++){ //依次发送8位数据

IOCLR=SPI_CLK; //SPI_CLK=0

if((date&0x80)!=0) //传输最高位

IOSET=SPI_DATA;

Else

IOCLR=SPI_DATA;

date<<=1;

IOSET=SPI_CLK; //SPI_CLK=1

}

IOSET=SPI_CS; //SPI_CS=1

}

其它程序与方法1类似。有了以上子程序,就可以很方便地加以调用,进行液晶驱动显示。

2.3 CPLD分部连接法

CPLD是大规模逻辑器件,对于LPC210X的复杂应用显得非常重要,笔者的项目是用它来扩展外部接口的,LCD应用只是其中一部分,连接图如图3所示。

共占用9线,为说明方便,也选用了连续的GPIO口。该方法把一个字节字模分成高4位和低4位,分别通过P0.0~P0.3传送。在CPLD里设计一个4位锁存器,当高4位传送完毕后,锁存器进行锁存,然后发送低4位,接着由P0.4选通锁存器,将8位数据同时送出,这样节省了4个GPIO口;另外由P0.5通过CPLD直接控制CS1和CS2,也节省了1个GPIO口。LPC210X程序参照方法1很容易写出,只是注意这里是分两次、每次4位传送,以及每次传送要改变P0.4的状态。CPLD采用了Xilinx XC9500系列的XC9572,程序用Verilog-HDL语言编写,其中数据分部传送程序设计如下:

module latch(out_high,out_low,data,enable);//定义模块latch

output[3:0]out_high; //定义输出口高4位

output[3:0]out_low; //定义输出口低4位

input enable; 定义锁存选通信号

reg[3:0] out_high;

reg[3:0]out_low;

reg[3:0]lock; //定义锁存寄存器

always@(enable or data)

begin

if(!enable) //低电平锁存

lock<=data;

else //高电平开通锁存 ,输出8位

begin

out_high=lock;

out_low=data;

end

end

endmodule

至于P0.5选通CS1、CS2,在另一always块中用ifelse语句进行判断就可以了。

程序设计完成后,在WEBPACK中对用到的引脚进行分配与锁定,然后编译。如果需要仿真的 埃鸵杓贫ゲ阄件,可使用Xilinx公司推出的免费仿真软件MODELSIM。

对于上面的第二种方法,也可以考虑用CPLD设计称位存储器及时序控制。在复杂应用中,加上CPLD不但可以令设计简化,还可以使系统性能大大增加。

结语

对于无外部总线的Philips LPC210X,只能通过GPIO口模拟部连接液晶显示器。但在设计过程中,可以考虑通过串行转换或CPLD分部连接的方法减少GPIO口的使用,以便充分利用LPC210X的资源。不过没有总线毕竟有所束缚,好在Philips即将推出的LPC22X4系列控制器开放了外部总线,相信当这款芯片推出后,必将得到更多的关注。



上一页  [1] [2] 


Tags:


文章转载请注明来源于:5VAR论文频道 http://paper.5var.com。本站内容整理自互联网,如有问题或合作请Email至:support@5var.com
或联系QQ37750965
提供人:佚名
  • 上一篇文章:基于VW2010芯片的嵌入式多媒体监控系统压缩/解压卡设计 2

  • 下一篇文章:数据终端设备与无线通信模块之间串行通信链路复用协议(TS27.010
  • 返回上一页】【打 印】【关闭窗口
    中查找“ARM微控制器LPC210X的LCD接口技术”更多相关内容 5VAR论文频道
    中查找“ARM微控制器LPC210X的LCD接口技术”更多相关内容 5VAR论文频道
    最新热点 最新推荐 相关新闻
  • ››嵌入式系统的通信规约管理平台设计...
  • ››一种基于七号信令的局间话单采集系...
  • ››对于变频器的制动技术分析
  • ››电子文件管理元数据宏观结构多维分...
  • ››浅论卫星电视接收机的常见故障的检...
  • ››信息时代网络用户信息检索焦虑的心...
  • ››论GIS在高校房产管理中的实际应用
  • ››关于电力通信发展战略的思考 金李莎...
  • ››2G、3G切换精细化优化分析思路探讨...
  • ››光纤自动化生产的需求与时机
  • ››ARM微控制器LPC210X的LCD接口技术
  •   文章-网友评论:(评论内容只代表网友观点,与本站立场无关!)
    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 网站地图
    Copyright © 2006-2033 5Var.Com. All Rights Reserved .