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

📄 system.lis

📁 《深入浅出AVR单片机——从ATmega48/88/168开始》的实例程序源代码
💻 LIS
字号:
                        .module System.c
                        .area text(rom, con, rel)
 0000                   .dbfile D:\设计项目\深入浅出AVR\光盘文件\实例程序源代码\实例12_复杂闪烁控制\实例12_复杂闪烁控制_单灯连闪\System.c
 0000                   .dbfunc e LED_Flash _LED_Flash fV
                        .even
 0000           _LED_Flash::
 0000                   .dbline -1
 0000                   .dbline 59
 0000           ; /***********************************************************
 0000           ; *   源程序说明:                                           *
 0000           ; *   版本:                                                 *
 0000           ; *   作者:                                                 *
 0000           ; *   创建日期:                                             *
 0000           ; * -------------------------------------------------------- *
 0000           ; *  [支 持 库]                                              *
 0000           ; *   支持库名称:PF_Config.h                                *
 0000           ; *   需要版本:  -----                                      *
 0000           ; *   支持库说明:硬件平台配置声明库                         *
 0000           ; * -------------------------------------------------------- *
 0000           ; *  [版本更新]                                              *
 0000           ; *   修改:                                                 *
 0000           ; *   修改日期:                                             *
 0000           ; *   版本:                                                 *
 0000           ; * -------------------------------------------------------- *
 0000           ; *  [版本历史]                                              *
 0000           ; * -------------------------------------------------------- *
 0000           ; *  [使用说明]                                              *
 0000           ; ***********************************************************/
 0000           ; 
 0000           ; /********************
 0000           ; * 头 文 件 配 置 区 *
 0000           ; ********************/
 0000           ; # include "PF_Config.h"
 0000           ; 
 0000           ; /********************
 0000           ; *   系 统 宏 定 义  *
 0000           ; ********************/
 0000           ; 
 0000           ; /*------------------*
 0000           ; *   常 数 宏 定 义  *
 0000           ; *------------------*/
 0000           ; 
 0000           ; /*------------------*
 0000           ; *   动 作 宏 定 义  *
 0000           ; *------------------*/
 0000           ; 
 0000           ; /********************
 0000           ; *  模块结构体定义区 *
 0000           ; ********************/
 0000           ; 
 0000           ; /********************
 0000           ; *   模块函数声明区  *
 0000           ; ********************/
 0000           ; 
 0000           ; /********************
 0000           ; *   模块变量声明区  *
 0000           ; ********************/
 0000           ; 
 0000           ; /***********************************************************
 0000           ; *   函数说明:LED闪烁控制函数                              *
 0000           ; *   输入:    无                                           *
 0000           ; *   输出:    无                                           *
 0000           ; *   调用函数:                                             *
 0000           ; ***********************************************************/
 0000           ; 
 0000           ; void LED_Flash (void)
 0000           ; {
 0000                   .dbline 60
 0000           ;     switch (TimeStamp)
 0000 20900000          lds R2,_TimeStamp
 0004 30900100          lds R3,_TimeStamp+1
 0008 2220              tst R2
 000A 11F4              brne X0
 000C 3320              tst R3
 000E 89F0              breq L4
 0010           X0:
 0010 80910000          lds R24,_TimeStamp
 0014 90910100          lds R25,_TimeStamp+1
 0018 8130              cpi R24,1
 001A E0E0              ldi R30,0
 001C 9E07              cpc R25,R30
 001E 59F0              breq L5
 0020 8230              cpi R24,2
 0022 E0E0              ldi R30,0
 0024 9E07              cpc R25,R30
 0026 49F0              breq L6
 0028 8330              cpi R24,3
 002A E0E0              ldi R30,0
 002C 9E07              cpc R25,R30
 002E 39F0              breq L7
 0030 07C0              rjmp L2
 0032           X1:
 0032                   .dbline 61
 0032           ;     {
 0032           L4:
 0032                   .dbline 63
 0032           ;         case 0 :
 0032           ;         {
 0032                   .dbline 64
 0032           ;             LED_ON;
 0032 4598              cbi 0x8,5
 0034                   .dbline 64
 0034                   .dbline 65
 0034           ;             break;
 0034 05C0              rjmp L3
 0036           L5:
 0036                   .dbline 69
 0036           ;         }
 0036           ;         
 0036           ;         case 1 :
 0036           ;         {
 0036                   .dbline 70
 0036           ;             LED_OFF;
 0036 459A              sbi 0x8,5
 0038                   .dbline 70
 0038                   .dbline 71
 0038           ;             break;
 0038 03C0              rjmp L3
 003A           L6:
 003A                   .dbline 75
 003A           ;         }
 003A           ;         
 003A           ;         case 2 :
 003A           ;         {
 003A                   .dbline 76
 003A           ;             LED_ON;
 003A 4598              cbi 0x8,5
 003C                   .dbline 76
 003C                   .dbline 77
 003C           ;             break;
 003C 01C0              rjmp L3
 003E           L7:
 003E                   .dbline 81
 003E           ;         }
 003E           ;         
 003E           ;         case 3 :
 003E           ;         {
 003E                   .dbline 82
 003E           ;             LED_OFF;
 003E 459A              sbi 0x8,5
 0040                   .dbline 82
 0040                   .dbline 83
 0040           ;             break;
 0040           L2:
 0040           L3:
 0040                   .dbline -2
 0040           L1:
 0040                   .dbline 0 ; func end
 0040 0895              ret
 0042                   .dbend
 0042                   .dbfunc e main _main fV
                        .even
 0042           _main::
 0042                   .dbline -1
 0042                   .dbline 95
 0042           ;         }
 0042           ;     }
 0042           ; }
 0042           ; 
 0042           ; /***********************************************************
 0042           ; *   函数说明:主函数                                       *
 0042           ; *   输入:    无                                           *
 0042           ; *   输出:    无                                           *
 0042           ; *   调用函数:System_INIT()                                *
 0042           ; ***********************************************************/
 0042           ; void main(void)
 0042           ; {
 0042                   .dbline 96
 0042           ;     System_INIT();               //代码初始化
 0042 00D0              rcall _System_INIT
 0044 08C0              rjmp L10
 0046           L9:
 0046                   .dbline 99
 0046           ; 
 0046           ;     while(TRUE)                  //超级循环
 0046           ;     {
 0046                   .dbline 100
 0046           ;         if (DoFLASH == TRUE)
 0046 80910000          lds R24,_DoFLASH
 004A 8130              cpi R24,1
 004C 21F4              brne L12
 004E                   .dbline 101
 004E           ;         {
 004E                   .dbline 102
 004E           ;             LED_Flash();         //当闪烁执行标志为真时,调用闪烁控制函数
 004E D8DF              rcall _LED_Flash
 0050                   .dbline 103
 0050           ;             DoFLASH = FALSE;
 0050 2224              clr R2
 0052 20920000          sts _DoFLASH,R2
 0056                   .dbline 104
 0056           ;         }
 0056           L12:
 0056                   .dbline 105
 0056           L10:
 0056                   .dbline 98
 0056 F7CF              rjmp L9
 0058           X2:
 0058                   .dbline -2
 0058           L8:
 0058                   .dbline 0 ; func end
 0058 0895              ret
 005A                   .dbend

⌨️ 快捷键说明

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