最新喷雾程序参考.doc_第1页
最新喷雾程序参考.doc_第2页
最新喷雾程序参考.doc_第3页
最新喷雾程序参考.doc_第4页
最新喷雾程序参考.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/* 编号 功能 模式0 测试模式 模式1 大巷喷雾 模式2 触控喷雾 模式3 放炮喷雾 模式4 综采喷雾 模式5 测尘喷雾 模式6 遥控喷雾 模式7 设置菜单进入综采面系统界面*/ /*/* LCM19264 C驱动阴码,逆向,行列, */ /*/* 球阀驱动 */* H1-右开关、霍尔开关 H2-左开关、霍尔开关 MOTO1-电机正 MOTO2-电机负*/ /*/#include #include #include #include /*/液晶屏引脚定义/sbit CS1=P43; sbit CS2=P33;sbit CS3=P34;sbit RS=P02;sbit RW=P01;sbit EN=P00;sbit RST=P32; #define DataPort P1#define on1#define off0#define save 0x01 /*/sbit QF2=P25;sbit KM =P27;sbit Y1 =P26;sbit K4 =P44;sbit Y0 =P24;sbit K3 =P45;sbit K2 =P41;sbit K1 =P46;sbit QF1=P07;sbit HW1=P03;sbit HW2=P04;sbit HW3=P05;sbit HW4=P06; /*/#define uchar unsigned char#define uint unsigned int#define NOP _nop_()/*/uchar mode,hour,minute,temp;uint time,time_jian,tcnt;bit time_flag;bit wuxian;bit jishi,jishizhong;/*/void tiansheng();void display_dashuzi(uchar xx,uchar yy,uchar n);void display_hanzi(uchar xx,uchar yy,uchar n,uchar fb);void display_xiaoshuzi(uchar xx,uchar yy,uchar n,uchar fb); void time_init();void reset();void delay(long v);void lcd_init(void);void dison_off(uchar o);void set_startline(uchar i);void set_xy(uchar x,uchar y);void lw(int x, uchar y, uchar dd);void wcode(uchar c,uchar csl,uchar csr,uchar cs3);void wdata(uchar c,uchar csl,uchar csr,uchar cs3);void display_shuzi(uchar xx,uchar y,uchar n,uchar fb);void display_tiansheng_word(uchar xx,uchar yy,uchar n,uchar fb);void zhujiemian();/uchar code qiang;uchar code dashuzi;uchar code hanzi;uchar code shuzi;/*主程序*/void main(void) time_init();/时钟初始化 reset(); /液晶屏复位 lcd_init();/液晶屏初始化 mode=4;time_jian=30;hour=15;minute=47;zhu:while(1) zhujiemian(); if(HW4) goto set; set:while(1) if(HW3) goto zhu; void zhujiemian()switch(mode) case 0: display_hanzi(64,0,53,0); display_hanzi(80,0,54,0); display_hanzi(96,0,55,0); display_hanzi(112,0,56,0); break;/测试模式 case 1: display_hanzi(64,0,0,0); display_hanzi(80,0,1,0); display_hanzi(96,0,12,0); display_hanzi(112,0,13,0); if(K1|K2|Y0|Y1) QF1=QF2=1;TR0=1;jishizhong=1;time_jian=30; if(Y0|Y1) wuxian=1; else if(!jishizhong) QF1=QF2=0;time_jian=30; else break;/大巷喷雾 case 2: display_hanzi(64,0,2,0); display_hanzi(80,0,3,0); display_hanzi(96,0,12,0); display_hanzi(112,0,13,0); if(K1|Y0) QF1=QF2=0;TR0=1;jishizhong=1;time_jian=30; if(Y0|Y1) wuxian=1; else if(!jishizhong) QF1=QF2=1;time_jian=30; else break;/触控喷雾 case 3: display_hanzi(64,0,4,0); display_hanzi(80,0,5,0); display_hanzi(96,0,12,0); display_hanzi(112,0,13,0); if(K1&K2) QF1=QF2=0;TR0=1;jishizhong=1;time_jian=30; else if(!jishizhong) QF1=QF2=1;time_jian=30; else break;/放炮喷雾 case 4: display_hanzi(64,0,6,0); display_hanzi(80,0,7,0); display_hanzi(96,0,12,0); display_hanzi(112,0,13,0); if(K1|Y0|Y1) if(K1|Y0) QF1=0; if(Y1) QF2=0; TR0=1;jishizhong=1;time_jian=30; if(Y0|Y1) wuxian=1; else if(!jishizhong) QF1=QF2=1;time_jian=30; else break;/综采喷雾 case 5: display_hanzi(64,0,8,0); display_hanzi(80,0,9,0); display_hanzi(96,0,12,0); display_hanzi(112,0,13,0); if(K3) if(K1|K2|Y0|Y1) QF1=QF2=1;TR0=1;jishizhong=1;time_jian=30; if(Y0|Y1) wuxian=1; else if(!jishizhong) QF1=QF2=0;time_jian=30; else QF1=QF2=1;time_jian=30;TR0=0;jishizhong=0;wuxian=0; break;/测尘喷雾 case 6: display_hanzi(64,0,10,0); display_hanzi(80,0,11,0); display_hanzi(96,0,12,0); display_hanzi(112,0,13,0); if(Y0|Y1) QF1=QF2=0;TR0=1;jishizhong=1;time_jian=30; if(Y0|Y1) wuxian=1; else if(!jishizhong) QF1=QF2=1;time_jian=30; break;/遥控喷雾 case 7: break;/ default: break; ; display_hanzi(0,2,14,0); /信号 display_hanzi(16,2,15,0); display_xiaoshuzi(32,2,10,0);switch(mode) case 1: display_hanzi(40,2,16,K1|Y0);/热释1 display_hanzi(56,2,17,K1|Y0); display_xiaoshuzi(72,2,1,K1|Y0); display_hanzi(88,2,16,K2|Y1);/热释2 display_hanzi(104,2,17,K2|Y1); display_xiaoshuzi(120,2,2,K2|Y1); break;/大巷喷雾 case 2: display_hanzi(40,2,2,K1|Y0);/触控 display_hanzi(56,2,3,K1|Y0); break;/大巷喷雾 case 3: display_hanzi(40,2,2,K1);/触控 display_hanzi(56,2,3,K1); display_hanzi(88,2,44,K2);/声控 display_hanzi(104,2,3,K2); break;/放炮喷雾 case 4: display_hanzi(40,2,47,K1);/触控 display_hanzi(56,2,48,K1); display_hanzi(88,2,45,Y1|Y0);/无线2 display_hanzi(104,2,46,Y1|Y0); if(Y0|Y1) if(Y0) display_hanzi(120,2,49,Y0); if(Y1) display_hanzi(120,2,50,Y1); else display_hanzi(120,2,43,Y1); break;/综采喷雾 case 5: display_hanzi(40,2,16,K1|K2|Y0|Y1);/热释1 display_hanzi(56,2,17,K1|K2|Y0|Y1); if(K1&K2|Y0&Y1) display_xiaoshuzi(72,2,1,K1|Y0); display_xiaoshuzi(80,2,2,K2|Y1); else if(K1|Y0|K2|Y1) if(K1|Y0) display_xiaoshuzi(72,2,1,K1|Y0); else display_xiaoshuzi(72,2,2,K2|Y1); else display_xiaoshuzi(72,2,11,0); display_xiaoshuzi(80,2,11,0); display_hanzi(96,2,51,K3);/粉尘 display_hanzi(112,2,52,K3); break;/ case 6: display_hanzi(40,2,45,Y0);/无线1 display_hanzi(56,2,46,Y0); display_xiaoshuzi(72,2,1,Y0); display_hanzi(88,2,45,Y1);/无线2 display_hanzi(104,2,46,Y1); display_xiaoshuzi(120,2,2,Y1); break;/ case 7: break;/ default: break; ; display_hanzi(0,4,18,0); /球阀: display_hanzi(16,4,19,0); display_xiaoshuzi(32,4,10,0);if(!QF1|!QF2) display_hanzi(40,4,20,0); display_hanzi(56,4,21,0);/开启 display_hanzi(88,4,24,0);/降尘中 display_hanzi(104,4,25,0); display_hanzi(120,4,26,0); else display_hanzi(40,4,22,0); display_hanzi(56,4,23,0);/关闭 display_hanzi(88,4,43,0);/降尘中 display_hanzi(104,4,43,0); display_hanzi(120,4,43,0); display_dashuzi(144,2,time_jian/100%10);/延时时间 144 160 176 display_dashuzi(160,2,time_jian/10%10); display_dashuzi(176,2,time_jian%10); display_xiaoshuzi(0,0,hour/10%10,0);/实时时间 display_xiaoshuzi(8,0,hour%10,0); display_xiaoshuzi(16,0,10,0); display_xiaoshuzi(24,0,minute/10%10,0); display_xiaoshuzi(32,0,minute%10,0);if(wuxian) display_hanzi(156,0,42,0);/无线else display_hanzi(156,0,43,0);if(time_flag) display_hanzi(176,0,41,0);/定时时钟符else display_hanzi(176,0,43,0); display_hanzi(16,6,29,0);/天盛电气设备有限公司 display_hanzi(32,6,30,0); display_hanzi(48,6,33,0); display_hanzi(64,6,34,0); display_hanzi(80,6,35,0); display_hanzi(96,6,36,0); display_hanzi(112,6,37,0); display_hanzi(128,6,38,0); display_hanzi(144,6,39,0); display_hanzi(160,6,40,0);void time_init()TH0=0x4B;TL0=0xff; /11.0592MTMOD=0x21;ET0=1;EA=1;/TR0=1; void t0() interrupt 1 using 0 /定时中断服务函数TH0=0x4B;TL0=0xff; /11.0592Mtcnt+; /每过50ms tcnt加一if(tcnt=20) /计满20次(1秒)时 tcnt=0; /重新再计if(time_jian0) time_jian-; else /jishi=0; jishizhong=0; wuxian=0; TR0=0; /*-*/void delay(long v) while(v!=0)v-;/*-*/void lcd_busy(void) RS=0; RW=1; DataPort=0xff; while(1) EN=1; if(DataPort=64)&(x128) set_xy(x-64,y); wdata(dd,1,0,1); ; if(x=128) set_xy(x-128,y); wdata(dd,1,1,0); ;/*-*/void wdata(uchar c,uchar cs1,uchar csr,uchar cs3) CS1=cs1; CS2=csr; CS3=cs3; lcd_busy(); RS=1; RW=0; DataPort=c; EN=1; EN=0;/*-*/void set_startline(uchar i) /起始行 i=0xc0+i; wcode(i,0,0,0);/*-*/void set_xy(uchar x,uchar y) /X Y 设置 x=x+0x40; y=y+0xb8; wcode(x,0,0,0); wcode(y,0,0,0);/*-*/void dison_off(uchar o) /开关o=o+0x3e; wcode(o,0,0,0); /*-*/void reset() RST=0; delay(20); RST=1; delay(20);/*-*/void lcd_init(void) /LCM初始化 uchar x,y; reset(); set_startline(0); dison_off(0); for(y=0;y8;y+) for(x=0;x192;x+)lw(x,y,0); dison_off(1);/*void display_tiansheng_word(uchar xx,uchar yy,uchar n,uchar fb) int i,dx; for(i=0;i32;i+) dx=qiangi+n*128; if(fb)dx=255-dx; lw(xx+i,yy,dx); dx=qiangi+n*128+32; if(fb)dx=255-dx; lw(xx+i,yy+1,dx); dx=qiangi+n*128+64; if(fb)dx=255-dx; lw(xx+i,yy+2,dx); dx=qiangi+n*128+96; if(fb)dx=255-dx; lw(xx+i,yy+3,dx); */void display_dashuzi(uchar xx,uchar yy,uchar n) int i,dx; for(i=0;i16;i+) dx=dashuzii+n*64; lw(xx+i,yy,dx); dx=dashuzii+n*64+16; lw(xx+i,yy+1,dx); dx=dashuzii+n*64+32; lw(xx+i,yy+2,dx); dx=dashuzii+n*64+48; lw(xx+i,yy+3,dx); /*void display_dashuzi(uchar xx,uchar yy,uchar n) int i,dx; for(i=0;i12;i+) dx=dashuzii+n*36; lw(xx+i,yy,dx); dx=dashuzii+n*36+12; lw(xx+i,yy+1,dx); dx=dashuzii+n*36+24; lw(xx+i,yy+2,dx); */void display_hanzi(uchar xx,uchar yy,uchar n,uchar fb) int i,dx; for(i=0;i16;i+) dx=hanzii+n*32; if(fb)dx=255-dx; lw(xx+i,yy,dx); dx=hanzii+n*32+16; if(fb)dx=255-dx; lw(xx+i,yy+1,dx); void display_xiaoshuzi(uchar xx,uchar yy,uchar n,uchar fb) int i,dx; for(i=0;i8;i+) dx=shuzii+n*16; if(fb)dx=255-dx; lw(xx+i,yy,dx); dx=shuzii+n*16+8; if(fb)dx=255-dx; lw(xx

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论