⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 atp.lst

📁 ATmega128和ads7864实现ATP闭环控制
💻 LST
📖 第 1 页 / 共 5 页
字号:
    01E5 8820      LDD	R2,Z+16
    01E6 8831      LDD	R3,Z+17
    01E7 8842      LDD	R4,Z+18
    01E8 8853      LDD	R5,Z+19
    01E9 1542      CP	R20,R2
    01EA 0553      CPC	R21,R3
    01EB 0564      CPC	R22,R4
    01EC 0575      CPC	R23,R5
    01ED F408      BCC	0x01EF
    01EE C02A      RJMP	0x0219
(0060) 	
(0061) 	HEX2BCD(ulFX,ucFX);
    01EF 01CE      MOVW	R24,R28
    01F0 9602      ADIW	R24,2
    01F1 8399      STD	Y+1,R25
    01F2 8388      STD	Y+0,R24
    01F3 01FE      MOVW	R30,R28
    01F4 8504      LDD	R16,Z+12
    01F5 8515      LDD	R17,Z+13
    01F6 8526      LDD	R18,Z+14
    01F7 8537      LDD	R19,Z+15
    01F8 DEA0      RCALL	_HEX2BCD
(0062) 	HEX2BCD(ulFY,ucFY);
    01F9 01CE      MOVW	R24,R28
    01FA 9605      ADIW	R24,5
    01FB 8399      STD	Y+1,R25
    01FC 8388      STD	Y+0,R24
    01FD 01FE      MOVW	R30,R28
    01FE 8900      LDD	R16,Z+16
    01FF 8911      LDD	R17,Z+17
    0200 8922      LDD	R18,Z+18
    0201 8933      LDD	R19,Z+19
    0202 DE96      RCALL	_HEX2BCD
(0063) 
(0064) 
(0065) 	
(0066) 
(0067) 
(0068) 	DISABLEXOUT;
    0203 981F      CBI	0x03,7
(0069) 	DISABLEYOUT;
    0204 981E      CBI	0x03,6
(0070) 
(0071) 	SPISend(ucFX[0]);
    0205 810A      LDD	R16,Y+2
    0206 940E0F58  CALL	_SPISend
(0072) 	SPISend(ucFX[1]);
    0208 810B      LDD	R16,Y+3
    0209 940E0F58  CALL	_SPISend
(0073) 	SPISend(ucFX[2]);
    020B 810C      LDD	R16,Y+4
    020C 940E0F58  CALL	_SPISend
(0074) 	SPISend(ucFY[0]);
    020E 810D      LDD	R16,Y+5
    020F 940E0F58  CALL	_SPISend
(0075) 	SPISend(ucFY[1]);
    0211 810E      LDD	R16,Y+6
    0212 940E0F58  CALL	_SPISend
(0076) 	SPISend(ucFY[2]);
    0214 810F      LDD	R16,Y+7
    0215 940E0F58  CALL	_SPISend
(0077) 
(0078) 	ENABLEXOUT;
    0217 9A1F      SBI	0x03,7
(0079) 	ENABLEYOUT;
    0218 9A1E      SBI	0x03,6
    0219 9628      ADIW	R28,0x8
    021A 940E1389  CALL	pop_gset2
    021C 9624      ADIW	R28,4
    021D 9508      RET
(0080) }
(0081) 
(0082) 
(0083) void OutputFrequency1(void)
(0084) {
(0085) 	
(0086) 	DISABLEXOUT;
_OutputFrequency1:
    021E 981F      CBI	0x03,7
(0087) 	DISABLEYOUT;
    021F 981E      CBI	0x03,6
(0088) 
(0089) 	SPISend(0x06);
    0220 E006      LDI	R16,6
    0221 940E0F58  CALL	_SPISend
(0090) 	SPISend(0x10);
    0223 E100      LDI	R16,0x10
    0224 940E0F58  CALL	_SPISend
(0091) 	SPISend(0);
    0226 2700      CLR	R16
    0227 940E0F58  CALL	_SPISend
(0092) 	SPISend(0);
    0229 2700      CLR	R16
    022A 940E0F58  CALL	_SPISend
(0093) 	SPISend(0);
    022C 2700      CLR	R16
    022D 940E0F58  CALL	_SPISend
(0094) 	SPISend(0);
    022F 2700      CLR	R16
    0230 940E0F58  CALL	_SPISend
(0095) 
(0096) 	ENABLEXOUT;
    0232 9A1F      SBI	0x03,7
(0097) 	ENABLEYOUT;
    0233 9A1E      SBI	0x03,6
    0234 9508      RET
(0098) }
(0099) 
(0100) void OutputFrequency2(void)
(0101) {
(0102) 
(0103) 	DISABLEXOUT;
_OutputFrequency2:
    0235 981F      CBI	0x03,7
(0104) 	DISABLEYOUT;
    0236 981E      CBI	0x03,6
(0105) 
(0106) 	SPISend(0x07);
    0237 E007      LDI	R16,7
    0238 940E0F58  CALL	_SPISend
(0107) 	SPISend(0x00);
    023A 2700      CLR	R16
    023B 940E0F58  CALL	_SPISend
(0108) 	SPISend(0x00);
    023D 2700      CLR	R16
    023E 940E0F58  CALL	_SPISend
(0109) 	SPISend(0);
    0240 2700      CLR	R16
    0241 940E0F58  CALL	_SPISend
(0110) 	SPISend(0);
    0243 2700      CLR	R16
    0244 940E0F58  CALL	_SPISend
(0111) 	SPISend(0);
    0246 2700      CLR	R16
    0247 940E0F58  CALL	_SPISend
(0112) 
(0113) 	ENABLEXOUT;
    0249 9A1F      SBI	0x03,7
(0114) 	ENABLEYOUT;
    024A 9A1E      SBI	0x03,6
    024B 9508      RET
_OutputFrequency3:
  ucFX                 --> R20
    024C 940E139D  CALL	push_gset1
    024E 2F40      MOV	R20,R16
(0115) }
(0116) 
(0117) 
(0118) 
(0119) 
(0120) 
(0121) void OutputFrequency3(u8 ucFX)
(0122) {
(0123) 	DISABLEXOUT;
    024F 981F      CBI	0x03,7
(0124) 	DISABLEYOUT;
    0250 981E      CBI	0x03,6
(0125) 
(0126) 	SPISend(0x06);
    0251 E006      LDI	R16,6
    0252 940E0F58  CALL	_SPISend
(0127) 	SPISend(ucFX);
    0254 2F04      MOV	R16,R20
    0255 940E0F58  CALL	_SPISend
(0128) 	SPISend(0);
    0257 2700      CLR	R16
    0258 940E0F58  CALL	_SPISend
(0129) 	SPISend(0);
    025A 2700      CLR	R16
    025B 940E0F58  CALL	_SPISend
(0130) 	SPISend(0);
    025D 2700      CLR	R16
    025E 940E0F58  CALL	_SPISend
(0131) 	SPISend(0);
    0260 2700      CLR	R16
    0261 940E0F58  CALL	_SPISend
(0132) 
(0133) 	ENABLEXOUT;
    0263 9A1F      SBI	0x03,7
(0134) 	ENABLEYOUT;
    0264 9A1E      SBI	0x03,6
    0265 940E13A0  CALL	pop_gset1
    0267 9508      RET
_ulGetFrequency:
  ulNextF              --> Y+8
  dNowF                --> Y+4
  dNextF               --> Y+0
  dNowRad2             --> Y+28
  ulNowF               --> Y+24
    0268 940E12CB  CALL	push_arg4
    026A 940E139B  CALL	push_gset2
    026C 9764      SBIW	R28,0x14
(0135) }
(0136) 
(0137) 
(0138) u32 ulGetFrequency(u32 ulNowF,double dNowRad2)
(0139) {
(0140) 	double dNowF,dNextF;
(0141) 	u32 ulNextF;
(0142) 	
(0143) 	dNowF=((double)ulNowF)/(double)1000000;
    026D EB04      LDI	R16,0xB4
    026E E010      LDI	R17,0
    026F 940E13E2  CALL	lpm32
    0271 933A      ST	R19,-Y
    0272 932A      ST	R18,-Y
    0273 931A      ST	R17,-Y
    0274 930A      ST	R16,-Y
    0275 01FE      MOVW	R30,R28
    0276 8C24      LDD	R2,Z+28
    0277 8C35      LDD	R3,Z+29
    0278 8C46      LDD	R4,Z+30
    0279 8C57      LDD	R5,Z+31
    027A 9456      LSR	R5
    027B 9447      ROR	R4
    027C 9437      ROR	R3
    027D 9427      ROR	R2
    027E 0181      MOVW	R16,R2
    027F 0192      MOVW	R18,R4
    0280 940E1450  CALL	long2fp
    0282 933A      ST	R19,-Y
    0283 932A      ST	R18,-Y
    0284 931A      ST	R17,-Y
    0285 930A      ST	R16,-Y
    0286 940E1593  CALL	empy32fs
    0288 E041      LDI	R20,1
    0289 E050      LDI	R21,0
    028A E060      LDI	R22,0
    028B E070      LDI	R23,0
    028C 01FE      MOVW	R30,R28
    028D 8C24      LDD	R2,Z+28
    028E 8C35      LDD	R3,Z+29
    028F 8C46      LDD	R4,Z+30
    0290 8C57      LDD	R5,Z+31
    0291 2224      AND	R2,R20
    0292 2235      AND	R3,R21
    0293 2246      AND	R4,R22
    0294 2257      AND	R5,R23
    0295 0181      MOVW	R16,R2
    0296 0192      MOVW	R18,R4
    0297 940E1450  CALL	long2fp
    0299 933A      ST	R19,-Y
    029A 932A      ST	R18,-Y
    029B 931A      ST	R17,-Y
    029C 930A      ST	R16,-Y
    029D 940E14A4  CALL	add32fs
    029F EB00      LDI	R16,0xB0
    02A0 E010      LDI	R17,0
    02A1 940E13E2  CALL	lpm32
    02A3 933A      ST	R19,-Y
    02A4 932A      ST	R18,-Y
    02A5 931A      ST	R17,-Y
    02A6 930A      ST	R16,-Y
    02A7 940E1508  CALL	div32f
    02A9 01FE      MOVW	R30,R28
    02AA 8304      STD	Z+4,R16
    02AB 8315      STD	Z+5,R17
    02AC 8326      STD	Z+6,R18
    02AD 8337      STD	Z+7,R19
(0144) 
(0145) 	dNextF=-1-xishuA*dNowF-xishuB*dNowRad2;
    02AE EA0C      LDI	R16,0xAC
    02AF E010      LDI	R17,0
    02B0 940E13E2  CALL	lpm32
    02B2 933A      ST	R19,-Y
    02B3 932A      ST	R18,-Y
    02B4 931A      ST	R17,-Y
    02B5 930A      ST	R16,-Y
    02B6 EA08      LDI	R16,0xA8
    02B7 E010      LDI	R17,0
    02B8 940E13E2  CALL	lpm32
    02BA 933A      ST	R19,-Y
    02BB 932A      ST	R18,-Y
    02BC 931A      ST	R17,-Y
    02BD 930A      ST	R16,-Y
    02BE 01FE      MOVW	R30,R28
    02BF 8424      LDD	R2,Z+12
    02C0 8435      LDD	R3,Z+13
    02C1 8446      LDD	R4,Z+14
    02C2 8457      LDD	R5,Z+15
    02C3 925A      ST	R5,-Y
    02C4 924A      ST	R4,-Y
    02C5 923A      ST	R3,-Y
    02C6 922A      ST	R2,-Y
    02C7 940E1593  CALL	empy32fs
    02C9 940E14AC  CALL	sub32fs
    02CB EA04      LDI	R16,0xA4
    02CC E010      LDI	R17,0
    02CD 940E13E2  CALL	lpm32
    02CF 933A      ST	R19,-Y
    02D0 932A      ST	R18,-Y
    02D1 931A      ST	R17,-Y
    02D2 930A      ST	R16,-Y
    02D3 01FE      MOVW	R30,R28
    02D4 A024      LDD	R2,Z+36
    02D5 A035      LDD	R3,Z+37
    02D6 A046      LDD	R4,Z+38
    02D7 A057      LDD	R5,Z+39
    02D8 925A      ST	R5,-Y
    02D9 924A      ST	R4,-Y
    02DA 923A      ST	R3,-Y
    02DB 922A      ST	R2,-Y
    02DC 940E1593  CALL	empy32fs
    02DE 940E14AF  CALL	sub32f
    02E0 01FE      MOVW	R30,R28
    02E1 8300      STD	Z+0,R16
    02E2 8311      STD	Z+1,R17
    02E3 8322      STD	Z+2,R18
    02E4 8333      STD	Z+3,R19
(0146) 	dNextF=dNextF/xishuC;
    02E5 01FE      MOVW	R30,R28
    02E6 8020      LDD	R2,Z+0
    02E7 8031      LDD	R3,Z+1
    02E8 8042      LDD	R4,Z+2
    02E9 8053      LDD	R5,Z+3
    02EA 925A      ST	R5,-Y
    02EB 924A      ST	R4,-Y
    02EC 923A      ST	R3,-Y
    02ED 922A      ST	R2,-Y
    02EE EA00      LDI	R16,0xA0
    02EF E010      LDI	R17,0
    02F0 940E13E2  CALL	lpm32
    02F2 933A      ST	R19,-Y
    02F3 932A      ST	R18,-Y
    02F4 931A      ST	R17,-Y
    02F5 930A      ST	R16,-Y
    02F6 940E1508  CALL	div32f
    02F8 01FE      MOVW	R30,R28
    02F9 8300      STD	Z+0,R16
    02FA 8311      STD	Z+1,R17
    02FB 8322      STD	Z+2,R18
    02FC 8333      STD	Z+3,R19
(0147) 	
(0148) 	ulNextF=dNextF*1000000;
    02FD EB00      LDI	R16,0xB0
    02FE E010      LDI	R17,0
    02FF 940E13E2  CALL	lpm32
    0301 933A      ST	R19,-Y
    0302 932A      ST	R18,-Y
    0303 931A      ST	R17,-Y
    0304 930A      ST	R16,-Y
    0305 01FE      MOVW	R30,R28
    0306 8024      LDD	R2,Z+4
    0307 8035      LDD	R3,Z+5
    0308 8046      LDD	R4,Z+6
    0309 8057      LDD	R5,Z+7
    030A 925A      ST	R5,-Y
    030B 924A      ST	R4,-Y
    030C 923A      ST	R3,-Y
    030D 922A      ST	R2,-Y
    030E 940E1596  CALL	empy32f
    0310 01FE      MOVW	R30,R28
    0311 8B00      STD	Z+16,R16
    0312 8B11      STD	Z+17,R17
    0313 8B22      STD	Z+18,R18
    0314 8B33      STD	Z+19,R19
    0315 01FE      MOVW	R30,R28
    0316 8820      LDD	R2,Z+16
    0317 8831      LDD	R3,Z+17
    0318 8842      LDD	R4,Z+18
    0319 8853      LDD	R5,Z+19
    031A 925A      ST	R5,-Y
    031B 924A      ST	R4,-Y
    031C 923A      ST	R3,-Y
    031D 922A      ST	R2,-Y
    031E E90C      LDI	R16,0x9C
    031F E010      LDI	R17,0
    0320 940E13E2  CALL	lpm32
    0322 933A      ST	R19,-Y
    0323 932A      ST	R18,-Y
    0324 931A      ST	R17,-Y
    0325 930A      ST	R16,-Y
    0326 940E1562  CALL	cmp32f
    0328 F12C      BLT	0x034E
    0329 01FE      MOVW	R30,R28
    032A 8820      LDD	R2,Z+16
    032B 8831      LDD	R3,Z+17
    032C 8842      LDD	R4,Z+18
    032D 8853      LDD	R5,Z+19
    032E 925A      ST	R5,-Y
    032F 924A      ST	R4,-Y
    0330 923A      ST	R3,-Y
    0331 922A      ST	R2,-Y
    0332 E90C      LDI	R16,0x9C
    0333 E010      LDI	R17,0
    0334 940E13E2  CALL	lpm32
    0336 933A      ST	R19,-Y
    0337 932A      ST	R18,-Y
    0338 931A      ST	R17,-Y
    0339 930A      ST	R16,-Y
    033A 940E14AF  CALL	sub32f
    033C 940E1410  CALL	fp2long
    033E 0118      MOVW	R2,R16
    033F 0129      MOVW	R4,R18
    0340 E040      LDI	R20,0
    0341 E050      LDI	R21,0
    0342 E060      LDI	R22,0
    0343 E870      LDI	R23,0x80
    0344 0E24      ADD	R2,R20
    0345 1E35      ADC	R3,R21
    0346 1E46      ADC	R4,R22
    0347 1E57      ADC	R5,R23
    0348 01FE      MOVW	R30,R28
    0349 8624      STD	Z+12,R2
    034A 8635      STD	Z+13,R3
    034B 8646      STD	Z+14,R4
    034C 8657      STD	Z+15,R5
    034D C00C      RJMP	0x035A
    034E 01FE      MOVW	R30,R28
    034F 8900      LDD	R16,Z+16
    0350 8911      LDD	R17,Z+17
    0351 8922      LDD	R18,Z+18
    0352 8933      LDD	R19,Z+19
    0353 940E1410  CALL	fp2long
    0355 01FE      MOVW	R30,R28
    0356 8704      STD	Z+12,R16
    0357 8715      STD	Z+13,R17
    0358 8726      STD	Z+14,R18
    0359 8737      STD	Z+15,R19
    035A 01FE      MOVW	R30,R28
    035B 8424      LDD	R2,Z+12
    035C 8435      LDD	R3,Z+13
    035D 8446      LDD	R4,Z+14
    035E 8457      LDD	R5,Z+15
    035F 01FE      MOVW	R30,R28
    0360 8620      STD	Z+8,R2
    0361 8631      STD	Z+9,R3
    0362 8642      STD	Z+10,R4
    0363 8653      STD	Z+11,R5
(0149) 	return ulNextF;
    0364 01FE      MOVW	R30,R28
    0365 8500      LDD	R16,Z+8
    0366 8511      LDD	R17,Z+9
    0367 8522      LDD	R18,Z+10
    0368 8533      LDD	R19,Z+11
    0369 9664      ADIW	R28,0x14
    036A 940E1389  CALL	pop_gset2
    036C 9624      ADIW	R28,4

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -