资源描述:
《液晶显示器通用子程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、#include//头文件#include#include//#include//Keillibrary//**************************************#defineucharunsignedchar//定义一下方便使用#defineuintunsignedint//定义一下方便使用#defineulongunsignedlong//定义一下方便使用#defineTEMP_ML0x03//00000011温度命令#defineHUMI_ML0x05//00000101温度
2、命令unsignedcharerror;//全局错误变量unsignedcharack;//全局应答变量//floattemp_zi;//全局应答变量//floathumi_zi;//全局应答变量unsignedchartemp_h;//全局应答变量unsignedchartemp_LL;//全局应答变量text_jishuan_temp();text_jishuan_humi();voidkey();voidbujindianjiqudong();//电机执行程序ucharp;bitfanzhuan,zhengzhuan;ucharnn,jishu,jishu2,rh;sign
3、edchary;ucharjishu1;codedzf[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09};codedzz[8]={0x08,0x09,0x01,0x03,0x02,0x06,0x04,0x0c,};unsignedintxianzhi_t=0;//温度显值unsignedintxianzhi_h=0;//湿度显值ucharsetzhi_h,setzhi_l;bitsetbz_h,setbz_l,setkey;sbitDATA=P2^7;//数据sbitSCK=P2^6;//时钟//**********************
4、*********基本驱动程uchardis_buf[32];ucharpos_d;uchardis_d;sbitrs=P3^5;sbitrw=P3^6;sbiten=P3^7;sbithi=P2^0;sbitlo=P2^1;sbittiaozheng=P2^2;ucharhiset,loset;//------------------------------------------------------------bitr_busy()//测试忙状态{bitbusy;rs=0;rw=1;en=0;_nop_;en=1;//busy=(bit)(P0&0x80);if((P0&
5、0X80)==0X80)busy=0;elsebusy=0;en=0;returnbusy;}//------------------------------------------------------------voidw_cmd(cmd)//写命令{rs=0;rw=0;en=0;P0=cmd;en=1;en=0;}//------------------------------------------------------------voidw_pos(ucharpos)//写显示位置地址数据{w_cmd(pos+0x80);//显示第一行或第二行,第一行0x80}//
6、------------------------------------------------------------voidw_pos1(ucharpos)//写显示位置地址数据{w_cmd(pos+0xc0);//显示第一行或第二行,第一行0x80}//------------------------------------------------------------voidw_dat(uchardat)//写数据{while(r_busy());rs=1;rw=0;en=0;P0=dat;en=1;en=0;}//---------------------------
7、---------------------------------voiddelay1(ucharms)//延时子程序{uchari;while(ms--){for(i=0;i<220;i++);}}//------------------------------------------------------------dis_dat()//数据转换{dis_buf[0]='R';//显示RHHxxdis_buf[1]='H';dis_buf[2]='H';dis_buf[3]