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

📄 app.lis

📁 AVR megal128下的ucos_ii
💻 LIS
📖 第 1 页 / 共 2 页
字号:
                        .module app.c
                        .area vector(rom, abs)
                        .org 64
 0040 0C940000          jmp _OSTickISR
                        .org 72
 0048 0C940000          jmp _uart0_rx_isr
                        .org 76
 004C 0C940000          jmp _uart0_udre_isr
                        .org 120
 0078 0C940000          jmp _uart1_rx_isr
                        .org 124
 007C 0C940000          jmp _uart1_udre_isr
                        .area text(rom, con, rel)
 0000                   .dbfile D:\编写软件小系统\纯ucos\source\app.c
 0000                   .dbfunc e BeeIO _BeeIO fV
                        .even
 0000           _BeeIO::
 0000                   .dbline -1
 0000                   .dbline 46
 0000           ; /*******************************************************************************
 0000           ; *************************** * Copyright       : COPYRIGHT(C) 1997-2005
 0000           ; 
 0000           ; 
 0000           ; * Project Name    :    UCOS2纯系统
 0000           ; * File name       :
 0000           ; * Crystal         :    16MHZ
 0000           ; * PCB P/N         :
 0000           ; * Comments        :
 0000           ; * SoftWareP/N     :
 0000           ; * ----------< History >---------------------------------------------------------
 0000           ; 
 0000           ; * File Version    :  1.0
 0000           ; * Author          :  jjx
 0000           ; * E-Mail          :  
 0000           ; * Date            :  2008 10 08
 0000           ; * Comments        :  
 0000           ; *******************************************************************************/
 0000           ; 
 0000           ; #include  "includes.h"
 0000           ; #include  "Publics.H"
 0000           ; 
 0000           ; //在os_cfg.h中作修改
 0000           ; #define  OS_TASK_START_STK_SIZE        OS_TASK_STK_SIZE
 0000           ; #define  OS_TASK_START_HARD_STK_SIZE   OS_TASK_HARD_STK_SIZE
 0000           ; 
 0000           ; OS_STK  AppTaskStartStk[OS_TASK_START_STK_SIZE];
 0000           ; 
 0000           ; 
 0000           ; /*
 0000           ; **************************************************************************************************************
 0000           ; *                                           FUNCTION PROTOTYPES
 0000           ; **************************************************************************************************************
 0000           ; */
 0000           ; 
 0000           ; 
 0000           ; static  void  AppTaskStart (void *p_arg);
 0000           ; static  void  AppTaskCreate(void);
 0000           ; static  void  AppIOInit(void);
 0000           ; 
 0000           ; void watchdog_init(void);
 0000           ; 
 0000           ; 
 0000           ; 
 0000           ; void  BeeIO(void)
 0000           ; {
 0000                   .dbline 47
 0000           ;  PORTB&=~(1<<PB5);
 0000 C598              cbi 0x18,5
 0002                   .dbline 49
 0002           ;  //PORTB|=1<<PB5;
 0002           ;  DDRB|=1<<PB5;
 0002 BD9A              sbi 0x17,5
 0004                   .dbline -2
 0004           L1:
 0004                   .dbline 0 ; func end
 0004 0895              ret
 0006                   .dbend
 0006                   .dbfunc e timer1_init _timer1_init fV
                        .even
 0006           _timer1_init::
 0006                   .dbline -1
 0006                   .dbline 53
 0006           ;  }
 0006           ;  
 0006           ;  void timer1_init(void)               //接15脚,OC1A,为定时器T/C1
 0006           ; {   
 0006                   .dbline 54
 0006           ;     TCCR1B=0x00;                     //关闭
 0006 2224              clr R2
 0008 2EBC              out 0x2e,R2
 000A                   .dbline 56
 000A           ;       //TCCR3B = 0x00; //stop
 000A           ;       OCR1AH = 0x00;                   //16位的比较PWM高位    
 000A 2BBC              out 0x2b,R2
 000C                   .dbline 65
 000C           ;       //OCR3AH = 0x00;
 000C           ;       //OCR3AL = 0xe6;  //2 k
 000C           ;       //OCR3AL = 0x99;  //3 k
 000C           ;       //OCR3AL = 0x73;  //4 k
 000C           ;       //OCR3AL = 0x5c;  //5 k
 000C           ;       //OCR3AL = 0x4c;  //6 k
 000C           ;       //OCR1AL = 0x41;
 000C           ;       //OCR1AL = 0x89;
 000C           ;       OCR1AL = 0xe6;
 000C 86EE              ldi R24,230
 000E 8ABD              out 0x2a,R24
 0010                   .dbline 70
 0010           ;       //OCR1AL = 0x73;  //7 k形        //16位的比较PWM低位
 0010           ;       //OCR3AL = 0x39;  //8 k
 0010           ;       //OCR3AL = 0x33;  //9 k
 0010           ;       //OCR3AL = 0x2e;  //10 k        
 0010           ;       TCCR1A=0x40;                     //CTC模式
 0010 80E4              ldi R24,64
 0012 8FBD              out 0x2f,R24
 0014                   .dbline -2
 0014           L2:
 0014                   .dbline 0 ; func end
 0014 0895              ret
 0016                   .dbend
 0016                   .dbfunc e main _main fV
 0016           ;           temp -> y+0
 0016           ;             ko -> R20
 0016           ;             it -> R20
                        .even
 0016           _main::
 0016 2197              sbiw R28,1
 0018                   .dbline -1
 0018                   .dbline 83
 0018           ;       }
 0018           ;       
 0018           ; /*
 0018           ; **************************************************************************************************************
 0018           ; *                                                MAIN
 0018           ; *
 0018           ; * Note(s): 1) You SHOULD use OS_TASK_STK_SIZE (see OS_CFG.H) when setting OSTaskStkSize prior to calling
 0018           ; *             OSInit() because OS_TASK_IDLE_STK_SIZE and OS_TASK_STAT_STK_SIZE are set to this value in
 0018           ; *             OS_CFG.H.
 0018           ; **************************************************************************************************************
 0018           ; */
 0018           ; void  main (void)
 0018           ; {
 0018                   .dbline 84
 0018           ;       INT8U it =0;
 0018 4427              clr R20
 001A                   .dbline 85
 001A           ;       INT8U ko=0;
 001A                   .dbline 88
 001A           ; 
 001A           ;       INT8U  temp;                                                                                // IMPORTANT: MUST be setup before calling 'OSInit()'
 001A           ;       OSTaskStkSize     = OS_TASK_STK_SIZE;       // Setup the default stack size
 001A 80E0              ldi R24,256
 001C 91E0              ldi R25,1
 001E 90930100          sts _OSTaskStkSize+1,R25
 0022 80930000          sts _OSTaskStkSize,R24
 0026                   .dbline 89
 0026           ;       OSTaskHardStkSize = OS_TASK_HARD_STK_SIZE;  // Setup the default hardware stack size
 0026 80E4              ldi R24,64
 0028 90E0              ldi R25,0
 002A 90930100          sts _OSTaskHardStkSize+1,R25
 002E 80930000          sts _OSTaskHardStkSize,R24
 0032                   .dbline 90
 0032           ;     AppIOInit();
 0032 2FD0              xcall _AppIOInit
 0034                   .dbline 92
 0034           ; 
 0034           ;       BeeIO();
 0034 E5DF              xcall _BeeIO
 0036                   .dbline 93
 0036           ;       timer1_init();
 0036 E7DF              xcall _timer1_init
 0038                   .dbline 96
 0038           ;       
 0038           ;       
 0038           ;       OSInit();                                   // Initialize "uC/OS-II, The Real-Time Kernel"
 0038 0E940000          xcall _OSInit
 003C                   .dbline 97
 003C           ;       watchdog_init();
 003C 24D0              xcall _watchdog_init
 003E                   .dbline 102
 003E           ;        
 003E           ;  //---- Any initialization code before starting multitasking --------------//
 003E           ; 
 003E           ;  // View_Pic(aVfdDispRAM1,DisplayBuff1,1);
 003E           ;       AppTaskCreate();
 003E 0ED0              xcall _AppTaskCreate
 0040                   .dbline 103
 0040           ;       AppTaskStart(&temp);
 0040 8E01              movw R16,R28
 0042 05D0              xcall _AppTaskStart
 0044                   .dbline 106
 0044           ; 
 0044           ;  //---- Create any other task you want before we start multitasking -------//
 0044           ;       WDR();
 0044 A895              wdr
 0046                   .dbline 108
 0046           ;    
 0046           ;       OSStart(); //Start multitasking (i.e. give control to uC/OS-II)
 0046 0E940000          xcall _OSStart
 004A                   .dbline -2
 004A           L3:
 004A 2196              adiw R28,1
 004C                   .dbline 0 ; func end
 004C 0895              ret
 004E                   .dbsym l temp 0 c
 004E                   .dbsym r ko 20 c
 004E                   .dbsym r it 20 c
 004E                   .dbend
 004E                   .dbfunc s AppTaskStart _AppTaskStart fV
 004E           ;          p_arg -> R20,R21
                        .even
 004E           _AppTaskStart:
 004E 0E940000          xcall push_gset1
 0052 A801              movw R20,R16
 0054                   .dbline -1

⌨️ 快捷键说明

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