完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
#include #include #define uchar unsigned char #define uint unsigned int uchar addr[6]={0x8d,0x89,0x8b,0x85,0x83,0x81}; //年,月,日,时,分,秒 读 uchar time[6]; uchar zhuanhua[12]; int t[8]; uchar th,tl; ***it rs=P1^2; //数据/命令选择 ***it rw=P1^1; //读写控制 ***it e=P1^0; //片选信号 ***it rst=P3^0; //ds1302 ***it sclk=P3^1; ***it io=P3^2; ***it dq=P1^3;//ds18b20定义数据线 #define lcd P2 //8 bit数据线 #define low 0 #define high 1 void ds18b20ini(); ds18b20writebyte(uchar byte); uchar ds18b20readbyte(); void gettemper(); void ds18b20dis( ); void delayus(uint k) { while(k--); } void delay(uint t) { int i; while(t--) { for(i=0;i<120;i++); } } //写命令函数 void wcom(uchar com) { //checkbusy(); e=low; rs=low; rw=low; lcd=com; //delay(5); e=high; delay(10); e=low; } //写数据函数 void wdata(int dat) { //checkbusy(); e=low; rs=high; rw=low; lcd=dat; // delay(5); e=high; delay(10); e=low; } //初始化函数 void init() { lcd=0xff; delay(100); wcom(0x30); //写基本指令集 delay(1); wcom(0x30); delay(1); wcom(0x0c); //显示开 delay(1); wcom(0x01); //清屏指令 delay(20); wcom(0x06); //游标右移 delay(100); } //显示汉字 dishanzi(uchar addr,uchar *hz) { int i; //checkbusy(); wcom(addr); for(i=0;hz[i]!=' |