永发信息网

51单片机控制1602的通信问题。 STC89C52RC单片机,控制1602液晶,并口通信,例程

答案:3  悬赏:10  手机版
解决时间 2022-01-01 00:07
51单片机控制1602的通信问题。

STC89C52RC单片机,控制1602液晶,并口通信,例程上是将数据直接赋予一条总线(例如date=P0)。
请问若八条并口数据线不在一条总线上时(例如四位数据口接在单片机P1,另四位接在P3,如何并口方式操作液晶?
虚心请教各位高手。
最佳答案
可以操作,就看你具体用的是哪些口了
全部回答
#define lcd1602_flag #define lcd1602_port p0 #include #include #define int8u unsigned char sbit lcd1602_rs=p2^0; sbit lcd1602_e=p3^6; sbit lcd1602_rw=p2^1; sbit lcd1602_busy=p0^7; int8u str[]=" my name is: xxxxxxxxxxxxxxxx"; void lcd1602_checkbusy() { do { lcd1602_busy=1; lcd1602_rs=0; lcd1602_rw=1; lcd1602_e=0; lcd1602_e=1; } while(lcd1602_busy); } void lcd1602_writecmd(const int8u cmd) { lcd1602_checkbusy(); lcd1602_rs=0; lcd1602_rw=0; lcd1602_e=1; lcd1602_port=cmd; lcd1602_e=0; } void lcd1602_writedata(const int8u c) { lcd1602_checkbusy(); lcd1602_rs=1; lcd1602_rw=0; lcd1602_e=1; lcd1602_port=c; lcd1602_e=0; } void lcd1602_init() { lcd1602_writecmd(0x38); //显示模式为8位2行5*7点阵 lcd1602_writecmd(0x0f); //display enable,flag enable,flash enable, lcd1602_writecmd(0x06); //flag move to right,screen don't move lcd1602_writecmd(0x01); //clear screen } void lcd1602_display(const int8u *ptr) { int8u data i=0; int8u *data q; q=ptr; lcd1602_writecmd(0x80); while(q!=null && (*q!='\0') && i<16) { lcd1602_writedata(*q); q++; i++; } lcd1602_writecmd(0xc0); while(q!=null && (*q!='\0') && i>=16 && i<32) { lcd1602_writedata(*q); q++; i++; } } main() { lcd1602_init(); lcd1602_display(str); while(1); }
其实51系列的端口都有相应的地址的,只要在程序前面定义好另一个字节等于你要的高低位就可以了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
如图所示,边长为10厘米的正方体浸没在水中,
carcamcorder是什么意思
招财盆栽
我国长江流域的伏旱天气,是在什么控制下形成
插座的税率是多少
泰州分拨中心到扬州的快递要几天
单选题实验题在“用天平称物体的质量”的实验
言情小说女主林乔男主沐辰的小说名字是什么
微信怎么用群发助手
我国有哪些著名的瀑布
PS考试考什么内容?
欧莱雅化妆品怎么样
di an 怎么写?
小新同学用水平力推停在水平公路上的汽车,没
新主播第一次直播怎么找话题,刚开始直播看的
推荐资讯
什么叫硫容量
银行卡存钱需要密码吗
城府深的人
VB6.0我按照书上的例子写的代码,运行出来什
下列几何图形中是轴对称图形的有①等腰三角形
单选题下列水污染最严重的河流是A.长江B.黑龙
潮味坊我想知道这个在什么地方
双庙村村在哪里啊,我有事要去这个地方
金鹏金属材料有限公司在哪里啊,我有事要去这
川泰小吃在什么地方啊,我要过去处理事情
正宗牛肉刀削面我想知道这个在什么地方
悸动烧仙草怎么去啊,有知道地址的么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?