📄 test2.lis
字号:
007E 00E0 ldi R16,<PL_Task2
0080 10E0 ldi R17,>PL_Task2
0082 0E940000 xcall _OSTaskCreate
0086 .dbline 100
0086 ; // init und start tick
0086 ; TC2_Init(); // Timer/Counter#2 Overflow and Comp init
0086 C9DF xcall _TC2_Init
0088 .dbline 101
0088 ; OSStart(); // start multitasking
0088 0E940000 xcall _OSStart
008C .dbline -2
008C L4:
008C 2396 adiw R28,3
008E .dbline 0 ; func end
008E 0895 ret
0090 .dbend
0090 .dbfunc e Task1 _Task1 fV
0090 ; data -> R10,R11
.even
0090 _Task1::
0090 0E940000 xcall push_gset3x
0094 5801 movw R10,R16
0096 .dbline -1
0096 .dbline 105
0096 ; }
0096 ;
0096 ; void Task1(void *data)
0096 ; {
0096 .dbline 106
0096 ; data = data;
0096 .dbline 107
0096 ; PORTB|=0x10;
0096 C49A sbi 0x18,4
0098 .dbline 108
0098 ; DDRB|=0x10;
0098 BC9A sbi 0x17,4
009A 1BC0 xjmp L10
009C L9:
009C .dbline 110
009C ; while(1)
009C ; {
009C .dbline 111
009C ; puts("Task1");
009C 00E0 ldi R16,<L12
009E 10E0 ldi R17,>L12
00A0 0E940000 xcall _puts
00A4 .dbline 112
00A4 ; putchar(0x0d);
00A4 0DE0 ldi R16,13
00A6 0E940000 xcall _putchar
00AA .dbline 113
00AA ; putchar(0x0a);
00AA 0AE0 ldi R16,10
00AC 0E940000 xcall _putchar
00B0 .dbline 114
00B0 ; if(LED1==0)
00B0 20900000 lds R2,_LED1
00B4 2220 tst R2
00B6 29F4 brne L13
00B8 .dbline 115
00B8 ; {
00B8 .dbline 116
00B8 ; LED1=1;
00B8 81E0 ldi R24,1
00BA 80930000 sts _LED1,R24
00BE .dbline 117
00BE ; LED1_ON;
00BE C498 cbi 0x18,4
00C0 .dbline 118
00C0 ; }
00C0 04C0 xjmp L14
00C2 L13:
00C2 .dbline 120
00C2 ; else
00C2 ; {
00C2 .dbline 121
00C2 ; LED1=0;
00C2 2224 clr R2
00C4 20920000 sts _LED1,R2
00C8 .dbline 122
00C8 ; LED1_OFF;
00C8 C49A sbi 0x18,4
00CA .dbline 123
00CA ; }
00CA L14:
00CA .dbline 124
00CA 04EF ldi R16,500
00CC 11E0 ldi R17,1
00CE 0E940000 xcall _OSTimeDly
00D2 .dbline 125
00D2 L10:
00D2 .dbline 109
00D2 E4CF xjmp L9
00D4 X0:
00D4 .dbline -2
00D4 L8:
00D4 0E940000 xcall pop_gset3x
00D8 .dbline 0 ; func end
00D8 0895 ret
00DA .dbsym r data 10 pV
00DA .dbend
00DA .dbfunc e Task2 _Task2 fV
00DA ; data -> R10,R11
.even
00DA _Task2::
00DA 0E940000 xcall push_gset3x
00DE 5801 movw R10,R16
00E0 .dbline -1
00E0 .dbline 128
00E0 ; OSTimeDly (500);//延时1秒
00E0 ; }
00E0 ; }
00E0 ; void Task2(void *data)
00E0 ; {
00E0 .dbline 129
00E0 ; data = data;
00E0 .dbline 130
00E0 ; PORTB|=0x20;
00E0 C59A sbi 0x18,5
00E2 .dbline 131
00E2 ; DDRB|=0x20;
00E2 BD9A sbi 0x17,5
00E4 1BC0 xjmp L17
00E6 L16:
00E6 .dbline 133
00E6 ; while(1)
00E6 ; {
00E6 .dbline 134
00E6 ; puts("Task2");
00E6 00E0 ldi R16,<L19
00E8 10E0 ldi R17,>L19
00EA 0E940000 xcall _puts
00EE .dbline 135
00EE ; putchar(0x0d);
00EE 0DE0 ldi R16,13
00F0 0E940000 xcall _putchar
00F4 .dbline 136
00F4 ; putchar(0x0a);
00F4 0AE0 ldi R16,10
00F6 0E940000 xcall _putchar
00FA .dbline 137
00FA ; if(LED2==0)
00FA 20900100 lds R2,_LED2
00FE 2220 tst R2
0100 29F4 brne L20
0102 .dbline 138
0102 ; {
0102 .dbline 139
0102 ; LED2=1;
0102 81E0 ldi R24,1
0104 80930100 sts _LED2,R24
0108 .dbline 140
0108 ; LED2_ON;
0108 C598 cbi 0x18,5
010A .dbline 141
010A ; }
010A 04C0 xjmp L21
010C L20:
010C .dbline 143
010C ; else
010C ; {
010C .dbline 144
010C ; LED2=0;
010C 2224 clr R2
010E 20920100 sts _LED2,R2
0112 .dbline 145
0112 ; LED2_OFF;
0112 C59A sbi 0x18,5
0114 .dbline 146
0114 ; }
0114 L21:
0114 .dbline 147
0114 08EE ldi R16,1000
0116 13E0 ldi R17,3
0118 0E940000 xcall _OSTimeDly
011C .dbline 148
011C L17:
011C .dbline 132
011C E4CF xjmp L16
011E X1:
011E .dbline -2
011E L15:
011E 0E940000 xcall pop_gset3x
0122 .dbline 0 ; func end
0122 0895 ret
0124 .dbsym r data 10 pV
0124 .dbend
.area bss(ram, con, rel)
0000 .dbfile D:\MTD\work\iccavr\ucos-M128\test\test2.c
0000 _Task2Stack::
0000 .blkb 100
0064 .dbsym e Task2Stack _Task2Stack A[100:100]c
0064 _Task1Stack::
0064 .blkb 100
00C8 .dbsym e Task1Stack _Task1Stack A[100:100]c
.area data(ram, con, rel)
0002 .dbfile D:\MTD\work\iccavr\ucos-M128\test\test2.c
0002 L19:
0002 .blkb 6
.area idata
0002 5461736B3200 .byte 'T,'a,'s,'k,50,0
.area data(ram, con, rel)
0008 .dbfile D:\MTD\work\iccavr\ucos-M128\test\test2.c
0008 L12:
0008 .blkb 6
.area idata
0008 5461736B3100 .byte 'T,'a,'s,'k,49,0
.area data(ram, con, rel)
000E .dbfile D:\MTD\work\iccavr\ucos-M128\test\test2.c
000E L5:
000E .blkb 25
.area idata
000E 41546D6567613132382075632F6F732D .byte 'A,'T,'m,'e,'g,'a,49,50,56,32,'u,'c,47,'o,'s,45
001E 494920546573742100 .byte 'I,'I,32,'T,'e,'s,'t,33,0
.area data(ram, con, rel)
0027 .dbfile D:\MTD\work\iccavr\ucos-M128\test\test2.c
.area func_lit
0000 6D00 PL_Task2: .word `_Task2
0002 4800 PL_Task1: .word `_Task1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -