用Proteus联合Keil联合调试做 LCD液晶显示器 显示的应用仿真问题

用Proteus联合Keil联合调试做 LCD液晶显示器 显示的应用仿真问题
希望大虾能够帮我解决这个问题..第一个程序问题.用C语言编辑.要求能够做到显示出来的东西能够移动.
第二 帮我拟几个关于这个的几个方案问题..希望能够详细一点. 好的话 我能加分的 谢谢大虾了啊!
单片机芯片用at89c51...显示器件用 1602 就是16*2的那种.要求就是通过Keil与Proteus联调....实现的现实效果可以左移.等多种方法.希望帮我编一下...告诉我电路图如何来连接

楼上的答案无疑是错的,因为楼主要求的是LCD而不是LED,LCD种类有很多,不知道型号谁也无法写驱动,驱动的编写当然是从最简单的发送特定地址、发送单个字符开始,程序应该分成发地址,和发数据两个,
显示移动的问题就是改变地址的问题,
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-04-26
这个问题我才做过!给你看哈我的程序!
#include <reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar wan,qian,bai,shi,ge;
sbit d1=P1^0;
sbit dula=P2^6;
sbit wela=P2^7;

void main()
{
long int temp;
while(1)
{
temp++;

wan=temp/10000;
qian=temp%10000/1000;
bai=temp%10000%1000/100;
shi=temp%10000%1000%100/10;
ge=temp%10;

display( ge, shi, bai, qian, wan);
}
}
void display(uchar ge, uchar shi,uchar bai,uchar qian,uchar wan)
{
dula=1;
P0=table[wan];
dula=0;

wela=1;
P1=0x01;
wela=0;
delay(10);

dula=1;
P0=table[qian];
dula=0;

wela=1;
P1=0x02;
wela=0;
delay(10);
dula=1;
P0=table[bai];
dula=0;

wela=1;
P1=0x04;
wela=0;
delay(10);

dula=1;
P0=table[shi];
dula=0;

wela=1;
P1=0x08;
wela=0;
delay(10);

dula=1;
P0=table[ge];
dula=0;

wela=1;
P1=0x10;
wela=0;
delay(10);

}
我也不知道是不是对的!但是我运行出来是对的!还可以显示