📄 pt100.lst
字号:
(0130)
(0131) if(0==number) u7_data|= 0x80;
02DA 20AA TST R10
02DB F421 BNE 0x02E0
02DC 2D82 MOV R24,R2
02DD 6880 ORI R24,0x80
02DE 93800060 STS u7_data,R24
(0132) if(1==number) u7_data|= 0x40;
02E0 2D8A MOV R24,R10
02E1 3081 CPI R24,1
02E2 F429 BNE 0x02E8
02E3 91800060 LDS R24,u7_data
02E5 6480 ORI R24,0x40
02E6 93800060 STS u7_data,R24
(0133) if(2==number) u7_data|= 0x20;
02E8 2D8A MOV R24,R10
02E9 3082 CPI R24,2
02EA F429 BNE 0x02F0
02EB 91800060 LDS R24,u7_data
02ED 6280 ORI R24,0x20
02EE 93800060 STS u7_data,R24
(0134) if(3==number) u7_data|= 0x10;
02F0 2D8A MOV R24,R10
02F1 3083 CPI R24,3
02F2 F429 BNE 0x02F8
02F3 91800060 LDS R24,u7_data
02F5 6180 ORI R24,0x10
02F6 93800060 STS u7_data,R24
(0135) if(4==number) u7_data|= 0x08;
02F8 2D8A MOV R24,R10
02F9 3084 CPI R24,4
02FA F429 BNE 0x0300
02FB 91800060 LDS R24,u7_data
02FD 6088 ORI R24,0x8
02FE 93800060 STS u7_data,R24
(0136) if(5==number) u7_data|= 0x04;
0300 2D8A MOV R24,R10
0301 3085 CPI R24,5
0302 F429 BNE 0x0308
0303 91800060 LDS R24,u7_data
0305 6084 ORI R24,4
0306 93800060 STS u7_data,R24
(0137) if(6==number) u7_data|= 0x02;
0308 2D8A MOV R24,R10
0309 3086 CPI R24,6
030A F429 BNE 0x0310
030B 91800060 LDS R24,u7_data
030D 6082 ORI R24,2
030E 93800060 STS u7_data,R24
(0138) if(7==number) u7_data|= 0x01;
0310 2D8A MOV R24,R10
0311 3087 CPI R24,7
0312 F429 BNE 0x0318
0313 91800060 LDS R24,u7_data
0315 6081 ORI R24,1
0316 93800060 STS u7_data,R24
(0139) if(8==number) u19_data|= 0x01;
0318 2D8A MOV R24,R10
0319 3088 CPI R24,0x8
031A F429 BNE 0x0320
031B 91800063 LDS R24,u19_data
031D 6081 ORI R24,1
031E 93800063 STS u19_data,R24
(0140) if(9==number) u19_data|= 0x02;
0320 2D8A MOV R24,R10
0321 3089 CPI R24,0x9
0322 F429 BNE 0x0328
0323 91800063 LDS R24,u19_data
0325 6082 ORI R24,2
0326 93800063 STS u19_data,R24
(0141)
(0142) U7(u7_data);
0328 91000060 LDS R16,u7_data
032A DF6E RCALL _U7
(0143) U19(u19_data);
032B 91000063 LDS R16,u19_data
032D DF8C RCALL _U19
(0144) }
032E C00D RJMP 0x033C
(0145) else{ //OFF
(0146) u7_data = 0;
032F 2422 CLR R2
0330 92200060 STS u7_data,R2
(0147) u19_data&=~0x03;
0332 91800063 LDS R24,u19_data
0334 7F8C ANDI R24,0xFC
0335 93800063 STS u19_data,R24
(0148) U7(u7_data);
0337 2D02 MOV R16,R2
0338 DF60 RCALL _U7
(0149) U19(u19_data);
0339 91000063 LDS R16,u19_data
033B DF7E RCALL _U19
(0150) }
033C 940E089A CALL pop_gset4x
033E 9508 RET
_TempHeatOnOff:
number --> R10
onoff --> R12
033F 940E08A3 CALL push_gset4x
0341 2EA2 MOV R10,R18
0342 2EC0 MOV R12,R16
(0151) }
(0152) /*************************************************************************************************************
(0153) * 函数名称 :TempRelayOnoff
(0154) * 功能描述 :
(0155) * 实际参数 :
(0156) * 返回值 :
(0157) * 说明 ://0--on 1-off
(0158) **************************************************************************************************************/
(0159) void TempHeatOnOff(unsigned char onoff,unsigned char number){
(0160) if (onoff){
0343 20CC TST R12
0344 F409 BNE 0x0346
0345 C056 RJMP 0x039C
(0161) if (0==number) u9_data&=~0x01;
0346 20AA TST R10
0347 F429 BNE 0x034D
0348 91800061 LDS R24,u9_data
034A 7F8E ANDI R24,0xFE
034B 93800061 STS u9_data,R24
(0162) if (1==number) u9_data&=~0x02;
034D 2D8A MOV R24,R10
034E 3081 CPI R24,1
034F F429 BNE 0x0355
0350 91800061 LDS R24,u9_data
0352 7F8D ANDI R24,0xFD
0353 93800061 STS u9_data,R24
(0163) if (2==number) u9_data&=~0x04;
0355 2D8A MOV R24,R10
0356 3082 CPI R24,2
0357 F429 BNE 0x035D
0358 91800061 LDS R24,u9_data
035A 7F8B ANDI R24,0xFB
035B 93800061 STS u9_data,R24
(0164) if (3==number) u9_data&=~0x08;
035D 2D8A MOV R24,R10
035E 3083 CPI R24,3
035F F429 BNE 0x0365
0360 91800061 LDS R24,u9_data
0362 7F87 ANDI R24,0xF7
0363 93800061 STS u9_data,R24
(0165) if (4==number) u9_data&=~0x10;
0365 2D8A MOV R24,R10
0366 3084 CPI R24,4
0367 F429 BNE 0x036D
0368 91800061 LDS R24,u9_data
036A 7E8F ANDI R24,0xEF
036B 93800061 STS u9_data,R24
(0166) if (5==number) u9_data&=~0x20;
036D 2D8A MOV R24,R10
036E 3085 CPI R24,5
036F F429 BNE 0x0375
0370 91800061 LDS R24,u9_data
0372 7D8F ANDI R24,0xDF
0373 93800061 STS u9_data,R24
(0167) if (6==number) u9_data&=~0x40;
0375 2D8A MOV R24,R10
0376 3086 CPI R24,6
0377 F429 BNE 0x037D
0378 91800061 LDS R24,u9_data
037A 7B8F ANDI R24,0xBF
037B 93800061 STS u9_data,R24
(0168) if (7==number) u9_data&=~0x80;
037D 2D8A MOV R24,R10
037E 3087 CPI R24,7
037F F429 BNE 0x0385
0380 91800061 LDS R24,u9_data
0382 778F ANDI R24,0x7F
0383 93800061 STS u9_data,R24
(0169) if (8==number) u19_data&=~0x04;
0385 2D8A MOV R24,R10
0386 3088 CPI R24,0x8
0387 F429 BNE 0x038D
0388 91800063 LDS R24,u19_data
038A 7F8B ANDI R24,0xFB
038B 93800063 STS u19_data,R24
(0170) if (9==number) u19_data&=~0x08;
038D 2D8A MOV R24,R10
038E 3089 CPI R24,0x9
038F F429 BNE 0x0395
0390 91800063 LDS R24,u19_data
0392 7F87 ANDI R24,0xF7
0393 93800063 STS u19_data,R24
(0171)
(0172) U9(u9_data);
0395 91000061 LDS R16,u9_data
0397 DF17 RCALL _U9
(0173) U19(u19_data);
0398 91000063 LDS R16,u19_data
039A DF1F RCALL _U19
(0174) }
039B C055 RJMP 0x03F1
(0175) else{
(0176) if (0==number) u9_data|=0x01;
039C 20AA TST R10
039D F429 BNE 0x03A3
039E 91800061 LDS R24,u9_data
03A0 6081 ORI R24,1
03A1 93800061 STS u9_data,R24
(0177) if (1==number) u9_data|=0x02;
03A3 2D8A MOV R24,R10
03A4 3081 CPI R24,1
03A5 F429 BNE 0x03AB
03A6 91800061 LDS R24,u9_data
03A8 6082 ORI R24,2
03A9 93800061 STS u9_data,R24
(0178) if (2==number) u9_data|=0x04;
03AB 2D8A MOV R24,R10
03AC 3082 CPI R24,2
03AD F429 BNE 0x03B3
03AE 91800061 LDS R24,u9_data
03B0 6084 ORI R24,4
03B1 93800061 STS u9_data,R24
(0179) if (3==number) u9_data|=0x08;
03B3 2D8A MOV R24,R10
03B4 3083 CPI R24,3
03B5 F429 BNE 0x03BB
03B6 91800061 LDS R24,u9_data
03B8 6088 ORI R24,0x8
03B9 93800061 STS u9_data,R24
(0180) if (4==number) u9_data|=0x10;
03BB 2D8A MOV R24,R10
03BC 3084 CPI R24,4
03BD F429 BNE 0x03C3
03BE 91800061 LDS R24,u9_data
03C0 6180 ORI R24,0x10
03C1 93800061 STS u9_data,R24
(0181) if (5==number) u9_data|=0x20;
03C3 2D8A MOV R24,R10
03C4 3085 CPI R24,5
03C5 F429 BNE 0x03CB
03C6 91800061 LDS R24,u9_data
03C8 6280 ORI R24,0x20
03C9 93800061 STS u9_data,R24
(0182) if (6==number) u9_data|=0x40;
03CB 2D8A MOV R24,R10
03CC 3086 CPI R24,6
03CD F429 BNE 0x03D3
03CE 91800061 LDS R24,u9_data
03D0 6480 ORI R24,0x40
03D1 93800061 STS u9_data,R24
(0183) if (7==number) u9_data|=0x80;
03D3 2D8A MOV R24,R10
03D4 3087 CPI R24,7
03D5 F429 BNE 0x03DB
03D6 91800061 LDS R24,u9_data
03D8 6880 ORI R24,0x80
03D9 93800061 STS u9_data,R24
(0184) if (8==number) u19_data|=0x04;
03DB 2D8A MOV R24,R10
03DC 3088 CPI R24,0x8
03DD F429 BNE 0x03E3
03DE 91800063 LDS R24,u19_data
03E0 6084 ORI R24,4
03E1 93800063 STS u19_data,R24
(0185) if (9==number) u19_data|=0x08;
03E3 2D8A MOV R24,R10
03E4 3089 CPI R24,0x9
03E5 F429 BNE 0x03EB
03E6 91800063 LDS R24,u19_data
03E8 6088 ORI R24,0x8
03E9 93800063 STS u19_data,R24
(0186)
(0187) U9(u9_data);
03EB 91000061 LDS R16,u9_data
03ED DEC1 RCALL _U9
(0188) U19(u19_data);
03EE 91000063 LDS R16,u19_data
03F0 DEC9 RCALL _U19
(0189)
(0190) }
03F1 940E089A CALL pop_gset4x
03F3 9508 RET
(0191)
(0192)
(0193) }
(0194)
(0195)
(0196) /*************************************************************************************************************
(0197) * 函数名称 :delay_1ms
(0198) * 功能描述 :不是1ms的延时
(0199) * 实际参数 :
(0200) * 返回值 :
(0201) * 说明 :
(0202) *************************************************************************************************************/
(0203) void delay_1ms (void)
(0204) {
(0205) unsigned int i;
(0206) for (i=1;i<1140;i++)
_delay_1ms:
i --> R16
03F4 E001 LDI R16,1
03F5 E010 LDI R17,0
03F6 C002 RJMP 0x03F9
03F7 5F0F SUBI R16,0xFF
03F8 4F1F SBCI R17,0xFF
03F9 3704 CPI R16,0x74
03FA E0E4 LDI R30,4
03FB 071E CPC R17,R30
03FC F3D0 BCS 0x03F7
03FD 9508 RET
_delay:
i --> R10
n --> R12
03FE 940E08A3 CALL push_gset4x
0400 0168 MOVW R12,R16
(0207) ;
(0208) }
(0209) /*************************************************************************************************************
(0210) * 函数名称 :delay
(0211) * 功能描述 :
(0212) * 实际参数 :
(0213) * 返回值 :
(0214) * 说明 :
(0215) *************************************************************************************************************/
(0216) void delay (unsigned int n)
(0217) {
(0218) unsigned int i=0;
0401 24AA CLR R10
0402 24BB CLR R11
0403 C004 RJMP 0x0408
(0219) while (i<n)
(0220) {
(0221) delay_1ms();
0404 DFEF RCALL _delay_1ms
(0222) i++;
0405 01C5 MOVW R24,R10
0406 9601 ADIW R24,1
0407 015C MOVW R10,R24
0408 14AC CP R10,R12
0409 04BD CPC R11,R13
040A F3C8 BCS 0x0404
040B 940E089A CALL pop_gset4x
040D 9508 RET
(0223) }
(0224) }
(0225)
(0226)
(0227) /*************************************************************************************************************
(0228) * 函数名称 :TempDelay
(0229) * 功能描述 :有关温度的延时
(0230) * 实际参数 :
(0231) * 返回值 :
(0232) * 说明 :
(0233) *************************************************************************************************************/
(0234) void TempDelay (void){
(0235) asm("nop");
_TempDelay:
040E 0000 NOP
(0236) asm("nop");
040F 0000 NOP
(0237) asm("nop");
0410 0000 NOP
(0238) asm("nop");
0411 0000 NOP
(0239) asm("nop");
0412 0000 NOP
(0240) asm("nop");
0413 0000 NOP
(0241) asm("nop");
0414 0000 NOP
(0242) asm("nop");
0415 0000 NOP
(0243) asm("nop");
0416 0000 NOP
(0244) asm("nop");
0417 0000 NOP
(0245) asm("nop");
0418 0000 NOP
(0246) asm("nop");
0419 0000 NOP
(0247) asm("nop");
041A 0000 NOP
(0248) asm("nop");
041B 0000 NOP
(0249) asm("nop");
041C 0000 NOP
(0250) asm("nop");
041D 0000 NOP
041E 9508 RET
_TempRead6675Dat:
tmp --> R10
i --> R12
041F 940E08A3 CALL push_gset4x
(0251) }
(0252)
(0253)
(0254)
(0255) /*************************************************************************************************************
(0256) * 函数名称 :TempRead6675Dat
(0257) * 功能描述 :读取温度
(0258) * 实际参数 :
(0259) * 返回值 :
(0260) * 说明 :
(0261) *************************************************************************************************************/
(0262) unsigned int TempRead6675Dat(void)
(0263) {
(0264) unsigned char i;
(0265) unsigned int tmp=0;
0421 24AA CLR R10
0422 24BB CLR R11
(0266)
(0267) CLRSCK;
0423 98DA CBI 0x1B,2
(0268)
(0269) for(i=0;i<15;i++)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -