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

📄 app.lis

📁 AVR megal128下的ucos_ii
💻 LIS
📖 第 1 页 / 共 2 页
字号:
 0054                   .dbline 124
 0054           ; }
 0054           ; /*
 0054           ; *********************************************************************************************************
 0054           ; *                                          STARTUP TASK
 0054           ; *
 0054           ; * Description : This is an example of a startup task.  As mentioned in the book's text, you MUST
 0054           ; *               initialize the ticker only once multitasking has started.
 0054           ; *
 0054           ; * Arguments   : p_arg   is the argument passed to 'AppStartTask()' by 'OSTaskCreate()'.
 0054           ; *
 0054           ; * Notes       : 1) The first line of code is used to prevent a compiler warning because 'p_arg' is not
 0054           ; *                  used.  The compiler should not generate any code for this statement.
 0054           ; *********************************************************************************************************
 0054           ; */
 0054           ; static void  AppTaskStart (void *p_arg)
 0054           ; {
 0054                   .dbline 125
 0054           ;               p_arg = p_arg;          // Prevent compiler warnings
 0054                   .dbline 126
 0054           ;               OSTickISR_Init();      // Initialize the ticker
 0054 0CD0              xcall _OSTickISR_Init
 0056                   .dbline -2
 0056           L4:
 0056 0E940000          xcall pop_gset1
 005A                   .dbline 0 ; func end
 005A 0895              ret
 005C                   .dbsym r p_arg 20 pV
 005C                   .dbend
 005C                   .dbfunc s AppTaskCreate _AppTaskCreate fV
                        .even
 005C           _AppTaskCreate:
 005C                   .dbline -1
 005C                   .dbline 141
 005C           ; }
 005C           ; /*
 005C           ; *********************************************************************************************************
 005C           ; *                                    CREATE APPLICATION TASKS
 005C           ; *
 005C           ; * Description : This function creates the application tasks.
 005C           ; *
 005C           ; * Arguments   : p_arg   is the argument passed to 'AppStartTask()' by 'OSTaskCreate()'.
 005C           ; *
 005C           ; * Notes       : 1) The first line of code is used to prevent a compiler warning because 'p_arg' is not
 005C           ; *                  used.  The compiler should not generate any code for this statement.
 005C           ; *********************************************************************************************************
 005C           ; */
 005C           ; static  void  AppTaskCreate (void)
 005C           ; {
 005C                   .dbline 142
 005C           ;       Init_AppTask1();                 //任务1初始化
 005C 0E940000          xcall _Init_AppTask1
 0060                   .dbline 143
 0060           ;       Init_AppTask2();                 //任务2初始化
 0060 0E940000          xcall _Init_AppTask2
 0064                   .dbline 144
 0064           ;       Init_AppTask6();                 //任务6初始化
 0064 0E940000          xcall _Init_AppTask6
 0068                   .dbline 145
 0068           ;       Init_AppTask8();                 //任务8初始化
 0068 0E940000          xcall _Init_AppTask8
 006C                   .dbline -2
 006C           L5:
 006C                   .dbline 0 ; func end
 006C 0895              ret
 006E                   .dbend
 006E                   .dbfunc e OSTickISR_Init _OSTickISR_Init fV
                        .even
 006E           _OSTickISR_Init::
 006E                   .dbline -1
 006E                   .dbline 152
 006E           ; }
 006E           ; 
 006E           ; //----------------------------------------------------------------------------//
 006E           ; //SETUP THE TICK RATE  //中断在os_cpu_a.s上做定义并与ucos系统相结合
 006E           ; //----------------------------------------------------------------------------//
 006E           ; void  OSTickISR_Init (void)
 006E           ; {
 006E                   .dbline 153
 006E           ;           TCNT0 =0;
 006E 2224              clr R2
 0070 22BE              out 0x32,R2
 0072                   .dbline 154
 0072           ;               TCCR0 = 0x07;                    // Set TIMER0 prescaler to CLK/1024
 0072 87E0              ldi R24,7
 0074 83BF              out 0x33,R24
 0076                   .dbline 155
 0076           ;               TIMSK = 0x01;                    // Enable TIMER0 overflow interrupt
 0076 81E0              ldi R24,1
 0078 87BF              out 0x37,R24
 007A                   .dbline -2
 007A           L6:
 007A                   .dbline 0 ; func end
 007A 0895              ret
 007C                   .dbend
 007C                   .dbfunc e OSTickISR_Handler _OSTickISR_Handler fV
                        .even
 007C           _OSTickISR_Handler::
 007C                   .dbline -1
 007C                   .dbline 161
 007C           ; }
 007C           ; //----------------------------------------------------------------------------//
 007C           ; //     SETUP THE TICK RATE
 007C           ; //----------------------------------------------------------------------------//
 007C           ; void  OSTickISR_Handler (void)
 007C           ; {
 007C                   .dbline 162
 007C           ;                TCNT0 = 0x64;       //100HZ   
 007C 84E6              ldi R24,100
 007E 82BF              out 0x32,R24
 0080                   .dbline 163
 0080           ;                OSTimeTick();
 0080 0E940000          xcall _OSTimeTick
 0084                   .dbline -2
 0084           L7:
 0084                   .dbline 0 ; func end
 0084 0895              ret
 0086                   .dbend
 0086                   .dbfunc e watchdog_init _watchdog_init fV
                        .even
 0086           _watchdog_init::
 0086                   .dbline -1
 0086                   .dbline 172
 0086           ; }
 0086           ; //----------------------------------------------------------------------------//
 0086           ; //函数介绍: 看门狗初始化 (prescale: 2048K cycles = 2s)
 0086           ; //输入参数:--
 0086           ; // 输出参数:--
 0086           ; //返 回 值:--
 0086           ; //----------------------------------------------------------------------------//
 0086           ; void watchdog_init(void)
 0086           ; {
 0086                   .dbline 173
 0086           ;               WDR();
 0086 A895              wdr
 0088                   .dbline 174
 0088           ;               WDTCR = (1<<WDCE)|(1<<WDE);
 0088 88E1              ldi R24,24
 008A 81BD              out 0x21,R24
 008C                   .dbline 175
 008C           ;               WDTCR = (1<<WDE)|(1<<WDP2)|(1<<WDP1)|(1<<WDP0);
 008C 8FE0              ldi R24,15
 008E 81BD              out 0x21,R24
 0090                   .dbline -2
 0090           L8:
 0090                   .dbline 0 ; func end
 0090 0895              ret
 0092                   .dbend
 0092                   .dbfunc s AppIOInit _AppIOInit fV
                        .even
 0092           _AppIOInit:
 0092                   .dbline -1
 0092                   .dbline 182
 0092           ; }
 0092           ;  
 0092           ; //----------------------------------------------------------------------------//
 0092           ; //     SETUP  I/Os
 0092           ; //----------------------------------------------------------------------------//
 0092           ; static void AppIOInit (void)        /*IO全部初始化为高阻态*/
 0092           ; {
 0092                   .dbline 183
 0092           ;  PORTA = 0x00;
 0092 2224              clr R2
 0094 2BBA              out 0x1b,R2
 0096                   .dbline 184
 0096           ;  DDRA  = 0x00;
 0096 2ABA              out 0x1a,R2
 0098                   .dbline 185
 0098           ;  PORTB = 0x00;
 0098 28BA              out 0x18,R2
 009A                   .dbline 186
 009A           ;  DDRB  = 0x00;
 009A 27BA              out 0x17,R2
 009C                   .dbline 187
 009C           ;  PORTC = 0x00; //m103 output only
 009C 25BA              out 0x15,R2
 009E                   .dbline 188
 009E           ;  DDRC  = 0x00;
 009E 24BA              out 0x14,R2
 00A0                   .dbline 189
 00A0           ;  PORTD = 0x00;
 00A0 22BA              out 0x12,R2
 00A2                   .dbline 190
 00A2           ;  DDRD  = 0x00;
 00A2 21BA              out 0x11,R2
 00A4                   .dbline 191
 00A4           ;  PORTE = 0x00;
 00A4 23B8              out 0x3,R2
 00A6                   .dbline 192
 00A6           ;  DDRE  = 0x00;
 00A6 22B8              out 0x2,R2
 00A8                   .dbline 193
 00A8           ;  PORTF = 0x00;
 00A8 20926200          sts 98,R2
 00AC                   .dbline 194
 00AC           ;  DDRF  = 0x00;
 00AC 20926100          sts 97,R2
 00B0                   .dbline 195
 00B0           ;  PORTG = 0x00;
 00B0 20926500          sts 101,R2
 00B4                   .dbline 196
 00B4           ;  DDRG  = 0x00;
 00B4 20926400          sts 100,R2
 00B8                   .dbline -2
 00B8           L9:
 00B8                   .dbline 0 ; func end
 00B8 0895              ret
 00BA                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile D:\编写软件小系统\纯ucos\source\app.c
 0000           _AppTaskStartStk::
 0000                   .blkb 256
 0100                   .dbsym e AppTaskStartStk _AppTaskStartStk A[256:256]c

⌨️ 快捷键说明

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