求指教!关于四线1602~~~!!!
最近要用1602 由于IO口的数量有限 要用到四线的1602驱动 然后我写了一个 但是 不能显示,在此 我有个问题:数据输入是D0-D3输入 还是D4-D7输入???#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table[]="I LOVE MCU";
uchar code table1[]="pingjun:";
uchar code table2[]="0123456789";
uchar bb,cc,bai,shi,ge;
uchar m,c;
sbit wr=P2^1;
sbit rd=P2^0;
sbit en=P3^4;
sbit rs=P3^5;
void delayms(uint n)
{
uint i;
while(n--)
for(i=330;i>0;i--);
}
void red(uchar com) //写指令
{
rs=0;
P0=(com & 0xf0)>>4;
delayms(5);
en=1;
delayms(5);
en=0;
P0=(com & 0x0f);
delayms(5);
en=1;
delayms(5);
en=0;
}
void init() //初始化
{
en=0;
red(0x28);
delayms(10);
red(0x28);
delayms(10);
red(0x28);
delayms(10);
red(0x0f);
delayms(10);
red(0x06);
delayms(10);
red(0x01);
delayms(10);
red(0x80); //写入位置
}
void write(uchar date) //写入
{
rs=1;
P0=(date & 0xf0)>>4;
delayms(5);
en=1;
delayms(5);
en=0;
P0=(date & 0x0f);
delayms(5);
en=1;
delayms(5);
en=0;
}
void RED_0804()
{
wr=1;
delayms(10);
wr=0;
delayms(20);
rd=0;
cc=P1;
delayms(10);
rd=1;
}
void dispaly()
{
red(0x80+m);
delayms(10);
bai=bb/100;
shi=bb%100/10;
ge=bb%10;
write(table2);
delayms(10);
write(table2);
delayms(10);
write(table2);
delayms(10);
}
void main()
{
uint a;
init();
red(0x80);
for(a=0;a<=10;a++)
{
write(table);
delayms(10);
}
delayms(200);
red(0x01);
red(0x80+0x40); //移至下一行
for(a=0;a<=9;a++)
{
write(table1);
delayms(5);
}
while(1)
{
RED_0804();
if(bb!=cc)
{
bb=cc;
red(0x80+m);
bai=bb/100;
shi=bb%100/10;
ge=bb%10;
write(table2);
write(table2);
write(table2);
m=m+4 ;
if(m>12)
{
m=0;
}
delayms(250);
}
}
}
在这里 我数据是从D0-D3输入的 但是D4-D7我也输入过 一样不起作用 ,求大家指教如何修改程序 ?
附上的仿真和程序 点击此处下载 ourdev_667739RDHJIV.rar(文件大小:52K) (原文件名:1602.rar)
附件里有程序和仿真 点击此处下载 ourdev_667739RDHJIV.rar(文件大小:52K) (原文件名:1602.rar)
附件里有程序和仿真 为什么没有人? 1620四线不用D0-D3,用D4-D7
楼主可以看下我以前的帖子。 回复【4楼】xbwpc 文
1620四线不用d0-d3,用d4-d7
楼主可以看下我以前的帖子。
-----------------------------------------------------------------------
你的程序 我看过啊 采用的是单独定义 一位一位的操作 每根线单独定义是不是有点复杂? wj78681969 发表于 2011-8-15 11:16 static/image/common/back.gif
回复【4楼】xbwpc 文
1620四线不用d0-d3,用d4-d7
楼主可以看下我以前的帖子。
可以参考哈这个
http://www.amobbs.com/forum.php?mod=viewthread&tid=5503804&page=1
页:
[1]