找回密码
 立即注册

QQ登录

只需一步,快速开始

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

1602滚动显示 求 大神释疑

[复制链接]
跳转到指定楼层
楼主
1602滚动为什么有3条0x38   都是什么命令   我知道其中一个是功能设定指令的( 8位总线  显示2行  5*7点阵)命令
数据显示函数为什么里的while循环里     为什么还要再次发送第一行的数据,作用是什么
void init()
{
        delay(1000);
        /*wrc(0x32);         
        wrc(0x28);
        wrc(0x28);        */        //四位的LCD要加上
        wrc(0x38);
        wrc(0x38);
        wrc(0x38);        
        wrc(0x0c);        
        wrc(0x01);        
}
void display()   //传送数据函数
{
        uint8 i;
        wrc(0x00+0x80);
        for(i=0;i<16;i++)
        {
                wrd(a[ i]);
               
        }
        wrc(0x40+0x80);
        for(i=0;i<27;i++)
        {
                wrd(b);
      
        }
        wrc(0x07);         //每写一个数据屏幕就要右移一位,就相对于数据来说就是左移了;
        while(1)           //这个while循环   怎么和上面的重复    多了个延时  
        {        
                wrc(0x00+0x80);
                for(i=0;i<16;i++)
                {
                        wrd(a);
                        delay(60000);        //如果不加这条延时语句的话滚动会非常快。
                }
        }         
}
void main()
{
        init();
        while(1)
        {
                display();
        }        
}

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

使用道具 举报

沙发
ID:249352 发表于 2017-11-14 15:46 | 只看该作者

首先要知道是共阳还是共阴的,只要一个5V输出的直流电源,如果是共阳的5V串一个100欧的电阻接到共阳端,0V分别接到其他脚上,
回复

使用道具 举报

板凳
ID:164602 发表于 2017-11-15 08:53 | 只看该作者
朋友,你不知道吗,玩单片机一定是要和硬件挂钩的,你没有硬件说明,怎么让别人回答嘛。
我这里有一个我编写的示例程序,在HC6800-ES-V2.0板子上通过,1602是带字库的1602A V2.0版本。
程序先让屏幕左移,后右移,然后有其它显示现象。你看看。你的程序我也是看不懂,很多相同命令连续执行,搞不懂为什么,也不想搞懂了,因为我的程序是可以完成屏幕移动的。

1602显示程序.rar

38.86 KB, 下载次数: 11

回复

使用道具 举报

地板
ID:60244 发表于 2017-11-15 19:28 | 只看该作者
HC6800-ES-V2.0 发表于 2017-11-15 08:53
朋友,你不知道吗,玩单片机一定是要和硬件挂钩的,你没有硬件说明,怎么让别人回答嘛。
我这里有一个我编 ...

大哥,我把你的程序  例二和例三注释掉后 ,出现图中的警告,这是怎么回事啊?另外 你的lcd复位函数起什么作用   不加这个函数会怎么样?

回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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