📄 ucos.lst
字号:
019E 1250 CPSE R5,R16
019F 0250 MULS R21,R16
01A0 0000 NOP
01A1 0000 NOP
01A2 0250 MULS R21,R16
01A3 1250 CPSE R5,R16
01A4 1070 CPSE R7,R0
01A5 0070 NOP
01A6 0000 NOP
01A7 0000 NOP
01A8 0000 NOP
01A9 0000 NOP
01AA 0000 NOP
01AB 0080 NOP
01AC 1080 CPSE R8,R0
01AD 0080 NOP
01AE 1080 CPSE R8,R0
01AF 1080 CPSE R8,R0
01B0 0080 NOP
01B1 0250 MULS R21,R16
01B2 1250 CPSE R5,R16
01B3 0000 NOP
01B4 0000 NOP
01B5 0000 NOP
01B6 03F0 MULSU R31,R16
01B7 13F0 CPSE R31,R16
01B8 0250 MULS R21,R16
01B9 1250 CPSE R5,R16
01BA 0250 MULS R21,R16
01BB 1250 CPSE R5,R16
01BC 0000 NOP
01BD 0000 NOP
01BE 0080 NOP
01BF 1080 CPSE R8,R0
01C0 0000 NOP
01C1 03FF MULSU R31,R31
01C2 13FF CPSE R31,R31
01C3 03D0 MULSU R29,R16
01C4 13D0 CPSE R29,R16
01C5 1250 CPSE R5,R16
01C6 0250 MULS R21,R16
01C7 0000 NOP
01C8 0000 NOP
01C9 0250 MULS R21,R16
01CA 1250 CPSE R5,R16
01CB 1080 CPSE R8,R0
01CC 0080 NOP
01CD 0000 NOP
01CE 0000 NOP
01CF 0000 NOP
01D0 0000 NOP
01D1 0000 NOP
01D2 0080 NOP
01D3 1080 CPSE R8,R0
01D4 0080 NOP
01D5 1080 CPSE R8,R0
01D6 1080 CPSE R8,R0
01D7 0080 NOP
01D8 02A0 MULS R26,R16
01D9 12A0 CPSE R10,R16
01DA 0000 NOP
01DB 0000 NOP
01DC 0000 NOP
01DD 0000 NOP
01DE 0000 NOP
01DF 0000 NOP
01E0 0000 NOP
01E1 0000 NOP
01E2 0000 NOP
01E3 0000 NOP
01E4 0000 NOP
01E5 0000 NOP
01E6 0000 NOP
01E7 0000 NOP
01E8 0000 NOP
01E9 0000 NOP
01EA 0202 MULS R16,R18
01EB 0000 NOP
01EC 0000 NOP
01ED 0000 NOP
01EE 0000 NOP
01EF 0000 NOP
01F0 0200 MULS R16,R16
01F1 0002 NOP
01F2 0100 MOVW R0,R0
01F3 0001 NOP
01F4 0000 NOP
01F5 0000 NOP
01F6 0000 NOP
01F7 0101 MOVW R0,R2
01F8 0101 MOVW R0,R2
01F9 0101 MOVW R0,R2
01FA 0101 MOVW R0,R2
01FB 0101 MOVW R0,R2
01FC 0101 MOVW R0,R2
01FD 0101 MOVW R0,R2
01FE 0101 MOVW R0,R2
01FF 0101 MOVW R0,R2
0200 0101 MOVW R0,R2
0201 0101 MOVW R0,R2
0202 0101 MOVW R0,R2
0203 0101 MOVW R0,R2
0204 0101 MOVW R0,R2
0205 0101 MOVW R0,R2
0206 0101 MOVW R0,R2
0207 0101 MOVW R0,R2
0208 0101 MOVW R0,R2
0209 0101 MOVW R0,R2
020A 0101 MOVW R0,R2
020B 0101 MOVW R0,R2
020C 0201 MULS R16,R17
020D 0102 MOVW R0,R4
020E 0101 MOVW R0,R2
020F 0101 MOVW R0,R2
0210 0101 MOVW R0,R2
0211 0100 MOVW R0,R0
__start:
__text_start:
0212 EFCF LDI R28,0xFF
0213 E1D0 LDI R29,0x10
0214 BFCD OUT P3D,R28
0215 BFDE OUT P3E,R29
0216 51C0 SUBI R28,0x10
0217 40D0 SBCI R29,0
0218 EA0A LDI R16,0xAA
0219 8308 STD R16,0+Y
021A 2400 CLR R0
021B E0E3 LDI R30,3
021C E0F3 LDI R31,3
021D E01C LDI R17,0xC
021E 3FE0 CPI R30,0xF0
021F 07F1 CPC R31,R17
0220 F011 BEQ 0x0223
0221 9201 ST R0,Z+
0222 CFFB RJMP 0x021E
0223 8300 STD R16,0+Z
0224 E2E0 LDI R30,0x20
0225 E0F2 LDI R31,2
0226 E0A0 LDI R26,0
0227 E0B1 LDI R27,1
0228 E014 LDI R17,4
0229 32E3 CPI R30,0x23
022A 07F1 CPC R31,R17
022B F021 BEQ 0x0230
022C 95C8 LPM
022D 9631 ADIW R30,1
022E 920D ST R0,X+
022F CFF9 RJMP 0x0229
0230 940E04BD CALL _main
_exit:
0232 CFFF RJMP _exit
_OSDebugInit:
0233 E90C LDI R16,0x9C
0234 E010 LDI R17,0
0235 E90E LDI R16,0x9E
0236 E010 LDI R17,0
0237 EA02 LDI R16,0xA2
0238 E010 LDI R17,0
0239 EA04 LDI R16,0xA4
023A E010 LDI R17,0
023B EA06 LDI R16,0xA6
023C E010 LDI R17,0
023D EA08 LDI R16,0xA8
023E E010 LDI R17,0
023F EA0A LDI R16,0xAA
0240 E010 LDI R17,0
0241 EA0C LDI R16,0xAC
0242 E010 LDI R17,0
0243 EA0E LDI R16,0xAE
0244 E010 LDI R17,0
0245 EB00 LDI R16,0xB0
0246 E010 LDI R17,0
0247 EB02 LDI R16,0xB2
0248 E010 LDI R17,0
0249 EB04 LDI R16,0xB4
024A E010 LDI R17,0
024B EB06 LDI R16,0xB6
024C E010 LDI R17,0
024D EB08 LDI R16,0xB8
024E E010 LDI R17,0
024F EB0A LDI R16,0xBA
0250 E010 LDI R17,0
0251 EB0C LDI R16,0xBC
0252 E010 LDI R17,0
0253 EB0E LDI R16,0xBE
0254 E010 LDI R17,0
0255 EC00 LDI R16,0xC0
0256 E010 LDI R17,0
0257 EC02 LDI R16,0xC2
0258 E010 LDI R17,0
0259 EC04 LDI R16,0xC4
025A E010 LDI R17,0
025B EC06 LDI R16,0xC6
025C E010 LDI R17,0
025D EC08 LDI R16,0xC8
025E E010 LDI R17,0
025F EC0A LDI R16,0xCA
0260 E010 LDI R17,0
0261 EC0C LDI R16,0xCC
0262 E010 LDI R17,0
0263 EC0E LDI R16,0xCE
0264 E010 LDI R17,0
0265 ED00 LDI R16,0xD0
0266 E010 LDI R17,0
0267 ED02 LDI R16,0xD2
0268 E010 LDI R17,0
0269 ED04 LDI R16,0xD4
026A E010 LDI R17,0
026B ED06 LDI R16,0xD6
026C E010 LDI R17,0
026D ED08 LDI R16,0xD8
026E E010 LDI R17,0
026F ED0A LDI R16,0xDA
0270 E010 LDI R17,0
0271 ED0C LDI R16,0xDC
0272 E010 LDI R17,0
0273 ED0E LDI R16,0xDE
0274 E010 LDI R17,0
0275 EE00 LDI R16,0xE0
0276 E010 LDI R17,0
0277 EE02 LDI R16,0xE2
0278 E010 LDI R17,0
0279 EE04 LDI R16,0xE4
027A E010 LDI R17,0
027B EE06 LDI R16,0xE6
027C E010 LDI R17,0
027D EE08 LDI R16,0xE8
027E E010 LDI R17,0
027F EE0A LDI R16,0xEA
0280 E010 LDI R17,0
0281 EE0C LDI R16,0xEC
0282 E010 LDI R17,0
0283 EE0E LDI R16,0xEE
0284 E010 LDI R17,0
0285 EF00 LDI R16,0xF0
0286 E010 LDI R17,0
0287 EF02 LDI R16,0xF2
0288 E010 LDI R17,0
0289 EF04 LDI R16,0xF4
028A E010 LDI R17,0
028B EF06 LDI R16,0xF6
028C E010 LDI R17,0
028D 9508 RET
FILE: E:\robocon\robo_program\small\ucos\avr_ucos2\avr\os_cpu_a.s
(0001) ;********************************************************************************************************
(0002) ; uC/OS-II
(0003) ; The Real-Time Kernel
(0004) ;
(0005) ; ATmega128 Specific code
(0006) ;
(0007) ;
(0008) ; File : OS_CPU_A.S
(0009) ; By : Ole Saether
(0010) ; Jean J. Labrosse
(0011) ;********************************************************************************************************
(0012) ; I/O PORT ADDRESSES
(0013) ;********************************************************************************************************
(0014)
(0015) BIT00 = 0x01
(0016) BIT01 = 0x02
(0017) BIT02 = 0x04
(0018) BIT03 = 0x08
(0019) BIT04 = 0x10
(0020) BIT05 = 0x20
(0021) BIT06 = 0x40
(0022) BIT07 = 0x80
(0023)
(0024) SREG = 0x3F
(0025) SPH = 0x3E
(0026) SPL = 0x3D
(0027) RAMPZ = 0x3B
(0028)
(0029) ;********************************************************************************************************
(0030) ; MACROS
(0031) ;********************************************************************************************************
(0032)
(0033) .macro PUSH_ALL ; Save all registers
(0034) ST -Y,R0
(0035) ST -Y,R1
(0036) ST -Y,R2
(0037) ST -Y,R3
(0038) ST -Y,R4
(0039) ST -Y,R5
(0040) ST -Y,R6
(0041) ST -Y,R7
(0042) ST -Y,R8
(0043) ST -Y,R9
(0044) ST -Y,R10
(0045) ST -Y,R11
(0046) ST -Y,R12
(0047) ST -Y,R13
(0048) ST -Y,R14
(0049) ST -Y,R15
(0050) ST -Y,R16
(0051) ST -Y,R17
(0052) ST -Y,R18
(0053) ST -Y,R19
(0054) ST -Y,R20
(0055) ST -Y,R21
(0056) ST -Y,R22
(0057) ST -Y,R23
(0058) ST -Y,R24
(0059) ST -Y,R25
(0060) ST -Y,R26
(0061) ST -Y,R27
(0062) ST -Y,R30
(0063) ST -Y,R31
(0064) IN R16,RAMPZ
(0065) ST -Y,R16
(0066) .endmacro
(0067)
(0068) .macro POP_ALL ; Restore all registers
(0069) LD R16,Y+
(0070) OUT RAMPZ,R16
(0071) LD R31,Y+
(0072) LD R30,Y+
(0073) LD R27,Y+
(0074) LD R26,Y+
(0075) LD R25,Y+
(0076) LD R24,Y+
(0077) LD R23,Y+
(0078) LD R22,Y+
(0079) LD R21,Y+
(0080) LD R20,Y+
(0081) LD R19,Y+
(0082) LD R18,Y+
(0083) LD R17,Y+
(0084) LD R16,Y+
(0085) LD R15,Y+
(0086) LD R14,Y+
(0087) LD R13,Y+
(0088) LD R12,Y+
(0089) LD R11,Y+
(0090) LD R10,Y+
(0091) LD R9,Y+
(0092) LD R8,Y+
(0093) LD R7,Y+
(0094) LD R6,Y+
(0095) LD R5,Y+
(0096) LD R4,Y+
(0097) LD R3,Y+
(0098) LD R2,Y+
(0099) LD R1,Y+
(0100) LD R0,Y+
(0101) .endmacro
(0102)
(0103) .macro PUSH_SP ; Save stack pointer
(0104) IN R16,SPH
(0105) ST -Y,R16
(0106) IN R16,SPL
(0107) ST -Y,R16
(0108) .endmacro
(0109)
(0110) .macro POP_SP ; Restore stack pointer
(0111) LD R16,Y+
(0112) OUT SPL,R16
(0113) LD R16,Y+
(0114) OUT SPH,R16
(0115) .endmacro
(0116)
(0117) .macro PUSH_SREG ; Save status register
(0118) IN R16,SREG
(0119) ST -Y,R16
(0120) .endmacro
(0121)
(0122) .macro POP_SREG ; Restore status registers
(0123) LD R16,Y+
(0124) OUT SREG,R16
(0125) .endmacro
(0126)
(0127) .area text(rel)
(0128)
(0129) ;/*$PAGE*/.
(0130) ;********************************************************************************************************
(0131) ; DISABLE/ENABLE INTERRUPTS USING OS_CRITICAL_METHOD #3
(0132) ;
(0133) ; Description : These functions are used to disable and enable interrupts using OS_CRITICAL_METHOD #3.
(0134) ;
(0135) ; OS_CPU_SR OSCPUSaveSR (void)
(0136) ; Get current value of SREG
(0137) ; Disable interrupts
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -