?? test_funcs.lis
字號:
.module test_funcs.c
.area text(rom, con, rel)
0000 .dbfile G:\編程2002-10-15-HOME\做過的項目\2002-10-22\home-c\software\ucos-ii-at90S-icc-avr\os-task-sem\test_funcs.c
0000 .dbfunc e TC2_Init _TC2_Init fV
.even
0000 _TC2_Init::
0000 .dbline -1
0000 .dbline 7
0000 ; #include "includes.h"
0000 ;
0000 ; //*****************************************************************************
0000 ; // TickISR
0000 ; //*****************************************************************************
0000 ; // Init Timer/Counter2 fuer Takterzeugung
0000 ; void TC2_Init (void){
0000 .dbline 8
0000 ; TCCR0 = 0x05; /* Set TIMER0 prescaler to CLK/1024 */
0000 85E0 ldi R24,5
0002 83BF out 0x33,R24
0004 .dbline 9
0004 ; TIMSK = 0x02; /* Enable TIMER0 overflow interrupt */
0004 82E0 ldi R24,2
0006 89BF out 0x39,R24
0008 .dbline 10
0008 ; UBRR=25;//192,00
0008 89E1 ldi R24,25
000A 89B9 out 0x9,R24
000C .dbline 11
000C ; UCR=0x18;//RXEN TXEN
000C 88E1 ldi R24,24
000E 8AB9 out 0xa,R24
0010 .dbline -2
0010 .dbline 12
0010 ; }
0010 L2:
0010 .dbline 0 ; func end
0010 0895 ret
0012 .dbend
0012 .dbfunc e task_Delay _task_Delay fV
0012 ; j -> <dead>
0012 ; i -> R20
0012 ; k -> R22
.even
0012 _task_Delay::
0012 00D0 rcall push_gset2
0014 .dbline -1
0014 .dbline 15
0014 ;
0014 ; void task_Delay(void)
0014 ; {
0014 .dbline 17
0014 ; unsigned char i,j,k;
0014 ; for(i=1;i<4;i++)
0014 41E0 ldi R20,1
0016 09C0 rjmp L7
0018 L4:
0018 .dbline 19
0018 ; // for(j=1;j;j++)
0018 ; {
0018 .dbline 20
0018 ; OSTimeDly(30);
0018 0EE1 ldi R16,30
001A 10E0 ldi R17,0
001C 00D0 rcall _OSTimeDly
001E .dbline 21
001E ; for(k=1;k;k++)
001E 61E0 ldi R22,1
0020 01C0 rjmp L11
0022 L8:
0022 .dbline 22
0022 L9:
0022 .dbline 21
0022 6395 inc R22
0024 L11:
0024 .dbline 21
0024 6623 tst R22
0026 E9F7 brne L8
0028 .dbline 23
0028 L5:
0028 .dbline 17
0028 4395 inc R20
002A L7:
002A .dbline 17
002A 4430 cpi R20,4
002C A8F3 brlo L4
002E .dbline -2
002E .dbline 24
002E ; ;
002E ; }
002E ; }
002E L3:
002E 00D0 rcall pop_gset2
0030 .dbline 0 ; func end
0030 0895 ret
0032 .dbsym l j 1 c
0032 .dbsym r i 20 c
0032 .dbsym r k 22 c
0032 .dbend
0032 .dbfunc e Delay _Delay fV
0032 ; i -> R16
0032 ; j -> R18
0032 ; k -> R20
.even
0032 _Delay::
0032 00D0 rcall push_gset1
0034 .dbline -1
0034 .dbline 28
0034 ;
0034 ; #if PROGRAM_START_FLASH_EN
0034 ; void Delay(void)
0034 ; {
0034 .dbline 30
0034 ; unsigned char i,j,k;
0034 ; for(i=1;i<10;i++)
0034 01E0 ldi R16,1
0036 0BC0 rjmp L16
0038 L13:
0038 .dbline 31
0038 ; for(j=1;j;j++)
0038 21E0 ldi R18,1
003A 06C0 rjmp L20
003C L17:
003C .dbline 32
003C ; {
003C .dbline 33
003C ; for(k=1;k;k++)
003C 41E0 ldi R20,1
003E 01C0 rjmp L24
0040 L21:
0040 .dbline 34
0040 L22:
0040 .dbline 33
0040 4395 inc R20
0042 L24:
0042 .dbline 33
0042 4423 tst R20
0044 E9F7 brne L21
0046 .dbline 35
0046 L18:
0046 .dbline 31
0046 2395 inc R18
0048 L20:
0048 .dbline 31
0048 2223 tst R18
004A C1F7 brne L17
004C L14:
004C .dbline 30
004C 0395 inc R16
004E L16:
004E .dbline 30
004E 0A30 cpi R16,10
0050 98F3 brlo L13
0052 .dbline -2
0052 .dbline 36
0052 ; ;
0052 ; }
0052 ; }
0052 L12:
0052 00D0 rcall pop_gset1
0054 .dbline 0 ; func end
0054 0895 ret
0056 .dbsym r i 16 c
0056 .dbsym r j 18 c
0056 .dbsym r k 20 c
0056 .dbend
0056 .dbfunc e ProgramStart_Flash _ProgramStart_Flash fV
0056 ; v -> R20
.even
0056 _ProgramStart_Flash::
0056 00D0 rcall push_gset1
0058 402F mov R20,R16
005A .dbline -1
005A .dbline 39
005A ;
005A ; void ProgramStart_Flash(INT8U v)
005A ; {
005A .dbline 40
005A ; DDRB=0xff;
005A 8FEF ldi R24,255
005C 87BB out 0x17,R24
005E .dbline 41
005E ; PORTB=v;
005E 48BB out 0x18,R20
0060 .dbline 42
0060 ; DDRD=0xff;
0060 81BB out 0x11,R24
0062 .dbline 43
0062 ; PORTD=v;
0062 42BB out 0x12,R20
0064 .dbline 47
0064 ; // DDRA=0xff; PORTA=v;
0064 ; // DDRC=0xff;
0064 ; // PORTC=v;
0064 ; Delay();
0064 E6DF rcall _Delay
0066 .dbline -2
0066 .dbline 48
0066 ; }
0066 L25:
0066 00D0 rcall pop_gset1
0068 .dbline 0 ; func end
0068 0895 ret
006A .dbsym r v 20 c
006A .dbend
006A .dbfunc e ProgramStart _ProgramStart fV
.even
006A _ProgramStart::
006A .dbline -1
006A .dbline 51
006A ;
006A ; void ProgramStart(void)
006A ; {
006A .dbline 52
006A ; DDRA=0xff; PORTA=0xff;
006A 8FEF ldi R24,255
006C 8ABB out 0x1a,R24
006E .dbline 52
006E 8BBB out 0x1b,R24
0070 .dbline 53
0070 ; DDRC=0xff; PORTC=0xff;
0070 84BB out 0x14,R24
0072 .dbline 53
0072 85BB out 0x15,R24
0074 .dbline 54
0074 ; ProgramStart_Flash(0);
0074 0027 clr R16
0076 EFDF rcall _ProgramStart_Flash
0078 .dbline 55
0078 ; ProgramStart_Flash(0xff);
0078 0FEF ldi R16,255
007A EDDF rcall _ProgramStart_Flash
007C .dbline 56
007C ; ProgramStart_Flash(0);
007C 0027 clr R16
007E EBDF rcall _ProgramStart_Flash
0080 .dbline 57
0080 ; ProgramStart_Flash(0xff);
0080 0FEF ldi R16,255
0082 E9DF rcall _ProgramStart_Flash
0084 .dbline 58
0084 ; ProgramStart_Flash(0);
0084 0027 clr R16
0086 E7DF rcall _ProgramStart_Flash
0088 .dbline 59
0088 ; ProgramStart_Flash(0xff);
0088 0FEF ldi R16,255
008A .dbline -2
008A .dbline 60
008A ; }
008A L26:
008A .dbline 0 ; func end
008A E5CF rjmp _ProgramStart_Flash
008C .dbend
008C .dbfunc e OSError _OSError fV
008C ; i -> R20
008C ; err -> R16
.even
008C _OSError::
008C 00D0 rcall push_gset1
008E .dbline -1
008E .dbline 65
008E ; #endif//PROGRAM_START_FLASH_EN
008E ;
008E ; #if OS_STRICT
008E ; void OSError(INT8U err)
008E ; {
008E .dbline 66
008E ; INT8U i=err;
008E 402F mov R20,R16
0090 01C0 rjmp L29
0092 L28:
0092 .dbline 68
0092 402F mov R20,R16
0094 L29:
0094 .dbline 67
0094 FECF rjmp L28
0096 X0:
0096 .dbline -2
0096 .dbline 69
0096 ; while(1)
0096 ; i=err;
0096 ; }
0096 L27:
0096 00D0 rcall pop_gset1
0098 .dbline 0 ; func end
0098 0895 ret
009A .dbsym r i 20 c
009A .dbsym r err 16 c
009A .dbend
009A .dbfunc e my_putc _my_putc fV
009A ; c -> R20
.even
009A _my_putc::
009A 00D0 rcall push_gset1
009C 402F mov R20,R16
009E .dbline -1
009E .dbline 74
009E ; #endif
009E ;
009E ; #if OS_SEM_EN
009E ; void my_putc(INT8U c)
009E ; {
009E .dbline 78
009E ; #if LCD_EN
009E ; lcd_putc(c);
009E ; #endif
009E ; putchar(c);
009E 042F mov R16,R20
00A0 00D0 rcall _putchar
00A2 .dbline -2
00A2 .dbline 79
00A2 ; }
00A2 L31:
00A2 00D0 rcall pop_gset1
00A4 .dbline 0 ; func end
00A4 0895 ret
00A6 .dbsym r c 20 c
00A6 .dbend
00A6 .dbfunc e task1 _task1 fV
00A6 ; err -> y+2
00A6 ; i -> R20
00A6 ; pdata -> R22,R23
.even
00A6 _task1::
00A6 00D0 rcall push_gset2
00A8 602F mov R22,R16
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -