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

📄 atmega32.lst

📁 这是AVR单片机上能跑的嵌入式操作系统salvo
💻 LST
📖 第 1 页 / 共 4 页
字号:
(0036)     }
(0037) }
(0038) 
(0039) 
(0040) #elif defined(SYSE)
(0041) 
(0042) #pragma interrupt ISRHigh save=PROD,section(".tmpdata")
(0043) 
(0044) void ISRHigh( void )
(0045) {
(0046) 	if ( INTCONbits.TMR0IE && INTCONbits.TMR0IF ) {
(0047) 		INTCONbits.TMR0IF = 0;
(0048) 		TMR0 -= TMR0_RELOAD;
(0049) 		
(0050) 		OSTimer();
(0051) 	}
(0052) }
(0053) 
(0054) #pragma code IntVectorHigh = 0x08
(0055) void IntVectorHigh( void )
(0056) { 	
(0057) 	_asm
(0058) 	goto	ISRHigh
(0059) 	_endasm
(0060) }
(0061) 
(0062) 
(0063) 
(0064) #elif defined(SYSI)
(0065) 
(0066) /* Reload values for Timer0 - 5msec interrupts for Oscillator at 11.0592 MHz */
(0067) /* This code courtesy Michael Stepanov.                                      */
(0068) #define TIMER_H   					238 /* TH0 reload value                  */
(0069) #define TIMER_L						0   /* TL0 reload value                  */
(0070) 
(0071) 
(0072) void timer0 (void) interrupt 1 using 2
(0073) {
(0074) 	/* stop, reload and start timer. */
(0075) 	TR0 =       0;
(0076) 	TH0 = TIMER_H;
(0077) 	TL0 = TIMER_L;
(0078) 	TR0 =       1;
(0079) 	
(0080) 	OSTimer();
(0081) }
(0082) 
(0083) 
(0084) #elif defined(SYSL)
(0085) 
(0086) ROM_VECTOR(NMI,  IntVector);
(0087) ROM_VECTOR(INT1, IntVector);
(0088) ROM_VECTOR(INT2, IntVector);
(0089) ROM_VECTOR(INT3, IntVector);
(0090) ROM_VECTOR(INT4, IntVector);
(0091) ROM_VECTOR(INT5, IntVector);
(0092) ROM_VECTOR(INT6, IntVector);
(0093) ROM_VECTOR(INT7, IntVector);
(0094) 
(0095) #pragma interrupt_level 1
(0096) void fast interrupt IntVector( void )
(0097) {
(0098) 	OSTimer();
(0099) }
(0100) 
(0101) 
(0102) 
(0103) #elif defined(SYSM)
(0104) 
(0105) ROM_VECTOR(0x0B, timer0);
(0106) 
(0107) interrupt void timer0 ( void)
(0108) {
(0109) 	OSTimer();
(0110) }
(0111) 
(0112) 
(0113) #elif defined(SYSQ) || defined(SYSR) || defined(SYSS) || defined (SYSX) \
(0114)  ||   defined(SYSAB) /* MSP430 */
(0115) 
(0116) #if   defined(SYSQ)
(0117) #if (__VER__ < 200)
(0118) interrupt[TIMERA0_VECTOR] void Timer_A (void)
(0119) #else
(0120) #pragma vector=TIMERA0_VECTOR
(0121) __interrupt void Timer_A (void)
(0122) #endif
(0123) #elif defined(SYSR)
(0124) interrupt[TIMERA0_VECTOR] void Timer_A (void)
(0125) #elif defined(SYSS)
(0126) #pragma interrupt_handler Timer_A:TIMERA0_VECTOR
(0127) void Timer_A (void)
(0128) #elif defined(SYSX)
(0129) void Timer_A (void) __interrupt[TIMERA0_VECTOR]
(0130) #elif defined(SYSAB)
(0131) void interrupt Timer_A (void) @ TIMER_A_CC0_VCTR
(0132) #endif
(0133) {
(0134) 	TACCR0 += 10000;
(0135)     OSTimer(); 
(0136) }                      
(0137) 
(0138) 
(0139) #elif defined(SYST) /* M68HC11 */ 
(0140) 
(0141) #pragma interrupt_handler intVector
(0142) 
(0143) void intVector ( void )
(0144) {
(0145) 	/* clear RTIF */
(0146) 	TFLG2 |= 0b01000000;
(0147) 	
(0148)     OSTimer(); 
(0149) }                      
(0150) 
(0151) 
(0152) #pragma abs_address:0x00EB	   /* RTI BUFFALO 3.4 EVB11  */
(0153) 
(0154) 	asm(" jmp _intVector");	   
(0155) 
(0156) #pragma end_abs_address
(0157) 
(0158) 
(0159) #elif defined(SYSU) /* Z8 Encore */
(0160) 
(0161) #pragma interrupt
(0162) void IntVector(void) 
(0163) {	
(0164)     OSTimer(); 
(0165) }
(0166) 
(0167) 
(0168) #elif defined(SYSV) /* AVR + ICCAVR */
(0169) 
(0170) #pragma interrupt_handler IntVector:iv_TIMER0_OVF IntVector:iv_TIMER0_COMP
(0171) 
(0172) void IntVector(void) 
(0173) {	
(0174)     OSTimer(); 
FILE: <library>
    027B 940E02AF  CALL	_OSTimer
    027D 940E0567  CALL	pop_lset
    027F 9518      RETI
_OSDispatch:
    0280 93C000DA  STS	0xDA,R28
    0282 93D000DB  STS	0xDB,R29
    0284 91E000B6  LDS	R30,RS485_status+1
    0286 91F000B7  LDS	R31,RS485_status+2
    0288 8181      LDD	R24,Z+1
    0289 7090      ANDI	R25,0
    028A 1BC8      SUB	R28,R24
    028B 0BD9      SBC	R29,R25
    028C 81A2      LDD	R26,Z+2
    028D 81B3      LDD	R27,Z+3
    028E 2FEA      MOV	R30,R26
    028F 2FFB      MOV	R31,R27
    0290 C2B6      RJMP	xicall
_OSCtxSw:
    0291 B60F      IN	R0,0x3F
    0292 920A      ST	R0,-Y
    0293 94F8      BCLR	7
    0294 91E000B6  LDS	R30,RS485_status+1
    0296 91F000B7  LDS	R31,RS485_status+2
    0298 8302      STD	Z+2,R16
    0299 8313      STD	Z+3,R17
    029A 918000DA  LDS	R24,0xDA
    029C 919000DB  LDS	R25,0xDB
    029E 1B8C      SUB	R24,R28
    029F 0B9D      SBC	R25,R29
    02A0 3081      CPI	R24,1
    02A1 F029      BEQ	0x02A7
    02A2 0FC8      ADD	R28,R24
    02A3 1FD9      ADC	R29,R25
    02A4 920A      ST	R0,-Y
    02A5 958A      DEC	R24
    02A6 8381      STD	Z+1,R24
    02A7 B78D      IN	R24,0x3D
    02A8 B79E      IN	R25,0x3E
    02A9 9602      ADIW	R24,2
    02AA BF8D      OUT	0x3D,R24
    02AB BF9E      OUT	0x3E,R25
    02AC 9009      LD	R0,Y+
    02AD BE0F      OUT	0x3F,R0
    02AE 9508      RET
_OSTimer:
    02AF 918000D9  LDS	R24,0xD9
    02B1 3F8F      CPI	R24,0xFF
    02B2 F420      BCC	0x02B7
    02B3 5F8F      SUBI	R24,0xFF
    02B4 938000D9  STS	0xD9,R24
    02B6 C002      RJMP	0x02B9
    02B7 E001      LDI	R16,1
    02B8 C001      RJMP	0x02BA
    02B9 2700      CLR	R16
    02BA 9508      RET
_OSSched:
    02BB B60F      IN	R0,0x3F
    02BC 94F8      BCLR	7
    02BD 920A      ST	R0,-Y
    02BE 95A8      WDR
    02BF C036      RJMP	0x02F6
    02C0 902000D5  LDS	R2,0xD5
    02C2 903000D6  LDS	R3,0xD6
    02C4 923000B7  STS	RS485_status+2,R3
    02C6 922000B6  STS	RS485_status+1,R2
    02C8 918000B6  LDS	R24,RS485_status+1
    02CA 919000B7  LDS	R25,RS485_status+2
    02CC 9604      ADIW	R24,4
    02CD 2FE8      MOV	R30,R24
    02CE 2FF9      MOV	R31,R25
    02CF 8040      LDD	R4,Z+0
    02D0 8051      LDD	R5,Z+1
    02D1 925000D6  STS	0xD6,R5
    02D3 924000D5  STS	0xD5,R4
    02D5 2444      CLR	R4
    02D6 2455      CLR	R5
    02D7 8251      STD	Z+1,R5
    02D8 8240      STD	Z+0,R4
    02D9 91E000B6  LDS	R30,RS485_status+1
    02DB 91F000B7  LDS	R31,RS485_status+2
    02DD 8180      LDD	R24,Z+0
    02DE 788F      ANDI	R24,0x8F
    02DF 6580      ORI	R24,0x50
    02E0 8380      STD	Z+0,R24
    02E1 EC2D      LDI	R18,0xCD
    02E2 E030      LDI	R19,0
    02E3 2F0E      MOV	R16,R30
    02E4 2F1F      MOV	R17,R31
    02E5 D09F      RCALL	_OSInsPrioQ
    02E6 902000D5  LDS	R2,0xD5
    02E8 903000D6  LDS	R3,0xD6
    02EA 2022      TST	R2
    02EB F441      BNE	0x02F4
    02EC 2033      TST	R3
    02ED F431      BNE	0x02F4
    02EE 2422      CLR	R2
    02EF 2433      CLR	R3
    02F0 923000D4  STS	0xD4,R3
    02F2 922000D3  STS	0xD3,R2
    02F4 9478      BSET	7
    02F5 94F8      BCLR	7
    02F6 902000D5  LDS	R2,0xD5
    02F8 903000D6  LDS	R3,0xD6
    02FA 2022      TST	R2
    02FB F009      BEQ	0x02FD
    02FC CFC3      RJMP	0x02C0
    02FD 2033      TST	R3
    02FE F009      BEQ	0x0300
    02FF CFC0      RJMP	0x02C0
    0300 C04C      RJMP	0x034D
    0301 918000D9  LDS	R24,0xD9
    0303 5081      SUBI	R24,1
    0304 938000D9  STS	0xD9,R24
    0306 902000D7  LDS	R2,0xD7
    0308 903000D8  LDS	R3,0xD8
    030A 923000B7  STS	RS485_status+2,R3
    030C 922000B6  STS	RS485_status+1,R2
    030E 902000B6  LDS	R2,RS485_status+1
    0310 903000B7  LDS	R3,RS485_status+2
    0312 2022      TST	R2
    0313 F411      BNE	0x0316
    0314 2033      TST	R3
    0315 F141      BEQ	0x033E
    0316 918000B6  LDS	R24,RS485_status+1
    0318 919000B7  LDS	R25,RS485_status+2
    031A 9606      ADIW	R24,6
    031B 2FE8      MOV	R30,R24
    031C 2FF9      MOV	R31,R25
    031D 8180      LDD	R24,Z+0
    031E 5081      SUBI	R24,1
    031F 8380      STD	Z+0,R24
    0320 C01D      RJMP	0x033E
    0321 91E000B6  LDS	R30,RS485_status+1
    0323 91F000B7  LDS	R31,RS485_status+2
    0325 8024      LDD	R2,Z+4
    0326 8035      LDD	R3,Z+5
    0327 923000D8  STS	0xD8,R3
    0329 922000D7  STS	0xD7,R2
    032B 8180      LDD	R24,Z+0
    032C 788F      ANDI	R24,0x8F
    032D 6580      ORI	R24,0x50
    032E 8380      STD	Z+0,R24
    032F EC2D      LDI	R18,0xCD
    0330 E030      LDI	R19,0
    0331 2F0E      MOV	R16,R30
    0332 2F1F      MOV	R17,R31
    0333 D051      RCALL	_OSInsPrioQ
    0334 902000D7  LDS	R2,0xD7
    0336 903000D8  LDS	R3,0xD8
    0338 923000B7  STS	RS485_status+2,R3
    033A 922000B6  STS	RS485_status+1,R2
    033C 9478      BSET	7
    033D 94F8      BCLR	7
    033E 902000B6  LDS	R2,RS485_status+1
    0340 903000B7  LDS	R3,RS485_status+2
    0342 2022      TST	R2
    0343 F411      BNE	0x0346
    0344 2033      TST	R3
    0345 F039      BEQ	0x034D
    0346 91E000B6  LDS	R30,RS485_status+1
    0348 91F000B7  LDS	R31,RS485_status+2
    034A 8026      LDD	R2,Z+6
    034B 2022      TST	R2
    034C F2A1      BEQ	0x0321
    034D 902000D9  LDS	R2,0xD9
    034F 2022      TST	R2
    0350 F009      BEQ	0x0352
    0351 CFAF      RJMP	0x0301
    0352 902000CD  LDS	R2,0xCD
    0354 903000CE  LDS	R3,0xCE
    0356 923000B7  STS	RS485_status+2,R3
    0358 922000B6  STS	RS485_status+1,R2
    035A 902000B6  LDS	R2,RS485_status+1
    035C 903000B7  LDS	R3,RS485_status+2
    035E 2022      TST	R2
    035F F411      BNE	0x0362
    0360 2033      TST	R3
    0361 F0E9      BEQ	0x037F
    0362 91E000CD  LDS	R30,0xCD
    0364 91F000CE  LDS	R31,0xCE
    0366 8024      LDD	R2,Z+4
    0367 8035      LDD	R3,Z+5
    0368 923000CE  STS	0xCE,R3
    036A 922000CD  STS	0xCD,R2
    036C 9478      BSET	7
    036D DF12      RCALL	_OSDispatch
    036E 94F8      BCLR	7
    036F 91E000B6  LDS	R30,RS485_status+1
    0371 91F000B7  LDS	R31,RS485_status+2
    0373 8180      LDD	R24,Z+0
    0374 9582      SWAP	R24
    0375 708F      ANDI	R24,0xF
    0376 7087      ANDI	R24,7
    0377 3085      CPI	R24,5
    0378 F449      BNE	0x0382
    0379 EC2D      LDI	R18,0xCD
    037A E030      LDI	R19,0
    037B 2F0E      MOV	R16,R30
    037C 2F1F      MOV	R17,R31
    037D D007      RCALL	_OSInsPrioQ
    037E C003      RJMP	0x0382
    037F 9478      BSET	7
    0380 D0C0      RCALL	_OSIdlingHook
    0381 94F8      BCLR	7
    0382 9009      LD	R0,Y+
    0383 BE0F      OUT	0x3F,R0
    0384 9508      RET
_OSInsPrioQ:
    0385 D1A8      RCALL	push_gset2
    0386 9721      SBIW	R28,1
    0387 2FE2      MOV	R30,R18
    0388 2FF3      MOV	R31,R19
    0389 8140      LDD	R20,Z+0
    038A 8151      LDD	R21,Z+1
    038B 3040      CPI	R20,0
    038C 0745      CPC	R20,R21
    038D F461      BNE	0x039A
    038E 2FE2      MOV	R30,R18
    038F 2FF3      MOV	R31,R19
    0390 8311      STD	Z+1,R17
    0391 8300      STD	Z+0,R16
    0392 2422      CLR	R2
    0393 2433      CLR	R3
    0394 2FE0      MOV	R30,R16
    0395 2FF1      MOV	R31,R17
    0396 8235      STD	Z+5,R3
    0397 8224      STD	Z+4,R2
    0398 2700      CLR	R16
    0399 C05F      RJMP	0x03F9
    039A 2766      CLR	R22
    039B 2777      CLR	R23
    039C ED87      LDI	R24,0xD7
    039D E090      LDI	R25,0
    039E 1728      CP	R18,R24
    039F 0739      CPC	R19,R25
    03A0 F051      BEQ	0x03AB
    03A1 2F64      MOV	R22,R20
    03A2 2F75      MOV	R23,R21
    03A3 2FE4      MOV	R30,R20
    03A4 2FF5      MOV	R31,R21
    03A5 8144      LDD	R20,Z+4
    03A6 8155      LDD	R21,Z+5
    03A7 3040      CPI	R20,0
    03A8 0745      CPC	R20,R21
    03A9 F7B9      BNE	0x03A1
    03AA C03D      RJMP	0x03E8
    03AB 2FE4      MOV	R30,R20
    03AC 2FF5      MOV	R31,R21
    03AD 8026      LDD	R2,Z+6
    03AE 8228      STD	Y+0,R2
    03AF C010      RJMP	0x03C0
    03B0 2F64      MOV	R22,R20
    03B1 2F75      MOV	R23,R21
    03B2 2FE4      MOV	R30,R20
    03B3 2FF5      MOV	R31,R21
    03B4 8144      LDD	R20,Z+4
    03B5 8155      LDD	R21,Z+5
    03B6 3040      CPI	R20,0
    03B7 0745      CPC	R20,R21
    03B8 F409      BNE	0x03BA
    03B9 C00C      RJMP	0x03C6
    03BA 2FE4      MOV	R30,R20
    03BB 2FF5      MOV	R31,R21
    03BC 8026      LDD	R2,Z+6
    03BD 8038      LDD	R3,Y+0
    03BE 0C32      ADD	R3,R2
    03BF 8238      STD	Y+0,R3
    03C0 8028      LDD	R2,Y+0
    03C1 2FE0      MOV	R30,R16
    03C2 2FF1      MOV	R31,R17
    03C3 8036      LDD	R3,Z+6
    03C4 1432      CP	R3,R2
    03C5 F750      BCC	0x03B0
    03C6 3040      CPI	R20,0
    03C7 0745      CPC	R20,R21
    03C8 F031      BEQ	0x03CF
    03C9 2FE4      MOV	R30,R20
    03CA 2FF5      MOV	R31,R21
    03CB 8026      LDD	R2,Z+6
    03CC 8038      LDD	R3,Y+0
    03CD 1832      SUB	R3,R2

⌨️ 快捷键说明

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