lcd12864 驱动问题 (弄了很久没显示,严重打击我的信心)

[复制链接]
 楼主| w3571604 发表于 2008-10-5 14:49 | 显示全部楼层 |阅读模式
请高手看看我的程序,是程序不对还是我的液晶屏坏了,电路完全是按照说明上连胡。如果感觉没有问题的话给我个回复,谢谢!&nbsp;&nbsp;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;我的MPU是&nbsp;arm7&nbsp;lpc2114,液晶屏的芯片是ST7920,采用的是I/O口进行写操作(以后还要定义同步缓冲区,所以没有设置读),并口传输数据。这是我的程序:&nbsp;<br />#include&nbsp;&quot;config.h&quot;&nbsp;<br />#define&nbsp;RS&nbsp;1&nbsp;&lt&nbsp;&lt22   &nbsp;//数据,指令选择引脚&nbsp;<br /><br />#define&nbsp;RSH IO0SET=RS  &nbsp;//选择数据&nbsp;<br />#define&nbsp;RSL IO0CLR=RS &nbsp;//选择指令&nbsp;<br /><br />#define&nbsp;PSB&nbsp;1&nbsp;&lt&nbsp;&lt24   &nbsp;//选择并口 &nbsp;,这个口后来我悬空了,因为默认是高&nbsp;<br />#define&nbsp;PSB_EN&nbsp;IO0SET&nbsp;=PSB&nbsp;<br /><br />#define&nbsp;E 1&nbsp;&lt&nbsp;&lt23      &nbsp;//使能,高-&gt低有效&nbsp;<br /><br />#define&nbsp;EL &nbsp;IO0CLR=RS&nbsp;<br />#define&nbsp;EH &nbsp;IO0SET=RS&nbsp;<br /><br />#define&nbsp;RST&nbsp;1&nbsp;&lt&nbsp;&lt25      //复位&nbsp;<br />#define&nbsp;RSTH&nbsp;IO0SET=RST&nbsp;<br />#define&nbsp;RSTL IO0CLR=RST&nbsp;<br /><br />#define&nbsp;D0_D7&nbsp;0xFF&nbsp;&lt&nbsp;&lt6     //用P0.6--P0.13&nbsp;数据总线&nbsp;<br />void&nbsp;Senddata(uint8&nbsp;data)      //总控制I/O口,发送数据&nbsp;<br />{&nbsp;<br />IO0CLR=0xFF&nbsp;&lt&nbsp;&lt6;IO0SET=(data&0xFF)&nbsp;&lt&nbsp;&lt6;}&nbsp;<br />void&nbsp;Delay()      //由于我没有采用读忙,所以采用延时函数&nbsp;<br />{&nbsp;<br />  uint8&nbsp;i;&nbsp;<br />  for(i=0;i&nbsp;&lt5000;i++);&nbsp;<br />}&nbsp;<br />void&nbsp;DElay(uint8&nbsp;j)    //大延时函数&nbsp;<br />{&nbsp;<br />  uint32&nbsp;i;&nbsp;<br />  for(;j&gt0;j--)&nbsp;<br />  for(i=0;i&nbsp;&lt50000;i++);&nbsp;<br />}&nbsp;<br />void&nbsp;Wrcom(uint8&nbsp;command)     //写命令函数,rs=0&nbsp;<br /><br />{  PSB_EN;&nbsp;<br />  EL;&nbsp;<br />  RSL;&nbsp;<br />  Delay();  &nbsp;<br />  Senddata(command);&nbsp;<br />  Delay();&nbsp;<br />  EH;&nbsp;<br />  Delay();&nbsp;<br />  EL;&nbsp;<br />  Delay();&nbsp;<br />}&nbsp;<br />void WrData(uint8&nbsp;wrdata)  //写数据,rs=1&nbsp;<br />{PSB_EN;&nbsp;<br />  EL;&nbsp;<br />  RSH;&nbsp;<br />  Delay();  &nbsp;<br />  Senddata(wrdata);&nbsp;<br />  Delay();&nbsp;<br />  EH;&nbsp;<br />  Delay();&nbsp;<br />  EL;&nbsp;<br />  Delay();&nbsp;<br />}&nbsp;<br />void&nbsp;LCD_int(void)   //初始化&nbsp;<br />{  RSTL;&nbsp;<br />  DElay(50);  &nbsp;<br />  RSTH;&nbsp;<br />  DElay(50);&nbsp;<br />  Wrcom(0x30);  //8位接口,基本指令集&nbsp;<br />  DElay(50);  &nbsp;<br />  Wrcom(0x0C);  //显示开关,光标设定&nbsp;<br />  DElay(50);&nbsp;<br />  Wrcom(0x01);  &nbsp;//清屏&nbsp;<br />  DElay(50);&nbsp;<br />  Wrcom(0x06);   //进入设定点&nbsp;<br />  DElay(50);&nbsp;<br />  &nbsp;<br />}&nbsp;<br /><br /><br />  int&nbsp;main&nbsp;(void)&nbsp;<br />{//&nbsp;add&nbsp;user&nbsp;source&nbsp;code&nbsp;<br />  PINSEL0=0x00000000;&nbsp;<br />  PINSEL1=0x00000000;&nbsp;<br />  IO0DIR=RS|E|RST|PSB;&nbsp;<br />  IO0DIR=IO0DIR|D0_D7;&nbsp;<br />  LCD_int();&nbsp;<br />  Wrcom(0x80);//设定现实地址&nbsp;<br />  &nbsp;<br />  WrData(0x41);//发送个半宽字&nbsp;<br />  &nbsp;<br />  &nbsp;<br />  &nbsp;<br />  while(1);&nbsp;<br />  return&nbsp;0;&nbsp;<br />}&nbsp;<br /><br />由于第一次弄,所以程序有点简单,只想让它显示一个半宽字,可是没有任何字显示啊?希望高手指点,谢谢!&nbsp;<br /><br />
xujl2008 发表于 2008-10-6 13:46 | 显示全部楼层

wo lai le

你的写命令函数和写数据函数里根本就没写东西进去什么显示&nbsp;啊<br />void&nbsp;Wrcom(uint8&nbsp;command)     //写命令函数,rs=0&nbsp;<br /><br />{  PSB_EN;&nbsp;<br />  EL;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />  RSL;&nbsp;<br />  Delay();  &nbsp;<br />  Senddata(command);&nbsp;<br />  Delay();&nbsp;<br />  EH;&nbsp;<br />  Delay();&nbsp;<br />  EL;&nbsp;<br />  Delay();&nbsp;<br />}&nbsp;<br />void WrData(uint8&nbsp;wrdata)  //写数据,rs=1&nbsp;<br />{PSB_EN;&nbsp;<br />  EL;&nbsp;<br />  RSH;&nbsp;<br />  Delay();  &nbsp;<br />  Senddata(wrdata);&nbsp;<br />  Delay();&nbsp;<br />  EH;&nbsp;<br />  Delay();&nbsp;<br />  EL;&nbsp;<br />  Delay();&nbsp;<br />}<br /><br />EL;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />  RSL;<br />EH;<br />你都没写内容进去呢,再说你调试通过了吗,编译通过了吗?
l0p0c 发表于 2008-10-7 10:03 | 显示全部楼层

如果是第一次弄,出不来是很正常的!

最主要还是要细心和耐心!<br />不要怕打击,不可能一下就成功的!<br />慢慢来!<br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

16

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

11

主题

16

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部