From b59e74ddd28c15c1445b3866a8151dc08c378219 Mon Sep 17 00:00:00 2001 From: zibright Date: Tue, 22 Apr 2025 17:34:15 +0800 Subject: [PATCH] update --- 2025/Driver/Led.c | 22 +- 2025/Driver/Led.h | 3 +- 2025/Driver/ds1302.c | 53 ++ 2025/Driver/ds1302.h | 0 2025/Driver/iic.c | 108 ++++ 2025/Driver/iic.h | 0 2025/Driver/onewire.c | 103 +++ 2025/Driver/onewire.h | 7 + 2025/User/2025.uvgui.ZBright | 47 +- 2025/User/2025.uvopt | 14 +- 2025/User/2025.uvproj | 5 + 2025/User/Listings/2025.m51 | 584 ++++++++++++------ 2025/User/Listings/Init.lst | 2 +- 2025/User/Listings/Key.lst | 2 +- 2025/User/Listings/Led.lst | 30 +- 2025/User/Listings/Seg.lst | 2 +- 2025/User/Listings/main.lst | 206 +++--- 2025/User/Listings/onewire.lst | 130 ++++ 2025/User/Objects/2025 | Bin 25210 -> 34090 bytes 2025/User/Objects/2025.build_log.htm | 11 +- 2025/User/Objects/2025.hex | 190 ++++-- 2025/User/Objects/2025.lnp | 3 +- 2025/User/Objects/Init.obj | Bin 3805 -> 3805 bytes 2025/User/Objects/Key.obj | Bin 5319 -> 5319 bytes 2025/User/Objects/Led.obj | Bin 4424 -> 5155 bytes 2025/User/Objects/Seg.obj | Bin 4600 -> 4600 bytes 2025/User/Objects/main.obj | Bin 8627 -> 9665 bytes 2025/User/Objects/onewire.obj | Bin 0 -> 7165 bytes 2025/User/main.c | 18 +- .../DS18B20温度模块/User/main.c | 1 + .../DS18B20温度模块/User/zuolan.uvgui.ZBright | 70 ++- 31 files changed, 1207 insertions(+), 404 deletions(-) create mode 100644 2025/Driver/ds1302.c create mode 100644 2025/Driver/ds1302.h create mode 100644 2025/Driver/iic.c create mode 100644 2025/Driver/iic.h create mode 100644 2025/Driver/onewire.c create mode 100644 2025/Driver/onewire.h create mode 100644 2025/User/Listings/onewire.lst create mode 100644 2025/User/Objects/onewire.obj diff --git a/2025/Driver/Led.c b/2025/Driver/Led.c index 451570a..ac08164 100644 --- a/2025/Driver/Led.c +++ b/2025/Driver/Led.c @@ -5,9 +5,9 @@ void Led_Disp(unsigned char addr,enable) static unsigned char temp = 0x00,temp_old = 0xff; if(enable) - temp |= 0x01 << addr; + temp = temp | (0x01 << addr); else - temp &= ~(0x01 << addr); + temp = temp & (~(0x01 << addr)); if(temp != temp_old) { P2 = P2 & 0x1f | 0x80; @@ -17,4 +17,22 @@ void Led_Disp(unsigned char addr,enable) temp_old = temp; } +} + +void Relay(bit enable) +{ + static unsigned char temp = 0xff; + static unsigned char temp_old = 0x00; + if(enable) + temp |= 0x10; + else + temp &= ~0x10; + if(temp != temp_old) + { + P2 = P2 & 0x1f | 0xA0; + P0 = ~temp; + P2 &= 0x1f; + + temp_old = temp; + } } \ No newline at end of file diff --git a/2025/Driver/Led.h b/2025/Driver/Led.h index 3b6595e..8bc0040 100644 --- a/2025/Driver/Led.h +++ b/2025/Driver/Led.h @@ -1,3 +1,4 @@ #include -void Led_Disp(unsigned char addr,enable); \ No newline at end of file +void Led_Disp(unsigned char addr,enable); +void Relay(bit enable); \ No newline at end of file diff --git a/2025/Driver/ds1302.c b/2025/Driver/ds1302.c new file mode 100644 index 0000000..264912f --- /dev/null +++ b/2025/Driver/ds1302.c @@ -0,0 +1,53 @@ +/* # DS1302代码片段说明 + 1. 本文件夹中提供的驱动代码供参赛选手完成程序设计参考。 + 2. 参赛选手可以自行编写相关代码或以该代码为基础,根据所选单片机类型、运行速度和试题 + 中对单片机时钟频率的要求,进行代码调试和修改。 +*/ + +// +void Write_Ds1302(unsigned char temp) +{ + unsigned char i; + for (i=0;i<8;i++) + { + SCK = 0; + SDA = temp&0x01; + temp>>=1; + SCK=1; + } +} + +// +void Write_Ds1302_Byte( unsigned char address,unsigned char dat ) +{ + RST=0; _nop_(); + SCK=0; _nop_(); + RST=1; _nop_(); + Write_Ds1302(address); + Write_Ds1302(dat); + RST=0; +} + +// +unsigned char Read_Ds1302_Byte ( unsigned char address ) +{ + unsigned char i,temp=0x00; + RST=0; _nop_(); + SCK=0; _nop_(); + RST=1; _nop_(); + Write_Ds1302(address); + for (i=0;i<8;i++) + { + SCK=0; + temp>>=1; + if(SDA) + temp|=0x80; + SCK=1; + } + RST=0; _nop_(); + SCK=0; _nop_(); + SCK=1; _nop_(); + SDA=0; _nop_(); + SDA=1; _nop_(); + return (temp); +} diff --git a/2025/Driver/ds1302.h b/2025/Driver/ds1302.h new file mode 100644 index 0000000..e69de29 diff --git a/2025/Driver/iic.c b/2025/Driver/iic.c new file mode 100644 index 0000000..31f7f3e --- /dev/null +++ b/2025/Driver/iic.c @@ -0,0 +1,108 @@ +/* # I2C代码片段说明 + 1. 本文件夹中提供的驱动代码供参赛选手完成程序设计参考。 + 2. 参赛选手可以自行编写相关代码或以该代码为基础,根据所选单片机类型、运行速度和试题 + 中对单片机时钟频率的要求,进行代码调试和修改。 +*/ + +#define DELAY_TIME 10 + +// +static void I2C_Delay(unsigned char n) +{ + do + { + _nop_();_nop_();_nop_();_nop_();_nop_(); + _nop_();_nop_();_nop_();_nop_();_nop_(); + _nop_();_nop_();_nop_();_nop_();_nop_(); + } + while(n--); +} + +// +void I2CStart(void) +{ + sda = 1; + scl = 1; + I2C_Delay(DELAY_TIME); + sda = 0; + I2C_Delay(DELAY_TIME); + scl = 0; +} + +// +void I2CStop(void) +{ + sda = 0; + scl = 1; + I2C_Delay(DELAY_TIME); + sda = 1; + I2C_Delay(DELAY_TIME); +} + +// +void I2CSendByte(unsigned char byt) +{ + unsigned char i; + + for(i=0; i<8; i++){ + scl = 0; + I2C_Delay(DELAY_TIME); + if(byt & 0x80){ + sda = 1; + } + else{ + sda = 0; + } + I2C_Delay(DELAY_TIME); + scl = 1; + byt <<= 1; + I2C_Delay(DELAY_TIME); + } + + scl = 0; +} + +// +unsigned char I2CReceiveByte(void) +{ + unsigned char da; + unsigned char i; + for(i=0;i<8;i++){ + scl = 1; + I2C_Delay(DELAY_TIME); + da <<= 1; + if(sda) + da |= 0x01; + scl = 0; + I2C_Delay(DELAY_TIME); + } + return da; +} + +// +unsigned char I2CWaitAck(void) +{ + unsigned char ackbit; + + scl = 1; + I2C_Delay(DELAY_TIME); + ackbit = sda; + scl = 0; + I2C_Delay(DELAY_TIME); + + return ackbit; +} + +// +void I2CSendAck(unsigned char ackbit) +{ + scl = 0; + sda = ackbit; + I2C_Delay(DELAY_TIME); + scl = 1; + I2C_Delay(DELAY_TIME); + scl = 0; + sda = 1; + I2C_Delay(DELAY_TIME); +} + diff --git a/2025/Driver/iic.h b/2025/Driver/iic.h new file mode 100644 index 0000000..e69de29 diff --git a/2025/Driver/onewire.c b/2025/Driver/onewire.c new file mode 100644 index 0000000..0726422 --- /dev/null +++ b/2025/Driver/onewire.c @@ -0,0 +1,103 @@ +/* # 单总线代码片段说明 + 1. 本文件夹中提供的驱动代码供参赛选手完成程序设计参考。 + 2. 参赛选手可以自行编写相关代码或以该代码为基础,根据所选单片机类型、运行速度和试题 + 中对单片机时钟频率的要求,进行代码调试和修改。 +*/ + +#include + +sbit DQ = P1^4; + +// +void Delay_OneWire(unsigned int t) +{ + unsigned char i; + while(t--){ + for(i=0;i<12;i++); + } +} + +// +void Write_DS18B20(unsigned char dat) +{ + unsigned char i; + for(i=0;i<8;i++) + { + DQ = 0; + DQ = dat&0x01; + Delay_OneWire(5); + DQ = 1; + dat >>= 1; + } + Delay_OneWire(5); +} + +// +unsigned char Read_DS18B20(void) +{ + unsigned char i; + unsigned char dat; + + for(i=0;i<8;i++) + { + DQ = 0; + dat >>= 1; + DQ = 1; + if(DQ) + { + dat |= 0x80; + } + Delay_OneWire(5); + } + return dat; +} + +// +bit init_ds18b20(void) +{ + bit initflag = 0; + + DQ = 1; + Delay_OneWire(12); + DQ = 0; + Delay_OneWire(80); + DQ = 1; + Delay_OneWire(10); + initflag = DQ; + Delay_OneWire(5); + + return initflag; +} + +float Tempr_Read() +{ + unsigned char low; + unsigned char high; + + init_ds18b20(); + Write_DS18B20(0xcc); + Write_DS18B20(0x44); + Delay_OneWire(200); + + init_ds18b20(); + Write_DS18B20(0xcc); + Write_DS18B20(0xbe); + + low = Read_DS18B20(); + high = Read_DS18B20(); + + return ((high << 8) | low) /16.0; + +} + + + + + + + + + + + + diff --git a/2025/Driver/onewire.h b/2025/Driver/onewire.h new file mode 100644 index 0000000..fc11b06 --- /dev/null +++ b/2025/Driver/onewire.h @@ -0,0 +1,7 @@ +#include + +void Delay_OneWire(unsigned int t); +void Write_DS18B20(unsigned char dat); +unsigned char Read_DS18B20(void); +bit init_ds18b20(void); +float Tempr_Read(); \ No newline at end of file diff --git a/2025/User/2025.uvgui.ZBright b/2025/User/2025.uvgui.ZBright index fcb5f60..3725701 100644 --- a/2025/User/2025.uvgui.ZBright +++ b/2025/User/2025.uvgui.ZBright @@ -6,7 +6,7 @@
### uVision Project, (C) Keil Software
- D:\Git\2025\Driver + D:\Git\Gitea\lanqiaobei_51_study\2025\Driver @@ -110,8 +110,8 @@ 0 - 409 - 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000005000000010000000100000019443A5C4769745C323032355C4472697665725C496E69742E630000000006496E69742E6300000000C5D4F200FFFFFFFF18443A5C4769745C323032355C4472697665725C4C65642E6300000000054C65642E6300000000FFDC7800FFFFFFFF18443A5C4769745C323032355C4472697665725C5365672E6300000000055365672E6300000000BECEA100FFFFFFFF18443A5C4769745C323032355C4472697665725C4B65792E6300000000054B65792E6300000000F0A0A100FFFFFFFF17443A5C4769745C323032355C557365725C6D61696E2E6300000000066D61696E2E6300000000BCA8E100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD50001000000000000000200000057040000A70000007C08000093040000 + 620 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000006000000010000000100000033443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795C323032355C4472697665725C496E69742E630000000006496E69742E6300000000C5D4F200FFFFFFFF32443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795C323032355C4472697665725C4C65642E6300000000054C65642E6300000000FFDC7800FFFFFFFF32443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795C323032355C4472697665725C5365672E6300000000055365672E6300000000BECEA100FFFFFFFF32443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795C323032355C4472697665725C4B65792E6300000000054B65792E6300000000F0A0A100FFFFFFFF31443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795C323032355C557365725C6D61696E2E6300000000066D61696E2E6300000000BCA8E100FFFFFFFF36443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795C323032355C4472697665725C6F6E65776972652E6300000000096F6E65776972652E63000000009CC1B600FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD50001000000000000000200000057040000A70000007C08000093040000 @@ -134,7 +134,7 @@ 16 - B404000098000000E00A00005C010000 + 57040000A7000000830A00006B010000 @@ -530,7 +530,7 @@ 0 16 - 030000005604000066050000EA040000 + 03000000560400007C060000EA040000 16 @@ -1150,7 +1150,7 @@ 0 16 - 03000000660000003D01000022040000 + 03000000660000003D010000B0030000 16 @@ -1170,7 +1170,7 @@ 0 16 - 030000005604000066050000EA040000 + 03000000560400007C060000EA040000 16 @@ -1190,7 +1190,7 @@ 0 16 - 030000005604000066050000EA040000 + 03000000560400007C060000EA040000 16 @@ -1250,7 +1250,7 @@ 0 16 - 030000005604000066050000EA040000 + 03000000560400007C060000EA040000 16 @@ -1270,7 +1270,7 @@ 0 16 - 030000005604000066050000EA040000 + 03000000560400007C060000EA040000 16 @@ -1799,14 +1799,14 @@ 3312 - 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFF44010000130100007007000017010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000B404000098000000E00A00005C010000440100004F00000070070000130100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF2C0600004F00000030060000FD020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000A009000098000000E00A000046030000300600004F00000070070000FD02000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF400100004F000000440100003B040000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000007003000098000000B004000084040000000000004F000000400100003B0400000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000E902000070070000ED02000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB090000018000800000000000007003000036030000E00A00000E04000000000000ED02000070070000C503000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFB8030000ED020000BC030000C503000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000003B040000690500003F040000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF01000077940000018000800000010000007003000088040000D90800004C050000000000003F04000069050000030500000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFF44010000130100007007000017010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E65002000000000000057040000A7000000830A00006B010000440100004F00000070070000130100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF2C0600004F00000030060000FD020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000000000043090000A7000000830A000055030000300600004F00000070070000FD02000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF400100004F000000440100003B040000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000013030000A70000005304000021040000000000004F000000400100003B0400000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000E902000070070000ED02000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB090000018000800000000000001303000045030000830A00001D04000000000000ED02000070070000C503000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFB8030000ED020000BC030000C503000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000003B040000690500003F040000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000130300002504000092090000E9040000000000003F04000069050000030500000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File 2537 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050FFFFFFFF0096000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050FFFFFFFF0096000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1883,27 +1883,36 @@ ..\Driver\Seg.c - 24 + 4 1 - 7 + 21 0 0 ..\Driver\Key.c - 26 + 0 1 - 18 + 19 0 0 .\main.c - 4 - 58 - 67 + 17 + 31 + 63 + 1 + + 0 + + + ..\Driver\onewire.c + 0 + 1 + 19 1 0 diff --git a/2025/User/2025.uvopt b/2025/User/2025.uvopt index 89c8d25..1756c41 100644 --- a/2025/User/2025.uvopt +++ b/2025/User/2025.uvopt @@ -228,7 +228,7 @@ 2 5 1 - 1 + 0 0 0 ..\Driver\Key.c @@ -236,6 +236,18 @@ 0 0 + + 2 + 6 + 1 + 0 + 0 + 0 + ..\Driver\onewire.c + onewire.c + 0 + 0 + diff --git a/2025/User/2025.uvproj b/2025/User/2025.uvproj index 36e0543..3d50669 100644 --- a/2025/User/2025.uvproj +++ b/2025/User/2025.uvproj @@ -406,6 +406,11 @@ 1 ..\Driver\Key.c + + onewire.c + 1 + ..\Driver\onewire.c + diff --git a/2025/User/Listings/2025.m51 b/2025/User/Listings/2025.m51 index 7808251..c5038a9 100644 --- a/2025/User/Listings/2025.m51 +++ b/2025/User/Listings/2025.m51 @@ -1,12 +1,12 @@ -BL51 BANKED LINKER/LOCATER V6.22.4.0 04/13/2025 00:35:53 PAGE 1 +BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 1 BL51 BANKED LINKER/LOCATER V6.22.4.0, INVOKED BY: C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\BIN\BL51.EXE .\Objects\main.obj, .\Objects\Init.obj, .\Objects\Led.obj, .\Obj ->> ects\Seg.obj, .\Objects\Key.obj TO .\Objects\2025 PRINT (.\Listings\2025.m51) RAMSIZE (256) +>> ects\Seg.obj, .\Objects\Key.obj, .\Objects\onewire.obj TO .\Objects\2025 PRINT (.\Listings\2025.m51) RAMSIZE (256) -MEMORY MODEL: SMALL +MEMORY MODEL: SMALL WITH FLOATING POINT ARITHMETIC INPUT MODULES INCLUDED: @@ -15,7 +15,15 @@ INPUT MODULES INCLUDED: .\Objects\Led.obj (LED) .\Objects\Seg.obj (SEG) .\Objects\Key.obj (KEY) + .\Objects\onewire.obj (ONEWIRE) + C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPMUL) + C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPDIV) + C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FCAST) + C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\LIB\C51FPS.LIB (?C?CASTF) + C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\LIB\C51FPS.LIB (?C?FPGETOPN) C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\LIB\C51S.LIB (?C_STARTUP) + C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\LIB\C51S.LIB (?C?UIDIV) + C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\LIB\C51S.LIB (?C?LNEG) C:\USERS\ZBRIGHT\APPDATA\LOCAL\KEIL_V5\C51\LIB\C51S.LIB (?C_INIT) @@ -27,59 +35,91 @@ LINK MAP OF MODULE: .\Objects\2025 (MAIN) * * * * * * * D A T A M E M O R Y * * * * * * * REG 0000H 0008H ABSOLUTE "REG BANK 0" - DATA 0008H 0021H UNIT ?DT?MAIN - DATA 0029H 0019H UNIT ?DT?SEG - DATA 0042H 0002H UNIT ?DT?LED - IDATA 0044H 0001H UNIT ?STACK + DATA 0008H 0004H UNIT ?DT?LED + 000CH 0014H *** GAP *** + BIT 0020H.0 0000H.1 UNIT ?BI?RELAY?LED + BIT 0020H.1 0000H.1 UNIT _BIT_GROUP_ + 0020H.2 0000H.6 *** GAP *** + DATA 0021H 0026H UNIT ?DT?MAIN + DATA 0047H 0019H UNIT ?DT?SEG + IDATA 0060H 0001H UNIT ?STACK * * * * * * * C O D E M E M O R Y * * * * * * * CODE 0000H 0003H ABSOLUTE - CODE 0003H 0001H UNIT ?PR?LED_PROC?MAIN - 0004H 0007H *** GAP *** + 0003H 0008H *** GAP *** CODE 000BH 0003H ABSOLUTE - CODE 000EH 008CH UNIT ?C_C51STARTUP - CODE 009AH 0088H UNIT ?PR?TIMER0_SERVER?MAIN - CODE 0122H 007AH UNIT ?PR?KEY_READ?KEY - CODE 019CH 0042H UNIT ?C_INITSEG - CODE 01DEH 0042H UNIT ?PR?_SEG_DISP?SEG - CODE 0220H 003BH UNIT ?PR?_LED_DISP?LED - CODE 025BH 0025H UNIT ?PR?KEY_PROC?MAIN - CODE 0280H 0022H UNIT ?PR?SEG_PROC?MAIN - CODE 02A2H 001DH UNIT ?PR?SYSTEM_INIT?INIT - CODE 02BFH 0015H UNIT ?PR?TIMER0_INIT?MAIN - CODE 02D4H 0011H UNIT ?PR?MAIN?MAIN + CODE 000EH 02C8H UNIT ?C?LIB_CODE + CODE 02D6H 008CH UNIT ?C_C51STARTUP + CODE 0362H 0088H UNIT ?PR?TIMER0_SERVER?MAIN + CODE 03EAH 007AH UNIT ?PR?KEY_READ?KEY + CODE 0464H 0054H UNIT ?PR?SEG_PROC?MAIN + CODE 04B8H 004CH UNIT ?C_INITSEG + CODE 0504H 0042H UNIT ?PR?_SEG_DISP?SEG + CODE 0546H 003BH UNIT ?PR?_LED_DISP?LED + CODE 0581H 003BH UNIT ?PR?TEMPR_READ?ONEWIRE + CODE 05BCH 0027H UNIT ?PR?INIT_DS18B20?ONEWIRE + CODE 05E3H 0025H UNIT ?PR?KEY_PROC?MAIN + BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 2 + + + CODE 0608H 0025H UNIT ?PR?RELAY?LED + CODE 062DH 001EH UNIT ?PR?_WRITE_DS18B20?ONEWIRE + CODE 064BH 001DH UNIT ?PR?SYSTEM_INIT?INIT + CODE 0668H 001AH UNIT ?PR?_DELAY_ONEWIRE?ONEWIRE + CODE 0682H 001AH UNIT ?PR?READ_DS18B20?ONEWIRE + CODE 069CH 0015H UNIT ?PR?TIMER0_INIT?MAIN + CODE 06B1H 0011H UNIT ?PR?MAIN?MAIN + CODE 06C2H 000CH UNIT ?PR?LED_PROC?MAIN OVERLAY MAP OF MODULE: .\Objects\2025 (MAIN) -SEGMENT - +--> CALLED SEGMENT ---------------------- -?PR?TIMER0_SERVER?MAIN +SEGMENT BIT_GROUP + +--> CALLED SEGMENT START LENGTH +-------------------------------------------------- +?PR?TIMER0_SERVER?MAIN ----- ----- +--> ?PR?_SEG_DISP?SEG - BL51 BANKED LINKER/LOCATER V6.22.4.0 04/13/2025 00:35:53 PAGE 2 - - +--> ?PR?_LED_DISP?LED *** NEW ROOT *************************************************** -?C_C51STARTUP +?C_C51STARTUP ----- ----- +--> ?PR?MAIN?MAIN +--> ?C_INITSEG -?PR?MAIN?MAIN +?PR?MAIN?MAIN ----- ----- +--> ?PR?SYSTEM_INIT?INIT +--> ?PR?TIMER0_INIT?MAIN +--> ?PR?KEY_PROC?MAIN +--> ?PR?SEG_PROC?MAIN +--> ?PR?LED_PROC?MAIN -?PR?KEY_PROC?MAIN +?PR?KEY_PROC?MAIN ----- ----- +--> ?PR?KEY_READ?KEY +?PR?SEG_PROC?MAIN ----- ----- + +--> ?PR?TEMPR_READ?ONEWIRE + +?PR?TEMPR_READ?ONEWIRE ----- ----- + +--> ?PR?INIT_DS18B20?ONEWIRE + +--> ?PR?_WRITE_DS18B20?ONEWIRE + +--> ?PR?_DELAY_ONEWIRE?ONEWIRE + +--> ?PR?READ_DS18B20?ONEWIRE + +?PR?INIT_DS18B20?ONEWIRE 0020H.1 0000H.1 + +--> ?PR?_DELAY_ONEWIRE?ONEWIRE + +?PR?_WRITE_DS18B20?ONEWIRE ----- ----- + +--> ?PR?_DELAY_ONEWIRE?ONEWIRE + +?PR?READ_DS18B20?ONEWIRE ----- ----- + +--> ?PR?_DELAY_ONEWIRE?ONEWIRE + + + + BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 3 SYMBOL TABLE OF MODULE: .\Objects\2025 (MAIN) @@ -98,108 +138,118 @@ SYMBOL TABLE OF MODULE: .\Objects\2025 (MAIN) D:00E8H PUBLIC P6 B:00A8H.7 PUBLIC EA D:00F8H PUBLIC P7 - C:0003H PUBLIC Led_Proc - D:0008H PUBLIC Seg_Point + C:06C2H PUBLIC Led_Proc + D:0021H PUBLIC Seg_Point D:00A8H PUBLIC IE - C:009AH PUBLIC Timer0_Server - C:0280H PUBLIC Seg_Proc + C:0362H PUBLIC Timer0_Server + C:0464H PUBLIC Seg_Proc D:00B8H PUBLIC IP - D:0010H PUBLIC Seg_Buf - C:025BH PUBLIC Key_Proc - D:0018H PUBLIC Seg_Slow_Down - D:001AH PUBLIC Seg_Show + D:0029H PUBLIC Seg_Buf + C:05E3H PUBLIC Key_Proc + D:0031H PUBLIC Seg_Slow_Down + D:0033H PUBLIC Seg_Show D:00D8H PUBLIC CCON - D:001BH PUBLIC Key_Down - C:02D4H PUBLIC main - C:02BFH PUBLIC Timer0_Init - D:001CH PUBLIC Key_Old - D:001DH PUBLIC Key_Slow_Down - D:001EH PUBLIC Key_Val - D:001FH PUBLIC Seg_Pos + D:0034H PUBLIC Key_Down + C:06B1H PUBLIC main + C:069CH PUBLIC Timer0_Init + D:0035H PUBLIC Key_Old + D:0036H PUBLIC Key_Slow_Down + D:0037H PUBLIC Key_Val + D:0038H PUBLIC Seg_Pos D:0098H PUBLIC SCON D:0089H PUBLIC TMOD D:0088H PUBLIC TCON - BL51 BANKED LINKER/LOCATER V6.22.4.0 04/13/2025 00:35:53 PAGE 3 - - D:008EH PUBLIC AUXR + D:0039H PUBLIC Tempr_Show_10x B:00A8H.1 PUBLIC ET0 B:0088H.5 PUBLIC TF0 D:008CH PUBLIC TH0 - D:0020H PUBLIC Key_Up + D:003BH PUBLIC Key_Up D:008AH PUBLIC TL0 B:0088H.4 PUBLIC TR0 - D:0021H PUBLIC ucLed + D:003CH PUBLIC Relay_Flag + D:003DH PUBLIC Relay_Timer + D:003FH PUBLIC ucLed D:00D0H PUBLIC PSW ------- PROC KEY_PROC - C:025BH LINE# 29 - C:025BH LINE# 30 - C:025BH LINE# 31 - C:025FH LINE# 32 - C:0262H LINE# 34 - C:0267H LINE# 35 - C:0270H LINE# 36 - C:0276H LINE# 37 - C:0279H LINE# 39 - C:027DH LINE# 40 - C:027FH LINE# 41 + C:05E3H LINE# 32 + C:05E3H LINE# 33 + C:05E3H LINE# 34 + C:05E7H LINE# 35 + C:05EAH LINE# 37 + C:05EFH LINE# 38 + C:05F8H LINE# 39 + BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 4 + + + C:05FEH LINE# 40 + C:0601H LINE# 42 + C:0605H LINE# 43 + C:0607H LINE# 44 ------- ENDPROC KEY_PROC ------- PROC SEG_PROC - C:0280H LINE# 43 - C:0280H LINE# 44 - C:0280H LINE# 45 - C:0286H LINE# 46 - C:028BH LINE# 48 - C:0298H LINE# 49 - C:02A1H LINE# 50 + C:0464H LINE# 46 + C:0464H LINE# 47 + C:0464H LINE# 48 + C:046AH LINE# 49 + C:046FH LINE# 51 + C:0483H LINE# 52 + C:0493H LINE# 53 + C:04A7H LINE# 54 + C:04AAH LINE# 55 + C:04B7H LINE# 56 ------- ENDPROC SEG_PROC ------- PROC LED_PROC - C:0003H LINE# 52 - C:0003H LINE# 53 - C:0003H LINE# 55 + C:06C2H LINE# 58 + C:06C2H LINE# 59 + C:06C2H LINE# 60 + C:06C5H LINE# 61 + C:06C8H LINE# 62 + C:06CAH LINE# 63 + C:06CDH LINE# 64 ------- ENDPROC LED_PROC ------- PROC TIMER0_INIT - C:02BFH LINE# 58 - C:02BFH LINE# 59 - C:02BFH LINE# 60 - C:02C2H LINE# 61 - C:02C5H LINE# 62 - C:02C8H LINE# 63 - C:02CBH LINE# 64 - C:02CDH LINE# 65 - C:02CFH LINE# 66 - C:02D1H LINE# 67 - C:02D3H LINE# 68 + C:069CH LINE# 67 + C:069CH LINE# 68 + C:069CH LINE# 69 + C:069FH LINE# 70 + C:06A2H LINE# 71 + C:06A5H LINE# 72 + C:06A8H LINE# 73 + C:06AAH LINE# 74 + C:06ACH LINE# 75 + C:06AEH LINE# 76 + C:06B0H LINE# 77 ------- ENDPROC TIMER0_INIT ------- PROC TIMER0_SERVER - C:009AH LINE# 70 - C:00B7H LINE# 72 - C:00C1H LINE# 73 - C:00D8H LINE# 74 - C:00E2H LINE# 75 - C:00F9H LINE# 76 - C:0107H LINE# 78 - BL51 BANKED LINKER/LOCATER V6.22.4.0 04/13/2025 00:35:53 PAGE 4 - - + C:0362H LINE# 79 + C:037FH LINE# 81 + C:0389H LINE# 82 + C:03A0H LINE# 83 + C:03AAH LINE# 85 + C:03C1H LINE# 86 + C:03CFH LINE# 88 ------- ENDPROC TIMER0_SERVER ------- PROC MAIN - C:02D4H LINE# 80 - C:02D4H LINE# 81 - C:02D4H LINE# 82 - C:02D7H LINE# 83 - C:02DAH LINE# 84 - C:02DAH LINE# 85 - C:02DAH LINE# 86 - C:02DDH LINE# 87 - C:02E0H LINE# 88 - C:02E3H LINE# 89 + C:06B1H LINE# 90 + C:06B1H LINE# 91 + C:06B1H LINE# 92 + C:06B4H LINE# 93 + C:06B7H LINE# 94 + C:06B7H LINE# 95 + C:06B7H LINE# 96 + C:06BAH LINE# 97 + BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 5 + + + C:06BDH LINE# 98 + C:06C0H LINE# 99 ------- ENDPROC MAIN ------- ENDMOD MAIN ------- MODULE INIT C:0000H SYMBOL _ICE_DUMMY_ - C:02A2H PUBLIC System_Init + C:064BH PUBLIC System_Init D:0080H PUBLIC P0 D:0090H PUBLIC P1 D:00A0H PUBLIC P2 @@ -215,20 +265,21 @@ SYMBOL TABLE OF MODULE: .\Objects\2025 (MAIN) D:0088H PUBLIC TCON D:00D0H PUBLIC PSW ------- PROC SYSTEM_INIT - C:02A2H LINE# 3 - C:02A2H LINE# 4 - C:02A2H LINE# 5 - C:02AAH LINE# 6 - C:02ADH LINE# 7 - C:02B0H LINE# 9 - C:02B8H LINE# 10 - C:02BBH LINE# 11 - C:02BEH LINE# 12 + C:064BH LINE# 3 + C:064BH LINE# 4 + C:064BH LINE# 5 + C:0653H LINE# 6 + C:0656H LINE# 7 + C:0659H LINE# 9 + C:0661H LINE# 10 + C:0664H LINE# 11 + C:0667H LINE# 12 ------- ENDPROC SYSTEM_INIT ------- ENDMOD INIT ------- MODULE LED C:0000H SYMBOL _ICE_DUMMY_ + C:0608H PUBLIC Relay D:0080H PUBLIC P0 D:0090H PUBLIC P1 D:00A0H PUBLIC P2 @@ -237,11 +288,8 @@ SYMBOL TABLE OF MODULE: .\Objects\2025 (MAIN) D:00C8H PUBLIC P5 D:00E8H PUBLIC P6 D:00F8H PUBLIC P7 - C:0220H PUBLIC _Led_Disp + C:0546H PUBLIC _Led_Disp D:00A8H PUBLIC IE - BL51 BANKED LINKER/LOCATER V6.22.4.0 04/13/2025 00:35:53 PAGE 5 - - D:00B8H PUBLIC IP D:00D8H PUBLIC CCON D:0098H PUBLIC SCON @@ -251,23 +299,46 @@ SYMBOL TABLE OF MODULE: .\Objects\2025 (MAIN) D:0007H SYMBOL addr D:0004H SYMBOL enable ------- DO - D:0042H SYMBOL temp - D:0043H SYMBOL temp_old + BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 6 + + + D:0008H SYMBOL temp + D:0009H SYMBOL temp_old ------- ENDDO - C:0220H LINE# 3 - C:0220H LINE# 4 - C:0220H LINE# 7 - C:0224H LINE# 8 - C:0233H LINE# 10 - C:0241H LINE# 11 - C:0247H LINE# 12 - C:0247H LINE# 13 - C:024FH LINE# 14 - C:0254H LINE# 15 - C:0257H LINE# 17 - C:025AH LINE# 18 - C:025AH LINE# 20 + C:0546H LINE# 3 + C:0546H LINE# 4 + C:0546H LINE# 7 + C:054AH LINE# 8 + C:0559H LINE# 10 + C:0567H LINE# 11 + C:056DH LINE# 12 + C:056DH LINE# 13 + C:0575H LINE# 14 + C:057AH LINE# 15 + C:057DH LINE# 17 + C:0580H LINE# 18 + C:0580H LINE# 20 ------- ENDPROC _LED_DISP + ------- PROC RELAY + B:0020H.0 SYMBOL enable + ------- DO + D:000AH SYMBOL temp + D:000BH SYMBOL temp_old + ------- ENDDO + C:0608H LINE# 22 + C:0608H LINE# 23 + C:0608H LINE# 26 + C:060BH LINE# 27 + C:0610H LINE# 29 + C:0613H LINE# 30 + C:0619H LINE# 31 + C:0619H LINE# 32 + C:0621H LINE# 33 + C:0626H LINE# 34 + C:0629H LINE# 36 + C:062CH LINE# 37 + C:062CH LINE# 38 + ------- ENDPROC RELAY ------- ENDMOD LED ------- MODULE SEG @@ -280,36 +351,36 @@ SYMBOL TABLE OF MODULE: .\Objects\2025 (MAIN) D:00C8H PUBLIC P5 D:00E8H PUBLIC P6 D:00F8H PUBLIC P7 - D:0029H PUBLIC Seg_Dula - D:003AH PUBLIC Seg_Wela + D:0047H PUBLIC Seg_Dula + D:0058H PUBLIC Seg_Wela D:00A8H PUBLIC IE - C:01DEH PUBLIC _Seg_Disp + C:0504H PUBLIC _Seg_Disp D:00B8H PUBLIC IP D:00D8H PUBLIC CCON D:0098H PUBLIC SCON D:0088H PUBLIC TCON + BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 7 + + D:00D0H PUBLIC PSW ------- PROC _SEG_DISP D:0007H SYMBOL Wela D:0004H SYMBOL Dula D:0002H SYMBOL Point - C:01DEH LINE# 15 - C:01DEH LINE# 16 - C:01DEH LINE# 17 - C:01E6H LINE# 18 - C:01E9H LINE# 19 - C:01ECH LINE# 21 - BL51 BANKED LINKER/LOCATER V6.22.4.0 04/13/2025 00:35:53 PAGE 6 - - - C:01F4H LINE# 22 - C:01FBH LINE# 23 - C:01FEH LINE# 25 - C:0202H LINE# 26 - C:020DH LINE# 28 - C:0214H LINE# 29 - C:021CH LINE# 30 - C:021FH LINE# 31 + C:0504H LINE# 15 + C:0504H LINE# 16 + C:0504H LINE# 17 + C:050CH LINE# 18 + C:050FH LINE# 19 + C:0512H LINE# 21 + C:051AH LINE# 22 + C:0521H LINE# 23 + C:0524H LINE# 25 + C:0528H LINE# 26 + C:0533H LINE# 28 + C:053AH LINE# 29 + C:0542H LINE# 30 + C:0545H LINE# 31 ------- ENDPROC _SEG_DISP ------- ENDMOD SEG @@ -323,7 +394,7 @@ SYMBOL TABLE OF MODULE: .\Objects\2025 (MAIN) D:00C8H PUBLIC P5 D:00E8H PUBLIC P6 D:00F8H PUBLIC P7 - C:0122H PUBLIC Key_Read + C:03EAH PUBLIC Key_Read D:00A8H PUBLIC IE D:00B8H PUBLIC IP D:00D8H PUBLIC CCON @@ -343,38 +414,187 @@ SYMBOL TABLE OF MODULE: .\Objects\2025 (MAIN) ------- DO D:0007H SYMBOL temp ------- ENDDO - C:0122H LINE# 3 - C:0122H LINE# 4 - C:0122H LINE# 5 - C:0124H LINE# 6 - C:0126H LINE# 8 - C:012EH LINE# 9 - C:0133H LINE# 10 - C:0138H LINE# 11 - C:013DH LINE# 12 - C:0142H LINE# 14 - C:014AH LINE# 15 - C:014FH LINE# 16 - C:0154H LINE# 17 - C:0159H LINE# 18 - C:015EH LINE# 20 - C:0166H LINE# 21 - BL51 BANKED LINKER/LOCATER V6.22.4.0 04/13/2025 00:35:53 PAGE 7 + C:03EAH LINE# 3 + C:03EAH LINE# 4 + C:03EAH LINE# 5 + C:03ECH LINE# 6 + C:03EEH LINE# 8 + BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 8 - C:016BH LINE# 22 - C:0170H LINE# 23 - C:0175H LINE# 24 - C:017AH LINE# 26 - C:0182H LINE# 27 - C:0187H LINE# 28 - C:018CH LINE# 29 - C:0191H LINE# 30 - C:0196H LINE# 32 - C:019BH LINE# 33 - C:019BH LINE# 34 + C:03F6H LINE# 9 + C:03FBH LINE# 10 + C:0400H LINE# 11 + C:0405H LINE# 12 + C:040AH LINE# 14 + C:0412H LINE# 15 + C:0417H LINE# 16 + C:041CH LINE# 17 + C:0421H LINE# 18 + C:0426H LINE# 20 + C:042EH LINE# 21 + C:0433H LINE# 22 + C:0438H LINE# 23 + C:043DH LINE# 24 + C:0442H LINE# 26 + C:044AH LINE# 27 + C:044FH LINE# 28 + C:0454H LINE# 29 + C:0459H LINE# 30 + C:045EH LINE# 32 + C:0463H LINE# 33 + C:0463H LINE# 34 ------- ENDPROC KEY_READ ------- ENDMOD KEY -Program Size: data=69.0 xdata=0 code=734 -LINK/LOCATE RUN COMPLETE. 0 WARNING(S), 0 ERROR(S) + ------- MODULE ONEWIRE + C:0000H SYMBOL _ICE_DUMMY_ + D:0080H PUBLIC P0 + D:0090H PUBLIC P1 + D:00A0H PUBLIC P2 + D:00B0H PUBLIC P3 + D:00C0H PUBLIC P4 + C:0682H PUBLIC Read_DS18B20 + D:00C8H PUBLIC P5 + D:00E8H PUBLIC P6 + D:00F8H PUBLIC P7 + D:00A8H PUBLIC IE + C:066CH PUBLIC _Delay_OneWire + B:0090H.4 PUBLIC DQ + C:062DH PUBLIC _Write_DS18B20 + D:00B8H PUBLIC IP + C:05BCH PUBLIC init_ds18b20 + D:00D8H PUBLIC CCON + D:0098H PUBLIC SCON + D:0088H PUBLIC TCON + C:0581H PUBLIC Tempr_Read + D:00D0H PUBLIC PSW + C:0668H SYMBOL L?0020 + ------- PROC L?0019 + ------- ENDPROC L?0019 + C:0668H SYMBOL L?0020 + ------- PROC _DELAY_ONEWIRE + D:0006H SYMBOL t + ------- DO + D:0005H SYMBOL i + ------- ENDDO + C:066CH LINE# 12 + BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 9 + + + C:066CH LINE# 13 + C:066CH LINE# 15 + C:0676H LINE# 16 + C:0681H LINE# 17 + C:0681H LINE# 18 + ------- ENDPROC _DELAY_ONEWIRE + ------- PROC _WRITE_DS18B20 + D:0001H SYMBOL dat + ------- DO + D:0003H SYMBOL i + ------- ENDDO + C:062DH LINE# 21 + C:062FH LINE# 22 + C:062FH LINE# 24 + C:0631H LINE# 25 + C:0631H LINE# 26 + C:0633H LINE# 27 + C:0637H LINE# 28 + C:063AH LINE# 29 + C:063CH LINE# 30 + C:0640H LINE# 31 + C:0644H LINE# 32 + ------- ENDPROC _WRITE_DS18B20 + ------- PROC READ_DS18B20 + ------- DO + D:0003H SYMBOL i + D:0004H SYMBOL dat + ------- ENDDO + C:0682H LINE# 36 + C:0682H LINE# 37 + C:0682H LINE# 41 + C:0684H LINE# 42 + C:0684H LINE# 43 + C:0686H LINE# 44 + C:068AH LINE# 45 + C:068CH LINE# 46 + C:068FH LINE# 47 + C:068FH LINE# 48 + C:0692H LINE# 49 + C:0692H LINE# 50 + C:0695H LINE# 51 + C:0699H LINE# 52 + C:069BH LINE# 53 + ------- ENDPROC READ_DS18B20 + ------- PROC INIT_DS18B20 + ------- DO + B:0020H.1 SYMBOL initflag + ------- ENDDO + C:05BCH LINE# 56 + C:05BCH LINE# 57 + C:05BCH LINE# 58 + C:05BEH LINE# 60 + C:05C0H LINE# 61 + C:05C7H LINE# 62 + C:05C9H LINE# 63 + C:05D0H LINE# 64 + C:05D2H LINE# 65 + BL51 BANKED LINKER/LOCATER V6.22.4.0 04/15/2025 20:33:28 PAGE 10 + + + C:05D9H LINE# 66 + C:05DDH LINE# 67 + C:05E0H LINE# 69 + C:05E2H LINE# 70 + ------- ENDPROC INIT_DS18B20 + ------- PROC TEMPR_READ + ------- DO + D:0001H SYMBOL low + D:0007H SYMBOL high + ------- ENDDO + C:0581H LINE# 72 + C:0581H LINE# 73 + C:0581H LINE# 77 + C:0584H LINE# 78 + C:0589H LINE# 79 + C:058EH LINE# 80 + C:0595H LINE# 82 + C:0598H LINE# 83 + C:059DH LINE# 84 + C:05A2H LINE# 86 + C:05A7H LINE# 87 + C:05AAH LINE# 89 + ------- ENDPROC TEMPR_READ + ------- ENDMOD ONEWIRE + + ------- MODULE ?C?FPMUL + C:000EH PUBLIC ?C?FPMUL + ------- ENDMOD ?C?FPMUL + + ------- MODULE ?C?FPDIV + C:0117H PUBLIC ?C?FPDIV + ------- ENDMOD ?C?FPDIV + + ------- MODULE ?C?FCAST + C:01BEH PUBLIC ?C?FCASTC + C:01B9H PUBLIC ?C?FCASTI + C:01B4H PUBLIC ?C?FCASTL + ------- ENDMOD ?C?FCAST + + ------- MODULE ?C?CASTF + C:01F2H PUBLIC ?C?CASTF + ------- ENDMOD ?C?CASTF + + ------- MODULE ?C?UIDIV + C:0273H PUBLIC ?C?UIDIV + ------- ENDMOD ?C?UIDIV + + ------- MODULE ?C?LNEG + C:02C8H PUBLIC ?C?LNEG + ------- ENDMOD ?C?LNEG + +*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS + SEGMENT: ?PR?RELAY?LED + +Program Size: data=76.2 xdata=0 code=1734 +LINK/LOCATE RUN COMPLETE. 1 WARNING(S), 0 ERROR(S) diff --git a/2025/User/Listings/Init.lst b/2025/User/Listings/Init.lst index 6fc54c9..6eb1ba8 100644 --- a/2025/User/Listings/Init.lst +++ b/2025/User/Listings/Init.lst @@ -1,4 +1,4 @@ -C51 COMPILER V9.60.7.0 INIT 04/13/2025 00:35:53 PAGE 1 +C51 COMPILER V9.60.7.0 INIT 04/15/2025 20:33:28 PAGE 1 C51 COMPILER V9.60.7.0, COMPILATION OF MODULE INIT diff --git a/2025/User/Listings/Key.lst b/2025/User/Listings/Key.lst index fb4c743..c540776 100644 --- a/2025/User/Listings/Key.lst +++ b/2025/User/Listings/Key.lst @@ -1,4 +1,4 @@ -C51 COMPILER V9.60.7.0 KEY 04/13/2025 00:35:53 PAGE 1 +C51 COMPILER V9.60.7.0 KEY 04/15/2025 20:33:28 PAGE 1 C51 COMPILER V9.60.7.0, COMPILATION OF MODULE KEY diff --git a/2025/User/Listings/Led.lst b/2025/User/Listings/Led.lst index ae3a7e8..78aa1e2 100644 --- a/2025/User/Listings/Led.lst +++ b/2025/User/Listings/Led.lst @@ -1,4 +1,4 @@ -C51 COMPILER V9.60.7.0 LED 04/13/2025 00:35:53 PAGE 1 +C51 COMPILER V9.60.7.0 LED 04/15/2025 20:33:28 PAGE 1 C51 COMPILER V9.60.7.0, COMPILATION OF MODULE LED @@ -15,9 +15,9 @@ line level source 5 1 static unsigned char temp = 0x00,temp_old = 0xff; 6 1 7 1 if(enable) - 8 1 temp |= 0x01 << addr; + 8 1 temp = temp | (0x01 << addr); 9 1 else - 10 1 temp &= ~(0x01 << addr); + 10 1 temp = temp & (~(0x01 << addr)); 11 1 if(temp != temp_old) 12 1 { 13 2 P2 = P2 & 0x1f | 0x80; @@ -28,16 +28,34 @@ line level source 18 2 } 19 1 20 1 } + 21 + 22 void Relay(bit enable) + 23 { + 24 1 static unsigned char temp = 0xff; + 25 1 static unsigned char temp_old = 0x00; + 26 1 if(enable) + 27 1 temp |= 0x10; + 28 1 else + 29 1 temp &= ~0x10; + 30 1 if(temp != temp_old) + 31 1 { + 32 2 P2 = P2 & 0x1f | 0xA0; + 33 2 P0 = ~temp; + 34 2 P2 &= 0x1f; + 35 2 + 36 2 temp_old = temp; + 37 2 } + 38 1 } MODULE INFORMATION: STATIC OVERLAYABLE - CODE SIZE = 59 ---- + CODE SIZE = 96 ---- CONSTANT SIZE = ---- ---- XDATA SIZE = ---- ---- PDATA SIZE = ---- ---- - DATA SIZE = 2 ---- + DATA SIZE = 4 ---- IDATA SIZE = ---- ---- - BIT SIZE = ---- ---- + BIT SIZE = ---- 1 END OF MODULE INFORMATION. diff --git a/2025/User/Listings/Seg.lst b/2025/User/Listings/Seg.lst index ee06493..0f2cccd 100644 --- a/2025/User/Listings/Seg.lst +++ b/2025/User/Listings/Seg.lst @@ -1,4 +1,4 @@ -C51 COMPILER V9.60.7.0 SEG 04/13/2025 00:35:53 PAGE 1 +C51 COMPILER V9.60.7.0 SEG 04/15/2025 20:33:28 PAGE 1 C51 COMPILER V9.60.7.0, COMPILATION OF MODULE SEG diff --git a/2025/User/Listings/main.lst b/2025/User/Listings/main.lst index 2d08115..70aeb46 100644 --- a/2025/User/Listings/main.lst +++ b/2025/User/Listings/main.lst @@ -1,4 +1,4 @@ -C51 COMPILER V9.60.7.0 MAIN 04/13/2025 00:35:53 PAGE 1 +C51 COMPILER V9.60.7.0 MAIN 04/15/2025 20:33:28 PAGE 1 C51 COMPILER V9.60.7.0, COMPILATION OF MODULE MAIN @@ -14,113 +14,125 @@ line level source 4 #include 5 #include 6 #include - 7 - 8 /* 变量申明*/ - 9 unsigned char Key_Slow_Down;//按键减速变量 - 10 unsigned char Key_Val,Key_Old,Key_Down,Key_Up; - 11 unsigned int Seg_Slow_Down; - 12 unsigned char Seg_Pos; - 13 unsigned char Seg_Buf[8]= - 14 { - 15 16,16,16,16,16,16,16,16 - 16 }; - 17 unsigned char Seg_Point[8]= - 18 { - 19 0,0,0,0,0,0,0,0 - 20 }; - 21 unsigned char ucLed[8]= - 22 { - 23 1,0,0,0,0,0,0,0 - 24 }; - 25 - 26 unsigned char Seg_Show; - 27 - 28 /* 处理函数(key,seg,led)*/ - 29 void Key_Proc() - 30 { - 31 1 if(Key_Slow_Down) return; - 32 1 Key_Slow_Down = 1; - 33 1 - 34 1 Key_Val = Key_Read(); - 35 1 Key_Down = Key_Val & (Key_Old ^ Key_Val); - 36 1 Key_Up = ~Key_Val & (Key_Old ^ Key_Val); - 37 1 Key_Old = Key_Val; - 38 1 - 39 1 if(Key_Down != 0) - 40 1 Seg_Show = Key_Down; - 41 1 } - 42 - 43 void Seg_Proc() - 44 { - 45 1 if(Seg_Slow_Down) return; - 46 1 Seg_Slow_Down = 1; - 47 1 - 48 1 Seg_Buf[0] = Seg_Show /10 %10; - 49 1 Seg_Buf[1] = Seg_Show %10; - 50 1 } - 51 - 52 void Led_Proc() - 53 { - 54 1 - C51 COMPILER V9.60.7.0 MAIN 04/13/2025 00:35:53 PAGE 2 + 7 #include + 8 + 9 /* 变量申明*/ + 10 unsigned char Key_Slow_Down;//按键减速变量 + 11 unsigned char Key_Val,Key_Old,Key_Down,Key_Up; + 12 unsigned int Seg_Slow_Down; + 13 unsigned char Seg_Pos; + 14 unsigned char Seg_Buf[8]= + 15 { + 16 16,16,16,16,16,16,16,16 + 17 }; + 18 unsigned char Seg_Point[8]= + 19 { + 20 0,0,0,0,0,0,0,0 + 21 }; + 22 unsigned char ucLed[8]= + 23 { + 24 1,0,1,0,0,0,0,0 + 25 }; + 26 + 27 unsigned char Seg_Show; + 28 unsigned int Tempr_Show_10x = 0,Relay_Timer; + 29 unsigned char Relay_Flag; + 30 + 31 /* 处理函数(key,seg,led)*/ + 32 void Key_Proc() + 33 { + 34 1 if(Key_Slow_Down) return; + 35 1 Key_Slow_Down = 1; + 36 1 + 37 1 Key_Val = Key_Read(); + 38 1 Key_Down = Key_Val & (Key_Old ^ Key_Val); + 39 1 Key_Up = ~Key_Val & (Key_Old ^ Key_Val); + 40 1 Key_Old = Key_Val; + 41 1 + 42 1 if(Key_Down != 0) + 43 1 Seg_Show = Key_Down; + 44 1 } + 45 + 46 void Seg_Proc() + 47 { + 48 1 if(Seg_Slow_Down) return; + 49 1 Seg_Slow_Down = 1; + 50 1 + 51 1 Tempr_Show_10x = Tempr_Read() * 10; + 52 1 Seg_Buf[0] = Tempr_Show_10x /100 %10; + 53 1 Seg_Buf[1] = Tempr_Show_10x /10 %10; + 54 1 Seg_Point[1] = 1; + C51 COMPILER V9.60.7.0 MAIN 04/15/2025 20:33:28 PAGE 2 - 55 1 } - 56 - 57 /* 定时器函数(初始化、中断函数)*/ - 58 void Timer0_Init(void) //1毫秒@12.000MHz + 55 1 Seg_Buf[2] = Tempr_Show_10x % 10; + 56 1 } + 57 + 58 void Led_Proc() 59 { - 60 1 AUXR &= 0x7F; //定时器时钟12T模式 - 61 1 TMOD &= 0xF0; //设置定时器模式 - 62 1 TL0 = 0x18; //设置定时初始值 - 63 1 TH0 = 0xFC; //设置定时初始值 - 64 1 TF0 = 0; //清除TF0标志 - 65 1 TR0 = 1; //定时器0开始计时 - 66 1 ET0 = 1; - 67 1 EA = 1; - 68 1 } - 69 - 70 void Timer0_Server() interrupt 1 - 71 { - 72 1 if(++Key_Slow_Down == 10) Key_Slow_Down = 0; - 73 1 if(++Seg_Slow_Down == 500) Seg_Slow_Down = 0; - 74 1 if(++Seg_Pos == 8) Seg_Pos = 0; - 75 1 Seg_Disp(Seg_Pos,Seg_Buf[Seg_Pos],Seg_Point[Seg_Pos]); - 76 1 Led_Disp(Seg_Pos,ucLed[Seg_Pos]); - 77 1 - 78 1 } - 79 /* 主函数*/ - 80 void main() - 81 { - 82 1 System_Init(); - 83 1 Timer0_Init(); - 84 1 while(1) - 85 1 { - 86 2 Key_Proc(); - 87 2 Seg_Proc(); - 88 2 Led_Proc(); - 89 2 } - 90 1 } - 91 - 92 - 93 - 94 - 95 - 96 - 97 - 98 - 99 - 100 + 60 1 ucLed[4] = 1; + 61 1 ucLed[5] = 0; + 62 1 ucLed[6] = 0; + 63 1 ucLed[7] = 1; + 64 1 } + 65 + 66 /* 定时器函数(初始化、中断函数)*/ + 67 void Timer0_Init(void) //1毫秒@12.000MHz + 68 { + 69 1 AUXR &= 0x7F; //定时器时钟12T模式 + 70 1 TMOD &= 0xF0; //设置定时器模式 + 71 1 TL0 = 0x18; //设置定时初始值 + 72 1 TH0 = 0xFC; //设置定时初始值 + 73 1 TF0 = 0; //清除TF0标志 + 74 1 TR0 = 1; //定时器0开始计时 + 75 1 ET0 = 1; + 76 1 EA = 1; + 77 1 } + 78 + 79 void Timer0_Server() interrupt 1 + 80 { + 81 1 if(++Key_Slow_Down == 10) Key_Slow_Down = 0; + 82 1 if(++Seg_Slow_Down == 500) Seg_Slow_Down = 0; + 83 1 if(++Seg_Pos == 8) Seg_Pos = 0; + 84 1 + 85 1 Seg_Disp(Seg_Pos,Seg_Buf[Seg_Pos],Seg_Point[Seg_Pos]); + 86 1 Led_Disp(Seg_Pos,ucLed[Seg_Pos]); + 87 1 + 88 1 } + 89 /* 主函数*/ + 90 void main() + 91 { + 92 1 System_Init(); + 93 1 Timer0_Init(); + 94 1 while(1) + 95 1 { + 96 2 Key_Proc(); + 97 2 Seg_Proc(); + 98 2 Led_Proc(); + 99 2 } + 100 1 } 101 102 103 + 104 + 105 + 106 + 107 + 108 + 109 + 110 + 111 + 112 + 113 MODULE INFORMATION: STATIC OVERLAYABLE - CODE SIZE = 246 ---- + C51 COMPILER V9.60.7.0 MAIN 04/15/2025 20:33:28 PAGE 3 + + CODE SIZE = 307 ---- CONSTANT SIZE = ---- ---- XDATA SIZE = ---- ---- PDATA SIZE = ---- ---- - DATA SIZE = 33 ---- + DATA SIZE = 38 ---- IDATA SIZE = ---- ---- BIT SIZE = ---- ---- END OF MODULE INFORMATION. diff --git a/2025/User/Listings/onewire.lst b/2025/User/Listings/onewire.lst new file mode 100644 index 0000000..e1a679b --- /dev/null +++ b/2025/User/Listings/onewire.lst @@ -0,0 +1,130 @@ +C51 COMPILER V9.60.7.0 ONEWIRE 04/15/2025 20:33:28 PAGE 1 + + +C51 COMPILER V9.60.7.0, COMPILATION OF MODULE ONEWIRE +OBJECT MODULE PLACED IN .\Objects\onewire.obj +COMPILER INVOKED BY: C:\Users\ZBright\AppData\Local\Keil_v5\C51\BIN\C51.EXE ..\Driver\onewire.c OPTIMIZE(8,SPEED) BROWSE + - INCDIR(..\Driver) DEBUG OBJECTEXTEND PRINT(.\Listings\onewire.lst) OBJECT(.\Objects\onewire.obj) + +line level source + + 1 /* # 单总线代码片段说明 + 2 1. 本文件夹中提供的驱动代码供参赛选手完成程序设计参考。 + 3 2. 参赛选手可以自行编写相关代码或以该代码为基础,根据所选单片机类型、 + -行速度和试题 + 4 中对单片机时钟频率的要求,进行代码调试和修改。 + 5 */ + 6 + 7 #include + 8 + 9 sbit DQ = P1^4; + 10 + 11 // + 12 void Delay_OneWire(unsigned int t) + 13 { + 14 1 unsigned char i; + 15 1 while(t--){ + 16 2 for(i=0;i<12;i++); + 17 2 } + 18 1 } + 19 + 20 // + 21 void Write_DS18B20(unsigned char dat) + 22 { + 23 1 unsigned char i; + 24 1 for(i=0;i<8;i++) + 25 1 { + 26 2 DQ = 0; + 27 2 DQ = dat&0x01; + 28 2 Delay_OneWire(5); + 29 2 DQ = 1; + 30 2 dat >>= 1; + 31 2 } + 32 1 Delay_OneWire(5); + 33 1 } + 34 + 35 // + 36 unsigned char Read_DS18B20(void) + 37 { + 38 1 unsigned char i; + 39 1 unsigned char dat; + 40 1 + 41 1 for(i=0;i<8;i++) + 42 1 { + 43 2 DQ = 0; + 44 2 dat >>= 1; + 45 2 DQ = 1; + 46 2 if(DQ) + 47 2 { + 48 3 dat |= 0x80; + 49 3 } + 50 2 Delay_OneWire(5); + 51 2 } + 52 1 return dat; + 53 1 } + C51 COMPILER V9.60.7.0 ONEWIRE 04/15/2025 20:33:28 PAGE 2 + + 54 + 55 // + 56 bit init_ds18b20(void) + 57 { + 58 1 bit initflag = 0; + 59 1 + 60 1 DQ = 1; + 61 1 Delay_OneWire(12); + 62 1 DQ = 0; + 63 1 Delay_OneWire(80); + 64 1 DQ = 1; + 65 1 Delay_OneWire(10); + 66 1 initflag = DQ; + 67 1 Delay_OneWire(5); + 68 1 + 69 1 return initflag; + 70 1 } + 71 + 72 float Tempr_Read() + 73 { + 74 1 unsigned char low; + 75 1 unsigned char high; + 76 1 + 77 1 init_ds18b20(); + 78 1 Write_DS18B20(0xcc); + 79 1 Write_DS18B20(0x44); + 80 1 Delay_OneWire(200); + 81 1 + 82 1 init_ds18b20(); + 83 1 Write_DS18B20(0xcc); + 84 1 Write_DS18B20(0xbe); + 85 1 + 86 1 low = Read_DS18B20(); + 87 1 high = Read_DS18B20(); + 88 1 + 89 1 return ((high << 8) | low) /16.0; + 90 1 + 91 1 } + 92 + 93 + 94 + 95 + 96 + 97 + 98 + 99 + 100 + 101 + 102 + 103 + + +MODULE INFORMATION: STATIC OVERLAYABLE + CODE SIZE = 180 ---- + CONSTANT SIZE = ---- ---- + XDATA SIZE = ---- ---- + PDATA SIZE = ---- ---- + DATA SIZE = ---- ---- + IDATA SIZE = ---- ---- + BIT SIZE = ---- 1 +END OF MODULE INFORMATION. + + +C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S) diff --git a/2025/User/Objects/2025 b/2025/User/Objects/2025 index 9a8b63f3a2ff55ed09fbd7b5668d0f3653b7b3e3..8d4edcbab87f19d3796c02afb172c7f90bf23ce8 100644 GIT binary patch literal 34090 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 V`E(^8?g>ApCPlwiPQrHg{{igUgNFbB delta 3856 zcmZ`*3viUx6+ZXwBb$&7e*z(!WH-C}XA`pKL4pa9hdg$(LLea_yAXrXB!o4@29iP+ zM5?Bu-^%2Y!~YdhEy2T+@y^C$n3DxOU4 z{^y>1&-1(I-XjmmD{qOkzU5*p=C7)7sT(`GH(^u+4|EiIx*xsLl~LB(uiQnQLxvzrtq+iuj z7hXTEhW2z#Eh}rS+1$M~yt$RgT}rtW@rYFzMbXTLQc40l~~{fhAR z@%guII(J(&7F(*t>)2`WcvOHVg+^9ZKbyF1TSm^ zsen6)XMK^|0dA2V3;8;s+6E>oi-JA9+uCY+w`~HM1BR%kB)Fk>8_2U@F#7!sD?#Rh zLEEVIWU7;ysJOu_rW3X9Orchc|1X|h}n;QIWW-rGz;^=cl z93n%g59f{8!+B$?^G0(=@-DWGx_0N;M{?WcXpVYBoeKt9?BE@FJU9W`Bq3*=q)K(k ze1Jab0oW=F0Jh7S0MWZ;5slIdcam9C!fdPNL@=;abE4Z^$oU`14%qr~M{SX8F_IIx zkg|*acVAG(ncWxC)!(ZHAk0ae)^c2 zsl|U%&f~hx=V1ZB8}degx8*{BcjY30-^s-Qe~?Q6{wRF_f0BNHKg$|ejPX=k6b{xY z3P@|Hwm#5A&B0_cuJ;Ztod@A2fM3BffY+fG;4CZ$_#3PMxD0gwNn#~@gomx}6=!6I z9L$g>GvqB9GL`{`*yv@olG1iYHUbT+cxVE6Uj_j_kRcvc^RNcsL)i>)PTmagk!*pt zF+D9;tipljvW$ZrX%_}7hf`0KRl+1%`v6$_ z7A{kqGYdcxFG-e3zfAg0*3F%X`5E}0a-AcE#YFlFIv(0?=9l5;)urf5KZ=(WrIetY z*voba)rpnNQ*9D{97em>i=m7oRjD+~r0b{RC06k+j$ZeOdCfz7)mwqrCiR7s7-b0C09sS&jRO-@zSs9}Pq0&B!xSn$%c1r9yiJZ+q?uPveBRa`aw zX&k)Hjy8{i&6yb?-M+qB=dCm`xGq(T#2nt#v92fV>9kUMjPy4i;O_OAnplEKO8~3j zq{Q&2^S$^*=AlVtOJ^aGp0vqH%Ek9)^jhicCX#;|_tklEOV&MDVk^$((3$jykB3456m-S1{d?i?7%eE474##wzGEqV>X>7t-jt9i zxUjqkSLapWQCG^1IV54ylR*tTv62x(ja3Urms5{T@Iyn-=B*HTPg4=@aLvalih{-T zpPX+OA7Gx}J7jnNM$~`v3~OO$wn0gqaZu739F%mc9+75%XJrz=aY;?} zgrv&9BBubnCR1T9nK4Z^vsOu>H%sl%XESZ7skHKCA$%bGW5?)8mnE|S7gc5%U31k3 z@c9kJxW6*n;F4}UTDe5*!GBfGiTY@Fe|TdbNIyNV_^YkAXT8%*;Bd)**0oQ4CaGUo zV)D)F&wl0e#nL9R7n^(|zOcW2njYhb@1hphZlB+)7^r%m@GD`hRJW<5ob*wgE{@a1 z(Rt`y3H8@=cuP3Er4$|wlL27D)jnfn} zy~c=}+D_n-0_N~#SoKmz7C+^?#5ZrfPVc+CuH}O&n`W!L2J4+_4~4 z+=h=Wu;cOK6nt$#iMUMd(K{5ayG0B=yzm`4w5WW@fGY!;uDD3|#xMWu_~Vc4ycFC2 zzL2L!NBGUFFnxt)mjtj=>U36xizji%$)u{9~Sw^^fISK z-CO!_;mlcL7&qQj9UT^0!Os03DC468{qtsBIBkCt@1FXM!&Ei(&@Amm&+`zapCoL@#@=N;@r_&d*;v zKYyL{{2dsoT)HDossf*1{fM{|Yu3zUX5*Ue(a*2K=n0`#s}GVGU!OJ7) zxD*P)QkkIRa=jot-5>~0Hwwa&PY{%rvzraK*PWVA+DB&6p9XhEKmOwE w*O7bu5>`KL-UX0DfuF&j?3ydZlX!ZUZ^qyGP<$vL%a{Vj`X#k188`3#55*eVS^xk5 diff --git a/2025/User/Objects/2025.build_log.htm b/2025/User/Objects/2025.build_log.htm index 9cb0c2c..5ae5972 100644 --- a/2025/User/Objects/2025.build_log.htm +++ b/2025/User/Objects/2025.build_log.htm @@ -18,8 +18,8 @@ Hex Converter: OH51.exe V2.7.0.0 CPU DLL: S8051.DLL V3.125.1.0 Dialog DLL: DP51.DLL V2.69.0.0

Project:

-D:\Git\2025\User\2025.uvproj -Project File Date: 04/12/2025 +D:\Git\Gitea\lanqiaobei_51_study\2025\User\2025.uvproj +Project File Date: 04/15/2025

Output:

Rebuild target '2025' @@ -28,10 +28,13 @@ compiling Init.c... compiling Led.c... compiling Seg.c... compiling Key.c... +compiling onewire.c... linking... -Program Size: data=69.0 xdata=0 code=734 +*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS + SEGMENT: ?PR?RELAY?LED +Program Size: data=76.2 xdata=0 code=1734 creating hex file from ".\Objects\2025"... -".\Objects\2025" - 0 Error(s), 0 Warning(s). +".\Objects\2025" - 0 Error(s), 1 Warning(s). Build Time Elapsed: 00:00:00 diff --git a/2025/User/Objects/2025.hex b/2025/User/Objects/2025.hex index ddbaa88..e6b9dc9 100644 --- a/2025/User/Objects/2025.hex +++ b/2025/User/Objects/2025.hex @@ -1,59 +1,133 @@ -:10019C0008101010101010101010080800000000AB -:0E01AC0000000000082101000000000000001B -:10025B00E51D7020751D011201228F1EE51C651E08 -:10026B00FF551EF51BE51EF45FF520851E1CE51BD7 -:05027B006002F51A22EB -:10028000E5194518701BF518751901E51A75F00A7E -:100290008475F00A8485F010E51A75F00A8485F0FB -:0202A000112229 -:0100030022DA -:1002BF00538E7F5389F0758A18758CFCC28DD28C42 -:0502CF00D2A9D2AF220C -:03000B0002009A56 -:10009A00C0E0C0F0C083C082C0D075D000C000C02C -:1000AA0001C002C003C004C005C006C007051DE5A3 -:1000BA001DB40A03751D000519E51970020518FF1C -:1000CA00AE18BE0109BFF406751800751900051FA0 -:1000DA00E51FB40803751F007410251FF8E6FD7CA0 -:1000EA00007408251FF8E6FB7A00AF1F1201DE74C0 -:1000FA0021251FF8E6FD7C00AF1F120220D007D091 -:10010A0006D005D004D003D002D001D000D0D0D080 -:08011A0082D083D0F0D0E03266 -:1002D4001202A21202BF12025B12028012000380F9 -:0102E400F524 -:1002A200E5A0541F4480F5A07580FF53A01FE5A070 -:0D02B200541F44A0F5A0E4F58053A01F22C6 -:0601BA000142000143FFB9 -:10022000ED4C600FA8077401088002C333D8FC426C -:1002300042800EA8077401088002C333D8FCF45230 -:1002400042E54265436013E5A0541F4480F5A0E5F4 -:0A02500042F4F58053A01F854243DD -:01025A002281 -:1001C0001129C0F9A4B0999282F880908883C6A1C1 -:0D01D000868EFF083A0102040810204080CE -:1001DE00E5A0541F44E0F5A07580FF53A01FE5A0D5 -:1001EE00541F44C0F5A0743A2FF8E6F58053A01FB3 -:1001FE00EB4A600B74292DF8E6547FF58080077466 -:10020E00292DF8E6F580E5A0541F44E0F5A053A093 -:02021E001F229D -:10012200E4FFC2A9C2C4D2C2D2B5D2B420B3027F04 -:100132000420B2027F0520B1027F0620B0027F07B1 -:10014200D2C4C2C2D2B5D2B420B3027F0820B20256 -:100152007F0920B1027F0A20B0027F0BD2C4D2C233 -:10016200C2B5D2B420B3027F0C20B2027F0D20B1FF -:10017200027F0E20B0027F0FD2C4D2C2D2B5C2B467 -:1001820020B3027F1020B2027F1120B1027F122021 -:09019200B0027F13D2A975B0FF81 -:01019B002241 -:0300000002000EED -:0C000E00787FE4F6D8FD758143020055B0 -:10001A000202D4E493A3F8E493A34003F68001F226 -:10002A0008DFF48029E493A3F85407240CC8C333E7 -:10003A00C4540F4420C8834004F456800146F6DFB6 -:10004A00E4800B010204081020408090019CE47EA9 -:10005A00019360BCA3FF543F30E509541FFEE493AB -:10006A00A360010ECF54C025E060A840B8E493A372 -:10007A00FAE493A3F8E493A3C8C582C8CAC583CA9D -:10008A00F0A3C8C582C8CAC583CADFE9DEE780BE55 -:0101DD000021 +:1004B800082910101010101010100821000000005A +:1004C80000000000083F01000100000000000239A0 +:0204D800000022 +:1005E300E53670207536011203EA8F37E535653736 +:1005F300FF5537F534E537F45FF53B853735E5349B +:050603006002F5332246 +:10046400E5324531704DF531753201120581E4FBF9 +:10047400FA7920784112000E1201F28E398F3A7CFB +:10048400007D641202737C007D0A1202738D29AE12 +:1004940039AF3A7C007D0A1202737C007D0A120295 +:1004A400738D2A752201AE39AF3A7C007D0A12029F +:0404B400738D2B22F7 +:0C06C200754301E4F544F545754601223E +:10069C00538E7F5389F0758A18758CFCC28DD28C61 +:0506AC00D2A9D2AF222B +:03000B000203628B +:10036200C0E0C0F0C083C082C0D075D000C000C061 +:1003720001C002C003C004C005C006C0070536E5BF +:1003820036B40A037536000532E53270020531FFD4 +:10039200AE31BE0109BFF406753100753200053871 +:1003A200E538B4080375380074292538F8E6FD7C71 +:1003B2000074212538F8E6FB7A00AF381205047480 +:1003C2003F2538F8E6FD7C00AF38120546D007D04D +:1003D20006D005D004D003D002D001D000D0D0D0B6 +:0803E20082D083D0F0D0E0329C +:1006B10012064B12069C1205E31204641206C28054 +:0106C100F543 +:10064B00E5A0541F4480F5A07580FF53A01FE5A0C3 +:0D065B00541F44A0F5A0E4F58053A01F2219 +:0C04DA000108000109FF010AFF010B00EE +:10054600ED4C600FA8077401088002C333D8FC4243 +:1005560008800EA8077401088002C333D8FCF45241 +:1005660008E50865096013E5A0541F4480F5A0E579 +:0A05760008F4F58053A01F85080962 +:010580002258 +:10060800300005430A108003530AEFE50A650B60C2 +:1006180013E5A0541F44A0F5A0E50AF4F58053A003 +:040628001F850A0B15 +:01062C0022AB +:1004E6001147C0F9A4B0999282F880908883C6A17A +:0D04F600868EFF0858010204081020408087 +:10050400E5A0541F44E0F5A07580FF53A01FE5A0AB +:10051400541F44C0F5A074582FF8E6F58053A01F6B +:10052400EB4A600B74472DF8E6547FF5808007741E +:10053400472DF8E6F580E5A0541F44E0F5A053A04C +:020544001F2274 +:1003EA00E4FFC2A9C2C4D2C2D2B5D2B420B3027F3A +:1003FA000420B2027F0520B1027F0620B0027F07E7 +:10040A00D2C4C2C2D2B5D2B420B3027F0820B2028B +:10041A007F0920B1027F0A20B0027F0BD2C4D2C268 +:10042A00C2B5D2B420B3027F0C20B2027F0D20B134 +:10043A00027F0E20B0027F0FD2C4D2C2D2B5C2B49C +:10044A0020B3027F1020B2027F1120B1027F122056 +:09045A00B0027F13D2A975B0FFB6 +:010463002276 +:040668007F057E008C +:10066C00EF1FAA0670011E4A600BE4FDEDC3940C4B +:05067C0050EE0D80F7B7 +:010681002256 +:02062D00A9071B +:10062F00E4FBC294E9139294120668D294E9C313BF +:0C063F00F90BBB08ED7F057E0002066C85 +:10068200E4FBC294ECC313FCD29430940343048081 +:090692001206680BBB08EBAF0473 +:01069B00223C +:1005BC00C201D2947F0C7E0012066CC2947F507ED6 +:1005CC000012066CD2947F0A7E0012066CA29492E2 +:0605DC0001120668A201F5 +:0105E20022F6 +:100581001205BC7FCC12062D7F4412062D7FC87E3A +:100591000012066C1205BC7FCC12062D7FBE12061E +:1005A1002D120682A907120682EFAD01FCEC1201A1 +:0B05B100B9E4FBFA79807841020117E1 +:10000E00EC4D6011E8497017ED33EC3304600DE4EC +:10001E00FCFFFEFD22E933E8330470F802025E12A3 +:10002E00022958046009E4CC2481500628500902A4 +:10003E000268284003020265C0E0EB4A7044B980B2 +:10004E0006D0E0FB020254EF4E701CBD8008EBFFA1 +:10005E00EAFEE9FD80EBE98DF0A4FEE5F00200F783 +:10006E00E9CDF9EAFEEBFFEF89F0A4FCE5F0CE89CD +:10007E00F0A42EFFE435F0CD89F0A42DFEE435F08A +:10008E008067EF4E7005BD80D780C3EF8BF0A4ACB8 +:10009E00F0EE8BF0A42CFCE435F0F8EF8AF0A42CF3 +:1000AE00E5F038FCE433CB8DF0A42CFCE5F03BF806 +:1000BE00EE8AF0A42CFCE5F038F8E433CF89F0A4F6 +:1000CE002CFCE5F038CF3400CE89F0A42FFFE5F0FC +:1000DE003EFEE433C98DF0A42EFEE5F039CD8AF054 +:1000EE00A42FFFE5F03EFEE43DFD33D0E0FB5007CC +:1000FE000BBB000F020268EC2CFCEF33FFEE33FE5D +:06010E00ED33FD0202408A +:10011400020268EC5D046005E85904700302025EA3 +:10012400120229580460F6EC4860F2EC7004FDFEFB +:10013400FF22C860DB2481C85009C39860025006BE +:100144000202659850CAF582E9294B4A7005AB82D0 +:1001540002025475F0007C1A7880C3EF9BEE9AED8E +:1001640099400DC3EF9BFFEE9AFEED99FDE842F036 +:10017400DC23ACF0D0E0FFD0E0FED0E0FDAB822089 +:10018400E7101BEB60BAEC2CFCEF33FFEE33FEED13 +:1001940033FD020240E803F830E705C0F075F000D3 +:1001A400EF2FFFEE33FEED33FD40B830E7C280AAF7 +:1001B40075F020800E75F010800575F0087D007EC6 +:1001C400007F003392D530D5031202C8EC334010BF +:1001D400EF33FFEE33FEED33FDEC33FCD5F0ED22CF +:0E01E400E5F0247EA2D513CC92E7CDCEFF220B +:1001F200EDD2E7CD33EC3392D524814006E4FFFE05 +:10020200FDFC22FCE4CFCECDCC24E0501174FF8063 +:10021200EDC3CC13CCCD13CDCE13CECF13CF047000 +:07022200F030D5DE0202C836 +:10022900E9D2E7C933E833F892D5EDD2E7CD33EC1B +:0702390033FC5002B2D52294 +:10024000EC30E7100FBF000C0EBE00080DBD00041F +:100250000BEB6014A2D5EB13FCED92E7FD2274FFCB +:10026000FCFDFEFF22E480F8A2D574FF13FC7D8024 +:03027000E480EF38 +:030000000202D623 +:0C02D600787FE4F6D8FD75815F02031DFF +:10027300BC000BBE0029EF8DF084FFADF022E4CC6F +:10028300F875F008EF2FFFEE33FEEC33FCEE9DEC38 +:10029300984005FCEE9DFE0FD5F0E9E4CEFD22ED7E +:1002A300F8F5F0EE8420D21CFEADF075F008EF2FC8 +:1002B300FFED33FD4007985006D5F0F222C398FDB9 +:0502C3000FD5F0EA2256 +:0E02C800C3E49FFFE49EFEE49DFDE49CFC2247 +:1002E2000206B1E493A3F8E493A34003F68001F27B +:1002F20008DFF48029E493A3F85407240CC8C3331D +:10030200C4540F4420C8834004F456800146F6DFEB +:10031200E4800B01020408102040809004B8E47EBF +:10032200019360BCA3FF543F30E509541FFEE493E0 +:10033200A360010ECF54C025E060A840B8E493A3A7 +:10034200FAE493A3F8E493A3C8C582C8CAC583CAD2 +:10035200F0A3C8C582C8CAC583CADFE9DEE780BE8A +:0105030000F7 :00000001FF diff --git a/2025/User/Objects/2025.lnp b/2025/User/Objects/2025.lnp index be79e44..f4bdac7 100644 --- a/2025/User/Objects/2025.lnp +++ b/2025/User/Objects/2025.lnp @@ -2,6 +2,7 @@ ".\Objects\Init.obj", ".\Objects\Led.obj", ".\Objects\Seg.obj", -".\Objects\Key.obj" +".\Objects\Key.obj", +".\Objects\onewire.obj" TO ".\Objects\2025" PRINT(".\Listings\2025.m51") RAMSIZE(256) diff --git a/2025/User/Objects/Init.obj b/2025/User/Objects/Init.obj index 0e73d211c1d09f17c374d0ac514a2904fd855269..e56e416e5ca79448f3e66156fc07192c5eabfe85 100644 GIT binary patch delta 20 ccmcaBdslYCL}rPge-o#4F-C8eXWYjN09|(oDgXcg delta 20 ccmcaBdslYCMCQzCza~!UVm!53o^c;90B14@DgXcg diff --git a/2025/User/Objects/Key.obj b/2025/User/Objects/Key.obj index 6e40c6c52f0df8142747b8c407e3822584a09fdd..e9e673365a94c2505b9e3c81dc89cf81908fad73 100644 GIT binary patch delta 20 ccmX@Ed0cZsAG1Wzzljsu8Q*S}WLzf<0A9Taj{pDw delta 20 ccmX@Ed0cZsA9LokUlS*`GsbL|WLzf<0AhFuj{pDw diff --git a/2025/User/Objects/Led.obj b/2025/User/Objects/Led.obj index 1e996a899db3a667af0e1de7f6e4af4b767cb16a..672b52aad2c4a3d6bf642b669918703596c7cf66 100644 GIT binary patch delta 1129 zcmZ8fO=uHQ5T3VhH=8txNn35&G-GRe-HZ)V>&-+MdnV(Z6N zAM)OOV{Pq7-{ytJ6<;DTn_jtk!(5r2Fw2Q~2`*+EYp-UyKS(O@iA=h|qP}HdfPZnE zg)1_s$#gM^6;3&TLGUJX`D8vbF)~AG8RC>?m>$jUrxp8c4|F6`Ms_M&EM&%R1ri|R z4=`!(AI%n#7EQ4*5dpXiq&3pnLhiP|;s8rlSGM5?t)fLjrBc%~mF5;VnaWK$U)xsrBk9_1Z3}jGtA$$RF2JH| z1PL9CZc+w@XOk-6vIFom*F)CIA=t#R=BhXIe^8YS-&F^;jYI6Io&!z-dMp_M%LmbO z=*PziVf1boK;H=w%SX}ofrfqn&c|@kkch|zEq@gL`JJHHw^H(BADS=UN&uUDv9nP9 zwg0g{&7H;zVsKV`;|c9~DF8IE4BAKbEmm-7#jxDX#zaP55|150@m>xM(>L!!cCtM* zhIjyD`nD|`$Cze>@QeDk{F3oE;1N$8^CjBeizTww>-`wht+a5s4Y$*4SZ{CF!k>j( z-54Z9&;7CqINUT6RtF5NE`()axFh1P>d{D350%hb8iE+NICq5Vd@a1L4)M_$>ZAi} zSZy8fg!t_Y@o7+m-*rl(Y80yn&l5X-`eL;jX J^#|S!{vQpE;k^I= delta 425 zcmZ9I%}PR16ovOWM~`~1=1+xK6q-draR-({lWyV_xuGFwkR;uHG;6tL z4fy~)f(T&)r@lfxf;5O`3H=-|LC_w4Ywg9_`(dFsb9c+C_k%`bJaBq3sJIoSsMV@x zfA3U=@OrsM}-^31%{U_Z{XQp@LWhq=LVM$A)$>R@u-K zNkiMpWO%_)g8{%b>gU1La1#htXoiHaO;e=V`lN9Z;=qQ@-L(;btGB-*+TIEPB@n~9 zRf)Fu{li-;1pfbk|0?vqatzqFp0Fq|+~Lb4+3NBR!EHW)Xit-OTz5RVM0@iC*QKHD v)isZ*gli_bPHqF diff --git a/2025/User/Objects/Seg.obj b/2025/User/Objects/Seg.obj index f5ed8733afa6bad5d3050b4f100d41ce33bbbca0..781007354e04ed065b6acea5ef97dd59cb7c6beb 100644 GIT binary patch delta 20 ccmeyN{6l#{AG1Wzzljsu87FL(WV|l`0ApMTwg3PC delta 20 ccmeyN{6l#{A9LokUlS*`GydN!$#`D?0Bsiuwg3PC diff --git a/2025/User/Objects/main.obj b/2025/User/Objects/main.obj index 59b8fc28f213d9ab9423af65182a40888c9c5061..336d1b47a63ea6cd63487d40289e8fbc81e0f52c 100644 GIT binary patch delta 3181 zcmZu!T}+$T8GgU-v++L|0tp8E2O(sIIMDon@`FQdLmVJD#st!m8XH^uj0DD#w$aw2 z^+#>hWlMIpo2t_`RZFW@T~)E&Y}&L+yJ&i`kw%&{O{#j4R%+La-Q*_Ql0EP7cfu!c zNBBACdCxiTdH>F_*-U&ms;`x<>o2u6XYVgG#AYXo%jNk?-=4itSh^TnEiP+>iR*7Z zXH2K>i{0AZJvw!!?l0_!#b%T1OHY;8XIC$lpI%xo#};qvPO^;;rBC0l|AUy(4rn>? zeXT|Finp}Y_I7f|6Z!P%bZ#;=;v`)oqCMn{Cv$P$@=4$oF`y?ma;fo5HlIxmC3QPi zIOB=X>cx;FbY9Xo_ZAqQWPi4TGiE1mhOrD&W&iD1sh&T1GHJ7+% z1hg*kjuG^+2ShqP`(077W$f~VC`^Q-o9UqV$~d4m>6>BO%UYAvXRpnbFRZQSCl^yU&fYQH=`RxaVhEi#PE z$R zB@EHI(Osoq(ff)#lwq$$e3jZ8Tpx%dj*bnRZiD$d$tJTOK+kz^BTYs%B>MnNwaE(T zHv5>AJE_-P_o%sUz?_ep{bN$@qNMCK8ZpV|UrV}27JKiHoZayR zDuLiQV+v@%NE>vF09|wv=%qBUmQDfvGzx5>F<>K&(?2(toh3~RiNCl4y)A4PU(N}b z9;7qCF3JK2;j$gNrhs`m3%o!x^qy#TFHbyTojF_#jGdR z@Z&-)zhVm-)yQXU{w48-=YnVgE5y8^IwagFT7DkaCwb} zn^tLR?J+6e-g~@?4_5Jb6=(01Ew_qZIj$KkU&&9c4VsP_B);Qo2zs!Rn>v}}qpVJf zcYJ@ddwE*i3xq`=;`L=glovk{f2_SN?uPyQCM{C-oujSJXKuCUl-R19JO4OVa8vo2 ztx%MCB|qm)e%j=7CXblBU~)c*^I0@`2K{fuRsXS|$}msZOdHHa^tSlIf5U?t4uMfB zT$&L--5IEJU|pqgG@cc&)yGdLyI9Uz6t4xpsv=vySSYTPxny*?sN(!9rB2et2RnDv z>nJ0u>O~Q1__+U&3?!!?543D535UT{5~{;_Q`GHP^^ICq+!U|vcU z42h~0kLYN+vC$|ksrm*!`af5VU#`lJT;y&x=&4<_}fzehZ&2iknSG zgX$%~j7*l5zbm3U|L#j;MjhhcbnW`B<{Pt!{w%hdSNrfa0hx9wYG$1+X32{W!;E(l zoEuyBoEQxB`%Z!>)eiA|;M_sfh?Mbffl5=pbX(T;7Tr?2EqQsR;1VCUePeT`rAccr zvtId0lPwoYKNml%5A1i~TWq^=pg3@1+E!>#SD6MPyaMDmC$WYnS#5aU#_38?ns0#fzbZeF;doaT)TV>KS0pW-HER7Z=Up zV?kA@yo*;T9s&Pad@I}|{t@yAi#&~{^eE1H2F1tW==65Yv5cE?lxxiD1=pCBbB$R! zhg1b-NIV+pZmN!pibL3?_Wf179=SHczX({Dh95eWrmmw(*9nL@E(Oaxd#yOz{wGn0 U4z#2&QkTzRb65T&;LRWX7hi^8jQ{`u delta 2084 zcmZuyZD^ZS6h8OON0T<+O`E3eyR=D4t8KD&{nWM1+N85zYty7%Th`HUx^~QzYW*X) zSvJHEWc8qk)IS?e{3B@aThW0(Hjp6-6(_<_wqJr{Y$8?EbKbmHgY3fl-1FRf-gD1+ z?s=2TL)o~pKDe!%t6Y6$Z^aXx8C_UgUVQwqnN#ztk47^KYXYWT-rK(TlwtkJJq(LF z+p~%Vj7NF~M*b4la6>d#2EiRmref*7M`n|$(Rhsa3;+V?!OJ2e_F+7IUA50YW2G5f(s@&;}vG5(pDkKn>wOs3i^LF7`dfaEv-KGs@WCVq^ z2RkjH5kUfZzy~~Az^~07PKdY_PKO%6z!B@UxD6Uc2+a^BEP_VDGH4>Kh6CWn{Z=(# z2D&E*UJH3i1hQH*-l}0csQ9im5qp@b1~{l;C!qnl2+hz1=D^k{I;Ef|jQbR`vNL7!{T{zDRieqrzM z(Z@l|8I8^)Hddcl-k720ik<*;Ix4W=(G)pM`SRFmOH#Iis>+QJP0WXN?w~o2KRKGZ ztoq8|Gz57Bh_hglSCP&4EqOoLe22`x#H2G&TchnO^i~P2^N_xLnv7M7yUqvILT&#) zk1%l=y&qNA_joMqibV3>GI^h~mYnmsi#xt{dks?Z*dj zq;r?L${a@vFoTh(d&(_LsPCm+BwVIL~) zGON7hZ1z2MNZ_%+V#)s-EyO`_JskMg`Fi$`z%7BrPVYl90WO{$WjyBGq4~TfkH3x4 zU^~9$v^k3x?3!0Wa`H&)_yHXAsQ7xY6Q2*cRM|yRPRUu$<7f_bs`3J8L6b>xzNmXR z8)}Hq&xAHO24^KZO~#a*V@~6Tp=wg8+|)=+!6J8sJ-;<}urXZUbw7df>%3pxQl}gE sYWO^69EFkkTv}QyabEI^kaY4gdfE diff --git a/2025/User/Objects/onewire.obj b/2025/User/Objects/onewire.obj new file mode 100644 index 0000000000000000000000000000000000000000..ad0a0ad98cc941b6b49062042f5cc8f328af4988 GIT binary patch literal 7165 zcmbtZeQaA-6+ixp^ZnU0Y1$@EoTSa#rm^$UwB6<=&n|J}B(Ci?O>1!N#7o?zNl3D` z`)93S8v{YNbr}K)q-hg^BB2h!0BI6JEubOBHYUU-zJ{hEQPI-z*MMy;zjNQa?tO0c z{^2S<@1A?^@7{aPJ?Gr}UY5FTx1ZDceV(@N?qqN|cPhJ_TwKVW&MjxVr`tRe(L{JG zd^EImaC`jls4_&`WYgpMRa<3Ud}79LM* z?M_B=E33JM*_Hgr^DC=eMpuX@GAFXrt9PV}nG;<^jj>y^_4gFo=-BA3*}DAP`C+H+ z)DgO;WX?`6{r*?8L)xC?p_T0NO7iINa&C5RH954j6ilzClaa;g^n7wOo10Ia>QBNT z$?(E-GM>=*=j-3^A06n4`@2Uzv6qp1Vmve%j)iX3{JiQ-vJu&wL`~Ebh{gh`U??&) zl`?t+jHg}i(`@vajD-`SR50!v9QOCfJ`OofBaagc4FwB(U>2Tf3yB`#@o=KBhl|>= z94x6ZFdPott4EPO#$H;_vm`=e(O8P-lB+1+&`ek@QAt1x?AM0kiLjlAEM_(u3?IJL zkRc3$QhEoCRiTut6G9zsQuPqyQf11dJ_ZN6(rmYj)uog-^Do;gd8iV@mfhN3?>cTk zah0XQ8Z3EeY-}nO@U)TFK^_~{=d!JO%UV&jk;5^Q2IKYG$XiY?dH;nrvY#V|J=%lH zGhFeZ@&Z@#0x0+Rk{Rv~E!kiuDxrN+nYG%bZnDO&U-zA4r z(z3sDzw0wq=ueI_U?x4&ESk4$bvqkoAH#f;yoX( z&8KJQ-P^c7A0@aF!yQ3kZG7oDlHVIk5}+ z(__fn3~O{4{JVLpIH{A`zU_@7#xTyHn18pRdqC}UKd6%)z^{xR1g)R|=sMa5x}JtW zH`6d^D`}wZ6awv}{ge=vQ1$+Lbp_d#jQTsn4h@)Bci{QO)2O+zlsTMSue$e%Gz?|W zzRo1b-GoI2^ z^@g0io#idYlTF5svc-7rBqxgr#u3Lwr*1;;0djC+8WC#^3pxhspmES*ngFe!DCjzh zfi_SabQ2{&Tj?-pCryHO(G*>Rg2PWsDEgux*2s(`xQ*fb= z>C~dzx0NX_9q$vy-wPFr;gC6;Bx%5bxsVxxQAQI0{% zw-m(v-8Y!IXVYPEQ?b+ke^Q%SInyudc5ny4bGePeC+1<) zc{e3Lg*s!HKbheq3`a?&#KkBzl1f!#Y;NPi&+{|&;%UbW!Yk0m*w1G;vBTM-lVbx~ z>~#y6-x!Z!v5Y>v8?fGle`L)9w^7066x=|Xw_u=1DGkm`A zKGO@4T7j*aVE*?kV08-Y zvzc14V$(Hw4&Y+k95_jF-=&#v;gZ6t@%2kDpBsn@6Adan-&-Frcs3RDfdYQ0fY%hB zXB#tk9^a|(-DqcdtUxY#mS2;~m|ipPQsxnIi^1$rQ7=-Nc7^A~`wgCz;mJ9tbCHXa zyj078?-Cov&uBR$_5=Y!Tf))*w+CCHm<;Wwb+{$u+0i=R&iQ5-^f=j za5V~UMVU?;jsM63R;9omF;5qX2T)QJ^TnBI^Vu^MxD{{k9pDv_r!Bk!-!VjCtEN@2h?H8ODizczvsYN=_kIO8 zktv29aE=5I-ZI<*Z`PveiJ4dM?w}t%CHngE+ukJF@3;Y90o0>ta{<4tfZtKT>ju3u z-u(sg2MhRp1w0>ptOgsx}W`wSalmj=QkmR_{r>6qAf8 z_6IKVWeZadD!7R1mIMX4FI_J0)lx2b4hY7} wmk24BJO>=h1IBn#E_o>*Dv(QF%C!QyyO!Jpcdz literal 0 HcmV?d00001 diff --git a/2025/User/main.c b/2025/User/main.c index 67fd67e..7c1d9ce 100644 --- a/2025/User/main.c +++ b/2025/User/main.c @@ -4,6 +4,7 @@ #include #include #include +#include /* 变量申明*/ unsigned char Key_Slow_Down;//按键减速变量 @@ -20,10 +21,12 @@ unsigned char Seg_Point[8]= }; unsigned char ucLed[8]= { - 1,0,0,0,0,0,0,0 + 1,0,1,0,0,0,0,0 }; unsigned char Seg_Show; +unsigned int Tempr_Show_10x = 0,Relay_Timer; +unsigned char Relay_Flag; /* 处理函数(key,seg,led)*/ void Key_Proc() @@ -45,13 +48,19 @@ void Seg_Proc() if(Seg_Slow_Down) return; Seg_Slow_Down = 1; - Seg_Buf[0] = Seg_Show /10 %10; - Seg_Buf[1] = Seg_Show %10; + Tempr_Show_10x = Tempr_Read() * 10; + Seg_Buf[0] = Tempr_Show_10x /100 %10; + Seg_Buf[1] = Tempr_Show_10x /10 %10; + Seg_Point[1] = 1; + Seg_Buf[2] = Tempr_Show_10x % 10; } void Led_Proc() { - + ucLed[4] = 1; + ucLed[5] = 0; + ucLed[6] = 0; + ucLed[7] = 1; } /* 定时器函数(初始化、中断函数)*/ @@ -72,6 +81,7 @@ void Timer0_Server() interrupt 1 if(++Key_Slow_Down == 10) Key_Slow_Down = 0; if(++Seg_Slow_Down == 500) Seg_Slow_Down = 0; if(++Seg_Pos == 8) Seg_Pos = 0; + Seg_Disp(Seg_Pos,Seg_Buf[Seg_Pos],Seg_Point[Seg_Pos]); Led_Disp(Seg_Pos,ucLed[Seg_Pos]); diff --git a/模板/蓝桥杯全模块测试例程/DS18B20温度模块/User/main.c b/模板/蓝桥杯全模块测试例程/DS18B20温度模块/User/main.c index b8398ed..9324f99 100644 --- a/模板/蓝桥杯全模块测试例程/DS18B20温度模块/User/main.c +++ b/模板/蓝桥杯全模块测试例程/DS18B20温度模块/User/main.c @@ -52,6 +52,7 @@ void Seg_Proc() if (Seg_Slow_Down) return; Seg_Slow_Down = 1; + temperature_value_10x = filter(rd_temperature() * 10); if (C_F_flag) temperature_value_10x = temperature_value_10x * 1.8 + 320; // ϶ diff --git a/模板/蓝桥杯全模块测试例程/DS18B20温度模块/User/zuolan.uvgui.ZBright b/模板/蓝桥杯全模块测试例程/DS18B20温度模块/User/zuolan.uvgui.ZBright index 9e579f8..1ce8df1 100644 --- a/模板/蓝桥杯全模块测试例程/DS18B20温度模块/User/zuolan.uvgui.ZBright +++ b/模板/蓝桥杯全模块测试例程/DS18B20温度模块/User/zuolan.uvgui.ZBright @@ -93,25 +93,25 @@ 0 1 - -32000 - -32000 + -1 + -1 -1 -1 - 87 - 320 - 2239 - 1313 + 57 + 779 + 2180 + 1398 0 - 634 - 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000400000002000000010000005C443A5C4769745C4769744875625C6C616E7169616F6265695F73747564792D6D61737465725CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C4472697665725C4C65642E6300000000054C65642E6300000000C5D4F200FFFFFFFF5C443A5C4769745C4769744875625C6C616E7169616F6265695F73747564792D6D61737465725CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C4472697665725C5365672E6300000000055365672E6300000000FFDC7800FFFFFFFF5C443A5C4769745C4769744875625C6C616E7169616F6265695F73747564792D6D61737465725CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C4472697665725C4B65792E6300000000054B65792E6300000000BECEA100FFFFFFFF5D443A5C4769745C4769744875625C6C616E7169616F6265695F73747564792D6D61737465725CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C4472697665725C496E69742E630000000006496E69742E6300000000F0A0A100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000008C020000C5000000B70800003E040000 + 842 + 01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000006000000000000000100000057443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C4472697665725C4C65642E6300000000054C65642E6300000000C5D4F200FFFFFFFF57443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C4472697665725C5365672E6300000000055365672E6300000000FFDC7800FFFFFFFF57443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C4472697665725C4B65792E6300000000054B65792E6300000000BECEA100FFFFFFFF58443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C4472697665725C496E69742E630000000006496E69742E6300000000F0A0A100FFFFFFFF5B443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C4472697665725C6F6E65776972652E6300000000096F6E65776972652E6300000000BCA8E100FFFFFFFF56443A5C4769745C47697465615C6C616E7169616F6265695F35315F73747564795CC4A3B0E55CC0B6C7C5B1ADC8ABC4A3BFE9B2E2CAD4C0FDB3CC5C44533138423230CEC2B6C8C4A3BFE95C557365725C6D61696E2E6300000000066D61696E2E63000000009CC1B600FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD50001000000000000000200000057040000A70000007C08000093040000 @@ -134,7 +134,7 @@ 16 - 8C020000C5000000B808000089010000 + 57040000A7000000830A00006B010000 @@ -150,7 +150,7 @@ 0 16 - 03000000660000003D010000AF030000 + 03000000660000003D01000022040000 16 @@ -170,7 +170,7 @@ 0 16 - 03000000660000003D010000AF030000 + 03000000660000003D01000022040000 16 @@ -450,7 +450,7 @@ 0 16 - 03000000660000003D010000AF030000 + 03000000660000003D01000022040000 16 @@ -470,7 +470,7 @@ 0 16 - 03000000660000003D010000AF030000 + 03000000660000003D01000022040000 16 @@ -490,7 +490,7 @@ 0 16 - 00000000E00300006F07000090040000 + 00000000530400006905000003050000 16 @@ -530,7 +530,7 @@ 0 16 - 03000000E30300006C07000077040000 + 030000005604000066050000EA040000 16 @@ -1150,7 +1150,7 @@ 0 16 - 03000000660000003D010000AF030000 + 03000000660000003D01000022040000 16 @@ -1170,7 +1170,7 @@ 0 16 - 03000000E30300006C07000077040000 + 030000005604000066050000EA040000 16 @@ -1190,7 +1190,7 @@ 0 16 - 03000000E30300006C07000077040000 + 030000005604000066050000EA040000 16 @@ -1250,7 +1250,7 @@ 0 16 - 03000000E30300006C07000077040000 + 030000005604000066050000EA040000 16 @@ -1270,7 +1270,7 @@ 0 16 - 03000000E30300006C07000077040000 + 030000005604000066050000EA040000 16 @@ -1730,7 +1730,7 @@ 0 16 - 00000000900400006F070000A3040000 + 00000000030500006905000016050000 16 @@ -1799,14 +1799,14 @@ 3312 - 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFF44010000130100007007000017010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E6500200000000000008C020000C5000000B808000089010000440100004F00000070070000130100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF2C0600004F00000030060000FD020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000000000078070000C5000000B808000073030000300600004F00000070070000FD02000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF400100004F00000044010000C8030000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000048010000C5000000880200003E040000000000004F00000040010000C80300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000E902000070070000ED02000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB090000018000800000000000004801000063030000B80800003B04000000000000ED02000070070000C503000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFB8030000ED020000BC030000C503000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF00000000C80300006F070000CC030000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF01000077940000018000800000010000004801000042040000B70800000605000000000000CC0300006F070000900400000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFF44010000130100007007000017010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E65002000000000000057040000A7000000830A00006B010000440100004F00000070070000130100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF2C0600004F00000030060000FD020000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000000000043090000A7000000830A000055030000300600004F00000070070000FD02000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF400100004F000000440100003B040000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C4000000739400000180001000000100000013030000A70000005304000093040000000000004F000000400100003B0400000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000E902000070070000ED02000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB090000018000800000000000001303000045030000830A00001D04000000000000ED02000070070000C503000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFB8030000ED020000BC030000C503000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000003B040000690500003F040000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF010000779400000180008000000100000013030000970400007C0800005B050000000000003F04000069050000030500000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File 2537 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050FFFFFFFF0096000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000004000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE803000000000000000000000000000000000000000000000001000000010000009600000002002050FFFFFFFF0096000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000003002180C8880000000000001700000027264B696C6C20416C6C20427265616B706F696E747320696E2043757272656E7420546172676574000000000000000000000000010000000100000000000000000000000100000000002180E50100000000000078000000264B696C6C20416C6C20427265616B706F696E747320696E204163746976652050726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180E601000000000000790000002F4B696C6C20416C6C20427265616B706F696E747320696E204D756C74692D50726F6A65637420576F726B73706163650000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65C6030000 1423 @@ -1862,10 +1862,10 @@ 0 100 - 2 + 0 ..\Driver\Led.c - 17 + 14 1 22 1 @@ -1885,7 +1885,7 @@ ..\Driver\Key.c 17 1 - 14 + 12 1 0 @@ -1899,6 +1899,24 @@ 0 + + ..\Driver\onewire.c + 1 + 26 + 98 + 1 + + 0 + + + .\main.c + 21 + 19 + 64 + 1 + + 0 +