欢迎来到天天文库
浏览记录
ID:38646738
大小:26.00 KB
页数:3页
时间:2019-06-17
《串口扫描枪的数据显示于LCD1602》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、此程序在郭天祥老师的开发板上实验,可串口通信,将条码信息显示于LCD1602上。供大家参考使用。#include#defineucharunsignedchar#defineuintunsignedintunsignedcharflag,Address_Buf=0;unsignedcharUART_Receive_Buf[14];sbitlcden=P3^4;//液晶使能端sbitlcdrs=P3^5;//液晶数据命令选择端sbitdula=P2^6;//申明U1锁存器的锁存端sbitwela=P2^7;//申明U2锁存器的锁存端uch
2、arnum;voiddelay(uintz){uintx,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}voidwrite_com(ucharcom){lcdrs=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;}voidwrite_data(uchardate){lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;}voidinit(){TMOD=0x20;TH1=0xfd;TL1=0xfd;TR1=1;SM0=0;SM1=1;REN=1
3、;EA=1;ES=1;dula=0;wela=0;lcden=0;write_com(0x38);//设置16X2显示,5X7点阵,8位数据接口write_com(0x0c);//设置开显示,不显示光标write_com(0x06);//写一个字符后地址指针加1write_com(0x01);//显示清零,数据指针清零}voidmain(){init();while(1){if(flag){write_com(0x01);write_com(0x80);for(Address_Buf=0;Address_Buf<14;Address_Buf++){wri
4、te_data(UART_Receive_Buf[Address_Buf]);}flag=0;}}}voidser()interrupt4{if(RI==1){UART_Receive_Buf[Address_Buf]=SBUF;RI=0;Address_Buf++;if(Address_Buf==14)Address_Buf=0;}flag=1;}
此文档下载收益归作者所有