标题: LCD12864.H头文件下载(液晶屏驱动) [打印本页]

作者: daniu    时间: 2014-12-25 20:48
标题: LCD12864.H头文件下载(液晶屏驱动)
LCD12864.H头文件是lcd12864液晶屏的驱动 大家可以另存为到硬盘下载到电脑


  1. /*

  2. 把我一直珍藏的程序全部拿出来,给大家共享,这也让我想起来,我刚学的时候,搜集资料是那么辛苦,而且找不到完整的资料,我将把我整理的和自己制作的H文件共享出来,只要修改定义端口,便可以随意的调用,以后我还会慢慢完善我的C资料,也希望大家给我指出程序的漏洞和缺点,已达到相互学习目地。

  3. */

  4. #ifndef __LCD12864_H__
  5. #define __LCD12864_H__

  6. #include <intrins.h>

  7. #define  uchar  unsigned  char

  8. sbit RS=P2^0;//串口时为CS
  9. sbit RW=P2^1; //串口为SID
  10. sbit E=P2^2;//串口为时钟SCLK
  11. sbit RET=P2^3;//复位
  12. //sbit PSB=P2^4;//串并选择

  13. unsigned char code line_0[] = {"春城无处不飞花,"};
  14. unsigned char code line_1[] = {"寒食东风御柳斜。"};
  15. unsigned char code line_2[] = {"日暮汉宫传蜡烛,"};
  16. unsigned char code line_3[] = {"轻烟散入五侯家。"};

  17. /***********************************忙检测*******************************/
  18. void RDBF(void)
  19. {
  20. uchar temp;
  21. RS=0;
  22. RW=1;
  23. while(1)
  24. {
  25.      P0=0xFF;
  26.      E=1;
  27. temp=P0;
  28. E=0;
  29. if ((temp&0x80)==0) break;
  30.     }
  31. }

  32. /*********************************写指令*********************************/
  33. void Write_Command(uchar comm)
  34. {
  35. RDBF();
  36. RS=0;
  37. RW=0;
  38. P0=comm;
  39. E=1;
  40. E=0;
  41. }

  42. /***************************写数据到数据寄存器****************************/
  43. void Write_Data(uchar TEMP)
  44. {
  45. RDBF();
  46. RS=1;
  47. RW=0;
  48. P0=TEMP;
  49. E=1;
  50. E=0;
  51. }

  52. /*************************初始化LCD-12864R*********************************/
  53. void LCDInit(void)
  54. {  
  55. //PSB=0;             //串口
  56.     //PSB=1;             //并口
  57.     RET=1;
  58.     RET=0;
  59.     RET=1;

  60.    Write_Command(0x30);//基本指令集,8位并行,RE=1,可执行扩展功能
  61. Write_Command(0x06);//启始点设定:光标右移
  62. Write_Command(0x01);//清除显示DDRAM
  63. Write_Command(0x0f);//D=1,整体显示ON C=1,游标ON B=1,游标闪烁ON
  64. Write_Command(0x02);//地址归零

  65. }

  66. /*******************显示数组字符串(显示半宽字型16*8点阵)*********************/
  67. void Display_String(uchar addr,uchar *string,uchar count)
  68. {
  69. uchar i;
  70. Write_Command(addr);           //设定DDRAM地址
  71. for(i=0;i<count;)
  72. {
  73.      Write_Data(string[i*2]);  //前半角字符
  74.         Write_Data(string[i*2+1]);//后半角字符
  75.   i++;
  76.     }
  77. }

  78. /***********************************主函数**************************************/
  79. void main(void)        
  80. {
  81. LCDInit(); //lcd初始化

  82. Display_String(0x80,line_0,8);
  83.     Display_String(0x90,line_1,8);
  84. Display_String(0x88,line_2,8);
  85. Display_String(0x98,line_3,8);
  86. while(1)
  87. {
  88.   Display_String(0x80,line_0,8);
  89.      Display_String(0x90,line_1,8);
  90.   Display_String(0x88,line_2,8);
  91.   Display_String(0x98,line_3,8);
  92. }
  93. }

  94. #endif
复制代码




作者: ywd683    时间: 2015-1-2 09:05
下来好东西!!!!
作者: lxl2255    时间: 2015-1-7 10:47
good  想看看
作者: XinZhilong    时间: 2016-12-27 23:30
我也在学习中 xiexie
作者: zzb    时间: 2016-12-28 10:19
学习学习,51黑有你更精彩!!
作者: gdatgb    时间: 2017-2-21 14:33
下载 学习学习,谢谢楼主!  51黑有你更精彩!!
作者: peterlee    时间: 2017-11-29 10:56
好东西我要看看
作者: sgh_ran    时间: 2017-12-7 07:54
谢谢楼主
作者: 没有然后    时间: 2018-3-26 21:07
不错不错,弄了半年了还驱动不了液晶屏
作者: 碌碌无为    时间: 2018-4-9 11:15
感谢楼主分享,学习了。
作者: 1991660756    时间: 2018-4-12 19:35
感谢分享
作者: Alice...    时间: 2018-10-5 16:58
好东西,谢谢分享
作者: xqtop    时间: 2019-3-1 06:00
非常不错,感谢分享。
作者: wxxdpj    时间: 2019-3-13 15:55
谢谢你
作者: wo502264174    时间: 2019-4-18 09:06
good  想看看
作者: kxyz    时间: 2019-4-25 06:17
谢谢楼主无私分享!
作者: Janger    时间: 2019-11-30 16:07
下来好东西!!!!
作者: Janger    时间: 2019-11-30 16:08
下来好东西!!!!
作者: Hood1014    时间: 2020-5-15 21:05
谢谢!
作者: Linda12345    时间: 2020-5-16 00:38
谢谢,很好用!
作者: fjy134679    时间: 2020-7-12 19:10
请问为什么我把文件放在libraries里然后检验时显示uno编译错误
作者: 水生烟    时间: 2021-12-11 17:52
第一次做这个
为什么我复制过去显示 LCD12864.h(1): error C301: identifier expected
应该怎么解决
大神,救我
作者: zjhjx    时间: 2021-12-11 19:25
51黑有你更精彩
作者: joyb    时间: 2023-6-15 08:54
头文件里有main,冲突不?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1