找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 901|回复: 0
打印 上一主题 下一主题
收起左侧

1602渐入显示

[复制链接]
跳转到指定楼层
楼主
ID:350005 发表于 2018-7-14 15:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit lcden=P3^4;
sbit rs=P3^5;
sbit rw=P3^6;       
sbit dula=P2^6;
sbit wela=P2^7;
uchar table1[]="HELLO QX-MCS51";
uchar table2[]="  QQ:7651719  ";
void delay(uint x)
{
        uint a,b;
        for(a=x;a>0;a--)
                for(b=10;b>0;b--);
}

void delay1(uint x)
{
        uint a,b;
        for(a=x;a>0;a--)
                for(b=100;b>0;b--);
}

void write_com(uchar com)
{
        P0=com;
        rs=0;
        lcden=0;
        delay(10);
        lcden=1;
        delay(10);
        lcden=0;
       
}

void write_date(uchar date)
{
        P0=date;
        rs=1;
        lcden=0;
        delay(10);
        lcden=1;
        delay(10);
        lcden=0;
       
}

void init()
{
        rw=0;
        dula=0;
        wela=0;
        write_com(0x38);   //显示模式设置:16×2显示,5×7点阵,8位数据接口
        delay(20);
        write_com(0x0f);   //显示模式设置
        delay(20);
        write_com(0x06);   //显示模式设置:光标右移,字符不移
        delay(20);
        write_com(0x01);   //清屏幕指令,将以前的显示内容清除
        delay(20);       
}

void main()
{
        uchar a;
        init();

        write_com(0x80+17);         //将第一个字符写在向右偏移17个字符处,为后面的由右向左划入做准备。
        delay(20);
        for(a=0;a<14;a++)
        {
        write_date(table1[a]);
        delay(20);               
        }

        write_com(0xc0+17);
        delay(50);
        for(a=0;a<14;a++)
        {
        write_date(table2[a]);
        delay(40);               
        }

        for(a=0;a<16;a++)
        {
                write_com(0x18); //左移
                delay1(200);
        }

        while(1);
}


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表