#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int

sbit rs=P2^6;
sbit rw=P2^5;
sbit lcden=P2^7;

uchar code table[]=“welcome!”; //LCD1602第一行所显示字符串
uchar code table1[]="you are best! "; //LCD1602第二行所显示的字符串,注意:末尾有个空格
uchar code table2[]={0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f}; //第二行字符串显示地址

void delay(uchar t)
{
uchar i,j;
for(i=t;i>0;i–)
{
for(j=100;j>0;j–);
}
}

void delay1(uint x)
{
while(x–);
}

void write_cmd(uchar cmd)
{
delay(2); //此处本应用测忙函数,也可以延时,但此处不用延时也可以正常工作
rs=0;
rw=0;
lcden=0;
delay(2);
P0=cmd;
delay(2);
lcden=1;
delay(2);
lcden=0;
}

void write_data(uchar dat)
{
delay(2); //此处本应用测忙函数,也可以延时,但此处不用延时也可以正常工作
rs=1;
rw=0;
lcden=0;
delay(2);
P0=dat;
delay(2);
lcden=1;
delay(2);
lcden=0;
}

void init()
{
rs=0;
rw=0;
lcden=0;

write_cmd(0x38);
write_cmd(0x0c);
write_cmd(0x06);
write_cmd(0x01);
delay(50);

}

void one_display() //LCD1602第一行显示字符串函数
{
uchar k;
for(k=0;k<8;k++)
{
write_data(table[k]); //写入table1数组里的字符串
}
}

void sec_display() //LCD1602第二行显示字符串函数
{
uchar l;
for(l=0;l<13;l++)
{
write_data(table1[l]); //写入table1数组里的字符串
}
}

void main()
{
init();
write_cmd(0x80+0x04); //选择字符串显示地址,0x02是第一行第3个,0x40是第二行第1个
one_display(); //LCD第二行显示字符串函数
while(1)
{
uchar num;
for(num=0;num<16;num++)
{
write_cmd(0x80+table2[num]); //选择字符串显示地址,地址从table1里面取
write_data(table1[13]); //table1数组第13个是个空格,即什么都没有
sec_display(); //LCD第二行显示字符串函数
delay1(60000); //延时,让滚动没那么快
}
}
}

LCD1602液晶第一行静止不动,第二行向右滚动程序相关推荐

  1. 利用多种语言打印出:第一行一个*,第二行两个*,依次类推

    第一种语言:Java,该种语言是最简单的了 package com.demo.controller.Test;import java.util.Scanner;/*** 第一行打印一个*,第二行打印2 ...

  2. html中第二行标签之间间隔不一样,Word第一行字和第二行字之间的间距怎么不一样...

    在有些word文档中,编辑文字格式时,会看到段落两行字间距很大,这样看起来文档极为难看,需要将行间距调小.如何调整这种情况呢?下面就让小编来问你解答吧. 打开word文档,选中需要调整行间距的文字,按 ...

  3. 通过 I2C 驱动 LCD1602 液晶屏(51单片机)

    通过 I2C 驱动 LCD1602 液晶屏(51单片机) 硬件实物 原理图 3.程序 #include <reg51.h> #include <intrins.h>#defin ...

  4. wps文档一敲空格就换行_wps文档中第一行字后面有很多空格,可是第二行就是上不来,按删除键就会把第一行字删了,为什么...

    点击查看wps文档中第一行字后面有很多空格,可是第二行就是上不来,按删除键就会把第一行字删了,为什么具体信息 答:wps文档中第一行字后面有很多空格,可是第二行就是上不来,按删除键就会把第一行字删了是 ...

  5. [css] 判断第一行和第二行的颜色分别是什么?并解释为什么?

    [css] 判断第一行和第二行的颜色分别是什么?并解释为什么? <style> .red {color:red;} .green {color:green;} </style> ...

  6. Android build.gradle文件详解(转述自《Android第一行代码》第二版)

    Android build.gradle文件详解 1. 最外层目录下的build.gradle文件 1.1 repostories 1.2 dependencies 2. app目录下的build.g ...

  7. 输入在第一行中给出一个正整数n(1)。第二行输入n个整数,用空格分开。在一行中输出最大值及最大值的最小下标,中间用一个空格分开。

    本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始). 输入格式: 输入在第一行中给出一个正整数n(1).第二行输入n个整数,用空格分开. 输出格式: 在一行中输出最大值及最 ...

  8. 第一行有一个整数,表示数字拼图个数 n。第二行有 n 个 整数,表示给出的 n 个数字拼图 上的数字ai。

    第一行有一个整数,表示数字拼图个数 n.第二行有 n 个 整数,表示给出的 n 个数字拼图 上的数字ai. //普通排序 #include<bits/stdc++.h> using nam ...

  9. 编写程序,从键盘输人 10个整数,之间以一个空格隔开,存放在一维数组中。找出值最大和最小的元素,第一行输出最大值及其所在的元素下标,之间以一个空格隔开;第二行输出最小值及其所在的元素下标,之间以一个空

    题目:编写程序,从键盘输人 10个整数,之间以一个空格隔开,存放在一维数组中.找出值最大和最小的元素,第一行输出最大值及其所在的元素下标,之间以一个空格隔开;第二行输出最小值及其所在的元素下标,之间以 ...

最新文章

  1. python使用fpdf生成数据报告pdf文件
  2. Emacs之LaTeX环境配置及效果展示
  3. menu---A.2-基本算法实例
  4. asp php 对照表,asp 与php中常用函数对比
  5. 临键锁如何实现幻读_如何实现智能锁客户裂变?看完你就已成功一半!
  6. 2019第十届蓝桥杯B组C++省赛E题迷宫--BFS(倒搜)
  7. python中元组的概念_初步讲解Python中的元组概念
  8. 平安oracle面试考题,中国平安银行面试笔试题目 软件测试方向
  9. [转]win10 vs2010安装教程(超详细,附下载链接)
  10. Photoshop将图片转为RGB颜色模式 您还不会吗?
  11. 3Ds Max动画课程设计
  12. 打造有身体的 AI丨记青源Workshop具身智能与机器人研讨会(2022年第8期)
  13. layer的move要怎么用
  14. re.sub 使用方法
  15. Python之控制台版增删改查(电影院信息管理)
  16. python制作炫酷吊炸天的二维码
  17. 苹果xr配置_5000元以内苹果手机推荐:11、XS、XSMax怎么选?
  18. 又是一年将尽时 移动开始话费大促销
  19. PyTorch中池化层的padding和ceil_mode参数设置
  20. 骁龙660是32位还是64位_微信有32位与64位,很多人不知道~

热门文章

  1. SEM搜索引擎营销 (SEM经理)
  2. html如何做左侧导航条,如何使用HTMLCSS制作左侧滑动导航条
  3. Postgresql中如何正确删除role
  4. 红队作业 | MSF源码级别免杀实录
  5. python拼图识别_Python中的拼图
  6. ubuntu 创建共享盘
  7. activitythread.java,Android ActivityThread.reportSizeConfigurations导致应...
  8. [转贴]虚拟化时记忆体管理:AMD NPT/Intel EPT简介--转自沈洁转自某港澳台同胞
  9. linux火狐怎么清除缓存文件,Firefox缓存文件夹位置设置及清除缓存方法
  10. C++11新特性之decltype类型推导