跪求单片机程序:使用AT89C51,DS18B20温度传感器,12864液晶屏显示设计一个数字式温计。
- 提问者网友:辞取
- 2021-02-03 08:00
- 五星知识达人网友:第四晚心情
- 2021-02-03 08:56
- 1楼网友:低音帝王
- 2021-02-03 09:22
加我qq:879361678 我发给你
// void delay(uint n) {uint i; for(;n>0;n--) for(i=200;i>0;i--);} void delay1(uint i ) { while(i--);} void delay50us() {register int i; for (i=0;i<20;i++);}
// void check() //¼ì²âlcdã¦ïð×´ì¬ {rs=0; //¶áð´ö¸áî rw=1; //¶á e=1; port=0x00; e=1; while(busy); e=0;}
// void sendcommand(uchar command) {check(); rs=0; //rs¸ßµçæ½£¬db0~db7ïôê¾ö¸áî rw=0; //rw=l; port=command; e=1; //í¬ïâ e=0; // rw=l,e=h-l,²úéúïâ½µñø,¿é½«êý¾ýð´èë }
// void writedata(uchar dat) {check(); rs=1; //rs¸ßµçæ½£¬db0~db7ïôê¾êý¾ý rw=0; // rw=l,e=h-l,²úéúïâ½µñø,¿é½«êý¾ýð´èë port=dat; e=1; // rw=l,e=h-l,²úéúïâ½µñø,¿é½«êý¾ýð´èë e=0; // rw=l,e=h-l,²úéúïâ½µñø,¿é½«êý¾ýð´èë }
// void select(uint n) {switch(n) { case 0:cs1=0;cs2=0;break; //è« case 1:cs1=0;cs2=1;break; //×ó case 2:cs1=1;cs2=0;break; //óò } }
// void setpage(uchar page) {page=page&0xbf; //»ñè¡ò³a2-a0 page=page|0xb8; sendcommand(page); //ò³µøö··¢ëí }
// void setcolumn(uchar column) {column=column&0x7f; //»ñè¡áða5-a0 column=column|0x40; sendcommand(column);}
// void setline(uchar line) {line=line&0xff; //a5-a0 line=line|0xc0; sendcommand(line);}
// void seton(uint n) { n=n|0x3f; sendcommand(n);}
// void clear(uint n) {uchar i,j; select(n); for(i=0;i<8;i++) {setpage(i); setcolumn(0); for(j=0;j<64;j++) writedata(0); //öã0çå¿õ }}