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

📄 system.lis

📁 《深入浅出AVR单片机——从ATmega48/88/168开始》的实例程序源代码
💻 LIS
📖 第 1 页 / 共 2 页
字号:
 00D4                   .dbline 89
 00D4           L7:
 00D4                   .dbline -2
 00D4           L1:
 00D4                   .dbline 0 ; func end
 00D4 0895              ret
 00D6                   .dbsym r b 16 i
 00D6                   .dbsym r a 18 i
 00D6                   .dbend
 00D6                   .dbfunc e main _main fV
                        .even
 00D6           _main::
 00D6                   .dbline -1
 00D6                   .dbline 99
 00D6           ;     else
 00D6           ;     {
 00D6           ;         LEDDisBuffer[7] = (RecArr[3]>>4);
 00D6           ;         LEDDisBuffer[6] = SPACE;
 00D6           ;         LEDDisBuffer[5] = SPACE;
 00D6           ;         LEDDisBuffer[4] = SPACE;
 00D6           ;         LEDDisBuffer[3] = (RecArr[4]>>4);
 00D6           ;         LEDDisBuffer[2] = (RecArr[4]&0x0F);
 00D6           ;         LEDDisBuffer[1] = (RecArr[5]>>4);
 00D6           ;         LEDDisBuffer[0] = (RecArr[5]&0x0F);
 00D6           ;     }
 00D6           ; }
 00D6           ; 
 00D6           ; /***********************************************************
 00D6           ; *   函数说明:主函数                                       *
 00D6           ; *   输入:    无                                           *
 00D6           ; *   输出:    无                                           *
 00D6           ; *   调用函数:System_INIT()                                *
 00D6           ; ***********************************************************/
 00D6           ; void main(void)
 00D6           ; {
 00D6                   .dbline 100
 00D6           ;     System_INIT();                          //代码初始化
 00D6 00D0              rcall _System_INIT
 00D8                   .dbline 102
 00D8           ;     
 00D8           ;     RecArr[0]=0xFF;
 00D8 8FEF              ldi R24,255
 00DA 80930000          sts _RecArr,R24
 00DE                   .dbline 103
 00DE           ;     RecArr[1]=0xFF;
 00DE 80930100          sts _RecArr+1,R24
 00E2                   .dbline 104
 00E2           ;     RecArr[2]=0xFF;
 00E2 80930200          sts _RecArr+2,R24
 00E6                   .dbline 105
 00E6           ;     RecArr[3]=0xFF;
 00E6 80930300          sts _RecArr+3,R24
 00EA                   .dbline 106
 00EA           ;     RecArr[4]=0xFF;
 00EA 80930400          sts _RecArr+4,R24
 00EE                   .dbline 107
 00EE           ;     RecArr[5]=0xFF;
 00EE 80930500          sts _RecArr+5,R24
 00F2                   .dbline 108
 00F2           ;     LEDDisBuffer[0] = Led__;
 00F2 85E1              ldi R24,21
 00F4 80930000          sts _LEDDisBuffer,R24
 00F8                   .dbline 109
 00F8           ;     LEDDisBuffer[1] = Led__;
 00F8 80930100          sts _LEDDisBuffer+1,R24
 00FC                   .dbline 110
 00FC           ;     LEDDisBuffer[2] = Led__;
 00FC 80930200          sts _LEDDisBuffer+2,R24
 0100                   .dbline 111
 0100           ;     LEDDisBuffer[3] = Led__;
 0100 80930300          sts _LEDDisBuffer+3,R24
 0104                   .dbline 112
 0104           ;     LEDDisBuffer[4] = Led__;
 0104 80930400          sts _LEDDisBuffer+4,R24
 0108                   .dbline 113
 0108           ;     LEDDisBuffer[5] = Led__;
 0108 80930500          sts _LEDDisBuffer+5,R24
 010C                   .dbline 114
 010C           ;     LEDDisBuffer[6] = Led__;
 010C 80930600          sts _LEDDisBuffer+6,R24
 0110                   .dbline 115
 0110           ;     LEDDisBuffer[7] = Led__;
 0110 80930700          sts _LEDDisBuffer+7,R24
 0114                   .dbline 117
 0114           ; 
 0114           ;     TIMERSTART;
 0114 84E0              ldi R24,4
 0116 80938100          sts 129,R24
 011A                   .dbline 119
 011A           ;     
 011A           ;     TWCR |= (1<<TWSTA);                     //启动总线
 011A 8091BC00          lds R24,188
 011E 8062              ori R24,32
 0120 8093BC00          sts 188,R24
 0124 25C0              rjmp L45
 0126           L44:
 0126                   .dbline 121
 0126           ;     while(1)                                //超级循环
 0126           ;     {
 0126                   .dbline 122
 0126           ;         if (ShowTime == TRUE)
 0126 80910000          lds R24,_ShowTime
 012A 8130              cpi R24,1
 012C C1F4              brne L47
 012E                   .dbline 123
 012E           ;         {
 012E                   .dbline 124
 012E           ;             if (RecArr[0] == 0xFF)          //没有任何从机响应
 012E 80910000          lds R24,_RecArr
 0132 8F3F              cpi R24,255
 0134 99F4              brne L49
 0136                   .dbline 125
 0136           ;             {
 0136                   .dbline 126
 0136           ;                 LEDDisBuffer[0] = Led__;
 0136 85E1              ldi R24,21
 0138 80930000          sts _LEDDisBuffer,R24
 013C                   .dbline 127
 013C           ;                 LEDDisBuffer[1] = Led__;
 013C 80930100          sts _LEDDisBuffer+1,R24
 0140                   .dbline 128
 0140           ;                 LEDDisBuffer[2] = Led__;
 0140 80930200          sts _LEDDisBuffer+2,R24
 0144                   .dbline 129
 0144           ;                 LEDDisBuffer[3] = Led__;
 0144 80930300          sts _LEDDisBuffer+3,R24
 0148                   .dbline 130
 0148           ;                 LEDDisBuffer[4] = Led__;
 0148 80930400          sts _LEDDisBuffer+4,R24
 014C                   .dbline 131
 014C           ;                 LEDDisBuffer[5] = Led__;
 014C 80930500          sts _LEDDisBuffer+5,R24
 0150                   .dbline 132
 0150           ;                 LEDDisBuffer[6] = Led__;
 0150 80930600          sts _LEDDisBuffer+6,R24
 0154                   .dbline 133
 0154           ;                 LEDDisBuffer[7] = 0x0E;
 0154 8EE0              ldi R24,14
 0156 80930700          sts _LEDDisBuffer+7,R24
 015A                   .dbline 134
 015A           ;             }
 015A 01C0              rjmp L50
 015C           L49:
 015C                   .dbline 136
 015C           ;             else
 015C           ;             {
 015C                   .dbline 137
 015C           ;                 winner();
 015C 51DF              rcall _winner
 015E                   .dbline 138
 015E           ;             }
 015E           L50:
 015E                   .dbline 139
 015E           ;         }
 015E           L47:
 015E                   .dbline 141
 015E           ;         
 015E           ;         if (DoTime == 1)
 015E 80910000          lds R24,_DoTime
 0162 8130              cpi R24,1
 0164 29F4              brne L58
 0166                   .dbline 142
 0166           ;         {
 0166                   .dbline 143
 0166           ;             DoTime=0;
 0166 2224              clr R2
 0168 20920000          sts _DoTime,R2
 016C                   .dbline 144
 016C           ;             LEDDisplay();
 016C 00D0              rcall _LEDDisplay
 016E                   .dbline 145
 016E           ;             Port_refresh();
 016E 00D0              rcall _Port_refresh
 0170                   .dbline 146
 0170           ;         }
 0170           L58:
 0170                   .dbline 147
 0170           L45:
 0170                   .dbline 120
 0170 DACF              rjmp L44
 0172           X0:
 0172                   .dbline -2
 0172           L31:
 0172                   .dbline 0 ; func end
 0172 0895              ret
 0174                   .dbend

⌨️ 快捷键说明

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