12864液晶并行方式显示

12864液晶并行方式显示

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

12864液晶使用的16*16点阵、128个字符(8*16点阵)及64*256点阵显示RAM(GDRAM).与外部CPU接口採用并行或串行两种控制方式。

12864液晶并行方式显示
在12864上显示0-9的随机数 第二行显示www.csdn.blog

第三行显示“求是07的博客”

第四行显示“欢迎光临”


下面是基本的代码

#include <reg52.h>
#include <intrins.h>
#include <stdlib.h>
#define uchar unsigned char
#define uint unsigned int
#define LCD_data=P0;
sbit rs=P3^5;
sbit wr=P3^6;
sbit en=P3^4;
sbit rd=P3^7;
sbit wela=P2^6;
sbit dula=P2^7;
uchar display1[10];
uchar code display2[]={“www.csdn.blog.com”};
uchar code display3[]={“求是07的博客”};
uchar code display4[]={“欢迎光临”};
void delay_1ms(uint x)
{
uint i,j;
for(i=0;i<x;i++)
for(j=0;j<100;j++);
}

void write_cmd(uchar cmd)
{
rs=0;
wr=0;
en=0;
P0=cmd;
delay_1ms(5);
en=1;
delay_1ms(5);
en=0;
}

void write_data(uchar dat)
{
rs=1;
wr=0;
en=0;
P0=dat;
delay_1ms(5);
en=1;
delay_1ms(5);
en=0;
}

void lcd_pos(uchar X,uchar Y)
{
uchar pos;
if(X==0)
{X=0x80;}
if(X==1)
{
X=0x90;
}
if(X==2)
{
X=0x88;
}
if(X==3)
{
X=0x98;
}
pos=X+Y;
write_cmd(pos);
}

void makerand() //随机函数
{
uint ran;
ran=rand();
display1[0]=ran/10000+0x30;
display1[1]=ran%10000/1000+0x30;
display1[2]=ran%1000/100+0x30;
display1[3]=ran%100/10+0x30;
display1[4]=ran%10+0x30;
ran=rand();
display1[5]=ran/10000+0x30;
display1[6]=ran%10000/1000+0x30;
display1[7]=ran%1000/100+0x30;
display1[8]=ran%100/10+0x30;
display1[9]=ran%10+0x30;
}

void lcd_init()
{
rd=1; //设置 并口方式
write_cmd(0x30);//这里设置基本指令动作
delay_1ms(5);
write_cmd(0x0C);//显示开,光光标
delay_1ms(5);
write_cmd(0x01);//清屏
delay_1ms(5);
}
main()
{
uchar i;
wela=0;
dula=0;
delay_1ms(5);
lcd_init();
lcd_pos(1,0);
i=0;
while(display2[i]!=’\0′)
{
write_data(display2[i]);
i++;
}
lcd_pos(2,0);
i=0;
while(display3[i]!=’\0′)
{
write_data(display3[i]);
i++;
}
lcd_pos(3,0);
i=0;
while(display4[i]!=’\0′)
{
write_data(display4[i]);
i++;
}
while(1)
{
lcd_pos(0,0);
makerand();
for(i=0;i<10;i++)
{
write_data(display1[i]);
}
}
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/118780.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • phoenix 索引实践

    phoenix 索引实践

    2021年11月27日
    67
  • 获取MySQL配置文件路径

    获取MySQL配置文件路径在实际工作中,MySQL可能会涉及多个配置文件,但是因为各种原因我们无法找到它们的路,那么我们可以通过以下命令可以找到:首先找到mysqld的路径:$whichmysqld/usr/sbin/mysqld通过mysqld找到所有配置文件的路径:$/usr/sbin/mysqld–verbose–help|grep-A1’Defaultoptions’Defaultopt

    2022年5月18日
    45
  • cube-ui的用法

    cube-ui的用法1.安装:npminstallcube-ui-S2.修改.babelrc:(添加到plugins中去){"plugins":[["transform-m

    2022年8月3日
    7
  • XML格式化工具[通俗易懂]

    XML格式化工具[通俗易懂] 做接口开发的时候,往往接受参数或返回值是一个XML的字符串。如下图,不方便辨识两种方法,1.将它保存为xxx.xml,然后用浏览器打开。这种方法稍微有些麻烦。2.使用UltraEdit工具 …

    2022年7月16日
    11
  • centos7安装python3.6_centos python3安装

    centos7安装python3.6_centos python3安装Centos7下安装Python3的方法由于centos7原本就安装了Python2,而且这个Python2不能被删除,因为有很多系统命令,比如yum都要用到。[root@VM_105_217_centosPython-3.6.2]#pythonPython2.7.5(default,Aug42017,00:39:18)[GCC4.8.520150623(RedHat4.8.5-16)]onlinux2Type”help”,”copyrig…

    2022年9月24日
    1
  • 有关软件设计师的报名问题及答案_软件设计师软考

    有关软件设计师的报名问题及答案_软件设计师软考下面是青岛人才市场的联系地址和电话 青岛市中高级人才市场海尔路178号889166728891667088916679 中国青岛人才大市场山东路171号856329738564389885636580 贵州路人才市场贵州路69号一楼咨询:82685619 城阳人才市场(人才交流中心)城阳正阳路222号87868756 胶南市人才交流服务中心新华路8

    2022年9月6日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号