这是QC12864模块的程序和使用说明,本人小白一枚,通过网上搜索结合自己的设计电路编写
带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。
单片机源程序(串口)如下:
- #include <reg51.h>
- #include<intrins.h>
- #define uchar unsigned char
- #define uint unsigned int
- sbit cs=P2^7; //RS口
- sbit SID=P2^6; //RW
- sbit SCLK=P2^5; //E
- uchar table[]="wangbaoli";
- void delay(uint ms)
- {
- uint i,j;
- for(i=ms;i>0;i--)
- {
- for(j=110;j>0;j--);
- }
- }
- void send_one(uchar one)
- {
- uchar z;
- for(z=0;z<8;z++)
- {
- SCLK=0;
- one=one<<1;
- SID=CY;
- SCLK=1;
- SCLK=0;
-
- }
- }
- void write_com(uchar com)//写指令
- {
- send_one(0xf8); //等同于rs等于0 rw=0
- send_one(0xf0&com);
- send_one(0xf0&com<<4); //左移高
- }
- void write_data(uchar dat)//写数据
- {
- send_one(0xfa); //等同于rs等于1 rw=0
- send_one(0xf0&dat);
- send_one(0xf0&dat<<4); //左移高
- }
- void hanzi(uchar *q)
- {
- while(*q!=0)
- write_data(*q++);
- delay(10);
- }
- /*------------------清屏命令--------------------------*/
- void init_12864()// 初始化
- {
-
- write_com(0x01);
- delay(5);
- write_com(0x0f); //显示状态
- delay(5);
- write_com(0x01);
- delay(5);
- }
- void ziku()
- {
- write_com(0x80);
- hanzi("王保力");
- write_com(0x90);
- hanzi("王保力");
- write_com(0x88);
- hanzi("王保力");
- }
- void main()
- {
- init_12864();
- ziku();
- while(1);
- }
复制代码
所有资料51hei提供下载:
12864串并.rar
(118.51 KB, 下载次数: 26)
|