标题:
51单片机+LCD12864串行显示程序
[打印本页]
作者:
美琴的备胎
时间:
2021-5-24 14:07
标题:
51单片机+LCD12864串行显示程序
如题,论坛里串行显示LCD12864的例程,要不就是不清晰,甚至有错误,网上一些资料或者要会员(我不说是哪家),要不就是有误。我的这个程序是我亲测可用的,接线也很明确。供坛友们下载。
附图,实际操作图
无标题.gif
(38.78 KB, 下载次数: 81)
下载附件
实际操作图
2021-5-24 14:07 上传
单片机程序节选
/********************************************************************
* 名称 : delay()
* 功能 : 延时,延时时间为 100us * t。这是通过软件延时,有一定误差。
* 输入 : t
* 输出 : 无
***********************************************************************/
void delay(unsigned int t)
{
unsigned int i,j;
for(i=0; i<t; i++)
for(j=0; j<10; j++);
}
/********************************************************************
* 名称 : sendbyte()
* 功能 : 按照液晶的串口通信协议,发送数据
* 输入 : zdata
* 输出 : 无
***********************************************************************/
void sendbyte(unsigned char zdata)
{
unsigned int i;
for(i=0; i<8; i++)
{
if((zdata << i) & 0x80)
{
SID = 1;
}
else
{
SID = 0;
}
SCLK = 0;
SCLK = 1;
}
}
/********************************************************************
* 名称 : write_com()
* 功能 : 写串口指令
* 输入 : cmdcode
* 输出 : 无
***********************************************************************/
void write_com(unsigned char cmdcode)
{
CS = 1;
sendbyte(0xf8);
sendbyte(cmdcode & 0xf0);
sendbyte((cmdcode << 4) & 0xf0);
delay(2);
}
/********************************************************************
* 名称 : write_data()
* 功能 : 写串口指令
* 输入 : cmdcode
* 输出 : 无
***********************************************************************/
void write_data(unsigned char Dispdata)
{
CS = 1;
sendbyte(0xfa);
sendbyte(Dispdata & 0xf0);
sendbyte((Dispdata << 4) & 0xf0);
delay(2);
}
/********************************************************************
* 名称 : lcdinit()
* 功能 : 初始化函数
* 输入 : cmdcode
* 输出 : 无
***********************************************************************/
void lcdinit()
{
// RST = 0;
// delay(100);
// RST = 1;
// delay(20000);
write_com(0x30);
delay(50);
write_com(0x0c);
delay(50);
}
代码下载:
串行12864.zip
(26 KB, 下载次数: 301)
2021-5-24 14:05 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
lyMarvin
时间:
2021-5-24 16:04
感谢有你,谢谢分享!
作者:
tean
时间:
2021-7-20 15:13
这个怎么显示变量数字
作者:
美琴的备胎
时间:
2022-2-7 09:32
tean 发表于 2021-7-20 15:13
这个怎么显示变量数字
把数字拆开放到数组里试试
作者:
zzzllq
时间:
2022-6-29 21:48
超级有用,感谢楼主
作者:
ywd683
时间:
2022-8-4 05:41
感谢有你,谢谢分享!
作者:
红烧鱼头
时间:
2022-11-11 10:08
最后是不是少了把CS拉低的语句?
作者:
mengsiu
时间:
2022-11-11 11:02
我以前也用12864的显示屏,也是用串行方式驱动。
现在我喜欢用一个19264的屏,SPI的,10块钱一个。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1