lcd1602接单片机的p0口跟接p1口为什么程序要修改

2024-11-13 05:24:15
推荐回答(3个)
回答1:

程序跟硬件密切相关,硬件改了,程序当然也要更改
好的程序更改容易些,如原来是P0口输出8位并行数据,现改成P1口
如果在程序开头宏定义  lcddata 为P0
那么程序中所有P0处都可以用 lcddata代替
如果硬件接法变成了P1口,现只需修改程序开头部分的宏定义  lcddata 为P1
程序中间就不用改动了

#define lcddata P0//宏定义某一端口
sbit lcden=P3^4;//宏定义某一引脚
sbit rs=P3^5;
sbit rw=P3^6;

void write_com(uchar com)//向LCD1602写命令
{
lcddata=com;)// lcddata代替P0,程序中可能要多次用到,修改时只修改宏定义即可
rs=0; // rs代替P3^5,程序中可能要多次用到,修改时只修改宏定义sbit rs=....
rw = 0;
lcden=0;
Delay1ms(10);
lcden=1;
Delay1ms(10);
lcden=0;
}
void write_date(uchar date))//向LCD1602写数据
{
lcddata=date;
rs=1;
rw=0;
lcden=0;
Delay1ms(10);
lcden=1;
Delay1ms(10);
lcden=0;
}

回答2:

因为如果不修改程序,那么就不能驱动液晶

回答3:

是不是接口定义不一样