diff --git a/.vscode/keil-assistant.log b/.vscode/keil-assistant.log index 96f7344..dd63fcb 100644 --- a/.vscode/keil-assistant.log +++ b/.vscode/keil-assistant.log @@ -1,2 +1,6 @@ [info] Log at : 2022/4/29|01:03:00|GMT+0800 +[info] Log at : 2022/4/30|17:48:13|GMT+0800 + +[info] Log at : 2022/4/30|20:14:44|GMT+0800 + diff --git a/.vscode/uv4.log.lock b/.vscode/uv4.log.lock index 138c8b9..c8c9003 100644 --- a/.vscode/uv4.log.lock +++ b/.vscode/uv4.log.lock @@ -1 +1 @@ -2022/4/29 1:06:45 \ No newline at end of file +2022/4/30 20:16:59 \ No newline at end of file diff --git a/DS18B20.LST b/DS18B20.LST new file mode 100644 index 0000000..783da46 --- /dev/null +++ b/DS18B20.LST @@ -0,0 +1,135 @@ +C51 COMPILER V9.56.0.0 DS18B20 04/30/2022 20:50:18 PAGE 1 + + +C51 COMPILER V9.56.0.0, COMPILATION OF MODULE DS18B20 +OBJECT MODULE PLACED IN DS18B20.OBJ +COMPILER INVOKED BY: D:\Keil_v5\C51\BIN\C51.EXE DS18B20.c OPTIMIZE(8,SPEED) BROWSE DEBUG OBJECTEXTEND TABS(2) + +line level source + + 1 #include "DS18B20.h" + 2 + 3 sbit DS18B20=P3^2; //定义数据线 + 4 + 5 void delay_ms(unsigned int x)//延时1ms + 6 { + 7 1 unsigned int y,z; + 8 1 for(y=x;y>0;y--) + 9 1 for(z=110;z>0;z--); + 10 1 } + 11 + 12 uchar DS18B20_Init() //初始化。成功返回1,不成功返回0. + 13 { + 14 1 uchar i; + 15 1 DS18B20 = 0; //将总线拉低480微秒~960微秒 + 16 1 i = 70; + 17 1 while(i--); //延时642微秒 + 18 1 DS18B20 = 1; //拉高总线,等待后续反馈 + 19 1 i = 0; + 20 1 while(DS18B20) //等待DS18B20拉低总线 + 21 1 { + 22 2 delay_ms(1); //定义的延迟1ms的延迟函数 + 23 2 i++; + 24 2 if(i>5) //等待5ms以上 + 25 2 { + 26 3 return 0; //初始化失败 + 27 3 } + 28 2 } + 29 1 return 1; //初始化成功 + 30 1 } + 31 + 32 uchar DS18B20_ReadByte() //通过读取8次状态位达到读取字节的目的 + 33 { + 34 1 uchar byte, bi; + 35 1 uint i, j; + 36 1 for(j=8; j>0; j--) + 37 1 { + 38 2 DS18B20 = 0; //先将总线拉低 + 39 2 i++; + 40 2 DS18B20 = 1; //然后释放总线 + 41 2 i++; + 42 2 i++; //延时6微秒等待数据稳定 + 43 2 bi = DS18B20; //读取数据,从最低位开始读取 + 44 2 byte = (byte >> 1) | (bi << 7); //从最低位开始记录,将byte依次右移 + 45 2 i = 4; //读取完之后等待48微秒再接着读取下一个数 + 46 2 while(i--); + 47 2 } + 48 1 return byte; //将读取完的字节保存 + 49 1 } + 50 + 51 void DS18B20_WriteByte(uchar dat)//函数通过循环写8个位实现写一个字节 + 52 { + 53 1 uint i, j; + 54 1 for(j=0; j<8; j++) + 55 1 { + C51 COMPILER V9.56.0.0 DS18B20 04/30/2022 20:50:18 PAGE 2 + + 56 2 DS18B20 = 0; //每写入一位数据之前先把总线拉低 + 57 2 i++; + 58 2 DS18B20 = dat & 0x01; //然后写入一个数据,从最低位开始 + 59 2 i=6; + 60 2 while(i--); //延时68微秒 + 61 2 DS18B20 = 1; //释放总线,给总线1微秒恢复时间才能接着写入下一位 + 62 2 dat >>= 1; + 63 2 } + 64 1 } + 65 + 66 int DS18B20_ReadTemp() //读取的温度有两个字节,分别用tml和tmh存储两个字节 + 67 { + 68 1 int temp = 0; + 69 1 uchar tmh, tml; + 70 1 DS18B20_Init(); //传感器初始化 + 71 1 delay_ms(1); //延时1微秒 + 72 1 DS18B20_WriteByte(0xcc); //跳过读取序列号操作 + 73 1 DS18B20_WriteByte(0x44); //温度转换指令 + 74 1 //完成温度转换功能 + 75 1 DS18B20_Init(); //传感器初始化 + 76 1 delay_ms(1); + 77 1 DS18B20_WriteByte(0xcc); //跳过读取序列号操作 + 78 1 DS18B20_WriteByte(0xbe); //发送读取温度指令 + 79 1 //然后等待转换完后发送读取温度命令 + 80 1 tml = DS18B20_ReadByte(); //读取温度值共16位,先读低字节 + 81 1 tmh = DS18B20_ReadByte(); //再读高字节 + 82 1 temp = tmh; //先存高字节,后面通过移位存储低字节 + 83 1 temp <<= 8; + 84 1 temp |= tml; + 85 1 return temp; + 86 1 } + 87 + 88 + 89 uint Temper_change() + 90 { + 91 1 uint temper; + 92 1 float tp; + 93 1 //temper=read_temper(); + 94 1 temper=DS18B20_ReadTemp(); + 95 1 if(temper<0) //考虑负温度的情况 + 96 1 { + 97 2 temper=temper-1; + 98 2 temper=~temper; + 99 2 tp=temper*0.0625; //16位温度转换成10进制的温度 + 100 2 temper=tp*100+0.5; //留两个小数点,并四舍五入 + 101 2 } + 102 1 else + 103 1 { + 104 2 tp=temper*0.0625; //16位温度转换成10进制的温度 + 105 2 temper=tp*100+0.5; //留两个小数点,并四舍五入 + 106 2 } + 107 1 return temper; + 108 1 } + + +MODULE INFORMATION: STATIC OVERLAYABLE + CODE SIZE = 307 ---- + CONSTANT SIZE = ---- ---- + XDATA SIZE = ---- ---- + PDATA SIZE = ---- ---- + DATA SIZE = ---- 7 + IDATA SIZE = ---- ---- + C51 COMPILER V9.56.0.0 DS18B20 04/30/2022 20:50:18 PAGE 3 + + BIT SIZE = ---- ---- +END OF MODULE INFORMATION. + + +C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S) diff --git a/DS18B20.OBJ b/DS18B20.OBJ new file mode 100644 index 0000000..250ac10 Binary files /dev/null and b/DS18B20.OBJ differ diff --git a/DS18B20.__i b/DS18B20.__i new file mode 100644 index 0000000..ece57ca --- /dev/null +++ b/DS18B20.__i @@ -0,0 +1 @@ +"DS18B20.c" OPTIMIZE (8,SPEED) BROWSE DEBUG OBJECTEXTEND TABS (2) \ No newline at end of file diff --git a/DS18B20.c b/DS18B20.c new file mode 100644 index 0000000..1e14dd0 --- /dev/null +++ b/DS18B20.c @@ -0,0 +1,108 @@ +#include "DS18B20.h" + +sbit DS18B20=P3^2; //定义数据线 + +void delay_ms(unsigned int x)//延时1ms +{ + unsigned int y,z; + for(y=x;y>0;y--) + for(z=110;z>0;z--); +} + +uchar DS18B20_Init() //初始化。成功返回1,不成功返回0. + { + uchar i; + DS18B20 = 0; //将总线拉低480微秒~960微秒 + i = 70; + while(i--); //延时642微秒 + DS18B20 = 1; //拉高总线,等待后续反馈 + i = 0; + while(DS18B20) //等待DS18B20拉低总线 + { + delay_ms(1); //定义的延迟1ms的延迟函数 + i++; + if(i>5) //等待5ms以上 + { + return 0; //初始化失败 + } + } + return 1; //初始化成功 +} + +uchar DS18B20_ReadByte() //通过读取8次状态位达到读取字节的目的 +{ + uchar byte, bi; + uint i, j; + for(j=8; j>0; j--) + { + DS18B20 = 0; //先将总线拉低 + i++; + DS18B20 = 1; //然后释放总线 + i++; + i++; //延时6微秒等待数据稳定 + bi = DS18B20; //读取数据,从最低位开始读取 + byte = (byte >> 1) | (bi << 7); //从最低位开始记录,将byte依次右移 + i = 4; //读取完之后等待48微秒再接着读取下一个数 + while(i--); + } + return byte; //将读取完的字节保存 +} + +void DS18B20_WriteByte(uchar dat)//函数通过循环写8个位实现写一个字节 +{ + uint i, j; + for(j=0; j<8; j++) + { + DS18B20 = 0; //每写入一位数据之前先把总线拉低 + i++; + DS18B20 = dat & 0x01; //然后写入一个数据,从最低位开始 + i=6; + while(i--); //延时68微秒 + DS18B20 = 1; //释放总线,给总线1微秒恢复时间才能接着写入下一位 + dat >>= 1; + } +} + +int DS18B20_ReadTemp() //读取的温度有两个字节,分别用tml和tmh存储两个字节 +{ + int temp = 0; + uchar tmh, tml; + DS18B20_Init(); //传感器初始化 + delay_ms(1); //延时1微秒 + DS18B20_WriteByte(0xcc); //跳过读取序列号操作 + DS18B20_WriteByte(0x44); //温度转换指令 + //完成温度转换功能 + DS18B20_Init(); //传感器初始化 + delay_ms(1); + DS18B20_WriteByte(0xcc); //跳过读取序列号操作 + DS18B20_WriteByte(0xbe); //发送读取温度指令 + //然后等待转换完后发送读取温度命令 + tml = DS18B20_ReadByte(); //读取温度值共16位,先读低字节 + tmh = DS18B20_ReadByte(); //再读高字节 + temp = tmh; //先存高字节,后面通过移位存储低字节 + temp <<= 8; + temp |= tml; + return temp; +} + + +uint Temper_change() +{ + uint temper; + float tp; + //temper=read_temper(); + temper=DS18B20_ReadTemp(); + if(temper<0) //考虑负温度的情况 + { + temper=temper-1; + temper=~temper; + tp=temper*0.0625; //16位温度转换成10进制的温度 + temper=tp*100+0.5; //留两个小数点,并四舍五入 + } + else + { + tp=temper*0.0625; //16位温度转换成10进制的温度 + temper=tp*100+0.5; //留两个小数点,并四舍五入 + } + return temper; +} \ No newline at end of file diff --git a/DS18B20.h b/DS18B20.h new file mode 100644 index 0000000..51cf955 --- /dev/null +++ b/DS18B20.h @@ -0,0 +1,11 @@ +#ifndef __DS18B20_H__ +#define __DS18B20_H__ +#include + +#define uchar unsigned char +#define uint unsigned int + +uint Temper_change(); +void delay_ms(unsigned int x);//延时1ms + +#endif \ No newline at end of file diff --git a/Light.LST b/Light.LST new file mode 100644 index 0000000..2c3ec5d --- /dev/null +++ b/Light.LST @@ -0,0 +1,324 @@ +C51 COMPILER V9.56.0.0 LIGHT 04/30/2022 20:06:41 PAGE 1 + + +C51 COMPILER V9.56.0.0, COMPILATION OF MODULE LIGHT +OBJECT MODULE PLACED IN Light.OBJ +COMPILER INVOKED BY: D:\Keil_v5\C51\BIN\C51.EXE Light.c OPTIMIZE(8,SPEED) BROWSE DEBUG OBJECTEXTEND TABS(2) + +line level source + + 1 #ifndef __LIGHT_H_ + 2 #define __LIGHT_H_ + 3 + 4 #include + 5 #include //Keil library + 6 #include //Keil library + 7 + 8 + 9 #define SlaveAddress 0x46 //IICеĴӵַ,ALT ADDRESSַŲͬ޸ + 10 //ALT ADDRESSŽӵʱַΪ0x46ӵԴʱַΪ0xB8 + 11 + 12 + 13 sbit SCL=P1^0; //IICʱŶ + 14 sbit SDA=P1^1; //IICŶ + 15 + 16 + 17 typedef unsigned short WORD; + 18 + 19 unsigned char BUF[8]; //ݻ + 20 + 21 int dis_data; // + 22 + 23 void delay_nms(unsigned int k); + 24 void InitLcd(); + 25 void Init_BH1750(void); + 26 void WriteDataLCM(uchar dataW); +*** ERROR C141 IN LINE 26 OF Light.c: syntax error near 'dataW', expected ')' + 27 void WriteCommandLCM(uchar CMD,uchar Attribc); +*** ERROR C141 IN LINE 27 OF Light.c: syntax error near 'CMD', expected ')' + 28 void DisplayOneChar(uchar X,uchar Y,uchar DData); +*** ERROR C141 IN LINE 28 OF Light.c: syntax error near 'X', expected ')' + 29 void conversion(uint temp_data); +*** ERROR C141 IN LINE 29 OF Light.c: syntax error near 'temp_data', expected ')' + 30 + 31 void Single_Write_BH1750(uchar REG_Address); //д +*** ERROR C141 IN LINE 31 OF Light.c: syntax error near 'REG_Address', expected ')' + 32 uchar Single_Read_BH1750(uchar REG_Address); //ȡڲĴ +*** ERROR C129 IN LINE 32 OF Light.c: missing ';' before 'Single_Read_BH1750' + 33 void Multiple_Read_BH1750(); //ĶȡڲĴ + 34 //------------------------------------ + 35 void Delay5us(); + 36 void Delay5ms(); + 37 void BH1750_Start(); //ʼź + 38 void BH1750_Stop(); //ֹͣź + 39 void BH1750_SendACK(bit ack); //ӦACK + 40 bit BH1750_RecvACK(); //ack + 41 void BH1750_Sendunsigned char(unsigned char dat); //IICֽд + 42 unsigned char BH1750_Recvunsigned char(); //IICֽڶ + 43 + 44 + 45 //----------------------------------- + 46 + 47 //********************************************************* + 48 void conversion(uint temp_data) // ת ʮ٣ǧ + 49 { + C51 COMPILER V9.56.0.0 LIGHT 04/30/2022 20:06:41 PAGE 2 + + 50 wan=temp_data/10000+0x30 ; + 51 temp_data=temp_data%10000; //ȡ + 52 qian=temp_data/1000+0x30 ; + 53 temp_data=temp_data%1000; //ȡ + 54 bai=temp_data/100+0x30; + 55 temp_data=temp_data%100; //ȡ + 56 shi=temp_data/10+0x30; + 57 temp_data=temp_data%10; //ȡ + 58 ge=temp_data+0x30; + 59 } + 60 + 61 //ʱ************************** + 62 void delay_nms(unsigned int k) + 63 { + 64 unsigned int i,j; + 65 for(i=0;i +#include //Keil library +#include //Keil library + + +#define SlaveAddress 0x46 //IICеĴӵַ,ALT ADDRESSַŲͬ޸ + //ALT ADDRESSŽӵʱַΪ0x46ӵԴʱַΪ0xB8 + + +sbit SCL=P1^0; //IICʱŶ +sbit SDA=P1^1; //IICŶ + + +typedef unsigned short WORD; + +unsigned char BUF[8]; //ݻ + +int dis_data; // + +void delay_nms(unsigned int k); +void InitLcd(); +void Init_BH1750(void); +void WriteDataLCM(uchar dataW); +void WriteCommandLCM(uchar CMD,uchar Attribc); +void DisplayOneChar(uchar X,uchar Y,uchar DData); +void conversion(uint temp_data); + +void Single_Write_BH1750(uchar REG_Address); //д +uchar Single_Read_BH1750(uchar REG_Address); //ȡڲĴ +void Multiple_Read_BH1750(); //ĶȡڲĴ +//------------------------------------ +void Delay5us(); +void Delay5ms(); +void BH1750_Start(); //ʼź +void BH1750_Stop(); //ֹͣź +void BH1750_SendACK(bit ack); //ӦACK +bit BH1750_RecvACK(); //ack +void BH1750_Sendunsigned char(unsigned char dat); //IICֽд +unsigned char BH1750_Recvunsigned char(); //IICֽڶ + + +//----------------------------------- + +//********************************************************* +void conversion(uint temp_data) // ת ʮ٣ǧ +{ + wan=temp_data/10000+0x30 ; + temp_data=temp_data%10000; //ȡ + qian=temp_data/1000+0x30 ; + temp_data=temp_data%1000; //ȡ + bai=temp_data/100+0x30; + temp_data=temp_data%100; //ȡ + shi=temp_data/10+0x30; + temp_data=temp_data%10; //ȡ + ge=temp_data+0x30; +} + +//ʱ************************** +void delay_nms(unsigned int k) +{ +unsigned int i,j; +for(i=0;i - 6 #include - 7 - 8 sbit LED0=P0^2; - 9 sbit LED1=P0^1; - 10 sbit LED2=P0^0; - 11 sbit LED3=P0^4; - 12 - 13 sbit LED4=P0^3; - 14 - 15 sbit key1 = P1^2; - 16 sbit key2 = P1^3; + 5 #include "DS18B20.h" + 6 + 7 #include + 8 #include + 9 + 10 + 11 #define uchar unsigned char + 12 #define uint unsigned int + 13 + 14 sbit LED0=P2^5; + 15 sbit LED1=P2^6; + 16 sbit LED2=P2^1; 17 - 18 sbit IN = P3^7; - 19 sbit OUT = P3^6; - 20 - 21 struct UserInfo{ - 22 int num; - 23 int model; - 24 int start; - 25 int Light; - 26 }; + 18 sbit LED3=P2^4; + 19 + 20 sbit LED4=P2^3; + 21 + 22 sbit key1 = P1^2; + 23 sbit key2 = P1^3; + 24 sbit key3 = P2^2; + 25 sbit key4 = P2^7; + 26 27 - 28 struct UserInfo userInfo; - 29 - 30 void LcdDisplay(); - 31 void LcdDisplay1(); - 32 void Delay10ms(void); + 28 sbit IN = P3^7; + 29 sbit OUT = P3^6; + 30 + 31 sbit SCL1=P1^1; + 32 sbit SDA1=P1^0; 33 - 34 void Uart_Init() - 35 { - 36 1 TMOD = 0x20 | 0x01; - 37 1 SCON = 0x50; - 38 1 TH1 = 0xFD; - 39 1 TL1 = TH1; - 40 1 PCON = 0x00; - 41 1 EA = 1; - 42 1 ES = 1; - 43 1 TR1 = 1; - 44 1 } - 45 - 46 void us_delay(uchar t) - 47 { - 48 1 while(t--); - 49 1 } - 50 - 51 void Send_Uart(uchar value) - 52 { - 53 1 ES=0; - 54 1 TI=0; - 55 1 SBUF=value; - C51 COMPILER V9.56.0.0 MAIN 04/29/2022 01:22:41 PAGE 2 - - 56 1 while(TI==0); - 57 1 TI=0; - 58 1 ES=1; - 59 1 } - 60 - 61 void Bluetooth_Set(uchar *puf) - 62 { - 63 1 while(*puf!='\0') - 64 1 { - 65 2 Send_Uart(*puf); - 66 2 us_delay(5); - 67 2 puf++; - 68 2 } - 69 1 } - 70 - 71 void Detection() - 72 { - 73 1 int i = 0; - 74 1 if(key1==0) //��ⰴ��K1�Ƿ��� - 75 1 { - 76 2 Delay10ms(); //�������� - 77 2 if(key1==0){ - 78 3 if(userInfo.model == 0) userInfo.model = 1; - 79 3 else userInfo.model = 0; - 80 3 } - 81 2 while((i<50)&&(key1==0)){ - 82 3 Delay10ms(); - 83 3 i++; - 84 3 } - 85 2 i=0; - 86 2 } - 87 1 - 88 1 if(key2==0) //��ⰴ��K1�Ƿ��� - 89 1 { - 90 2 Delay10ms(); //�������� - 91 2 if(key2==0){ - 92 3 if(userInfo.start == 0) userInfo.start = 1; - 93 3 else userInfo.start = 0; - 94 3 } - 95 2 while((i<50)&&(key2==0)){ - 96 3 Delay10ms(); - 97 3 i++; - 98 3 } - 99 2 i=0; - 100 2 } - 101 1 - 102 1 if(IN==0) //��ⰴ��K1�Ƿ��� - 103 1 { - 104 2 Delay10ms(); //�������� - 105 2 if(IN==0){ - 106 3 userInfo.num++; - 107 3 if(userInfo.num > 99) userInfo.num = 99; - 108 3 } - 109 2 while((i<50)&&(IN==0)){ - 110 3 Delay10ms(); - 111 3 i++; - 112 3 } - 113 2 i=0; - 114 2 } - 115 1 - 116 1 if(OUT==0) //��ⰴ��K1�Ƿ��� - 117 1 { - C51 COMPILER V9.56.0.0 MAIN 04/29/2022 01:22:41 PAGE 3 - - 118 2 Delay10ms(); //�������� - 119 2 if(OUT==0){ - 120 3 userInfo.num--; - 121 3 if(userInfo.num < 0) userInfo.num = 0; - 122 3 } - 123 2 while((i<50)&&(OUT==0)){ - 124 3 Delay10ms(); - 125 3 i++; - 126 3 } - 127 2 i=0; - 128 2 } - 129 1 } - 130 - 131 void Dispose() - 132 { - 133 1 if(userInfo.start && userInfo.model){ - 134 2 LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; - 135 2 }else{ - 136 2 if(userInfo.Light < 50 && userInfo.model == 0){ - 137 3 if(userInfo.num < 10 && userInfo.num > 0) LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 1; - 138 3 else if(userInfo.num >= 10 && userInfo.num < 20) LED0 = 0, LED1 = 0, LED2 = 1 ,LED3 = 1; - 139 3 else if(userInfo.num >= 20 && userInfo.num < 30) LED0 = 0, LED1 = 1, LED2 = 1 ,LED3 = 1; - 140 3 else if(userInfo.num >= 30) LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; - 141 3 else LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; - 142 3 } - 143 2 } - 144 1 LED4 = userInfo.model; - 145 1 } - 146 - 147 void main() - 148 { - 149 1 int i = 0; - 150 1 uchar str[30]; - 151 1 LcdInit(); - 152 1 Ds1302Init(); - 153 1 Uart_Init(); - 154 1 while(1) - 155 1 { - 156 2 Ds1302ReadTime(); - 157 2 LcdDisplay(); - 158 2 Detection(); - 159 2 sprintf(str, "%d\r\n", userInfo.model); - 160 2 Bluetooth_Set(str); - 161 2 Dispose(); - 162 2 } - 163 1 } - 164 + 34 int cut = 0; + 35 + 36 struct Time{ + 37 int hour; + 38 int min; + 39 int sec; + 40 }; + 41 + 42 struct UserInfo{ + 43 int num; + 44 int model; + 45 int set; + 46 int start; + 47 float Light; + 48 int temp; + 49 struct Time time[2]; + 50 }; + 51 + 52 struct UserInfo userInfo; + 53 + 54 void LcdDisplay(); + 55 void LcdDisplay1(); + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 2 + + 56 void Delay10ms(void); + 57 + 58 #define SlaveAddress 0x46 //¶¨ÒåÆ÷¼þÔÚIIC×ÜÏßÖеĴӵØÖ·,¸ù¾ÝALT ADDRESSµ + -ØÖ·Òý½Å²»Í¬ÐÞ¸Ä + 59 //ALT ADDRESSÒý½Å½ÓµØʱµØַΪ0x46£¬½ÓµçԴʱµØÖ + -·Îª0xB8 + 60 typedef unsigned char BYTE; + 61 typedef unsigned short WORD; + 62 + 63 BYTE BUF[8]; //½ÓÊÕÊý¾Ý»º´æÇø + 64 int dis_data; //±äÁ¿ + 65 + 66 void delay_nms(unsigned int k); + 67 void InitLcd(); + 68 void Init_BH1750(void); + 69 + 70 void WriteDataLCM(uchar dataW); + 71 void WriteCommandLCM(uchar CMD,uchar Attribc); + 72 void DisplayOneChar(uchar X,uchar Y,uchar DData); + 73 void conversion(uint temp_data); + 74 + 75 void Single_Write_BH1750(uchar REG_Address); //µ¥¸öдÈëÊý¾Ý + 76 uchar Single_Read_BH1750(uchar REG_Address); //µ¥¸ö¶ÁÈ¡ÄÚ²¿¼Ä´æÆ÷Êý¾Ý + 77 void Multiple_Read_BH1750(); //Á¬ÐøµÄ¶ÁÈ¡ÄÚ²¿¼Ä´æÆ÷Êý + -¾Ý + 78 //------------------------------------ + 79 void Delay5us(); + 80 void Delay5ms(); + 81 void BH1750_Start(); //ÆðʼÐźŠ+ 82 void BH1750_Stop(); //Í£Ö¹ÐźŠ+ 83 void BH1750_SendACK(bit ack); //Ó¦´ðACK + 84 bit BH1750_RecvACK(); //¶Áack + 85 void BH1750_SendByte(BYTE dat); //IICµ¥¸ö×Ö½Úд + 86 BYTE BH1750_RecvByte(); //IICµ¥¸ö×Ö½Ú¶Á + 87 + 88 + 89 //ºÁÃëÑÓʱ************************** + 90 void delay_nms(unsigned int k) + 91 { + 92 1 unsigned int i,j; + 93 1 for(i=0;i0;c--) - 178 1 for(b=38;b>0;b--) - 179 1 for(a=130;a>0;a--); - C51 COMPILER V9.56.0.0 MAIN 04/29/2022 01:22:41 PAGE 4 - - 180 1 } + 166 /************************************** + 167 ÏòIIC×ÜÏß·¢ËÍÒ»¸ö×Ö½ÚÊý¾Ý + 168 **************************************/ + 169 void BH1750_SendByte(BYTE dat) + 170 { + 171 1 BYTE i; + 172 1 + 173 1 for (i=0; i<8; i++) //8λ¼ÆÊýÆ÷ + 174 1 { + 175 2 dat <<= 1; //ÒƳöÊý¾ÝµÄ×î¸ßλ + 176 2 SDA1 = CY; //ËÍÊý¾Ý¿Ú + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 4 + + 177 2 SCL1 = 1; //À­¸ßʱÖÓÏß + 178 2 Delay5us(); //ÑÓʱ + 179 2 SCL1 = 0; //À­µÍʱÖÓÏß + 180 2 Delay5us(); //ÑÓʱ + 181 2 } + 182 1 BH1750_RecvACK(); + 183 1 } + 184 + 185 /************************************** + 186 ´ÓIIC×ÜÏß½ÓÊÕÒ»¸ö×Ö½ÚÊý¾Ý + 187 **************************************/ + 188 BYTE BH1750_RecvByte() + 189 { + 190 1 BYTE i; + 191 1 BYTE dat = 0; + 192 1 + 193 1 SDA1 = 1; //ʹÄÜÄÚ²¿ÉÏÀ­,×¼±¸¶ÁÈ¡Êý¾Ý, + 194 1 for (i=0; i<8; i++) //8λ¼ÆÊýÆ÷ + 195 1 { + 196 2 dat <<= 1; + 197 2 SCL1 = 1; //À­¸ßʱÖÓÏß + 198 2 Delay5us(); //ÑÓʱ + 199 2 dat |= SDA1; //¶ÁÊý¾Ý + 200 2 SCL1 = 0; //À­µÍʱÖÓÏß + 201 2 Delay5us(); //ÑÓʱ + 202 2 } + 203 1 return dat; + 204 1 } + 205 + 206 //********************************* + 207 + 208 void Single_Write_BH1750(uchar REG_Address) + 209 { + 210 1 BH1750_Start(); //ÆðʼÐźŠ+ 211 1 BH1750_SendByte(SlaveAddress); //·¢ËÍÉ豸µØÖ·+дÐźŠ+ 212 1 BH1750_SendByte(REG_Address); //ÄÚ²¿¼Ä´æÆ÷µØÖ·£¬ + 213 1 // BH1750_SendByte(REG_data); //ÄÚ²¿¼Ä´æÆ÷Êý¾Ý£¬ + 214 1 BH1750_Stop(); //·¢ËÍÍ£Ö¹ÐźŠ+ 215 1 } + 216 + 217 //********µ¥×Ö½Ú¶ÁÈ¡***************************************** + 218 /* + 219 uchar Single_Read_BH1750(uchar REG_Address) + 220 { uchar REG_data; + 221 BH1750_Start(); //ÆðʼÐźŠ+ 222 BH1750_SendByte(SlaveAddress); //·¢ËÍÉ豸µØÖ·+дÐźŠ+ 223 BH1750_SendByte(REG_Address); //·¢ËÍ´æ´¢µ¥ÔªµØÖ·£¬´Ó0¿ªÊ¼ + 224 BH1750_Start(); //ÆðʼÐźŠ+ 225 BH1750_SendByte(SlaveAddress+1); //·¢ËÍÉ豸µØÖ·+¶ÁÐźŠ+ 226 REG_data=BH1750_RecvByte(); //¶Á³ö¼Ä´æÆ÷Êý¾Ý + 227 BH1750_SendACK(1); + 228 BH1750_Stop(); //Í£Ö¹ÐźŠ+ 229 return REG_data; + 230 } + 231 */ + 232 //********************************************************* + 233 // + 234 //Á¬Ðø¶Á³öBH1750ÄÚ²¿Êý¾Ý + 235 // + 236 //********************************************************* + 237 void Multiple_read_BH1750(void) + 238 + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 5 + + 239 { uchar i; + 240 1 BH1750_Start(); //ÆðʼÐźŠ+ 241 1 BH1750_SendByte(SlaveAddress+1); //·¢ËÍÉ豸µØÖ·+¶ÁÐźŠ+ 242 1 + 243 1 for (i=0; i<3; i++) //Á¬Ðø¶ÁÈ¡2¸öµØÖ·Êý¾Ý£¬´æ´¢ÖÐBUF + 244 1 { + 245 2 BUF[i] = BH1750_RecvByte(); //BUF[0]´æ´¢0x32µØÖ·ÖеÄÊý¾Ý + 246 2 if (i == 3) + 247 2 { + 248 3 + 249 3 BH1750_SendACK(1); //×îºóÒ»¸öÊý¾ÝÐèÒª»ØNOACK + 250 3 } + 251 2 else + 252 2 { + 253 3 BH1750_SendACK(0); //»ØÓ¦ACK + 254 3 } + 255 2 } + 256 1 + 257 1 BH1750_Stop(); //Í£Ö¹ÐźŠ+ 258 1 Delay5ms(); + 259 1 } + 260 + 261 + 262 //³õʼ»¯BH1750£¬¸ù¾ÝÐèÒªÇë²Î¿¼pdf½øÐÐÐÞ¸Ä**** + 263 void Init_BH1750() + 264 { + 265 1 Single_Write_BH1750(0x01); + 266 1 + 267 1 } + 268 + 269 + 270 void Uart_Init() + 271 { + 272 1 TMOD = 0x20 | 0x01; + 273 1 SCON = 0x50; + 274 1 TH1 = 0xFD; + 275 1 TL1 = TH1; + 276 1 PCON = 0x00; + 277 1 EA = 1; + 278 1 ES = 1; + 279 1 TR1 = 1; + 280 1 } + 281 + 282 void us_delay(uchar t) + 283 { + 284 1 while(t--); + 285 1 } + 286 + 287 void Send_Uart(uchar value) + 288 { + 289 1 ES=0; + 290 1 TI=0; + 291 1 SBUF=value; + 292 1 while(TI==0); + 293 1 TI=0; + 294 1 ES=1; + 295 1 } + 296 + 297 void Bluetooth_Set(uchar *puf) + 298 { + 299 1 while(*puf!='\0') + 300 1 { + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 6 + + 301 2 Send_Uart(*puf); + 302 2 us_delay(5); + 303 2 puf++; + 304 2 } + 305 1 } + 306 + 307 void Detection() + 308 { + 309 1 int i = 0; + 310 1 Single_Write_BH1750(0x01); + 311 1 Single_Write_BH1750(0x10); + 312 1 delay_nms(180); + 313 1 Multiple_Read_BH1750(); + 314 1 dis_data=BUF[0]; + 315 1 dis_data=(dis_data<<8)+BUF[1]; + 316 1 userInfo.Light = (float)dis_data/1.2; + 317 1 + 318 1 userInfo.temp = Temper_change(); + 319 1 userInfo.temp /= 100; + 320 1 if(key1==0) + 321 1 { + 322 2 Delay10ms(); + 323 2 if(key1==0){ + 324 3 if(userInfo.set == 0){ + 325 4 if(userInfo.model == 0) userInfo.model = 1; + 326 4 else userInfo.model = 0; + 327 4 } + 328 3 } + 329 2 while((i<50)&&(key1==0)){ + 330 3 Delay10ms(); + 331 3 i++; + 332 3 } + 333 2 i=0; + 334 2 } + 335 1 + 336 1 if(key2==0) + 337 1 { + 338 2 Delay10ms(); + 339 2 if(key2==0){ + 340 3 if(userInfo.model){ + 341 4 if(userInfo.start == 0) userInfo.start = 1; + 342 4 else userInfo.start = 0; + 343 4 }else{ + 344 4 if(userInfo.set == 0) userInfo.set = 1; + 345 4 else userInfo.set = 0; + 346 4 cut = 0; + 347 4 } + 348 3 LcdWriteCom(0x01); //清屏 + 349 3 } + 350 2 while((i<50)&&(key2==0)){ + 351 3 Delay10ms(); + 352 3 i++; + 353 3 } + 354 2 i=0; + 355 2 } + 356 1 + 357 1 if(IN==0) + 358 1 { + 359 2 Delay10ms(); + 360 2 if(IN==0){ + 361 3 userInfo.num++; + 362 3 if(userInfo.num > 99) userInfo.num = 99; + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 7 + + 363 3 } + 364 2 while((i<50)&&(IN==0)){ + 365 3 Delay10ms(); + 366 3 i++; + 367 3 } + 368 2 i=0; + 369 2 } + 370 1 + 371 1 if(OUT==0) //��ⰴ��K1�Ƿ��� + 372 1 { + 373 2 Delay10ms(); //�������� + 374 2 if(OUT==0){ + 375 3 userInfo.num--; + 376 3 if(userInfo.num < 0) userInfo.num = 0; + 377 3 } + 378 2 while((i<50)&&(OUT==0)){ + 379 3 Delay10ms(); + 380 3 i++; + 381 3 } + 382 2 i=0; + 383 2 } + 384 1 + 385 1 if(key3==0) //��ⰴ��K1�Ƿ��� + 386 1 { + 387 2 Delay10ms(); //�������� + 388 2 if(key3==0){ + 389 3 cut++; + 390 3 if(cut >= 4) cut = 0; + 391 3 } + 392 2 while((i<50)&&(key3==0)){ + 393 3 Delay10ms(); + 394 3 i++; + 395 3 } + 396 2 i=0; + 397 2 } + 398 1 + 399 1 if(key4==0) //��ⰴ��K1�Ƿ��� + 400 1 { + 401 2 Delay10ms(); //�������� + 402 2 if(key4==0){ + 403 3 if(cut == 0){ + 404 4 userInfo.time[0].hour++; + 405 4 if(userInfo.time[0].hour >= 24) userInfo.time[0].hour = 0; + 406 4 }else if(cut == 1){ + 407 4 userInfo.time[0].min++; + 408 4 if(userInfo.time[0].min >= 59) userInfo.time[0].min = 0; + 409 4 }else if(cut == 2){ + 410 4 userInfo.time[1].hour++; + 411 4 if(userInfo.time[1].hour >= 24) userInfo.time[1].hour = 0; + 412 4 }else if(cut == 3){ + 413 4 userInfo.time[1].min++; + 414 4 if(userInfo.time[1].min >= 59) userInfo.time[1].min = 0; + 415 4 } + 416 3 while((i<50)&&(key4==0)){ + 417 4 Delay10ms(); + 418 4 i++; + 419 4 } + 420 3 i=0; + 421 3 } + 422 2 } + 423 1 } + 424 + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 8 + + 425 + 426 int getTimeResult() + 427 { + 428 1 int result = 1; + 429 1 struct Time Nowtime; + 430 1 + 431 1 Nowtime.hour = TIME[2]/16 * 10 + (TIME[2]&0x0f); + 432 1 Nowtime.min = TIME[1]/16 * 10 + (TIME[1]&0x0f); + 433 1 + 434 1 if(Nowtime.hour < userInfo.time[0].hour || Nowtime.hour > userInfo.time[1].hour) return 0; + 435 1 if(Nowtime.hour == userInfo.time[0].hour && Nowtime.min < userInfo.time[0].min) return 0; + 436 1 if(Nowtime.hour == userInfo.time[1].hour && Nowtime.min > userInfo.time[1].min) return 0; + 437 1 + 438 1 return result; + 439 1 } + 440 + 441 + 442 void Dispose() + 443 { + 444 1 + 445 1 if(userInfo.model == 0){ + 446 2 if(getTimeResult() && userInfo.Light < 100){ + 447 3 if(userInfo.num < 10 && userInfo.num > 0) LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 1; + 448 3 else if(userInfo.num >= 10 && userInfo.num < 20) LED0 = 0, LED1 = 0, LED2 = 1 ,LED3 = 1; + 449 3 else if(userInfo.num >= 20 && userInfo.num < 30) LED0 = 0, LED1 = 1, LED2 = 1 ,LED3 = 1; + 450 3 else if(userInfo.num >= 30) LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; + 451 3 else LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; + 452 3 }else{ + 453 3 LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; + 454 3 } + 455 2 }else{ + 456 2 if(userInfo.start){ + 457 3 LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; + 458 3 }else{ + 459 3 LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; + 460 3 } + 461 2 } + 462 1 LED4 = userInfo.model; + 463 1 } + 464 + 465 void main() + 466 { + 467 1 int i = 0; + 468 1 uchar str[10]; + 469 1 Ds1302Init(); + 470 1 Uart_Init(); + 471 1 LcdInit(); + 472 1 + 473 1 userInfo.time[0].hour = 18; + 474 1 userInfo.time[0].min = 0; + 475 1 userInfo.time[0].sec = 0; + 476 1 + 477 1 userInfo.time[1].hour = 23; + 478 1 userInfo.time[1].min = 30; + 479 1 userInfo.time[1].sec = 0; + 480 1 + 481 1 while(1) + 482 1 { + 483 2 Ds1302ReadTime(); + 484 2 LcdDisplay(); + 485 2 Detection(); + 486 2 Dispose(); + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 9 + + 487 2 sprintf(str, "%d\r\n", userInfo.temp); + 488 2 Bluetooth_Set(str); + 489 2 } + 490 1 } + 491 + 492 void LcdDisplay() + 493 { + 494 1 uint temp_data; + 495 1 if(userInfo.set == 0){ + 496 2 // TODO 显示时间 + 497 2 LcdWriteCom(0x80); + 498 2 LcdWriteData('0'+TIME[4]/16); //月 + 499 2 LcdWriteData('0'+(TIME[4]&0x0f)); + 500 2 LcdWriteData('-'); + 501 2 LcdWriteData('0'+TIME[3]/16); //日 + 502 2 LcdWriteData('0'+(TIME[3]&0x0f)); + 503 2 LcdWriteData(' '); + 504 2 + 505 2 LcdWriteData('0'+TIME[2]/16); //时 + 506 2 LcdWriteData('0'+(TIME[2]&0x0f)); + 507 2 LcdWriteData(':'); + 508 2 LcdWriteData('0'+TIME[1]/16); //分 + 509 2 LcdWriteData('0'+(TIME[1]&0x0f)); + 510 2 LcdWriteData(':'); + 511 2 LcdWriteData('0'+TIME[0]/16); //秒 + 512 2 LcdWriteData('0'+(TIME[0]&0x0f)); + 513 2 + 514 2 LcdWriteData(' '); + 515 2 LcdWriteData('0'+(TIME[5]&0x0f)); + 516 2 + 517 2 LcdWriteCom(0x80 + 0x40); + 518 2 temp_data = userInfo.Light; + 519 2 temp_data=temp_data%10000; + 520 2 LcdWriteData(temp_data/1000+0x30); + 521 2 temp_data=temp_data%1000; + 522 2 LcdWriteData(temp_data/100+0x30); + 523 2 temp_data=temp_data%100; + 524 2 LcdWriteData(temp_data/10+0x30); + 525 2 temp_data=temp_data%10; + 526 2 LcdWriteData(temp_data+0x30); + 527 2 LcdWriteData('L'); + 528 2 LcdWriteData('x'); + 529 2 LcdWriteData(' '); + 530 2 LcdWriteData(userInfo.temp / 10 + 0x30); + 531 2 LcdWriteData(userInfo.temp % 10 + 0x30); + 532 2 LcdWriteData('C'); + 533 2 + 534 2 LcdWriteData(' '); + 535 2 LcdWriteData(userInfo.num / 10 % 10 + 0x30); + 536 2 LcdWriteData(userInfo.num % 10 + 0x30); + 537 2 }else{ + 538 2 LcdWriteCom(0x80); + 539 2 LcdWriteData('0'+ userInfo.time[0].hour/10); //时 + 540 2 LcdWriteData('0'+ userInfo.time[0].hour% 10); + 541 2 LcdWriteData(':'); + 542 2 LcdWriteData('0'+userInfo.time[0].min/10); //分 + 543 2 LcdWriteData('0'+ userInfo.time[0].min % 10); + 544 2 LcdWriteData(':'); + 545 2 LcdWriteData('0'+userInfo.time[0].sec / 10); //秒 + 546 2 LcdWriteData('0'+userInfo.time[0].sec % 10); + 547 2 LcdWriteData(' '); + 548 2 + C51 COMPILER V9.56.0.0 MAIN 05/01/2022 12:19:19 PAGE 10 + + 549 2 LcdWriteData('0'+cut); + 550 2 + 551 2 LcdWriteCom(0x80 + 0x40); + 552 2 LcdWriteData('0'+ userInfo.time[1].hour/10); //时 + 553 2 LcdWriteData('0'+ userInfo.time[1].hour% 10); + 554 2 LcdWriteData(':'); + 555 2 LcdWriteData('0'+userInfo.time[1].min/10); //分 + 556 2 LcdWriteData('0'+ userInfo.time[1].min % 10); + 557 2 LcdWriteData(':'); + 558 2 LcdWriteData('0'+userInfo.time[1].sec / 10); //秒 + 559 2 LcdWriteData('0'+userInfo.time[1].sec % 10); + 560 2 } + 561 1 } + 562 + 563 + 564 void Delay10ms(void) //��� 0us + 565 { + 566 1 unsigned char a,b,c; + 567 1 for(c=1;c>0;c--) + 568 1 for(b=38;b>0;b--) + 569 1 for(a=130;a>0;a--); + 570 1 } MODULE INFORMATION: STATIC OVERLAYABLE - CODE SIZE = 589 ---- + CODE SIZE = 2027 ---- CONSTANT SIZE = 5 ---- XDATA SIZE = ---- ---- PDATA SIZE = ---- ---- - DATA SIZE = 8 34 + DATA SIZE = 38 22 IDATA SIZE = ---- ---- - BIT SIZE = ---- ---- + BIT SIZE = ---- 1 END OF MODULE INFORMATION. diff --git a/main.OBJ b/main.OBJ index 0cf0dcd..8aee14c 100644 Binary files a/main.OBJ and b/main.OBJ differ diff --git a/main.c b/main.c index 178634e..4e9990d 100644 --- a/main.c +++ b/main.c @@ -2,27 +2,51 @@ #include"lcd.h" #include"ds1302.h" #include"i2c.h" +#include "DS18B20.h" + #include #include -sbit LED0=P0^2; -sbit LED1=P0^1; -sbit LED2=P0^0; -sbit LED3=P0^4; -sbit LED4=P0^3; +#define uchar unsigned char +#define uint unsigned int + +sbit LED0=P2^5; +sbit LED1=P2^6; +sbit LED2=P2^1; + +sbit LED3=P2^4; + +sbit LED4=P2^3; sbit key1 = P1^2; sbit key2 = P1^3; +sbit key3 = P2^2; +sbit key4 = P2^7; + sbit IN = P3^7; sbit OUT = P3^6; +sbit SCL1=P1^1; +sbit SDA1=P1^0; + +int cut = 0; + +struct Time{ + int hour; + int min; + int sec; +}; + struct UserInfo{ int num; int model; + int set; int start; - int Light; + float Light; + int temp; + struct Time time[2]; }; struct UserInfo userInfo; @@ -31,6 +55,218 @@ void LcdDisplay(); void LcdDisplay1(); void Delay10ms(void); +#define SlaveAddress 0x46 //¶¨ÒåÆ÷¼þÔÚIIC×ÜÏßÖеĴӵØÖ·,¸ù¾ÝALT ADDRESSµØÖ·Òý½Å²»Í¬ÐÞ¸Ä + //ALT ADDRESSÒý½Å½ÓµØʱµØַΪ0x46£¬½ÓµçԴʱµØַΪ0xB8 +typedef unsigned char BYTE; +typedef unsigned short WORD; + +BYTE BUF[8]; //½ÓÊÕÊý¾Ý»º´æÇø +int dis_data; //±äÁ¿ + +void delay_nms(unsigned int k); +void InitLcd(); +void Init_BH1750(void); + +void WriteDataLCM(uchar dataW); +void WriteCommandLCM(uchar CMD,uchar Attribc); +void DisplayOneChar(uchar X,uchar Y,uchar DData); +void conversion(uint temp_data); + +void Single_Write_BH1750(uchar REG_Address); //µ¥¸öдÈëÊý¾Ý +uchar Single_Read_BH1750(uchar REG_Address); //µ¥¸ö¶ÁÈ¡ÄÚ²¿¼Ä´æÆ÷Êý¾Ý +void Multiple_Read_BH1750(); //Á¬ÐøµÄ¶ÁÈ¡ÄÚ²¿¼Ä´æÆ÷Êý¾Ý +//------------------------------------ +void Delay5us(); +void Delay5ms(); +void BH1750_Start(); //ÆðʼÐźŠ+void BH1750_Stop(); //Í£Ö¹ÐźŠ+void BH1750_SendACK(bit ack); //Ó¦´ðACK +bit BH1750_RecvACK(); //¶Áack +void BH1750_SendByte(BYTE dat); //IICµ¥¸ö×Ö½Úд +BYTE BH1750_RecvByte(); //IICµ¥¸ö×Ö½Ú¶Á + + +//ºÁÃëÑÓʱ************************** +void delay_nms(unsigned int k) +{ + unsigned int i,j; + for(i=0;i 99) userInfo.num = 99; @@ -126,19 +381,82 @@ void Detection() } i=0; } + + if(key3==0) //��ⰴ��K1�Ƿ��� + { + Delay10ms(); //�������� + if(key3==0){ + cut++; + if(cut >= 4) cut = 0; + } + while((i<50)&&(key3==0)){ + Delay10ms(); + i++; + } + i=0; + } + + if(key4==0) //��ⰴ��K1�Ƿ��� + { + Delay10ms(); //�������� + if(key4==0){ + if(cut == 0){ + userInfo.time[0].hour++; + if(userInfo.time[0].hour >= 24) userInfo.time[0].hour = 0; + }else if(cut == 1){ + userInfo.time[0].min++; + if(userInfo.time[0].min >= 59) userInfo.time[0].min = 0; + }else if(cut == 2){ + userInfo.time[1].hour++; + if(userInfo.time[1].hour >= 24) userInfo.time[1].hour = 0; + }else if(cut == 3){ + userInfo.time[1].min++; + if(userInfo.time[1].min >= 59) userInfo.time[1].min = 0; + } + while((i<50)&&(key4==0)){ + Delay10ms(); + i++; + } + i=0; + } + } } + +int getTimeResult() +{ + int result = 1; + struct Time Nowtime; + + Nowtime.hour = TIME[2]/16 * 10 + (TIME[2]&0x0f); + Nowtime.min = TIME[1]/16 * 10 + (TIME[1]&0x0f); + + if(Nowtime.hour < userInfo.time[0].hour || Nowtime.hour > userInfo.time[1].hour) return 0; + if(Nowtime.hour == userInfo.time[0].hour && Nowtime.min < userInfo.time[0].min) return 0; + if(Nowtime.hour == userInfo.time[1].hour && Nowtime.min > userInfo.time[1].min) return 0; + + return result; +} + + void Dispose() { - if(userInfo.start && userInfo.model){ - LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; - }else{ - if(userInfo.Light < 50 && userInfo.model == 0){ + + if(userInfo.model == 0){ + if(getTimeResult() && userInfo.Light < 100){ if(userInfo.num < 10 && userInfo.num > 0) LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 1; else if(userInfo.num >= 10 && userInfo.num < 20) LED0 = 0, LED1 = 0, LED2 = 1 ,LED3 = 1; else if(userInfo.num >= 20 && userInfo.num < 30) LED0 = 0, LED1 = 1, LED2 = 1 ,LED3 = 1; else if(userInfo.num >= 30) LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; else LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; + }else{ + LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; + } + }else{ + if(userInfo.start){ + LED0 = 1, LED1 = 1, LED2 = 1 ,LED3 = 1; + }else{ + LED0 = 0, LED1 = 0, LED2 = 0 ,LED3 = 0; } } LED4 = userInfo.model; @@ -147,27 +465,99 @@ void Dispose() void main() { int i = 0; - uchar str[30]; - LcdInit(); + uchar str[10]; Ds1302Init(); Uart_Init(); + LcdInit(); + + userInfo.time[0].hour = 18; + userInfo.time[0].min = 0; + userInfo.time[0].sec = 0; + + userInfo.time[1].hour = 23; + userInfo.time[1].min = 30; + userInfo.time[1].sec = 0; + while(1) { Ds1302ReadTime(); LcdDisplay(); Detection(); - sprintf(str, "%d\r\n", userInfo.model); - Bluetooth_Set(str); Dispose(); + sprintf(str, "%d\r\n", userInfo.temp); + Bluetooth_Set(str); } } - void LcdDisplay() { - // TODO 显示时间 - LcdWriteCom(0x80); - LcdWriteData('m'); + uint temp_data; + if(userInfo.set == 0){ + // TODO 显示时间 + LcdWriteCom(0x80); + LcdWriteData('0'+TIME[4]/16); //月 + LcdWriteData('0'+(TIME[4]&0x0f)); + LcdWriteData('-'); + LcdWriteData('0'+TIME[3]/16); //日 + LcdWriteData('0'+(TIME[3]&0x0f)); + LcdWriteData(' '); + + LcdWriteData('0'+TIME[2]/16); //时 + LcdWriteData('0'+(TIME[2]&0x0f)); + LcdWriteData(':'); + LcdWriteData('0'+TIME[1]/16); //分 + LcdWriteData('0'+(TIME[1]&0x0f)); + LcdWriteData(':'); + LcdWriteData('0'+TIME[0]/16); //秒 + LcdWriteData('0'+(TIME[0]&0x0f)); + + LcdWriteData(' '); + LcdWriteData('0'+(TIME[5]&0x0f)); + + LcdWriteCom(0x80 + 0x40); + temp_data = userInfo.Light; + temp_data=temp_data%10000; + LcdWriteData(temp_data/1000+0x30); + temp_data=temp_data%1000; + LcdWriteData(temp_data/100+0x30); + temp_data=temp_data%100; + LcdWriteData(temp_data/10+0x30); + temp_data=temp_data%10; + LcdWriteData(temp_data+0x30); + LcdWriteData('L'); + LcdWriteData('x'); + LcdWriteData(' '); + LcdWriteData(userInfo.temp / 10 + 0x30); + LcdWriteData(userInfo.temp % 10 + 0x30); + LcdWriteData('C'); + + LcdWriteData(' '); + LcdWriteData(userInfo.num / 10 % 10 + 0x30); + LcdWriteData(userInfo.num % 10 + 0x30); + }else{ + LcdWriteCom(0x80); + LcdWriteData('0'+ userInfo.time[0].hour/10); //时 + LcdWriteData('0'+ userInfo.time[0].hour% 10); + LcdWriteData(':'); + LcdWriteData('0'+userInfo.time[0].min/10); //分 + LcdWriteData('0'+ userInfo.time[0].min % 10); + LcdWriteData(':'); + LcdWriteData('0'+userInfo.time[0].sec / 10); //秒 + LcdWriteData('0'+userInfo.time[0].sec % 10); + LcdWriteData(' '); + + LcdWriteData('0'+cut); + + LcdWriteCom(0x80 + 0x40); + LcdWriteData('0'+ userInfo.time[1].hour/10); //时 + LcdWriteData('0'+ userInfo.time[1].hour% 10); + LcdWriteData(':'); + LcdWriteData('0'+userInfo.time[1].min/10); //分 + LcdWriteData('0'+ userInfo.time[1].min % 10); + LcdWriteData(':'); + LcdWriteData('0'+userInfo.time[1].sec / 10); //秒 + LcdWriteData('0'+userInfo.time[1].sec % 10); + } } diff --git a/pro b/pro index db564a1..4d048b2 100644 Binary files a/pro and b/pro differ diff --git a/pro.M51 b/pro.M51 index f098d9d..8ad2041 100644 --- a/pro.M51 +++ b/pro.M51 @@ -1,11 +1,11 @@ -BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 1 +BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 1 BL51 BANKED LINKER/LOCATER V6.22, INVOKED BY: -D:\KEIL_V5\C51\BIN\BL51.EXE main.obj, lcd.obj, ds1302.obj, i2c.obj TO pro +D:\KEIL_V5\C51\BIN\BL51.EXE main.obj, lcd.obj, ds1302.obj, i2c.obj, DS18B20.obj TO pro -MEMORY MODEL: SMALL +MEMORY MODEL: SMALL WITH FLOATING POINT ARITHMETIC INPUT MODULES INCLUDED: @@ -13,15 +13,29 @@ INPUT MODULES INCLUDED: lcd.obj (LCD) ds1302.obj (DS1302) i2c.obj (I2C) + DS18B20.obj (DS18B20) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPADD) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPMUL) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPDIV) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPCMP) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FCAST) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?CASTF) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (PRINTF) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPGETOPN) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPROUND) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPCONVERT) + D:\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FTNPWR) D:\KEIL_V5\C51\LIB\C51S.LIB (?C_STARTUP) D:\KEIL_V5\C51\LIB\C51S.LIB (?C?CLDPTR) - D:\KEIL_V5\C51\LIB\C51S.LIB (PRINTF) - D:\KEIL_V5\C51\LIB\C51S.LIB (?C_INIT) D:\KEIL_V5\C51\LIB\C51S.LIB (?C?CLDOPTR) D:\KEIL_V5\C51\LIB\C51S.LIB (?C?CSTPTR) + D:\KEIL_V5\C51\LIB\C51S.LIB (?C?UIDIV) + D:\KEIL_V5\C51\LIB\C51S.LIB (?C?SIDIV) + D:\KEIL_V5\C51\LIB\C51S.LIB (?C?LNEG) D:\KEIL_V5\C51\LIB\C51S.LIB (?C?PLDIIDATA) D:\KEIL_V5\C51\LIB\C51S.LIB (?C?CCASE) D:\KEIL_V5\C51\LIB\C51S.LIB (PUTCHAR) + D:\KEIL_V5\C51\LIB\C51S.LIB (?C_INIT) LINK MAP OF MODULE: pro (MAIN) @@ -32,106 +46,183 @@ LINK MAP OF MODULE: pro (MAIN) * * * * * * * D A T A M E M O R Y * * * * * * * REG 0000H 0008H ABSOLUTE "REG BANK 0" - DATA 0008H 0008H UNIT ?DT?MAIN - DATA 0010H 0007H UNIT ?DT?DS1302 - 0017H 0009H *** GAP *** + DATA 0008H 0007H UNIT ?DT?DS1302 + 000FH 0011H *** GAP *** BIT 0020H.0 0001H.1 UNIT _BIT_GROUP_ 0021H.1 0000H.7 *** GAP *** - DATA 0022H 0034H UNIT _DATA_GROUP_ - IDATA 0056H 0001H UNIT ?STACK + DATA 0022H 0028H UNIT _DATA_GROUP_ + DATA 004AH 0026H UNIT ?DT?MAIN + IDATA 0070H 0001H UNIT ?STACK * * * * * * * C O D E M E M O R Y * * * * * * * CODE 0000H 0003H ABSOLUTE - CODE 0003H 035CH UNIT ?PR?PRINTF?PRINTF - CODE 035FH 0105H UNIT ?PR?DETECTION?MAIN - CODE 0464H 00B1H UNIT ?PR?DISPOSE?MAIN - CODE 0515H 008EH UNIT ?C?LIB_CODE - CODE 05A3H 008CH UNIT ?C_C51STARTUP - CODE 062FH 004AH UNIT ?PR?_DS1302READ?DS1302 - CODE 0679H 0041H UNIT ?PR?_I2CSENDBYTE?I2C - CODE 06BAH 003DH UNIT ?PR?MAIN?MAIN - CODE 06F7H 0035H UNIT ?PR?_DS1302WRITE?DS1302 - CODE 072CH 002AH UNIT ?PR?_LCD1602_DELAY1MS?LCD - CODE 0756H 0027H UNIT ?PR?PUTCHAR?PUTCHAR - CODE 077DH 0026H UNIT ?PR?I2CREADBYTE?I2C - CODE 07A3H 0023H UNIT ?PR?DS1302INIT?DS1302 - CODE 07C6H 0022H UNIT ?PR?_AT24C02READ?I2C - CODE 07E8H 0019H UNIT ?PR?LCDINIT?LCD - CODE 0801H 0019H UNIT ?PR?_AT24C02WRITE?I2C - CODE 081AH 0018H UNIT ?PR?_BLUETOOTH_SET?MAIN - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 2 - - - CODE 0832H 0016H UNIT ?PR?UART_INIT?MAIN - CODE 0848H 0016H UNIT ?PR?DS1302READTIME?DS1302 - CODE 085EH 000FH UNIT ?PR?I2CSTART?I2C - CODE 086DH 000EH UNIT ?PR?_SEND_UART?MAIN - CODE 087BH 000EH UNIT ?CO?DS1302 - CODE 0889H 000EH UNIT ?PR?DELAY10US?I2C - CODE 0897H 000DH UNIT ?PR?DELAY10MS?MAIN - CODE 08A4H 000AH UNIT ?PR?LCDDISPLAY?MAIN - CODE 08AEH 000AH UNIT ?PR?_LCDWRITECOM?LCD - CODE 08B8H 000AH UNIT ?PR?_LCDWRITEDATA?LCD - CODE 08C2H 000AH UNIT ?C_INITSEG - CODE 08CCH 000AH UNIT ?PR?I2CSTOP?I2C - CODE 08D6H 0007H UNIT ?PR?_US_DELAY?MAIN - CODE 08DDH 0005H UNIT ?CO?MAIN + CODE 0003H 069FH UNIT ?C?LIB_CODE + CODE 06A2H 046FH UNIT ?PR?PRINTF?PRINTF + CODE 0B11H 0283H UNIT ?PR?LCDDISPLAY?MAIN + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 2 + + + CODE 0D94H 027AH UNIT ?PR?DETECTION?MAIN + CODE 100EH 00BEH UNIT ?PR?DISPOSE?MAIN + CODE 10CCH 0099H UNIT ?PR?GETTIMERESULT?MAIN + CODE 1165H 008CH UNIT ?C_C51STARTUP + CODE 11F1H 005AH UNIT ?PR?MAIN?MAIN + CODE 124BH 004FH UNIT ?PR?TEMPER_CHANGE?DS18B20 + CODE 129AH 004AH UNIT ?PR?_DS1302READ?DS1302 + CODE 12E4H 0042H UNIT ?PR?_DS18B20_WRITEBYTE?DS18B20 + CODE 1326H 0041H UNIT ?PR?_I2CSENDBYTE?I2C + CODE 1367H 003EH UNIT ?PR?DS18B20_READBYTE?DS18B20 + CODE 13A5H 0035H UNIT ?PR?_DS1302WRITE?DS1302 + CODE 13DAH 002AH UNIT ?PR?_LCD1602_DELAY1MS?LCD + CODE 1404H 0029H UNIT ?PR?MULTIPLE_READ_BH1750?MAIN + CODE 142DH 0027H UNIT ?PR?PUTCHAR?PUTCHAR + CODE 1454H 0026H UNIT ?PR?I2CREADBYTE?I2C + CODE 147AH 0025H UNIT ?PR?DS18B20_INIT?DS18B20 + CODE 149FH 0022H UNIT ?PR?_AT24C02READ?I2C + CODE 14C1H 0021H UNIT ?PR?DS18B20_READTEMP?DS18B20 + CODE 14E2H 0020H UNIT ?PR?_DELAY_NMS?MAIN + CODE 1502H 001EH UNIT ?PR?BH1750_RECVBYTE?MAIN + CODE 1520H 001EH UNIT ?PR?_DELAY_MS?DS18B20 + CODE 153EH 0019H UNIT ?PR?_BH1750_SENDBYTE?MAIN + CODE 1557H 0019H UNIT ?PR?LCDINIT?LCD + CODE 1570H 0019H UNIT ?PR?_AT24C02WRITE?I2C + CODE 1589H 0018H UNIT ?PR?_BLUETOOTH_SET?MAIN + CODE 15A1H 0016H UNIT ?PR?UART_INIT?MAIN + CODE 15B7H 0016H UNIT ?PR?DS1302READTIME?DS1302 + CODE 15CDH 0014H UNIT ?PR?DS1302INIT?DS1302 + CODE 15E1H 0012H UNIT ?PR?_SINGLE_WRITE_BH1750?MAIN + CODE 15F3H 0011H UNIT ?PR?DELAY5US?MAIN + CODE 1604H 000FH UNIT ?PR?DELAY5MS?MAIN + CODE 1613H 000FH UNIT ?PR?BH1750_START?MAIN + CODE 1622H 000FH UNIT ?PR?I2CSTART?I2C + CODE 1631H 000EH UNIT ?PR?BH1750_SENDACK?MAIN + CODE 163FH 000EH UNIT ?PR?_SEND_UART?MAIN + CODE 164DH 000EH UNIT ?C_INITSEG + CODE 165BH 000EH UNIT ?CO?DS1302 + CODE 1669H 000EH UNIT ?PR?DELAY10US?I2C + CODE 1677H 000DH UNIT ?PR?BH1750_RECVACK?MAIN + CODE 1684H 000DH UNIT ?PR?DELAY10MS?MAIN + CODE 1691H 000CH UNIT ?PR?BH1750_STOP?MAIN + CODE 169DH 000AH UNIT ?PR?_LCDWRITECOM?LCD + CODE 16A7H 000AH UNIT ?PR?_LCDWRITEDATA?LCD + CODE 16B1H 000AH UNIT ?PR?I2CSTOP?I2C + CODE 16BBH 0007H UNIT ?PR?_US_DELAY?MAIN + CODE 16C2H 0005H UNIT ?PR?INIT_BH1750?MAIN + CODE 16C7H 0005H UNIT ?CO?MAIN OVERLAY MAP OF MODULE: pro (MAIN) -SEGMENT BIT_GROUP DATA_GROUP - +--> CALLED SEGMENT START LENGTH START LENGTH ---------------------------------------------------------------------- -?C_C51STARTUP ----- ----- ----- ----- +SEGMENT BIT_GROUP DATA_GROUP + +--> CALLED SEGMENT START LENGTH START LENGTH +-------------------------------------------------------------------------- +?C_C51STARTUP ----- ----- ----- ----- + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 3 + + +--> ?PR?MAIN?MAIN +--> ?C_INITSEG -?PR?MAIN?MAIN ----- ----- 0022H 0020H - +--> ?PR?LCDINIT?LCD +?PR?MAIN?MAIN ----- ----- 0022H 000CH +--> ?PR?DS1302INIT?DS1302 +--> ?PR?UART_INIT?MAIN + +--> ?PR?LCDINIT?LCD +--> ?PR?DS1302READTIME?DS1302 +--> ?PR?LCDDISPLAY?MAIN +--> ?PR?DETECTION?MAIN + +--> ?PR?DISPOSE?MAIN +--> ?CO?MAIN +--> ?PR?PRINTF?PRINTF +--> ?PR?_BLUETOOTH_SET?MAIN - +--> ?PR?DISPOSE?MAIN -?PR?LCDINIT?LCD ----- ----- ----- ----- +?PR?DS1302INIT?DS1302 ----- ----- ----- ----- + +--> ?PR?_DS1302WRITE?DS1302 + +?PR?LCDINIT?LCD ----- ----- ----- ----- +--> ?PR?_LCDWRITECOM?LCD -?PR?_LCDWRITECOM?LCD ----- ----- ----- ----- +?PR?_LCDWRITECOM?LCD ----- ----- ----- ----- +--> ?PR?_LCD1602_DELAY1MS?LCD -?PR?DS1302INIT?DS1302 ----- ----- ----- ----- - +--> ?PR?_DS1302WRITE?DS1302 - +--> ?CO?DS1302 - -?PR?DS1302READTIME?DS1302 ----- ----- ----- ----- +?PR?DS1302READTIME?DS1302 ----- ----- ----- ----- +--> ?CO?DS1302 +--> ?PR?_DS1302READ?DS1302 -?PR?LCDDISPLAY?MAIN ----- ----- ----- ----- +?PR?LCDDISPLAY?MAIN ----- ----- 002EH 0002H +--> ?PR?_LCDWRITECOM?LCD +--> ?PR?_LCDWRITEDATA?LCD - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 3 - - -?PR?_LCDWRITEDATA?LCD ----- ----- ----- ----- +?PR?_LCDWRITEDATA?LCD ----- ----- ----- ----- +--> ?PR?_LCD1602_DELAY1MS?LCD -?PR?DETECTION?MAIN ----- ----- 0042H 0002H +?PR?DETECTION?MAIN ----- ----- 002EH 0002H + +--> ?PR?_SINGLE_WRITE_BH1750?MAIN + +--> ?PR?_DELAY_NMS?MAIN + +--> ?PR?MULTIPLE_READ_BH1750?MAIN + +--> ?PR?TEMPER_CHANGE?DS18B20 +--> ?PR?DELAY10MS?MAIN + +--> ?PR?_LCDWRITECOM?LCD + +?PR?_SINGLE_WRITE_BH1750?MAIN ----- ----- ----- ----- + +--> ?PR?BH1750_START?MAIN + +--> ?PR?_BH1750_SENDBYTE?MAIN + +--> ?PR?BH1750_STOP?MAIN + +?PR?BH1750_START?MAIN ----- ----- ----- ----- + +--> ?PR?DELAY5US?MAIN + +?PR?_BH1750_SENDBYTE?MAIN ----- ----- ----- ----- + +--> ?PR?DELAY5US?MAIN + +--> ?PR?BH1750_RECVACK?MAIN + +?PR?BH1750_RECVACK?MAIN ----- ----- ----- ----- + +--> ?PR?DELAY5US?MAIN + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 4 + + -?PR?PRINTF?PRINTF 0020H.0 0001H.1 0042H 0014H +?PR?BH1750_STOP?MAIN ----- ----- ----- ----- + +--> ?PR?DELAY5US?MAIN + +?PR?MULTIPLE_READ_BH1750?MAIN ----- ----- ----- ----- + +--> ?PR?BH1750_START?MAIN + +--> ?PR?_BH1750_SENDBYTE?MAIN + +--> ?PR?BH1750_RECVBYTE?MAIN + +--> ?PR?BH1750_SENDACK?MAIN + +--> ?PR?BH1750_STOP?MAIN + +--> ?PR?DELAY5MS?MAIN + +?PR?BH1750_RECVBYTE?MAIN ----- ----- ----- ----- + +--> ?PR?DELAY5US?MAIN + +?PR?BH1750_SENDACK?MAIN 0020H.0 0000H.1 ----- ----- + +--> ?PR?DELAY5US?MAIN + +?PR?TEMPER_CHANGE?DS18B20 ----- ----- 0030H 0004H + +--> ?PR?DS18B20_READTEMP?DS18B20 + +?PR?DS18B20_READTEMP?DS18B20 ----- ----- 0034H 0001H + +--> ?PR?_DS18B20_WRITEBYTE?DS18B20 + +--> ?PR?DS18B20_READBYTE?DS18B20 + +?PR?_DS18B20_WRITEBYTE?DS18B20 ----- ----- 0035H 0002H + +--> ?PR?DS18B20_INIT?DS18B20 + +--> ?PR?_DELAY_MS?DS18B20 + +?PR?DS18B20_INIT?DS18B20 ----- ----- ----- ----- + +--> ?PR?_DELAY_MS?DS18B20 + +?PR?DISPOSE?MAIN ----- ----- ----- ----- + +--> ?PR?GETTIMERESULT?MAIN + +?PR?GETTIMERESULT?MAIN ----- ----- 002EH 0006H + +?PR?PRINTF?PRINTF 0020H.0 0001H.1 002EH 001CH +--> ?PR?PUTCHAR?PUTCHAR -?PR?_BLUETOOTH_SET?MAIN ----- ----- ----- ----- +?PR?_BLUETOOTH_SET?MAIN ----- ----- ----- ----- +--> ?PR?_SEND_UART?MAIN +--> ?PR?_US_DELAY?MAIN @@ -144,196 +235,525 @@ SYMBOL TABLE OF MODULE: pro (MAIN) ------- MODULE MAIN C:0000H SYMBOL _ICE_DUMMY_ - D:0080H PUBLIC P0 + B:00A0H.7 PUBLIC key4 D:0090H PUBLIC P1 D:00A0H PUBLIC P2 D:00B0H PUBLIC P3 - B:0080H.2 PUBLIC LED0 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 5 + + + B:00A0H.5 PUBLIC LED0 B:00A8H.7 PUBLIC EA - B:0080H.1 PUBLIC LED1 - B:0080H.0 PUBLIC LED2 - B:0080H.4 PUBLIC LED3 - B:0080H.3 PUBLIC LED4 - C:086DH PUBLIC _Send_Uart - C:0832H PUBLIC Uart_Init + B:00A0H.6 PUBLIC LED1 + B:00A0H.1 PUBLIC LED2 + C:1604H PUBLIC Delay5ms + B:00A0H.4 PUBLIC LED3 + C:1404H PUBLIC Multiple_read_BH1750 + B:0090H.0 PUBLIC SDA1 + B:00A0H.3 PUBLIC LED4 + C:163FH PUBLIC _Send_Uart + C:15E1H PUBLIC _Single_Write_BH1750 + C:15F3H PUBLIC Delay5us + B:0090H.1 PUBLIC SCL1 + C:15A1H PUBLIC Uart_Init + C:1631H PUBLIC BH1750_SendACK B:00B0H.7 PUBLIC IN B:00A8H.4 PUBLIC ES + C:1677H PUBLIC BH1750_RecvACK + B:00D0H.7 PUBLIC CY B:0098H.1 PUBLIC TI - C:035FH PUBLIC Detection - C:06BAH PUBLIC main + C:0D94H PUBLIC Detection + C:11F1H PUBLIC main D:0099H PUBLIC SBUF D:0087H PUBLIC PCON D:0098H PUBLIC SCON - C:0897H PUBLIC Delay10ms + C:1684H PUBLIC Delay10ms D:0089H PUBLIC TMOD - C:081AH PUBLIC _Bluetooth_Set + D:004AH PUBLIC dis_data + C:14E2H PUBLIC _delay_nms + C:1589H PUBLIC _Bluetooth_Set + C:1613H PUBLIC BH1750_Start + D:004CH PUBLIC cut D:008DH PUBLIC TH1 - D:0008H PUBLIC userInfo + C:16C2H PUBLIC Init_BH1750 + D:004EH PUBLIC userInfo D:008BH PUBLIC TL1 + C:10CCH PUBLIC getTimeResult B:0088H.6 PUBLIC TR1 - C:0464H PUBLIC Dispose - C:08D6H PUBLIC _us_delay - C:08A4H PUBLIC LcdDisplay + C:100EH PUBLIC Dispose + C:16BBH PUBLIC _us_delay + C:153EH PUBLIC _BH1750_SendByte + D:0068H PUBLIC BUF + C:1691H PUBLIC BH1750_Stop + C:1502H PUBLIC BH1750_RecvByte + C:0B11H PUBLIC LcdDisplay B:00B0H.6 PUBLIC OUT B:0090H.2 PUBLIC key1 B:0090H.3 PUBLIC key2 + B:00A0H.2 PUBLIC key3 + ------- PROC _DELAY_NMS + D:0006H SYMBOL k + ------- DO + D:0004H SYMBOL i + D:0002H SYMBOL j + ------- ENDDO + C:14E2H LINE# 90 + C:14E2H LINE# 91 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 6 + + + C:14E2H LINE# 93 + C:14ECH LINE# 94 + C:14ECH LINE# 95 + C:14EFH LINE# 96 + C:1501H LINE# 97 + ------- ENDPROC _DELAY_NMS + ------- PROC DELAY5US + C:15F3H LINE# 99 + C:15F3H LINE# 100 + C:15F3H LINE# 101 + C:15F7H LINE# 102 + C:15FBH LINE# 103 + C:15FFH LINE# 104 + C:1603H LINE# 105 + ------- ENDPROC DELAY5US + ------- PROC DELAY5MS + ------- DO + D:0006H SYMBOL n + ------- ENDDO + C:1604H LINE# 107 + C:1604H LINE# 108 + C:1604H LINE# 109 + C:1608H LINE# 111 + C:1612H LINE# 112 + ------- ENDPROC DELAY5MS + ------- PROC BH1750_START + C:1613H LINE# 117 + C:1613H LINE# 118 + C:1613H LINE# 119 + C:1615H LINE# 120 + C:1617H LINE# 121 + C:161AH LINE# 122 + C:161CH LINE# 123 + C:161FH LINE# 124 + C:1621H LINE# 125 + ------- ENDPROC BH1750_START + ------- PROC BH1750_STOP + C:1691H LINE# 130 + C:1691H LINE# 131 + C:1691H LINE# 132 + C:1693H LINE# 133 + C:1695H LINE# 134 + C:1698H LINE# 135 + C:169AH LINE# 136 + ------- ENDPROC BH1750_STOP + ------- PROC BH1750_SENDACK + B:0020H.0 SYMBOL ack + C:1631H LINE# 143 + C:1631H LINE# 144 + C:1631H LINE# 145 + C:1635H LINE# 146 + C:1637H LINE# 147 + C:163AH LINE# 148 + C:163CH LINE# 149 + ------- ENDPROC BH1750_SENDACK + ------- PROC BH1750_RECVACK + C:1677H LINE# 155 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 7 + + + C:1677H LINE# 156 + C:1677H LINE# 157 + C:1679H LINE# 158 + C:167CH LINE# 159 + C:167EH LINE# 160 + C:1680H LINE# 161 + C:1683H LINE# 163 + C:1683H LINE# 164 + ------- ENDPROC BH1750_RECVACK + ------- PROC _BH1750_SENDBYTE + D:0007H SYMBOL dat + ------- DO + D:0006H SYMBOL i + ------- ENDDO + C:153EH LINE# 169 + C:153EH LINE# 170 + C:153EH LINE# 173 + C:1540H LINE# 174 + C:1540H LINE# 175 + C:1544H LINE# 176 + C:1546H LINE# 177 + C:1548H LINE# 178 + C:154BH LINE# 179 + C:154DH LINE# 180 + C:1550H LINE# 181 + C:1554H LINE# 182 + ------- ENDPROC _BH1750_SENDBYTE + ------- PROC BH1750_RECVBYTE + ------- DO + D:0006H SYMBOL i + D:0007H SYMBOL dat + ------- ENDDO + C:1502H LINE# 188 + C:1502H LINE# 189 + C:1502H LINE# 191 + C:1504H LINE# 193 + C:1506H LINE# 194 + C:1507H LINE# 195 + C:1507H LINE# 196 + C:150BH LINE# 197 + C:150DH LINE# 198 + C:1510H LINE# 199 + C:1516H LINE# 200 + C:1518H LINE# 201 + C:151BH LINE# 202 + C:151FH LINE# 203 + C:151FH LINE# 204 + ------- ENDPROC BH1750_RECVBYTE + ------- PROC _SINGLE_WRITE_BH1750 + D:0005H SYMBOL REG_Address + C:15E1H LINE# 208 + C:15E3H LINE# 209 + C:15E3H LINE# 210 + C:15E6H LINE# 211 + C:15EBH LINE# 212 + C:15F0H LINE# 214 + ------- ENDPROC _SINGLE_WRITE_BH1750 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 8 + + + ------- PROC MULTIPLE_READ_BH1750 + ------- DO + D:0005H SYMBOL i + ------- ENDDO + C:1404H LINE# 237 + C:1404H LINE# 239 + C:1404H LINE# 240 + C:1407H LINE# 241 + C:140CH LINE# 243 + C:140EH LINE# 244 + C:140EH LINE# 245 + C:1417H LINE# 246 + C:141AH LINE# 247 + C:141AH LINE# 249 + C:141CH LINE# 250 + C:141EH LINE# 252 + C:141EH LINE# 253 + C:1423H LINE# 254 + C:1423H LINE# 255 + C:1427H LINE# 257 + C:142AH LINE# 258 + ------- ENDPROC MULTIPLE_READ_BH1750 + ------- PROC INIT_BH1750 + C:16C2H LINE# 263 + C:16C2H LINE# 264 + C:16C2H LINE# 265 + ------- ENDPROC INIT_BH1750 ------- PROC UART_INIT - C:0832H LINE# 34 - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 4 - - - C:0832H LINE# 35 - C:0832H LINE# 36 - C:0835H LINE# 37 - C:0838H LINE# 38 - C:083BH LINE# 39 - C:083EH LINE# 40 - C:0841H LINE# 41 - C:0843H LINE# 42 - C:0845H LINE# 43 - C:0847H LINE# 44 + C:15A1H LINE# 270 + C:15A1H LINE# 271 + C:15A1H LINE# 272 + C:15A4H LINE# 273 + C:15A7H LINE# 274 + C:15AAH LINE# 275 + C:15ADH LINE# 276 + C:15B0H LINE# 277 + C:15B2H LINE# 278 + C:15B4H LINE# 279 + C:15B6H LINE# 280 ------- ENDPROC UART_INIT ------- PROC _US_DELAY D:0007H SYMBOL t - C:08D6H LINE# 46 - C:08D6H LINE# 47 - C:08D6H LINE# 48 - C:08DCH LINE# 49 + C:16BBH LINE# 282 + C:16BBH LINE# 283 + C:16BBH LINE# 284 + C:16C1H LINE# 285 ------- ENDPROC _US_DELAY ------- PROC _SEND_UART D:0007H SYMBOL value - C:086DH LINE# 51 - C:086DH LINE# 52 - C:086DH LINE# 53 - C:086FH LINE# 54 - C:0871H LINE# 55 - C:0873H LINE# 56 - C:0876H LINE# 57 - C:0878H LINE# 58 - C:087AH LINE# 59 + C:163FH LINE# 287 + C:163FH LINE# 288 + C:163FH LINE# 289 + C:1641H LINE# 290 + C:1643H LINE# 291 + C:1645H LINE# 292 + C:1648H LINE# 293 + C:164AH LINE# 294 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 9 + + + C:164CH LINE# 295 ------- ENDPROC _SEND_UART ------- PROC _BLUETOOTH_SET D:0001H SYMBOL puf - C:081AH LINE# 61 - C:081AH LINE# 62 - C:081AH LINE# 63 - C:0820H LINE# 64 - C:0820H LINE# 65 - C:0823H LINE# 66 - C:0828H LINE# 67 - C:082FH LINE# 68 - C:0831H LINE# 69 + C:1589H LINE# 297 + C:1589H LINE# 298 + C:1589H LINE# 299 + C:158FH LINE# 300 + C:158FH LINE# 301 + C:1592H LINE# 302 + C:1597H LINE# 303 + C:159EH LINE# 304 + C:15A0H LINE# 305 ------- ENDPROC _BLUETOOTH_SET ------- PROC DETECTION ------- DO - D:0042H SYMBOL i + D:002EH SYMBOL i ------- ENDDO - C:035FH LINE# 71 - C:035FH LINE# 72 - C:035FH LINE# 73 - C:0364H LINE# 74 - C:0367H LINE# 75 - C:0367H LINE# 76 - C:036AH LINE# 77 - C:036DH LINE# 78 - C:037AH LINE# 79 - C:037FH LINE# 80 - C:037FH LINE# 81 - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 5 - - - C:038FH LINE# 82 - C:0392H LINE# 83 - C:039AH LINE# 84 - C:039CH LINE# 85 - C:03A1H LINE# 86 - C:03A1H LINE# 88 - C:03A4H LINE# 89 - C:03A4H LINE# 90 - C:03A7H LINE# 91 - C:03AAH LINE# 92 - C:03B7H LINE# 93 - C:03BCH LINE# 94 - C:03BCH LINE# 95 - C:03CCH LINE# 96 - C:03CFH LINE# 97 - C:03D7H LINE# 98 - C:03D9H LINE# 99 - C:03DEH LINE# 100 - C:03DEH LINE# 102 - C:03E1H LINE# 103 - C:03E1H LINE# 104 - C:03E4H LINE# 105 - C:03E7H LINE# 106 - C:03EFH LINE# 107 - C:0400H LINE# 108 - C:0400H LINE# 109 - C:0410H LINE# 110 - C:0413H LINE# 111 - C:041BH LINE# 112 - C:041DH LINE# 113 - C:0422H LINE# 114 - C:0422H LINE# 116 - C:0425H LINE# 117 - C:0425H LINE# 118 - C:0428H LINE# 119 - C:042BH LINE# 120 - C:0433H LINE# 121 - C:0441H LINE# 122 - C:0441H LINE# 123 - C:0451H LINE# 124 - C:0454H LINE# 125 - C:045CH LINE# 126 - C:045EH LINE# 127 - C:0463H LINE# 128 - C:0463H LINE# 129 + C:0D94H LINE# 307 + C:0D94H LINE# 308 + C:0D94H LINE# 309 + C:0D99H LINE# 310 + C:0D9EH LINE# 311 + C:0DA3H LINE# 312 + C:0DAAH LINE# 313 + C:0DADH LINE# 314 + C:0DB3H LINE# 315 + C:0DC1H LINE# 316 + C:0DDAH LINE# 318 + C:0DE1H LINE# 319 + C:0DECH LINE# 320 + C:0DEFH LINE# 321 + C:0DEFH LINE# 322 + C:0DF2H LINE# 323 + C:0DF5H LINE# 324 + C:0DFBH LINE# 325 + C:0E08H LINE# 326 + C:0E0DH LINE# 327 + C:0E0DH LINE# 328 + C:0E0DH LINE# 329 + C:0E1DH LINE# 330 + C:0E20H LINE# 331 + C:0E28H LINE# 332 + C:0E2AH LINE# 333 + C:0E2FH LINE# 334 + C:0E2FH LINE# 336 + C:0E32H LINE# 337 + C:0E32H LINE# 338 + C:0E35H LINE# 339 + C:0E38H LINE# 340 + C:0E3EH LINE# 341 + C:0E4BH LINE# 342 + C:0E50H LINE# 343 + C:0E52H LINE# 344 + C:0E5FH LINE# 345 + C:0E64H LINE# 346 + C:0E69H LINE# 347 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 10 + + + C:0E69H LINE# 348 + C:0E6EH LINE# 349 + C:0E6EH LINE# 350 + C:0E7EH LINE# 351 + C:0E81H LINE# 352 + C:0E89H LINE# 353 + C:0E8BH LINE# 354 + C:0E90H LINE# 355 + C:0E90H LINE# 357 + C:0E93H LINE# 358 + C:0E93H LINE# 359 + C:0E96H LINE# 360 + C:0E99H LINE# 361 + C:0EA1H LINE# 362 + C:0EB2H LINE# 363 + C:0EB2H LINE# 364 + C:0EC2H LINE# 365 + C:0EC5H LINE# 366 + C:0ECDH LINE# 367 + C:0ECFH LINE# 368 + C:0ED4H LINE# 369 + C:0ED4H LINE# 371 + C:0ED7H LINE# 372 + C:0ED7H LINE# 373 + C:0EDAH LINE# 374 + C:0EDDH LINE# 375 + C:0EE5H LINE# 376 + C:0EF3H LINE# 377 + C:0EF3H LINE# 378 + C:0F03H LINE# 379 + C:0F06H LINE# 380 + C:0F0EH LINE# 381 + C:0F10H LINE# 382 + C:0F15H LINE# 383 + C:0F15H LINE# 385 + C:0F18H LINE# 386 + C:0F18H LINE# 387 + C:0F1BH LINE# 388 + C:0F1EH LINE# 389 + C:0F26H LINE# 390 + C:0F36H LINE# 391 + C:0F36H LINE# 392 + C:0F46H LINE# 393 + C:0F49H LINE# 394 + C:0F51H LINE# 395 + C:0F53H LINE# 396 + C:0F58H LINE# 397 + C:0F58H LINE# 399 + C:0F5EH LINE# 400 + C:0F5EH LINE# 401 + C:0F61H LINE# 402 + C:0F67H LINE# 403 + C:0F6DH LINE# 404 + C:0F75H LINE# 405 + C:0F85H LINE# 406 + C:0F8FH LINE# 407 + C:0F97H LINE# 408 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 11 + + + C:0FA7H LINE# 409 + C:0FB1H LINE# 410 + C:0FB9H LINE# 411 + C:0FC9H LINE# 412 + C:0FD3H LINE# 413 + C:0FDBH LINE# 414 + C:0FEBH LINE# 415 + C:0FEBH LINE# 416 + C:0FFBH LINE# 417 + C:0FFEH LINE# 418 + C:1006H LINE# 419 + C:1008H LINE# 420 + C:100DH LINE# 421 + C:100DH LINE# 422 + C:100DH LINE# 423 ------- ENDPROC DETECTION + ------- PROC GETTIMERESULT + ------- DO + D:0004H SYMBOL result + D:002EH SYMBOL Nowtime + ------- ENDDO + C:10CCH LINE# 426 + C:10CCH LINE# 427 + C:10CCH LINE# 428 + C:10D0H LINE# 431 + C:10E9H LINE# 432 + C:1100H LINE# 434 + C:1124H LINE# 435 + C:1141H LINE# 436 + C:1160H LINE# 438 + C:1164H LINE# 439 + ------- ENDPROC GETTIMERESULT ------- PROC DISPOSE - C:0464H LINE# 131 - C:0464H LINE# 132 - C:0464H LINE# 133 - C:0470H LINE# 134 - C:0470H LINE# 135 - C:0473H LINE# 136 - C:048CH LINE# 137 - C:04AFH LINE# 138 - C:04CEH LINE# 139 - C:04EDH LINE# 140 - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 6 - - - C:0504H LINE# 141 - C:050CH LINE# 142 - C:050CH LINE# 143 - C:050CH LINE# 144 - C:0514H LINE# 145 + C:100EH LINE# 442 + C:100EH LINE# 443 + C:100EH LINE# 445 + C:1017H LINE# 446 + C:1035H LINE# 447 + C:1058H LINE# 448 + C:1077H LINE# 449 + C:1096H LINE# 450 + C:10A9H LINE# 453 + C:10A9H LINE# 454 + C:10A9H LINE# 455 + C:10ABH LINE# 456 + C:10B1H LINE# 457 + C:10B9H LINE# 458 + C:10BBH LINE# 459 + C:10C3H LINE# 460 + C:10C3H LINE# 461 + C:10C3H LINE# 462 + C:10CBH LINE# 463 ------- ENDPROC DISPOSE ------- PROC MAIN ------- DO D:0022H SYMBOL i D:0024H SYMBOL str + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 12 + + ------- ENDDO - C:06BAH LINE# 147 - C:06BAH LINE# 148 - C:06BAH LINE# 149 - C:06BFH LINE# 151 - C:06C2H LINE# 152 - C:06C5H LINE# 153 - C:06C8H LINE# 154 - C:06C8H LINE# 155 - C:06C8H LINE# 156 - C:06CBH LINE# 157 - C:06CEH LINE# 158 - C:06D1H LINE# 159 - C:06E9H LINE# 160 - C:06F2H LINE# 161 - C:06F5H LINE# 162 + C:11F1H LINE# 465 + C:11F1H LINE# 466 + C:11F1H LINE# 467 + C:11F6H LINE# 469 + C:11F9H LINE# 470 + C:11FCH LINE# 471 + C:11FFH LINE# 473 + C:1205H LINE# 474 + C:120AH LINE# 475 + C:120EH LINE# 477 + C:1213H LINE# 478 + C:1218H LINE# 479 + C:121CH LINE# 481 + C:121CH LINE# 482 + C:121CH LINE# 483 + C:121FH LINE# 484 + C:1222H LINE# 485 + C:1225H LINE# 486 + C:1228H LINE# 487 + C:1240H LINE# 488 + C:1249H LINE# 489 ------- ENDPROC MAIN ------- PROC LCDDISPLAY - C:08A4H LINE# 166 - C:08A4H LINE# 167 - C:08A4H LINE# 169 - C:08A9H LINE# 170 + ------- DO + D:002EH SYMBOL temp_data + ------- ENDDO + C:0B11H LINE# 492 + C:0B11H LINE# 493 + C:0B11H LINE# 495 + C:0B1CH LINE# 497 + C:0B1FH LINE# 498 + C:0B2AH LINE# 499 + C:0B34H LINE# 500 + C:0B39H LINE# 501 + C:0B44H LINE# 502 + C:0B4EH LINE# 503 + C:0B53H LINE# 505 + C:0B5EH LINE# 506 + C:0B68H LINE# 507 + C:0B6DH LINE# 508 + C:0B78H LINE# 509 + C:0B82H LINE# 510 + C:0B87H LINE# 511 + C:0B92H LINE# 512 + C:0B9CH LINE# 514 + C:0BA1H LINE# 515 + C:0BABH LINE# 517 + C:0BB0H LINE# 518 + C:0BBFH LINE# 519 + C:0BCAH LINE# 520 + C:0BDCH LINE# 521 + C:0BEBH LINE# 522 + C:0BFDH LINE# 523 + C:0C0CH LINE# 524 + C:0C1EH LINE# 525 + C:0C2DH LINE# 526 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 13 + + + C:0C35H LINE# 527 + C:0C3AH LINE# 528 + C:0C3FH LINE# 529 + C:0C44H LINE# 530 + C:0C56H LINE# 531 + C:0C68H LINE# 532 + C:0C6DH LINE# 534 + C:0C72H LINE# 535 + C:0C8BH LINE# 536 + C:0C8FH LINE# 537 + C:0C92H LINE# 538 + C:0C95H LINE# 539 + C:0CA7H LINE# 540 + C:0CB9H LINE# 541 + C:0CBEH LINE# 542 + C:0CD0H LINE# 543 + C:0CE2H LINE# 544 + C:0CE7H LINE# 545 + C:0CF9H LINE# 546 + C:0D0BH LINE# 547 + C:0D10H LINE# 549 + C:0D18H LINE# 551 + C:0D1DH LINE# 552 + C:0D2FH LINE# 553 + C:0D41H LINE# 554 + C:0D46H LINE# 555 + C:0D58H LINE# 556 + C:0D6AH LINE# 557 + C:0D6FH LINE# 558 + C:0D81H LINE# 559 + C:0D93H LINE# 560 + C:0D93H LINE# 561 ------- ENDPROC LCDDISPLAY ------- PROC DELAY10MS ------- DO @@ -341,29 +761,29 @@ SYMBOL TABLE OF MODULE: pro (MAIN) D:0006H SYMBOL b D:0007H SYMBOL c ------- ENDDO - C:0897H LINE# 174 - C:0897H LINE# 175 - C:0897H LINE# 177 - C:0899H LINE# 178 - C:089BH LINE# 179 - C:08A3H LINE# 180 + C:1684H LINE# 564 + C:1684H LINE# 565 + C:1684H LINE# 567 + C:1686H LINE# 568 + C:1688H LINE# 569 + C:1690H LINE# 570 ------- ENDPROC DELAY10MS ------- ENDMOD MAIN ------- MODULE LCD C:0000H SYMBOL _ICE_DUMMY_ + D:0080H PUBLIC P0 D:0090H PUBLIC P1 - D:00A0H PUBLIC P2 - C:08B8H PUBLIC _LcdWriteData + C:16A7H PUBLIC _LcdWriteData B:0090H.6 PUBLIC LCD1602_RS B:0090H.5 PUBLIC LCD1602_RW - C:07E8H PUBLIC LcdInit + C:1557H PUBLIC LcdInit B:0090H.4 PUBLIC LCD1602_E - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 7 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 14 - C:08AEH PUBLIC _LcdWriteCom - C:073DH PUBLIC _Lcd1602_Delay1ms + C:169DH PUBLIC _LcdWriteCom + C:13EBH PUBLIC _Lcd1602_Delay1ms ------- PROC L?0015 ------- ENDPROC L?0015 ------- PROC _LCD1602_DELAY1MS @@ -372,54 +792,54 @@ SYMBOL TABLE OF MODULE: pro (MAIN) D:0004H SYMBOL a D:0005H SYMBOL b ------- ENDDO - C:073DH LINE# 11 - C:073DH LINE# 12 - C:073DH LINE# 14 - C:0746H LINE# 15 - C:0746H LINE# 16 - C:0748H LINE# 17 - C:0748H LINE# 18 - C:074CH LINE# 19 - C:074EH LINE# 20 - C:0755H LINE# 22 + C:13EBH LINE# 11 + C:13EBH LINE# 12 + C:13EBH LINE# 14 + C:13F4H LINE# 15 + C:13F4H LINE# 16 + C:13F6H LINE# 17 + C:13F6H LINE# 18 + C:13FAH LINE# 19 + C:13FCH LINE# 20 + C:1403H LINE# 22 ------- ENDPROC _LCD1602_DELAY1MS ------- PROC _LCDWRITECOM D:0007H SYMBOL com - C:08AEH LINE# 31 - C:08AEH LINE# 32 - C:08AEH LINE# 33 - C:08B0H LINE# 34 - C:08B2H LINE# 35 - C:08B2H LINE# 37 - C:08B2H LINE# 38 - C:08B2H LINE# 40 - C:08B2H LINE# 41 - C:08B5H LINE# 42 - C:08B7H LINE# 43 + C:169DH LINE# 31 + C:169DH LINE# 32 + C:169DH LINE# 33 + C:169FH LINE# 34 + C:16A1H LINE# 35 + C:16A1H LINE# 37 + C:16A1H LINE# 38 + C:16A1H LINE# 40 + C:16A1H LINE# 41 + C:16A4H LINE# 42 + C:16A6H LINE# 43 ------- ENDPROC _LCDWRITECOM ------- PROC _LCDWRITEDATA D:0007H SYMBOL dat - C:08B8H LINE# 74 - C:08B8H LINE# 75 - C:08B8H LINE# 76 - C:08BAH LINE# 77 - C:08BCH LINE# 78 - C:08BCH LINE# 80 - C:08BCH LINE# 81 - C:08BCH LINE# 83 - C:08BCH LINE# 84 - C:08BFH LINE# 85 - C:08C1H LINE# 86 + C:16A7H LINE# 74 + C:16A7H LINE# 75 + C:16A7H LINE# 76 + C:16A9H LINE# 77 + C:16ABH LINE# 78 + C:16ABH LINE# 80 + C:16ABH LINE# 81 + C:16ABH LINE# 83 + C:16ABH LINE# 84 + C:16AEH LINE# 85 + C:16B0H LINE# 86 ------- ENDPROC _LCDWRITEDATA ------- PROC LCDINIT - C:07E8H LINE# 116 - C:07E8H LINE# 117 - C:07E8H LINE# 118 - C:07EDH LINE# 119 - C:07F2H LINE# 120 - C:07F7H LINE# 121 - C:07FCH LINE# 122 - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 8 + C:1557H LINE# 116 + C:1557H LINE# 117 + C:1557H LINE# 118 + C:155CH LINE# 119 + C:1561H LINE# 120 + C:1566H LINE# 121 + C:156BH LINE# 122 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 15 ------- ENDPROC LCDINIT @@ -428,181 +848,180 @@ SYMBOL TABLE OF MODULE: pro (MAIN) ------- MODULE DS1302 C:0000H SYMBOL _ICE_DUMMY_ D:00B0H PUBLIC P3 - C:06F7H PUBLIC _Ds1302Write - C:0848H PUBLIC Ds1302ReadTime - C:07A3H PUBLIC Ds1302Init + C:13A5H PUBLIC _Ds1302Write + C:15B7H PUBLIC Ds1302ReadTime + C:15CDH PUBLIC Ds1302Init B:00B0H.5 PUBLIC SCLK - D:0010H PUBLIC TIME + D:0008H PUBLIC TIME B:00B0H.4 PUBLIC DSIO - C:0882H PUBLIC WRITE_RTC_ADDR - C:087BH PUBLIC READ_RTC_ADDR + C:1662H PUBLIC WRITE_RTC_ADDR + C:165BH PUBLIC READ_RTC_ADDR B:00B0H.3 PUBLIC RST - C:062FH PUBLIC _Ds1302Read + C:129AH PUBLIC _Ds1302Read ------- PROC _DS1302WRITE D:0007H SYMBOL addr D:0005H SYMBOL dat ------- DO D:0006H SYMBOL n ------- ENDDO - C:06F7H LINE# 14 - C:06F7H LINE# 15 - C:06F7H LINE# 17 - C:06F9H LINE# 18 - C:06FAH LINE# 20 - C:06FCH LINE# 21 - C:06FDH LINE# 22 - C:06FFH LINE# 23 - C:0700H LINE# 25 - C:0702H LINE# 26 - C:0702H LINE# 27 - C:0706H LINE# 28 - C:070AH LINE# 29 - C:070CH LINE# 30 - C:070DH LINE# 31 - C:070FH LINE# 32 - C:0710H LINE# 33 - C:0714H LINE# 34 - C:0716H LINE# 35 - C:0716H LINE# 36 - C:071AH LINE# 37 - C:071EH LINE# 38 - C:0720H LINE# 39 - C:0721H LINE# 40 - C:0723H LINE# 41 - C:0724H LINE# 42 - C:0728H LINE# 44 - C:072AH LINE# 45 - C:072BH LINE# 46 + C:13A5H LINE# 14 + C:13A5H LINE# 15 + C:13A5H LINE# 17 + C:13A7H LINE# 18 + C:13A8H LINE# 20 + C:13AAH LINE# 21 + C:13ABH LINE# 22 + C:13ADH LINE# 23 + C:13AEH LINE# 25 + C:13B0H LINE# 26 + C:13B0H LINE# 27 + C:13B4H LINE# 28 + C:13B8H LINE# 29 + C:13BAH LINE# 30 + C:13BBH LINE# 31 + C:13BDH LINE# 32 + C:13BEH LINE# 33 + C:13C2H LINE# 34 + C:13C4H LINE# 35 + C:13C4H LINE# 36 + C:13C8H LINE# 37 + C:13CCH LINE# 38 + C:13CEH LINE# 39 + C:13CFH LINE# 40 + C:13D1H LINE# 41 + C:13D2H LINE# 42 + C:13D6H LINE# 44 + C:13D8H LINE# 45 + C:13D9H LINE# 46 ------- ENDPROC _DS1302WRITE ------- PROC _DS1302READ D:0007H SYMBOL addr ------- DO D:0005H SYMBOL n D:0006H SYMBOL dat - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 9 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 16 D:0007H SYMBOL dat1 ------- ENDDO - C:062FH LINE# 48 - C:062FH LINE# 49 - C:062FH LINE# 51 - C:0631H LINE# 52 - C:0632H LINE# 54 - C:0634H LINE# 55 - C:0635H LINE# 56 - C:0637H LINE# 57 - C:0638H LINE# 59 - C:063AH LINE# 60 - C:063AH LINE# 61 - C:063EH LINE# 62 - C:0642H LINE# 63 - C:0644H LINE# 64 - C:0645H LINE# 65 - C:0647H LINE# 66 - C:0648H LINE# 67 - C:064CH LINE# 68 - C:064DH LINE# 69 - C:064FH LINE# 70 - C:064FH LINE# 71 - C:0654H LINE# 72 - C:0660H LINE# 73 - C:0662H LINE# 74 - C:0663H LINE# 75 - C:0665H LINE# 76 - C:0666H LINE# 77 - C:066AH LINE# 79 - C:066CH LINE# 80 - C:066DH LINE# 81 - C:066FH LINE# 82 - C:0670H LINE# 83 - C:0672H LINE# 84 - C:0673H LINE# 85 - C:0675H LINE# 86 - C:0676H LINE# 87 - C:0678H LINE# 88 + C:129AH LINE# 48 + C:129AH LINE# 49 + C:129AH LINE# 51 + C:129CH LINE# 52 + C:129DH LINE# 54 + C:129FH LINE# 55 + C:12A0H LINE# 56 + C:12A2H LINE# 57 + C:12A3H LINE# 59 + C:12A5H LINE# 60 + C:12A5H LINE# 61 + C:12A9H LINE# 62 + C:12ADH LINE# 63 + C:12AFH LINE# 64 + C:12B0H LINE# 65 + C:12B2H LINE# 66 + C:12B3H LINE# 67 + C:12B7H LINE# 68 + C:12B8H LINE# 69 + C:12BAH LINE# 70 + C:12BAH LINE# 71 + C:12BFH LINE# 72 + C:12CBH LINE# 73 + C:12CDH LINE# 74 + C:12CEH LINE# 75 + C:12D0H LINE# 76 + C:12D1H LINE# 77 + C:12D5H LINE# 79 + C:12D7H LINE# 80 + C:12D8H LINE# 81 + C:12DAH LINE# 82 + C:12DBH LINE# 83 + C:12DDH LINE# 84 + C:12DEH LINE# 85 + C:12E0H LINE# 86 + C:12E1H LINE# 87 + C:12E3H LINE# 88 ------- ENDPROC _DS1302READ ------- PROC DS1302INIT ------- DO - D:0004H SYMBOL n + D:0007H SYMBOL n ------- ENDDO - C:07A3H LINE# 90 - C:07A3H LINE# 91 - C:07A3H LINE# 93 - C:07AAH LINE# 94 - C:07ACH LINE# 95 - C:07ACH LINE# 96 - C:07BBH LINE# 97 - C:07BFH LINE# 98 + C:15CDH LINE# 90 + C:15CDH LINE# 91 + C:15CDH LINE# 93 + C:15D4H LINE# 94 + C:15D6H LINE# 95 + C:15D6H LINE# 97 + C:15DAH LINE# 98 ------- ENDPROC DS1302INIT ------- PROC DS1302READTIME ------- DO D:0003H SYMBOL n ------- ENDDO - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 10 + C:15B7H LINE# 101 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 17 - C:0848H LINE# 101 - C:0848H LINE# 102 - C:0848H LINE# 104 - C:084AH LINE# 105 - C:084AH LINE# 106 - C:0859H LINE# 107 - C:085DH LINE# 108 + C:15B7H LINE# 102 + C:15B7H LINE# 104 + C:15B9H LINE# 105 + C:15B9H LINE# 106 + C:15C8H LINE# 107 + C:15CCH LINE# 108 ------- ENDPROC DS1302READTIME ------- ENDMOD DS1302 ------- MODULE I2C C:0000H SYMBOL _ICE_DUMMY_ D:00A0H PUBLIC P2 - C:0679H PUBLIC _I2cSendByte - C:08CCH PUBLIC I2cStop - C:088EH PUBLIC Delay10us + C:1326H PUBLIC _I2cSendByte + C:16B1H PUBLIC I2cStop + C:166EH PUBLIC Delay10us B:00A0H.0 PUBLIC SDA - C:07C6H PUBLIC _At24c02Read + C:149FH PUBLIC _At24c02Read B:00A0H.1 PUBLIC SCL - C:085EH PUBLIC I2cStart - C:0801H PUBLIC _At24c02Write - C:077DH PUBLIC I2cReadByte - C:0889H SYMBOL L?0024 + C:1622H PUBLIC I2cStart + C:1570H PUBLIC _At24c02Write + C:1454H PUBLIC I2cReadByte + C:1669H SYMBOL L?0024 ------- PROC L?0023 ------- ENDPROC L?0023 - C:0889H SYMBOL L?0024 + C:1669H SYMBOL L?0024 ------- PROC DELAY10US ------- DO D:0006H SYMBOL a D:0007H SYMBOL b ------- ENDDO - C:088EH LINE# 10 - C:088EH LINE# 11 - C:088EH LINE# 13 - C:0890H LINE# 14 - C:0896H LINE# 16 + C:166EH LINE# 10 + C:166EH LINE# 11 + C:166EH LINE# 13 + C:1670H LINE# 14 + C:1676H LINE# 16 ------- ENDPROC DELAY10US ------- PROC I2CSTART - C:085EH LINE# 25 - C:085EH LINE# 26 - C:085EH LINE# 27 - C:0860H LINE# 28 - C:0860H LINE# 29 - C:0860H LINE# 30 - C:0863H LINE# 31 - C:0865H LINE# 32 - C:0868H LINE# 33 - C:086AH LINE# 34 + C:1622H LINE# 25 + C:1622H LINE# 26 + C:1622H LINE# 27 + C:1624H LINE# 28 + C:1624H LINE# 29 + C:1624H LINE# 30 + C:1627H LINE# 31 + C:1629H LINE# 32 + C:162CH LINE# 33 + C:162EH LINE# 34 ------- ENDPROC I2CSTART ------- PROC I2CSTOP - C:08CCH LINE# 44 - C:08CCH LINE# 45 - C:08CCH LINE# 46 - C:08CEH LINE# 47 - C:08CEH LINE# 48 - C:08CEH LINE# 49 - C:08D1H LINE# 50 - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 11 + C:16B1H LINE# 44 + C:16B1H LINE# 45 + C:16B1H LINE# 46 + C:16B3H LINE# 47 + C:16B3H LINE# 48 + C:16B3H LINE# 49 + C:16B6H LINE# 50 + C:16B8H LINE# 51 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 18 - C:08D3H LINE# 51 ------- ENDPROC I2CSTOP ------- PROC _I2CSENDBYTE D:0005H SYMBOL dat @@ -610,136 +1029,336 @@ SYMBOL TABLE OF MODULE: pro (MAIN) D:0003H SYMBOL a D:0002H SYMBOL b ------- ENDDO - C:0679H LINE# 61 - C:067BH LINE# 62 - C:067BH LINE# 63 - C:067EH LINE# 64 - C:067EH LINE# 65 - C:067EH LINE# 66 - C:0689H LINE# 67 - C:068DH LINE# 68 - C:068DH LINE# 69 - C:068DH LINE# 70 - C:0690H LINE# 71 - C:0692H LINE# 72 - C:0695H LINE# 73 - C:0699H LINE# 74 - C:069BH LINE# 75 - C:069EH LINE# 76 - C:06A0H LINE# 77 - C:06A3H LINE# 78 - C:06A3H LINE# 79 - C:06A4H LINE# 80 - C:06AAH LINE# 81 - C:06AAH LINE# 82 - C:06ACH LINE# 83 - C:06AFH LINE# 84 - C:06B2H LINE# 85 - C:06B2H LINE# 86 - C:06B2H LINE# 87 - C:06B4H LINE# 88 - C:06B7H LINE# 89 - C:06B9H LINE# 90 + C:1326H LINE# 61 + C:1328H LINE# 62 + C:1328H LINE# 63 + C:132BH LINE# 64 + C:132BH LINE# 65 + C:132BH LINE# 66 + C:1336H LINE# 67 + C:133AH LINE# 68 + C:133AH LINE# 69 + C:133AH LINE# 70 + C:133DH LINE# 71 + C:133FH LINE# 72 + C:1342H LINE# 73 + C:1346H LINE# 74 + C:1348H LINE# 75 + C:134BH LINE# 76 + C:134DH LINE# 77 + C:1350H LINE# 78 + C:1350H LINE# 79 + C:1351H LINE# 80 + C:1357H LINE# 81 + C:1357H LINE# 82 + C:1359H LINE# 83 + C:135CH LINE# 84 + C:135FH LINE# 85 + C:135FH LINE# 86 + C:135FH LINE# 87 + C:1361H LINE# 88 + C:1364H LINE# 89 + C:1366H LINE# 90 ------- ENDPROC _I2CSENDBYTE ------- PROC I2CREADBYTE ------- DO D:0005H SYMBOL a D:0004H SYMBOL dat ------- ENDDO - C:077DH LINE# 99 - C:077DH LINE# 100 - C:077DH LINE# 101 - C:0780H LINE# 102 - C:0782H LINE# 103 - C:0785H LINE# 104 - C:0785H LINE# 105 - C:0785H LINE# 106 - C:0787H LINE# 107 - C:078AH LINE# 108 - C:078EH LINE# 109 - C:0794H LINE# 110 - C:0797H LINE# 111 - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 12 - - - C:0799H LINE# 112 - C:079CH LINE# 113 - C:07A0H LINE# 114 - C:07A2H LINE# 115 + C:1454H LINE# 99 + C:1454H LINE# 100 + C:1454H LINE# 101 + C:1457H LINE# 102 + C:1459H LINE# 103 + C:145CH LINE# 104 + C:145CH LINE# 105 + C:145CH LINE# 106 + C:145EH LINE# 107 + C:1461H LINE# 108 + C:1465H LINE# 109 + C:146BH LINE# 110 + C:146EH LINE# 111 + C:1470H LINE# 112 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 19 + + + C:1473H LINE# 113 + C:1477H LINE# 114 + C:1479H LINE# 115 ------- ENDPROC I2CREADBYTE ------- PROC _AT24C02WRITE D:0001H SYMBOL addr D:0004H SYMBOL dat - C:0801H LINE# 125 - C:0805H LINE# 126 - C:0805H LINE# 127 - C:0808H LINE# 128 - C:080DH LINE# 129 - C:0812H LINE# 130 - C:0817H LINE# 131 + C:1570H LINE# 125 + C:1574H LINE# 126 + C:1574H LINE# 127 + C:1577H LINE# 128 + C:157CH LINE# 129 + C:1581H LINE# 130 + C:1586H LINE# 131 ------- ENDPROC _AT24C02WRITE ------- PROC _AT24C02READ D:0004H SYMBOL addr ------- DO D:0005H SYMBOL num ------- ENDDO - C:07C6H LINE# 140 - C:07C8H LINE# 141 - C:07C8H LINE# 143 - C:07CBH LINE# 144 - C:07D0H LINE# 145 - C:07D5H LINE# 146 - C:07D8H LINE# 147 - C:07DDH LINE# 148 - C:07E2H LINE# 149 - C:07E5H LINE# 150 - C:07E7H LINE# 151 + C:149FH LINE# 140 + C:14A1H LINE# 141 + C:14A1H LINE# 143 + C:14A4H LINE# 144 + C:14A9H LINE# 145 + C:14AEH LINE# 146 + C:14B1H LINE# 147 + C:14B6H LINE# 148 + C:14BBH LINE# 149 + C:14BEH LINE# 150 + C:14C0H LINE# 151 ------- ENDPROC _AT24C02READ ------- ENDMOD I2C - ------- MODULE ?C?CLDPTR - C:0515H PUBLIC ?C?CLDPTR - ------- ENDMOD ?C?CLDPTR + ------- MODULE DS18B20 + C:0000H SYMBOL _ICE_DUMMY_ + D:00B0H PUBLIC P3 + C:1367H PUBLIC DS18B20_ReadByte + C:147AH PUBLIC DS18B20_Init + C:14C1H PUBLIC DS18B20_ReadTemp + B:00B0H.2 PUBLIC DS18B20 + C:12F0H PUBLIC _DS18B20_WriteByte + C:124BH PUBLIC Temper_change + C:1520H PUBLIC _delay_ms + ------- PROC _DELAY_MS + D:0006H SYMBOL x + ------- DO + D:0006H SYMBOL y + D:0004H SYMBOL z + ------- ENDDO + C:1520H LINE# 5 + C:1520H LINE# 6 + C:1520H LINE# 8 + C:1529H LINE# 9 + C:153DH LINE# 10 + ------- ENDPROC _DELAY_MS + ------- PROC DS18B20_INIT + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 20 + + + ------- DO + D:0003H SYMBOL i + ------- ENDDO + C:147AH LINE# 12 + C:147AH LINE# 13 + C:147AH LINE# 15 + C:147CH LINE# 16 + C:147EH LINE# 17 + C:1484H LINE# 18 + C:1486H LINE# 19 + C:1488H LINE# 20 + C:148BH LINE# 21 + C:148BH LINE# 22 + C:1492H LINE# 23 + C:1493H LINE# 24 + C:1499H LINE# 25 + C:1499H LINE# 26 + C:149CH LINE# 27 + C:149CH LINE# 28 + C:149CH LINE# 29 + C:149EH LINE# 30 + ------- ENDPROC DS18B20_INIT + ------- PROC DS18B20_READBYTE + ------- DO + D:0001H SYMBOL byte + D:0003H SYMBOL bi + D:0006H SYMBOL i + D:0004H SYMBOL j + ------- ENDDO + C:1367H LINE# 32 + C:1367H LINE# 33 + C:1367H LINE# 36 + C:136BH LINE# 37 + C:136BH LINE# 38 + C:136DH LINE# 39 + C:1371H LINE# 40 + C:1373H LINE# 41 + C:1377H LINE# 42 + C:137BH LINE# 43 + C:137FH LINE# 44 + C:138BH LINE# 45 + C:138FH LINE# 46 + C:1399H LINE# 47 + C:13A2H LINE# 48 + C:13A4H LINE# 49 + ------- ENDPROC DS18B20_READBYTE + ------- PROC L?0042 + ------- ENDPROC L?0042 + ------- PROC _DS18B20_WRITEBYTE + D:0007H SYMBOL dat + ------- DO + D:0035H SYMBOL i + D:0002H SYMBOL j + ------- ENDDO + C:12F0H LINE# 51 + C:12F0H LINE# 52 + C:12F0H LINE# 54 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 21 + + + C:12F3H LINE# 55 + C:12F3H LINE# 56 + C:12F5H LINE# 57 + C:12FDH LINE# 58 + C:1301H LINE# 59 + C:1307H LINE# 60 + C:1314H LINE# 61 + C:1316H LINE# 62 + C:131AH LINE# 63 + C:1325H LINE# 64 + ------- ENDPROC _DS18B20_WRITEBYTE + ------- PROC DS18B20_READTEMP + ------- DO + D:0006H SYMBOL temp + D:0007H SYMBOL tmh + D:0034H SYMBOL tml + ------- ENDDO + C:14C1H LINE# 66 + C:14C1H LINE# 67 + C:14C1H LINE# 68 + C:14C4H LINE# 70 + C:14C4H LINE# 71 + C:14C4H LINE# 72 + C:14C7H LINE# 73 + C:14CCH LINE# 75 + C:14CCH LINE# 76 + C:14CCH LINE# 77 + C:14CFH LINE# 78 + C:14D4H LINE# 80 + C:14D9H LINE# 81 + C:14DCH LINE# 82 + C:14DCH LINE# 83 + C:14DEH LINE# 84 + C:14E1H LINE# 85 + C:14E1H LINE# 86 + ------- ENDPROC DS18B20_READTEMP + ------- PROC TEMPER_CHANGE + ------- DO + D:0006H SYMBOL temper + D:0030H SYMBOL tp + ------- ENDDO + C:124BH LINE# 89 + C:124BH LINE# 90 + C:124BH LINE# 94 + C:124EH LINE# 95 + C:1254H LINE# 96 + C:1254H LINE# 97 + C:1259H LINE# 98 + C:125FH LINE# 99 + C:125FH LINE# 100 + C:125FH LINE# 101 + C:1261H LINE# 103 + C:1261H LINE# 104 + C:127BH LINE# 105 + C:1299H LINE# 106 + C:1299H LINE# 107 + C:1299H LINE# 108 + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 22 + + + ------- ENDPROC TEMPER_CHANGE + ------- ENDMOD DS18B20 + + ------- MODULE ?C?FPADD + C:000AH PUBLIC ?C?FPADD + C:0006H PUBLIC ?C?FPSUB + ------- ENDMOD ?C?FPADD + + ------- MODULE ?C?FPMUL + C:00FBH PUBLIC ?C?FPMUL + ------- ENDMOD ?C?FPMUL + + ------- MODULE ?C?FPDIV + C:0204H PUBLIC ?C?FPDIV + ------- ENDMOD ?C?FPDIV + + ------- MODULE ?C?FPCMP + C:02A3H PUBLIC ?C?FPCMP + C:02A1H PUBLIC ?C?FPCMP3 + ------- ENDMOD ?C?FPCMP + + ------- MODULE ?C?FCAST + C:0324H PUBLIC ?C?FCASTC + C:031FH PUBLIC ?C?FCASTI + C:031AH PUBLIC ?C?FCASTL + ------- ENDMOD ?C?FCAST + + ------- MODULE ?C?CASTF + C:0358H PUBLIC ?C?CASTF + ------- ENDMOD ?C?CASTF ------- MODULE PRINTF - D:0042H PUBLIC ?_PRINTF517?BYTE - D:0042H PUBLIC ?_PRINTF?BYTE - D:0042H PUBLIC ?_SPRINTF517?BYTE - D:0042H PUBLIC ?_SPRINTF?BYTE - C:0065H PUBLIC _PRINTF - C:0065H PUBLIC _PRINTF517 - C:005FH PUBLIC _SPRINTF - C:005FH PUBLIC _SPRINTF517 + D:002EH PUBLIC ?_PRINTF?BYTE + D:002EH PUBLIC ?_SPRINTF?BYTE + C:0704H PUBLIC _PRINTF + C:06FEH PUBLIC _SPRINTF ------- ENDMOD PRINTF + ------- MODULE ?C?FPROUND + C:03D9H PUBLIC ?C?FPROUND + ------- ENDMOD ?C?FPROUND + + ------- MODULE ?C?FPCONVERT + C:0408H PUBLIC ?C?FPCONVERT + ------- ENDMOD ?C?FPCONVERT + + ------- MODULE ?C?FTNPWR + C:053BH PUBLIC ?C?FTNPWR + ------- ENDMOD ?C?FTNPWR + + ------- MODULE ?C?CLDPTR + C:057BH PUBLIC ?C?CLDPTR + ------- ENDMOD ?C?CLDPTR + ------- MODULE ?C?CLDOPTR - C:052EH PUBLIC ?C?CLDOPTR + C:0594H PUBLIC ?C?CLDOPTR ------- ENDMOD ?C?CLDOPTR + BL51 BANKED LINKER/LOCATER V6.22 05/01/2022 12:24:18 PAGE 23 + + ------- MODULE ?C?CSTPTR - C:055BH PUBLIC ?C?CSTPTR + C:05C1H PUBLIC ?C?CSTPTR ------- ENDMOD ?C?CSTPTR - BL51 BANKED LINKER/LOCATER V6.22 04/29/2022 01:22:41 PAGE 13 + ------- MODULE ?C?UIDIV + C:05D3H PUBLIC ?C?UIDIV + ------- ENDMOD ?C?UIDIV + + ------- MODULE ?C?SIDIV + C:0628H PUBLIC ?C?SIDIV + ------- ENDMOD ?C?SIDIV + ------- MODULE ?C?LNEG + C:065EH PUBLIC ?C?LNEG + ------- ENDMOD ?C?LNEG ------- MODULE ?C?PLDIIDATA - C:056DH PUBLIC ?C?PLDIIDATA + C:066CH PUBLIC ?C?PLDIIDATA ------- ENDMOD ?C?PLDIIDATA ------- MODULE ?C?CCASE - C:057DH PUBLIC ?C?CCASE + C:067CH PUBLIC ?C?CCASE ------- ENDMOD ?C?CCASE ------- MODULE PUTCHAR - C:0756H PUBLIC _PUTCHAR + C:142DH PUBLIC _PUTCHAR ------- ENDMOD PUTCHAR +*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS + SEGMENT: ?PR?INIT_BH1750?MAIN + *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_AT24C02WRITE?I2C *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_AT24C02READ?I2C -Program Size: data=77.1 xdata=0 code=2274 -LINK/LOCATE RUN COMPLETE. 2 WARNING(S), 0 ERROR(S) +Program Size: data=95.1 xdata=0 code=5836 +LINK/LOCATE RUN COMPLETE. 3 WARNING(S), 0 ERROR(S) diff --git a/pro.build_log.htm b/pro.build_log.htm index f2f258d..a467fa6 100644 --- a/pro.build_log.htm +++ b/pro.build_log.htm @@ -19,19 +19,21 @@ CPU DLL: S8051.DLL V3.106.0.0 Dialog DLL: DP51.DLL V2.63.0.0

Project:

E:\Ŀ\ְĿ\20220428-IntelligentLighting\pro.uvproj -Project File Date: 04/29/2022 +Project File Date: 04/30/2022

Output:

Build target 'Target 1' -compiling main.c... +compiling ds1302.c... linking... +*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS + SEGMENT: ?PR?INIT_BH1750?MAIN *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_AT24C02WRITE?I2C *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_AT24C02READ?I2C -Program Size: data=77.1 xdata=0 code=2274 +Program Size: data=95.1 xdata=0 code=5836 creating hex file from "pro"... -"pro" - 0 Error(s), 2 Warning(s). +"pro" - 0 Error(s), 3 Warning(s). Build Time Elapsed: 00:00:00 diff --git a/pro.hex b/pro.hex index e405b29..ba1c107 100644 --- a/pro.hex +++ b/pro.hex @@ -1,173 +1,420 @@ -:0508DD0025640D0A0076 -:10083200758921759850758DFD858D8BE4F587D26C -:06084200AFD2ACD28E2201 -:0708D600AE071FEE70FA22CD -:0E086D00C2ACC2998F993099FDC299D2AC22CB -:10081A00120515FF601112086D7F051208D67401C2 -:08082A0029F9E43AFA80E92201 -:10035F00E4F542F54320923A120897209212E50BEA -:10036F00450A7007F50A750B018005E4F50AF50BD0 -:10037F00C3E5439432E54264809480501020920D7F -:10038F001208970543E54370E7054280E3E4F54221 -:10039F00F54320933A120897209312E50D450C7000 -:1003AF0007F50C750D018005E4F50CF50DC3E5435C -:1003BF009432E54264809480501020930D12089778 -:1003CF000543E54370E7054280E3E4F542F543203A -:1003DF00B74112089720B7190509E50970020508FA -:1003EF00D39463E50864809480400675080075090E -:1003FF0063C3E5439432E54264809480501020B784 -:10040F000D1208970543E54370E7054280E3E4F5D5 -:10041F0042F54320B63E12089720B616E509150996 -:10042F0070021508C3E508648094805005E4F50850 -:10043F00F509C3E5439432E542648094805010205F -:10044F00B60D1208970543E54370E7054280E3E4D4 -:04045F00F542F5432A -:010463002276 -:10046400E50D450C6009E50B450A6003020504C36C -:10047400E50F9432E50E64809480400302050CE598 -:100484000B450A600302050CC3E509940AE50864F8 -:100494008094805016E5099400E5086480948040B7 -:1004A4000AC282C281C280D284805DC3E509940AF3 -:1004B400E508648094804012E5099414E50864809A -:1004C40094805006C282C2818030C3E5099414E549 -:1004D40008648094804012E509941EE508648094C1 -:1004E400805006C282D2818011C3E509941EE508BA -:1004F40064809480400AD282D281D280D2848008DF -:10050400C282C281C280C284E50A450B24FF928361 -:0105140022C4 -:1006BA00E4F522F5231207E81207A31208321208FA -:1006CA00481208A412035F7545FF7546087547DD91 -:1006DA00850A48850B497B007A00792412005F7BE2 -:0D06EA00007A00792412081A12046480D1ED -:0A08A4007F801208AE7F6D0208B8D5 -:0C0897007F017E267D82DDFEDEFADFF6AA -:0108A3002232 -:10072C00C2958FA07F017E0012073DD2947F057E7B -:01073C0000BC -:10073D00D3EF9400EE9400400F7DC77C01DCFEDD0D -:08074D00FAEF1F70EB1E80E8BB -:010755002281 -:0A08AE00C294C29612072CC29422D5 -:0A08B800C294D29612072CC29422BB -:1007E8007F381208AE7F0C1208AE7F061208AE7F63 -:0907F800011208AE7F800208AE78 -:0E087B0081838587898B8D80828486888A8C14 -:0908C200071000012328040422A0 -:1006F700C2B300C2B500D2B300E4FEEF1392B4EF69 -:10070700C313FFD2B500C2B5000EBE08EEE4FEED7E -:100717001392B4EDC313FDD2B500C2B5000EBE08E7 -:04072700EEC2B3006B -:01072B0022AB -:10062F00C2B300C2B500D2B300E4FDEF1392B4EF32 -:10063F00C313FFD2B500C2B5000DBD08EE00E4FD37 -:10064F00A2B4E433FFC43333335480FCEEC3134CF2 -:10065F00FED2B500C2B5000DBD08E5C2B300D2B5DC -:09066F0000C2B400D2B400AF06D1 -:01067800225F -:1007A300E4FD7F8E1206F7E4FCEC90088293FF745D -:1007B300102CF8E6FD1206F70CBC07ED7D807F8E4A -:0307C3000206F734 -:10084800E4FBEB90087B93FF12062F74102BF8A69D -:05085800070BBB07EDDA -:01085D002278 -:0508890012088ED2A14F -:08088E007F017E02DEFEDFFAAD -:01089600223F -:0F085E00D2A0120889C2A012088EC2A102088E71 -:0A08CC00C2A0120889D2A002088E13 -:02067900AD07CB -:10067B00E4FBFAEDC4131313540124FF92A0ED25F0 -:10068B00E0FD120889C2A112088E0BBB08E5D2A0AF -:10069B0012088ED2A130A00F0AEAD394C840F6C23A -:0E06AB00A112088E7F0022C2A112088E7F01CC -:0106B900221E -:10077D00E4FDFCD2A012088ED2A112088EEC25E069 -:10078D00FCA2A0E433420412088EC2A112088E0D01 -:05079D00BD08E5AF04FA -:0107A2002234 -:10080100AC05A90712085E7FA0120679AF01120696 -:0908110079AF041206790208CC4B -:0207C600AC077E -:1007C80012085E7FA0120679AF0412067912085E3D -:0F07D8007FA112067912077DAD071208CCAF057D -:0107E70022EF -:030000000205A353 -:0C05A300787FE4F6D8FD7581550205EA6A -:10051500BB010689828A83E0225002E722BBFE02E4 -:09052500E32289828A83E4932217 -:10000300E5512445F8E60551227842300702784548 -:10001300E475F00112056D0205152000EB7F2ED269 -:10002300008018EF540F2490D43440D4FF30040BD5 -:10003300EF24BFB41A0050032461FFE55260021598 -:10004300520555E5557002055430070D7842E475A5 -:10005300F00112056DEF02055B0207567403D20728 -:100063008003E4C207F5518B428A438944E4F55285 -:10007300F554F555E55260077F2012003E80F57573 -:1000830053FFC201C200C202C203C205C206C208B4 -:1000930012000CFF700D3007057F0012004FAF55A3 -:1000A300AE5422B4255FC2D5C20412000CFF24D083 -:1000B300B40A00501A75F00A785230D50508B6FF15 -:1000C3000106C6A426F620D5047002D20380D924E3 -:1000D300CFB41A00EF5004C2E5D20402024FD2019A -:1000E30080C6D20080C0D20280BCD2D580BAD205ED -:1000F30080B47F2012003E2002077401B5520040F5 -:10010300F1120003FF12003E020077D208D20680EC -:1001130095120003FB120003FA120003F94A4B7015 -:100123000679207A037BFF20022EE552602A7E00A7 -:100133008E8275830012052E60060EEE655370F0F5 -:10014300C2D5EBC0E0EAC0E0E9C0E0EE120296D00F -:10015300E0F9D0E0FAD0E0FB120515FF60AAEBC08E -:10016300E0EAC0E0E9C0E012003ED0E02401F9D0AB -:10017300E03400FAD0E0FBE5530460DCD553D980CA -:10018300877BFF7A027992D202809C791080027970 -:1001930008C206C2088008D2D5790A8004790AC247 -:1001A300D5E553047002F553E4FAFDFEFF12000394 -:1001B300FC7B08200113120003FD7B1030000A12A0 -:1001C3000003FE120003FF7B20EC3382D592D5504F -:1001D30013C3E43000069FFFE49EFEE42001039D69 -:1001E300FDE49CFCE4CBF8C201EC700CCFCECDCC8B -:1001F300E824F8F870F38017C3EF33FFEE33FEED16 -:1002030033FDEC33FCEB33FB994002FB0FD8E9EBF6 -:10021300300105F8D0E0C448B201C0E00AEC4D4E0D -:100223004F78207B0070C2EAB5530040BCC0E01297 -:100233000298D0F0D0E0200104C4C0E0C4B201C0F1 -:10024300F0120027D0F0D5F0EB02007712057D0104 -:100253001453018E5800E54C00E14201924F019A7C -:0F02630044019A4900FA4301A0550184460184E1 -:100272004501844703405000E92D00ED2E01102B6B -:1002820000F123010E2003292A00A94800000108D9 -:100292003F3F3F00790AA2D5200314300509B91067 -:1002A200020404B9080104A2D52006025001042068 -:1002B20002689202B552005034C0E07F2030031928 -:1002C2007F30A20272067205500F1202EFC202C202 -:1002D20006C205C2087F30800F300503E9C0E01274 -:1002E200003E300503D0E0F9D0E0B552CC3005171E -:1002F2007F30B9100C12003E7F583004077F78809F -:1003020003B9080312003E3002057F2D02003E7F32 -:10031200202008F87F2B2006F322920280CF286E3D -:10032200756C6C2900D2011200033001F8C2017809 -:100332005230D50108F60200A92D50434958120047 -:10034200032403B405004001E490033B9312002F01 -:0D035200743A12002FD20375520402018E7E -:1005AF000206BAE493A3F8E493A34003F68001F2A2 -:1005BF0008DFF48029E493A3F85407240CC8C3334D -:1005CF00C4540F4420C8834004F456800146F6DF1C -:1005DF00E4800B01020408102040809008C2E47EE2 -:1005EF00019360BCA3FF543F30E509541FFEE49311 -:1005FF00A360010ECF54C025E060A840B8E493A3D8 -:10060F00FAE493A3F8E493A3C8C582C8CAC583CA02 -:10061F00F0A3C8C582C8CAC583CADFE9DEE780BEBA -:0108CB00002C -:10052E00BB010CE58229F582E5833AF583E0225082 -:10053E0006E92582F8E622BBFE06E92582F8E222CC -:0D054E00E58229F582E5833AF583E49322E6 -:10055B00BB010689828A83F0225002F722BBFE017F -:02056B00F32279 -:10056D00FAE6FB0808E6F925F0F618E6CA3AF6228F -:10057D00D083D082F8E4937012740193700DA3A30D -:10058D0093F8740193F5828883E473740293686021 -:06059D00EFA3A3A380DF21 -:10075600EFB40A07740D120761740A309811A8994C -:10076600B8130CC2983098FDA899C298B811F63003 -:0707760099FDC299F59922DB +:0516C70025640D0A007E +:04164D00024C00004B +:1014E200E4FDFCC3ED9FEC9E5015E4FBFA0BBB0040 +:0F14F200010AEB64794A70F50DBD00010C80E42E +:0115010022C7 +:1015F30000000000000000000000000000000000E8 +:0116030022C4 +:0E1604007F307E02EF1FAC0670011E4C70F6A8 +:0116120022B5 +:0F161300D290D2911215F3C2901215F3C2912208 +:0C169100C290D2911215F3D2900215F312 +:0E163100A2009290D2911215F3C2910215F30D +:0D167700D2911215F3A290C2911215F32228 +:10153E00E4FEEF25E0FF9290D2911215F3C29112C4 +:09154E0015F30EBE08EC0216773D +:10150200E4FFD290FEEF25E0FFD2911215F3A290F4 +:0D151200E4334207C2911215F30EBE08E843 +:01151F0022A9 +:1015E100AD071216137F4612153EAF0512153E02C6 +:0215F100169151 +:101404001216137F4712153EE4FD12150274682D5F +:10141400F8A607BD0304D2008002C2001216310DE3 +:09142400BD03E712169102160443 +:0516C2007F010215E1AB +:1015A100758921759850758DFD858D8BE4F587D2F0 +:0615B100AFD2ACD28E2285 +:0716BB00AE071FEE70FA22DA +:0E163F00C2ACC2998F993099FDC299D2AC22EB +:1015890012057BFF601112163F7F051216BB74010D +:0815990029F9E43AFA80E92285 +:100D9400E4F52EF52F7F011215E17F101215E17F86 +:100DA400B47E001214E2121404754A0085684BE5FF +:100DB4004BFE7C00E42569F54BEC3EF54AFCAD4B5B +:100DC40012031F7B9A7A997999783F1202048F59FA +:100DD4008E588D578C5612124B8E5A8F5B7C007D29 +:100DE400641206288E5A8F5B209240121684209239 +:100DF40018E55345527012E55145507007F550758A +:100E040051018005E4F550F551C3E52F9432E52EE8 +:100E140064809480501020920D121684052FE52FC3 +:100E240070E7052E80E3E4F52EF52F20935E12166D +:100E340084209336E55145506014E55545547007B8 +:100E4400F554755501801EE4F554F5558017E553A6 +:100E540045527007F5527553018005E4F552F55378 +:100E6400E4F54CF54D7F0112169DC3E52F9432E550 +:100E74002E64809480501020930D121684052FE563 +:100E84002F70E7052E80E3E4F52EF52F20B74112ED +:100E9400168420B719054FE54F7002054ED39463AD +:100EA400E54E648094804006754E00754F63C3E53B +:100EB4002F9432E52E64809480501020B70D1216C2 +:100EC40084052FE52F70E7052E80E3E4F52EF52F3A +:100ED40020B63E12168420B616E54F154F70021543 +:100EE4004EC3E54E648094805005E4F54EF54FC33F +:100EF400E52F9432E52E64809480501020B60D12B4 +:100F04001684052FE52F70E7052E80E3E4F52EF512 +:100F14002F20A24012168420A218054DE54D700220 +:100F2400054CC39404E54C648094804005E4F54C7E +:100F3400F54DC3E52F9432E52E6480948050102043 +:100F4400A20D121684052FE52F70E7052E80E3E429 +:100F5400F52EF52F30A70302100D12168430A703C7 +:100F640002100DE54D454C701A055DE55D700205F6 +:100F74005CC39418E55C64809480406BE4F55CF594 +:100F84005D8064E54D6401454C701A055FE55F7052 +:100F940002055EC3943BE55E648094804049E4F5B9 +:100FA4005EF55F8042E54D6402454C701A0563E5C9 +:100FB4006370020562C39418E562648094804027DC +:100FC400E4F562F5638020E54D6403454C70180533 +:100FD40065E56570020564C3943BE56464809480B0 +:100FE4004005E4F564F565C3E52F9432E52E64808D +:100FF4009480501020A70D121684052FE52F70E75A +:09100400052E80E3E4F52EF52F22 +:01100D0022C0 +:1010CC007D017C00E50AC4540F75F00AA4FFAEF054 +:1010DC00E50A540F7A002FF52FEA3EF52EE509C4E8 +:1010EC00540F75F00AA4FFAEF0E509540F2FF5313B +:1010FC00EA3EF530C3E52F955DE55C6480F8E52E9E +:10110C00648098404BD3E52F9563E5626480F8E5E5 +:10111C002E64809840028038E52FB55D18E52EB519 +:10112C005C13C3E531955FE55E6480F8E53064805F +:10113C00985002801BE52FB5631AE52EB56215D3C6 +:10114C00E5319565E5646480F8E530648098400489 +:08115C00E4FEFF22AE04AF0522 +:011164002268 +:10100E00E551455060030210AB1210CCEF4E700349 +:10101E000210A9E4FFFE7DC87C42AB59AA58A9571D +:10102E00A8561202A15074C3E54F940AE54E64808F +:10103E0094805016E54F9400E54E64809480400AEB +:10104E00C2A5C2A6C2A1D2A4806BC3E54F940AE585 +:10105E004E648094804012E54F9414E54E64809463 +:10106E00805006C2A5C2A6803EC3E54F9414E54E3D +:10107E00648094804012E54F941EE54E6480948007 +:10108E005006C2A5D2A6801FC3E54F941EE54E643E +:10109E008094804018D2A5D2A6800C8010E55545CC +:1010AE0054600AD2A5D2A6D2A1D2A48008C2A5C2EB +:0E10BE00A6C2A1C2A4E550455124FF92A32270 +:1011F100E4F522F5231215CD1215A1121557755CD0 +:1012010000755D12E4F55EF55FF560F561F56275F7 +:101211006317F56475651EF566F5671215B7120B50 +:1012210011120D9412100E7531FF7532167533C7F8 +:10123100855A34855B357B007A0079241206FE7B62 +:0A124100007A00792412158980D18B +:100B1100E55345527F806003020C9212169DE50C4D +:100B2100C4540F2430FF1216A7E50C540F2430FFD4 +:100B31001216A77F2D1216A7E50BC4540F2430FF00 +:100B41001216A7E50B540F2430FF1216A77F2012AF +:100B510016A7E50AC4540F2430FF1216A7E50A545C +:100B61000F2430FF1216A77F3A1216A7E509C454C5 +:100B71000F2430FF1216A7E509540F2430FF121677 +:100B8100A77F3A1216A7E508C4540F2430FF1216A6 +:100B9100A7E508540F2430FF1216A77F201216A7CD +:100BA100E50D540F2430FF1216A77FC012169DAF1A +:100BB10059AE58AD57AC561203588E2E8F2F7C2745 +:100BC1007D101205D38C2E8D2FAE2EAF2F7C037D81 +:100BD100E81205D3EF2430FF1216A7AE2EAF2F7CFB +:100BE100037DE81205D38C2E8D2FAE2EAF2F7C0006 +:100BF1007D641205D3EF2430FF1216A7AE2EAF2F5E +:100C01007C007D641205D38C2E8D2FAE2EAF2F7CF0 +:100C1100007D0A1205D3EF2430FF1216A7AE2EAFC6 +:100C21002F7C007D0A1205D38C2E8D2FE52F2430C9 +:100C3100FF1216A77F4C1216A77F781216A77F20E6 +:100C41001216A7AE5AAF5B7C007D0A120628EF246C +:100C510030FF1216A7AE5AAF5B7C007D0A12062840 +:100C6100ED2430FF1216A77F431216A77F2012161C +:100C7100A7AE4EAF4F7C007D0A1206287C007D0A8C +:100C8100120628ED2430FF1216A7AE4EAF4F020D0B +:100C91008512169DAE5CAF5D7C007D0A120628EFC1 +:100CA1002430FF1216A7AE5CAF5D7C007D0A1206F0 +:100CB10028ED2430FF1216A77F3A1216A7AE5EAFB9 +:100CC1005F7C007D0A120628EF2430FF1216A7AEC2 +:100CD1005EAF5F7C007D0A120628ED2430FF1216FC +:100CE100A77F3A1216A7AE60AF617C007D0A12069B +:100CF10028EF2430FF1216A7AE60AF617C007D0A99 +:100D0100120628ED2430FF1216A77F201216A7E540 +:100D11004D2430FF1216A77FC012169DAE62AF633D +:100D21007C007D0A120628EF2430FF1216A7AE625E +:100D3100AF637C007D0A120628ED2430FF1216A74E +:100D41007F3A1216A7AE64AF657C007D0A120628B1 +:100D5100EF2430FF1216A7AE64AF657C007D0A1246 +:100D61000628ED2430FF1216A77F3A1216A7AE66A9 +:100D7100AF677C007D0A120628EF2430FF1216A708 +:100D8100AE66AF677C007D0A120628ED2430FF12A3 +:020D910016A7A3 +:010D9300223D +:0C1684007F017E267D82DDFEDEFADFF6AF +:011690002237 +:1013DA00C2958F807F017E001213EBD2947F057E27 +:0113EA000002 +:1013EB00D3EF9400EE9400400F7DC77C01DCFEDD53 +:0813FB00FAEF1F70EB1E80E801 +:0114030022C6 +:0A169D00C294C2961213DAC294221E +:0A16A700C294D2961213DAC2942204 +:101557007F3812169D7F0C12169D7F0612169D7FEF +:091567000112169D7F8002169D01 +:0E165B0081838587898B8D80828486888A8C26 +:091651000708002412010507221C +:1013A500C2B300C2B500D2B300E4FEEF1392B4EFAE +:1013B500C313FFD2B500C2B5000EBE08EEE4FEEDC4 +:1013C5001392B4EDC313FDD2B500C2B5000EBE082D +:0413D500EEC2B300B1 +:0113D90022F1 +:10129A00C2B300C2B500D2B300E4FDEF1392B4EFBB +:1012AA00C313FFD2B500C2B5000DBD08EE00E4FDC0 +:1012BA00A2B4E433FFC43333335480FCEEC3134C7B +:1012CA00FED2B500C2B5000DBD08E5C2B300D2B565 +:0912DA0000C2B400D2B400AF065A +:0112E30022E8 +:1015CD00E4FD7F8E1213A5E4FF0FBF07FC7D807F26 +:0415DD008E0213A5C2 +:1015B700E4FBEB90165B93FF12129A74082BF8A6C4 +:0515C700070BBB07ED5E +:0115CC0022FC +:0516690012166ED2A173 +:08166E007F017E02DEFEDFFABF +:011676002251 +:0F162200D2A0121669C2A012166EC2A102166ED5 +:0A16B100C2A0121669D2A002166E44 +:02132600AD0711 +:10132800E4FBFAEDC4131313540124FF92A0ED2536 +:10133800E0FD121669C2A112166E0BBB08E5D2A019 +:1013480012166ED2A130A00F0AEAD394C840F6C292 +:0E135800A112166E7F0022C2A112166E7F0136 +:011366002264 +:10145400E4FDFCD2A012166ED2A112166EEC25E0A9 +:10146400FCA2A0E433420412166EC2A112166E0D41 +:05147400BD08E5AF0416 +:011479002250 +:10157000AC05A9071216227FA0121326AF01121381 +:0915800026AF041213260216B175 +:02149F00AC0798 +:1014A1001216227FA0121326AF041213261216223F +:0F14B1007FA1121326121454AD071216B1AF0506 +:0114C0002209 +:10152000D3EF9400EE940040147D6E7C00ED1D70AE +:0D153000011CED4C70F7EF1F70E61E80E30C +:01153D00228B +:10147A00C2B27B46AF031BEF70FAD2B2E4FB30B2C2 +:10148A00117F017E001215200BEBD3940540EF7FEC +:04149A0000227F01AC +:01149E00222B +:101367007D087C00C2B20FBF0000D2B20FBF0000E1 +:101377000FBF0000A2B2E433C43333335480FBE918 +:10138700C3134BF97E007F04EF1FAA0670011E4AA4 +:0D13970070F6ED1D70011CED4C70C9AF012A +:0113A4002226 +:0C12E40012147A7F017E001215207FCCCE +:1012F000E4FBFAC2B20536E53670020535EF13920B +:10130000B2753500753606E5361536AC3570021502 +:10131000354C70F3D2B2EFC313FF0BBB00010AEBE5 +:0513200064084A70CED4 +:0113250022A5 +:1014C100E4FFFE1212E47F441212F01212E47FBE16 +:1014D1001212F01213678F34121367EFFEE534FF17 +:0114E10022E8 +:10124B001214C1C3EE9400500DEF1F70011E630703 +:10125B00FF6306FF8000AD07AC06E412031FE4FB3F +:10126B00FA7980783D1200FB8F338E328D318C30C2 +:10127B00E4FFFE7DC87C42AB33AA32A931A8301201 +:0E128B0000FBE4FBFAF9783F12000A12035848 +:011299002232 +:100003000203C4E86480F8E933E83360110460F064 +:10001300ED33EC337009E8FCE9FDEAFEEBFF220463 +:1000230060DED3EB9FEA9EE99DE8C2E78CF0C2F75E +:1000330095F0400CE8CCF8E9CDF9EACEFAEBCFFB2A +:1000430012038F85D0F05804700320D5B3E80470F1 +:10005300075002B2D50203CE92D5EC0460F7E4CC8C +:10006300C0E0C398F8603B94186008400DD0E0FBF3 +:100073000203A6E4FBFAC9FC8028E830E406E4C9DD +:10008300FBE4CAFCE830E305E4C9CACBFCE8540747 +:100093006010F8C3E913F9EA13FAEB13FBEC13FC52 +:1000A300D8F130F52FC3E49CFCEF9BFFEE9AFEEDF5 +:1000B30099FDD0E0FBEF4E4D4C701222DB0302039F +:1000C300CBEC2CFCEF33FFEE33FEED33FDED30E7ED +:1000D300EB0203A6EF2BFFEE3AFEED39FDD0E0FB7A +:1000E30050130BBB00030203CEED13FDEE13FEEF23 +:0800F30013FFEC13FC0203A64D +:1000FB00EC4D6011E8497017ED33EC3304600DE4FF +:10010B00FCFFFEFD22E933E8330470F80203C4124E +:10011B00038F58046009E4CC24815006285009024F +:10012B0003CE2840030203CBC0E0EB4A7044B980F6 +:10013B0006D0E0FB0203BAEF4E701CBD8008EBFF4C +:10014B00EAFEE9FD80EBE98DF0A4FEE5F00201E4A7 +:10015B00E9CDF9EAFEEBFFEF89F0A4FCE5F0CE89DF +:10016B00F0A42EFFE435F0CD89F0A42DFEE435F09C +:10017B008067EF4E7005BD80D780C3EF8BF0A4ACCA +:10018B00F0EE8BF0A42CFCE435F0F8EF8AF0A42C05 +:10019B00E5F038FCE433CB8DF0A42CFCE5F03BF818 +:1001AB00EE8AF0A42CFCE5F038F8E433CF89F0A408 +:1001BB002CFCE5F038CF3400CE89F0A42FFFE5F00E +:1001CB003EFEE433C98DF0A42EFEE5F039CD8AF066 +:1001DB00A42FFFE5F03EFEE43DFD33D0E0FB5007DE +:1001EB000BBB000F0203CEEC2CFCEF33FFEE33FE08 +:0601FB00ED33FD0203A636 +:100201000203CEEC5D046005E8590470030203C4E7 +:1002110012038F580460F6EC4860F2EC7004FDFEA6 +:10022100FF22C860DB2481C85009C39860025006D0 +:100231000203CB9850CAF582E9294B4A7005AB827B +:100241000203BA75F0007C1A7880C3EF9BEE9AED39 +:1002510099400DC3EF9BFFEE9AFEED99FDE842F048 +:10026100DC23ACF0D0E0FFD0E0FED0E0FDAB82209B +:10027100E7101BEB60BAEC2CFCEF33FFEE33FEED25 +:1002810033FD0203A6E803F830E705C0F075F0007E +:10029100EF2FFFEE33FEED33FD40B830E7C280AA09 +:1002A10074F8CC6480CCC86480C8F58204604FC304 +:1002B100EB9FF5F0EA9E42F0E99D42F0E89C45F0A3 +:1002C100603C501DE5825FFFE582D313CB5BCBF42D +:1002D1002B5582FB50280ABA002409B90020088056 +:1002E1001DE5825BFBE582D313CF5FCFF4C3132FF0 +:1002F1005582FF50090EBE00050DBD00010CC3EB78 +:100301009FF5F0EA9E42F0E99D42F0E89C45F060DD +:0903110007CC4820E701B3EC22FF +:10031A0075F020800E75F010800575F0087D007E5E +:10032A00007F003392D530D50312065EEC334010BD +:10033A00EF33FFEE33FEED33FDEC33FCD5F0ED2267 +:0E034A00E5F0247EA2D513CC92E7CDCEFF22A3 +:10035800EDD2E7CD33EC3392D524814006E4FFFE9D +:10036800FDFC22FCE4CFCECDCC24E0501174FF80FC +:10037800EDC3CC13CCCD13CDCE13CECF13CF047099 +:07038800F030D5DE02065E35 +:1006A200E5452431F8E6054522782E3007027831F7 +:1006B200E475F00112066C02057B2000EB7F2ED25E +:1006C200008018EF540F2490D43440D4FF30040B30 +:1006D200EF24BFB41A0050032461FFE546600215FF +:1006E200460549E5497002054830070D782EE47544 +:1006F200F00112066CEF0205C102142D7403D20739 +:100702008003E4C207F5458B2E8A2F8930E4F54633 +:10071200F548F549E54660077F201206DD80F5754C +:1007220047FFC201C200C202C203C205C206C2081A +:100732001206ABFF700D3007057F001206EEAF49BF +:10074200AE4822B4255FC2D5C2041206ABFF24D044 +:10075200B40A00501A75F00A784630D50508B6FF7B +:100762000106C6A426F620D5047002D20380D9243D +:10077200CFB41A00EF5004C2E5D2040209DBD20161 +:1007820080C6D20080C0D20280BCD2D580BAD20547 +:1007920080B47F201206DD2002077401B5460040B6 +:1007A200F11206A2FF1206DD020716D208D2068057 +:1007B200951206A2FB1206A2FA1206A2F94A4B7081 +:1007C2000679D27A0A7BFF20022EE546602A7E0055 +:1007D2008E8275830012059460060EEE654770F0F6 +:1007E200C2D5EBC0E0EAC0E0E9C0E0EE120A3BD0BD +:1007F200E0F9D0E0FAD0E0FB12057BFF60AAEBC083 +:10080200E0EAC0E0E9C0E01206DDD0E02401F9D060 +:10081200E03400FAD0E0FBE5470460DCD547D9803C +:1008220087D20280A2120A1E60F7E5477001041205 +:1008320003D9A947600DE547600914F547120AC5B7 +:10084200EF60F3EA30E702F404C3995077EAF42543 +:10085200470430E701E404F547800D120A1E60C127 +:10086200EA054725471203D9EA7844F630E701E45E +:10087200254704D5470420050114120A3BE4C0E0D1 +:10088200120AC57844E6601320E70714F61206C57B +:10089200802204F6D0E014C0E07F001206C5E547CE +:1008A20060071206BC1547800B3005031206BCD048 +:1008B200E0020716D0E00480C5120A1E60A0E547D8 +:1008C200041203D97844EAF6E547200502600104E0 +:0508D2002404120A3BA2 +:1008D70074FF04C0E0120AC51206C5E547200502E9 +:1008E70060031206BCD0E0B547E87F451206CF7813 +:1008F70044E67F2B30E7047F2DF404C0E01206DDC9 +:10090700D0E075F00A84C0F01206C6D0E01206C621 +:10091700020716791080027908C206C2088008D239 +:10092700D5790A8004790AC2D5E547047002F547EC +:10093700E4FAFDFEFF1206A2FC7B08200113120653 +:10094700A2FD7B1030000A1206A2FE1206A2FF7B50 +:1009570020EC3382D592D55013C3E43000069FFFB5 +:10096700E49EFEE42001039DFDE49CFCE4CBF8C279 +:1009770001EC700CCFCECDCCE824F8F870F38017DB +:10098700C3EF33FFEE33FEED33FDEC33FCEB33FB0C +:10099700994002FB0FD8E9EB300105F8D0E0C448D5 +:1009A700B201C0E00AEC4D4E4F78207B0070C2EADE +:1009B700B5470040BCC0E0120A3DD0F0D0E02001AE +:1009C70004C4C0E0C4B201C0F01206C6D0F0D5F02E +:1009D700EB02071612067C07B353091A5807844C13 +:1009E700078042091E4F09264409264907994309EA +:1009F7002C55085D4608BB450827470AF25007886B +:100A07002D078C2E07AF2B07902307AD200ADB2A73 +:100A1700074848000007A7E547B4FF0375470612D4 +:100A270006A2FC1206A2FD1206A2FE1206A2FF787B +:100A37003D020408790AA2D5200314300509B9102C +:100A4700020404B9080104A2D520060250010420BB +:100A570002689202B546005034C0E07F2030031987 +:100A67007F30A20272067205500F120A94C202C2A8 +:100A770006C205C2087F30800F300503E9C0E012C7 +:100A870006DD300503D0E0F9D0E0B546CC300517D8 +:100A97007F30B9100C1206DD7F583004077F78804D +:100AA70003B908031206DD3002057F2D0206DD7F3C +:100AB700202008F87F2B2006F322920280CF7F00A8 +:100AC700B407005005243DF8E6FF22286E756C6CCC +:100AD7002900D2011206A23001F8C201784630D5AA +:100AE7000108F60207482D504349581206A224036D +:100AF700B405004001E4900AED931206CE743A1251 +:0A0B070006CED20375460402091A57 +:10038F00E9D2E7C933E833F892D5EDD2E7CD33ECB4 +:07039F0033FC5002B2D5222D +:1003A600EC30E7100FBF000C0EBE00080DBD0004B8 +:1003B6000BEB6014A2D5EB13FCED92E7FD2274FF64 +:1003C600FCFDFEFF22E480F8A2D574FF13FC7D80BD +:0303D600E480EFD1 +:1003D900F920E72824F950037907E4F42402FB18EB +:1003E900DBFDE624FB5014E9600DE4F618E604F69B +:0F03F900B40A08E4F6D9F57401F60A22C2D52237 +:10040800ED33EC3392D5FA602AB4FF33EDC2E77BC3 +:10041800FF60067A04792DE4227A04793620D5041F +:100428007A047931224E614E002B494E46002D49FF +:100438004E4600E47A08F608DAFC7B00740722E8E6 +:10044800C0E0ECC0E0EDC0E0EEC0E0EFC0E0EA756F +:10045800F010A4CAABF075F04DA42BFBE435F0FC0A +:10046800EA2410FAEB34C5FBEC34D9FCEDC2E7FF03 +:1004780075F056A4F42411C5F0F434C58FF0A42AFD +:10048800E5F03BE43CF620E71412053BD0E0FFD052 +:10049800E0FED0E0FDD0E0FC1202048014F4041267 +:1004A800053BD0E0FFD0E0FED0E0FDD0E0FC12003C +:1004B800FBD0E0F8E6FAEDD2E7CD33EC332482FB4B +:1004C800E4C3CF33CFCE33CECD33CD33DBF37B078D +:1004D80075F00A846004F6081B0AE5F0F6088FF048 +:1004E800740AA4FFACF08EF0740AA42CFEACF05091 +:1004F800010C8DF0740AA42CFDE435F0F608DBDE5F +:0305080074072253 +:10050B003F8000004120000042C80000447A0000F8 +:10051B00461C400047C35000497424004B1896807A +:10052B004CBEBC205A0E1BCA6753C21C749DC5AE71 +:10053B00FB60065407601C2323120569EB543860DB +:10054B00091205551205641200FBECF8EDF9EEFAF1 +:10055B00EFCB22EB12056480F1543803241C900579 +:10056B000BFE93FC0EEE93FD0EEE930ECE93FF223D +:0300000002116585 +:0C116500787FE4F6D8FD75816F0211ACB4 +:10057B00BB010689828A83E0225002E722BBFE027E +:09058B00E32289828A83E49322B1 +:10059400BB010CE58229F582E5833AF583E022501C +:1005A40006E92582F8E622BBFE06E92582F8E22266 +:0D05B400E58229F582E5833AF583E4932280 +:1005C100BB010689828A83F0225002F722BBFE0119 +:0205D100F32213 +:1005D300BC000BBE0029EF8DF084FFADF022E4CC0C +:1005E300F875F008EF2FFFEE33FEEC33FCEE9DECD5 +:1005F300984005FCEE9DFE0FD5F0E9E4CEFD22ED1B +:10060300F8F5F0EE8420D21CFEADF075F008EF2F64 +:10061300FFED33FD4007985006D5F0F222C398FD55 +:050623000FD5F0EA22F2 +:10062800C2D5EC30E709B2D5E4C39DFDE49CFCEEED +:1006380030E715B2D5E4C39FFFE49EFE1205D3C38D +:10064800E49DFDE49CFC80031205D330D507C3E488 +:060658009FFFE49EFE225C +:0E065E00C3E49FFFE49EFEE49DFDE49CFC22AD +:10066C00FAE6FB0808E6F925F0F618E6CA3AF6228F +:10067C00D083D082F8E4937012740193700DA3A30D +:10068C0093F8740193F5828883E473740293686021 +:06069C00EFA3A3A380DF21 +:10142D00EFB40A07740D121438740A309811A89984 +:10143D00B8130CC2983098FDA899C298B811F6301F +:07144D0099FDC299F59922F7 +:101171000211F1E493A3F8E493A34003F68001F292 +:1011810008DFF48029E493A3F85407240CC8C3337F +:10119100C4540F4420C8834004F456800146F6DF4E +:1011A100E4800B010204081020408090164DE47E7B +:1011B100019360BCA3FF543F30E509541FFEE49343 +:1011C100A360010ECF54C025E060A840B8E493A30A +:1011D100FAE493A3F8E493A3C8C582C8CAC583CA35 +:1011E100F0A3C8C582C8CAC583CADFE9DEE780BEED +:01165A00008F :00000001FF diff --git a/pro.lnp b/pro.lnp index cef81bc..49fc0dd 100644 --- a/pro.lnp +++ b/pro.lnp @@ -1,5 +1,6 @@ "main.obj", "lcd.obj", "ds1302.obj", -"i2c.obj" +"i2c.obj", +"DS18B20.obj" TO "pro" diff --git a/pro.uvgui.QY b/pro.uvgui.QY index c50c44a..de979e2 100644 --- a/pro.uvgui.QY +++ b/pro.uvgui.QY @@ -83,25 +83,25 @@ 2 3 - -1 - -1 + -32000 + -32000 -1 -1 - 133 - 585 - 2505 - 780 + 336 + 655 + 2575 + 988 0 - 556 - 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000005000000000000000100000034453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6D61696E2E6300000000066D61696E2E6300000000FFDC7800FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6C63642E6800000000056C63642E6800000000BECEA100FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6C63642E6300000000056C63642E6300000000F0A0A100FFFFFFFF36453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6473313330322E6800000000086473313330322E6800000000BCA8E100FFFFFFFF36453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6473313330322E6300000000086473313330322E63000000009CC1B600FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000004401000066000000000A00009B040000 + 794 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000008000000040000000100000034453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6D61696E2E6300000000066D61696E2E6300000000FFDC7800FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6C63642E6800000000056C63642E6800000000BECEA100FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6C63642E6300000000056C63642E6300000000F0A0A100FFFFFFFF36453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6473313330322E6800000000086473313330322E6800000000F0A0A100FFFFFFFF36453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6473313330322E6300000000086473313330322E6300000000BCA8E100FFFFFFFF33453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C6932632E6800000000056932632E68000000009CC1B600FFFFFFFF37453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C445331384232302E680000000009445331384232302E6800000000F7B88600FFFFFFFF37453A5CCFEEC4BF5CBCE6D6B0CFEEC4BF5C32303232303432382D496E74656C6C6967656E744C69676874696E675C445331384232302E630000000009445331384232302E6300000000D9ADC200FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000004401000066000000000A00009B040000 @@ -1795,8 +1795,8 @@ 59392 File - 2490 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE8030000000000000000000000000000000000000000000000010000000100000096000000020020500000000006307830303066960000000000000014000630783030306608B6C1C8A1CEC8B6A804657869740C5265636976655F7461626C650474696D650574696D65310F52696768745F6D6F746F5F73746F700E707573685F76616C5F72696768741170776D5F6F75745F6C6566745F6D6F746F0273300875735F64656C6179036375740A73656E64546F576966690B676574546F74616C4461790C74696D696E67735B695D2D3E06307830306630054750494F4106307866303030054750494F42124775695F44726177466F6E745F4E756D33320000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000000180C8880000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65B9030000 + 2467 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE8030000000000000000000000000000000000000000000000010000000100000096000000020020500000000003534441960000000000000014000454494D45035344410353434C0442595445067763736C656E0630783030306608B6C1C8A1CEC8B6A804657869740C5265636976655F7461626C650474696D650574696D65310F52696768745F6D6F746F5F73746F700E707573685F76616C5F72696768741170776D5F6F75745F6C6566745F6D6F746F0273300875735F64656C6179036375740A73656E64546F576966690B676574546F74616C4461790C74696D696E67735B695D2D3E0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000000180C8880000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65B9030000 1423 @@ -1852,30 +1852,30 @@ 0 100 - 0 + 4 .\main.c - 5 - 123 - 142 + 27 + 7 + 479 1 0 lcd.h - 2 + 12 1 - 32 + 34 1 0 .\lcd.c - 0 - 60 - 74 + 4 + 71 + 121 1 0 @@ -1891,9 +1891,36 @@ .\ds1302.c + 14 + 72 + 87 + 1 + + 0 + + + i2c.h 0 - 27 - 90 + 1 + 1 + 1 + + 0 + + + DS18B20.h + 18 + 1 + 8 + 1 + + 0 + + + .\DS18B20.c + 20 + 44 + 66 1 0 diff --git a/pro.uvopt b/pro.uvopt index 301950e..f65a637 100644 --- a/pro.uvopt +++ b/pro.uvopt @@ -191,7 +191,7 @@ 1 1 1 - 1 + 0 0 0 .\main.c @@ -235,6 +235,18 @@ 0 0 + + 1 + 5 + 1 + 1 + 0 + 0 + .\DS18B20.c + DS18B20.c + 0 + 0 + diff --git a/pro.uvproj b/pro.uvproj index 3cd4b8d..dbea5f5 100644 --- a/pro.uvproj +++ b/pro.uvproj @@ -396,6 +396,11 @@ 1 .\i2c.c + + DS18B20.c + 1 + .\DS18B20.c +