📄 test.lss
字号:
*
* Description: This function is called every tick.
*
* Arguments : none
*
* Note(s) : 1) Interrupts may or may not be ENABLED during this call.
*********************************************************************************************************
*/
#if (OS_CPU_HOOKS_EN > 0) && (OS_TIME_TICK_HOOK_EN > 0)
void OSTimeTickHook (void)
{
760: 08 95 ret
00000762 <OSInitHookBegin>:
}
#endif
/*
*********************************************************************************************************
* OS INITIALIZATION HOOK
* (BEGINNING)
*
* Description: This function is called by OSInit() at the beginning of OSInit().
*
* Arguments : none
*
* Note(s) : 1) Interrupts should be disabled during this call.
*********************************************************************************************************
*/
#if OS_CPU_HOOKS_EN > 0 && OS_VERSION > 270
void OSInitHookBegin (void)
{
762: 08 95 ret
00000764 <OSInitHookEnd>:
}
#endif
/*
*********************************************************************************************************
* OS INITIALIZATION HOOK
* (END)
*
* Description: This function is called by OSInit() at the end of OSInit().
*
* Arguments : none
*
* Note(s) : 1) Interrupts should be disabled during this call.
*********************************************************************************************************
*/
#if OS_CPU_HOOKS_EN > 0 && OS_VERSION > 204
void OSInitHookEnd (void)
{
764: 08 95 ret
00000766 <OSTaskIdleHook>:
}
#endif
/*
*********************************************************************************************************
* IDLE TASK HOOK
*
* Description: This function is called by the idle task. This hook has been added to allow you to do
* such things as STOP the CPU to conserve power.
*
* Arguments : none
*
* Note(s) : 1) Interrupts are enabled during this call.
*********************************************************************************************************
*/
#if OS_CPU_HOOKS_EN > 0 && OS_VERSION >= 251
void OSTaskIdleHook (void)
{
766: 08 95 ret
00000768 <OSTCBInitHook>:
}
#endif
/*
*********************************************************************************************************
* OSTCBInit() HOOK
*
* Description: This function is called by OS_TCBInit() after setting up most of the TCB.
*
* Arguments : ptcb is a pointer to the TCB of the task being created.
*
* Note(s) : 1) Interrupts may or may not be ENABLED during this call.
*********************************************************************************************************
*/
#if OS_CPU_HOOKS_EN > 0 && OS_VERSION > 203
void OSTCBInitHook (OS_TCB *ptcb)
{
768: 08 95 ret
0000076a <OS_StrCopy>:
*/
#if (OS_EVENT_NAME_SIZE > 1) || (OS_FLAG_NAME_SIZE > 1) || (OS_MEM_NAME_SIZE > 1) || (OS_TASK_NAME_SIZE > 1)
INT8U OS_StrCopy (char *pdest, char *psrc)
{
76a: dc 01 movw r26, r24
76c: fb 01 movw r30, r22
INT8U len;
len = 0;
76e: 90 e0 ldi r25, 0x00 ; 0
while (*psrc != OS_ASCII_NUL) {
*pdest++ = *psrc++;
len++;
770: 80 81 ld r24, Z
772: 88 23 and r24, r24
774: 21 f0 breq .+8 ; 0x77e
776: 81 91 ld r24, Z+
778: 8d 93 st X+, r24
77a: 9f 5f subi r25, 0xFF ; 255
77c: f9 cf rjmp .-14 ; 0x770
}
*pdest = OS_ASCII_NUL;
77e: 1c 92 st X, r1
return (len);
}
780: 89 2f mov r24, r25
782: 99 27 eor r25, r25
784: 08 95 ret
00000786 <OSEventNameGet>:
786: cf 93 push r28
788: df 93 push r29
78a: fc 01 movw r30, r24
78c: 9b 01 movw r18, r22
78e: ea 01 movw r28, r20
790: f8 94 cli
792: 80 81 ld r24, Z
794: 99 27 eor r25, r25
796: 01 97 sbiw r24, 0x01 ; 1
798: 04 97 sbiw r24, 0x04 ; 4
79a: 30 f0 brcs .+12 ; 0x7a8
79c: 78 94 sei
79e: 81 e0 ldi r24, 0x01 ; 1
7a0: 88 83 st Y, r24
7a2: 80 e0 ldi r24, 0x00 ; 0
7a4: 90 e0 ldi r25, 0x00 ; 0
7a6: 08 c0 rjmp .+16 ; 0x7b8
7a8: 38 96 adiw r30, 0x08 ; 8
7aa: bf 01 movw r22, r30
7ac: c9 01 movw r24, r18
7ae: 0e 94 b5 03 call 0x76a
7b2: 78 94 sei
7b4: 18 82 st Y, r1
7b6: 99 27 eor r25, r25
7b8: df 91 pop r29
7ba: cf 91 pop r28
7bc: 08 95 ret
000007be <OS_StrLen>:
#endif
/*$PAGE*/
/*
*********************************************************************************************************
* DETERMINE THE LENGTH OF AN ASCII STRING
*
* Description: This function is called by other uC/OS-II services to determine the size of an ASCII string
* (excluding the NUL character).
*
* Arguments : psrc is a pointer to the string for which we need to know the size.
*
* Returns : The size of the string (excluding the NUL terminating character)
*
* Notes : 1) This function is INTERNAL to uC/OS-II and your application should not call it.
* 2) The string to check must be less than 255 characters long.
*********************************************************************************************************
*/
#if (OS_EVENT_NAME_SIZE > 1) || (OS_FLAG_NAME_SIZE > 1) || (OS_MEM_NAME_SIZE > 1) || (OS_TASK_NAME_SIZE > 1)
INT8U OS_StrLen (char *psrc)
{
7be: fc 01 movw r30, r24
INT8U len;
len = 0;
7c0: 90 e0 ldi r25, 0x00 ; 0
while (*psrc != OS_ASCII_NUL) {
psrc++;
len++;
7c2: 80 81 ld r24, Z
7c4: 88 23 and r24, r24
7c6: 19 f0 breq .+6 ; 0x7ce
7c8: 31 96 adiw r30, 0x01 ; 1
7ca: 9f 5f subi r25, 0xFF ; 255
7cc: fa cf rjmp .-12 ; 0x7c2
}
return (len);
}
7ce: 89 2f mov r24, r25
7d0: 99 27 eor r25, r25
7d2: 08 95 ret
000007d4 <OSEventNameSet>:
7d4: ef 92 push r14
7d6: ff 92 push r15
7d8: 0f 93 push r16
7da: 1f 93 push r17
7dc: cf 93 push r28
7de: df 93 push r29
7e0: 7c 01 movw r14, r24
7e2: 8b 01 movw r16, r22
7e4: ea 01 movw r28, r20
7e6: f8 94 cli
7e8: fc 01 movw r30, r24
7ea: 80 81 ld r24, Z
7ec: 99 27 eor r25, r25
7ee: 01 97 sbiw r24, 0x01 ; 1
7f0: 04 97 sbiw r24, 0x04 ; 4
7f2: 18 f0 brcs .+6 ; 0x7fa
7f4: 78 94 sei
7f6: 81 e0 ldi r24, 0x01 ; 1
7f8: 07 c0 rjmp .+14 ; 0x808
7fa: cb 01 movw r24, r22
7fc: 0e 94 df 03 call 0x7be
800: 80 32 cpi r24, 0x20 ; 32
802: 20 f0 brcs .+8 ; 0x80c
804: 78 94 sei
806: 8c e0 ldi r24, 0x0C ; 12
808: 88 83 st Y, r24
80a: 07 c0 rjmp .+14 ; 0x81a
80c: b8 01 movw r22, r16
80e: c7 01 movw r24, r14
810: 08 96 adiw r24, 0x08 ; 8
812: 0e 94 b5 03 call 0x76a
816: 78 94 sei
818: 18 82 st Y, r1
81a: df 91 pop r29
81c: cf 91 pop r28
81e: 1f 91 pop r17
820: 0f 91 pop r16
822: ff 90 pop r15
824: ef 90 pop r14
826: 08 95 ret
00000828 <OSIntEnter>:
828: 80 91 e5 03 lds r24, 0x03E5
82c: 81 30 cpi r24, 0x01 ; 1
82e: 39 f4 brne .+14 ; 0x83e
830: 80 91 81 04 lds r24, 0x0481
834: 8f 3f cpi r24, 0xFF ; 255
836: 19 f0 breq .+6 ; 0x83e
838: 8f 5f subi r24, 0xFF ; 255
83a: 80 93 81 04 sts 0x0481, r24
83e: 08 95 ret
840: 08 95 ret
00000842 <OSIntExit>:
842: 80 91 e5 03 lds r24, 0x03E5
846: 81 30 cpi r24, 0x01 ; 1
848: 09 f0 breq .+2 ; 0x84c
84a: 4f c0 rjmp .+158 ; 0x8ea
84c: f8 94 cli
84e: 80 91 81 04 lds r24, 0x0481
852: 88 23 and r24, r24
854: 19 f0 breq .+6 ; 0x85c
856: 81 50 subi r24, 0x01 ; 1
858: 80 93 81 04 sts 0x0481, r24
85c: 80 91 81 04 lds r24, 0x0481
860: 88 23 and r24, r24
862: 09 f0 breq .+2 ; 0x866
864: 41 c0 rjmp .+130 ; 0x8e8
866: 80 91 e4 03 lds r24, 0x03E4
86a: 88 23 and r24, r24
86c: e9 f5 brne .+122 ; 0x8e8
86e: 80 91 7c 04 lds r24, 0x047C
872: e8 2f mov r30, r24
874: ff 27 eor r31, r31
876: e2 5d subi r30, 0xD2 ; 210
878: fe 4f sbci r31, 0xFE ; 254
87a: 80 81 ld r24, Z
87c: 99 27 eor r25, r25
87e: fc 01 movw r30, r24
880: e3 58 subi r30, 0x83 ; 131
882: fb 4f sbci r31, 0xFB ; 251
884: 20 81 ld r18, Z
886: e2 2f mov r30, r18
888: ff 27 eor r31, r31
88a: e2 5d subi r30, 0xD2 ; 210
88c: fe 4f sbci r31, 0xFE ; 254
88e: e0 81 ld r30, Z
890: 23 e0 ldi r18, 0x03 ; 3
892: 88 0f add r24, r24
894: 99 1f adc r25, r25
896: 2a 95 dec r18
898: e1 f7 brne .-8 ; 0x892
89a: e8 0f add r30, r24
89c: e0 93 ea 03 sts 0x03EA, r30
8a0: 80 91 eb 03 lds r24, 0x03EB
8a4: e8 17 cp r30, r24
8a6: 01 f1 breq .+64 ; 0x8e8
8a8: ff 27 eor r31, r31
8aa: ee 0f add r30, r30
8ac: ff 1f adc r31, r31
8ae: e3 5e subi r30, 0xE3 ; 227
8b0: f7 4f sbci r31, 0xF7 ; 247
8b2: 80 81 ld r24, Z
8b4: 91 81 ldd r25, Z+1 ; 0x01
8b6: 90 93 7b 04 sts 0x047B, r25
8ba: 80 93 7a 04 sts 0x047A, r24
8be: 80 91 6e 04 lds r24, 0x046E
8c2: 90 91 6f 04 lds r25, 0x046F
8c6: a0 91 70 04 lds r26, 0x0470
8ca: b0 91 71 04 lds r27, 0x0471
8ce: 01 96 adiw r24, 0x01 ; 1
8d0: a1 1d adc r26, r1
8d2: b1 1d adc r27, r1
8d4: 80 93 6e 04 sts 0x046E, r24
8d8: 90 93 6f 04 sts 0x046F, r25
8dc: a0 93 70 04 sts 0x0470, r26
8e0: b0 93 71 04 sts 0x0471, r27
8e4: 0e 94 3f 0b call 0x167e
8e8: 78 94 sei
8ea: 08 95 ret
8ec: 08 95 ret
000008ee <OSSchedLock>:
8ee: 80 91 e5 03 lds r24, 0x03E5
8f2: 81 30 cpi r24, 0x01 ; 1
8f4: 49 f4 brne .+18 ; 0x908
8f6: f8 94 cli
8f8: 80 91 e4 03 lds r24, 0x03E4
8fc: 8f 3f cpi r24, 0xFF ; 255
8fe: 19 f0 breq .+6 ; 0x906
900: 8f 5f subi r24, 0xFF ; 255
902: 80 93 e4 03 sts 0x03E4, r24
906: 78 94 sei
908: 08 95 ret
90a: 08 95 ret
0000090c <OSStart>:
90c: 80 91 e5 03 lds r24, 0x03E5
910: 88 23 and r24, r24
912: 69 f5 brne .+90 ; 0x96e
914: 80 91 7c 04 lds r24, 0x047C
918: e8 2f mov r30, r24
91a: ff 27 eor r31, r31
91c: e2 5d subi r30, 0xD2 ; 210
91e: fe 4f sbci r31, 0xFE ; 254
920: 80 81 ld r24, Z
922: 99 27 eor r25, r25
924: fc 01 movw r30, r24
926: e3 58 subi r30, 0x83 ; 131
928: fb 4f sbci r31, 0xFB ; 251
92a: 20 81 ld r18, Z
92c: e2 2f mov r30, r18
92e: ff 27 eor r31, r31
930: e2 5d subi r30, 0xD2 ; 210
932: fe 4f sbci r31, 0xFE ; 254
934: 20 81 ld r18, Z
936: 33 e0 ldi r19, 0x03 ; 3
938: 88 0f add r24, r24
93a: 99 1f adc r25, r25
93c: 3a 95 dec r19
93e: e1 f7 brne .-8 ; 0x938
940: 28 0f add r18, r24
942: 20 93 ea 03 sts 0x03EA, r18
946: 20 93 eb 03 sts 0x03EB, r18
94a: e2 2f mov r30, r18
94c: ff 27 eor r31, r31
94e: ee 0f add r30, r30
950: ff 1f adc r31, r31
952: e3 5e subi r30, 0xE3 ; 227
954: f7 4f sbci r31, 0xF7 ; 247
956: 80 81 ld r24, Z
958: 91 81 ldd r25, Z+1 ; 0x01
95a: 90 93 7b 04 sts 0x047B, r25
95e: 80 93 7a 04 sts 0x047A, r24
962: 90 93 83 04 sts 0x0483, r25
966: 80 93 82 04 sts 0x0482, r24
96a: 0e 94 ae 0a call 0x155c
96e: 08 95 ret
970: 08 95 ret
00000972 <OSTimeTick>:
972: cf 93 push r28
974: df 93 push r29
976: 0e 94 b0 03 call 0x760
97a: 90 91 e5 03 lds r25, 0x03E5
97e: 91 30 cpi r25, 0x01 ; 1
980: 09 f0 breq .+2 ; 0x984
982: 49 c0 rjmp .+146 ; 0xa16
984: a0 91 ec 03 lds r26, 0x03EC
988: b0 91 ed 03 lds r27, 0x03ED
98c: ed 01 movw r28, r26
98e: 8c 85 ldd r24, Y+12 ; 0x0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -