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

📄 hal.lis

📁 原创
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 0274 8A2D              mov R24,R10
 0276 8730              cpi R24,7
 0278 29F4              brne L68
 027A                   .dbline 183
 027A 80910100          lds R24,_u9_data
 027E 8068              ori R24,128
 0280 80930100          sts _u9_data,R24
 0284           L68:
 0284                   .dbline 184
 0284           ;               if (8==number) u19_data|=0x04;
 0284 8A2D              mov R24,R10
 0286 8830              cpi R24,8
 0288 29F4              brne L70
 028A                   .dbline 184
 028A 80910300          lds R24,_u19_data
 028E 8460              ori R24,4
 0290 80930300          sts _u19_data,R24
 0294           L70:
 0294                   .dbline 185
 0294           ;               if (9==number) u19_data|=0x08;
 0294 8A2D              mov R24,R10
 0296 8930              cpi R24,9
 0298 29F4              brne L72
 029A                   .dbline 185
 029A 80910300          lds R24,_u19_data
 029E 8860              ori R24,8
 02A0 80930300          sts _u19_data,R24
 02A4           L72:
 02A4                   .dbline 187
 02A4 00910100          lds R16,_u9_data
 02A8 C1DE              xcall _U9
 02AA                   .dbline 188
 02AA 00910300          lds R16,_u19_data
 02AE C9DE              xcall _U19
 02B0                   .dbline 190
 02B0           L33:
 02B0                   .dbline -2
 02B0           L31:
 02B0 0E940000          xcall pop_gset4x
 02B4                   .dbline 0 ; func end
 02B4 0895              ret
 02B6                   .dbsym r number 10 c
 02B6                   .dbsym r onoff 12 c
 02B6                   .dbend
 02B6                   .dbfunc e delay_1ms _delay_1ms fV
 02B6           ;              i -> R16,R17
                        .even
 02B6           _delay_1ms::
 02B6                   .dbline -1
 02B6                   .dbline 204
 02B6           ;               
 02B6           ;               U9(u9_data);
 02B6           ;               U19(u19_data);  
 02B6           ;                        
 02B6           ;        } 
 02B6           ;        
 02B6           ;        
 02B6           ; }
 02B6           ; 
 02B6           ; 
 02B6           ; /*************************************************************************************************************
 02B6           ; *     函数名称 :delay_1ms
 02B6           ; *     功能描述 :不是1ms的延时
 02B6           ; *     实际参数 :
 02B6           ; *     返回值   :
 02B6           ; *     说明     :
 02B6           ; *************************************************************************************************************/
 02B6           ; void delay_1ms (void)
 02B6           ; { 
 02B6                   .dbline 206
 02B6           ;        unsigned int i;
 02B6           ;        for (i=1;i<1140;i++)
 02B6 01E0              ldi R16,1
 02B8 10E0              ldi R17,0
 02BA 02C0              xjmp L78
 02BC           L75:
 02BC                   .dbline 207
 02BC           L76:
 02BC                   .dbline 206
 02BC 0F5F              subi R16,255  ; offset = 1
 02BE 1F4F              sbci R17,255
 02C0           L78:
 02C0                   .dbline 206
 02C0 0437              cpi R16,116
 02C2 E4E0              ldi R30,4
 02C4 1E07              cpc R17,R30
 02C6 D0F3              brlo L75
 02C8                   .dbline -2
 02C8           L74:
 02C8                   .dbline 0 ; func end
 02C8 0895              ret
 02CA                   .dbsym r i 16 i
 02CA                   .dbend
 02CA                   .dbfunc e delay _delay fV
 02CA           ;              i -> R10,R11
 02CA           ;              n -> R12,R13
                        .even
 02CA           _delay::
 02CA 0E940000          xcall push_gset4x
 02CE 6801              movw R12,R16
 02D0                   .dbline -1
 02D0                   .dbline 217
 02D0           ;        ;
 02D0           ; }
 02D0           ; /*************************************************************************************************************
 02D0           ; *     函数名称 :delay
 02D0           ; *     功能描述 :
 02D0           ; *     实际参数 :
 02D0           ; *     返回值   :
 02D0           ; *     说明     :
 02D0           ; *************************************************************************************************************/
 02D0           ; void delay (unsigned int n)
 02D0           ; {
 02D0                   .dbline 218
 02D0           ;        unsigned int i=0;
 02D0 AA24              clr R10
 02D2 BB24              clr R11
 02D4 04C0              xjmp L81
 02D6           L80:
 02D6                   .dbline 220
 02D6                   .dbline 221
 02D6 EFDF              xcall _delay_1ms
 02D8                   .dbline 222
 02D8 C501              movw R24,R10
 02DA 0196              adiw R24,1
 02DC 5C01              movw R10,R24
 02DE                   .dbline 223
 02DE           L81:
 02DE                   .dbline 219
 02DE           ;        while (i<n)
 02DE AC14              cp R10,R12
 02E0 BD04              cpc R11,R13
 02E2 C8F3              brlo L80
 02E4                   .dbline -2
 02E4           L79:
 02E4 0E940000          xcall pop_gset4x
 02E8                   .dbline 0 ; func end
 02E8 0895              ret
 02EA                   .dbsym r i 10 i
 02EA                   .dbsym r n 12 i
 02EA                   .dbend
 02EA                   .dbfunc e TempDelay _TempDelay fV
                        .even
 02EA           _TempDelay::
 02EA                   .dbline -1
 02EA                   .dbline 234
 02EA           ;        {
 02EA           ;        delay_1ms();
 02EA           ;        i++;
 02EA           ;        }       
 02EA           ; }     
 02EA           ; 
 02EA           ; 
 02EA           ; /*************************************************************************************************************
 02EA           ; *     函数名称 :TempDelay
 02EA           ; *     功能描述 :有关温度的延时
 02EA           ; *     实际参数 :
 02EA           ; *     返回值   :
 02EA           ; *     说明     :
 02EA           ; *************************************************************************************************************/
 02EA           ; void TempDelay (void){
 02EA                   .dbline 235
 02EA           ;               asm("nop");                                     
 02EA 0000              nop
 02EC                   .dbline 236
 02EC           ;               asm("nop");
 02EC 0000              nop
 02EE                   .dbline 237
 02EE           ;               asm("nop");
 02EE 0000              nop
 02F0                   .dbline 238
 02F0           ;               asm("nop");             
 02F0 0000              nop
 02F2                   .dbline 239
 02F2           ;               asm("nop");                                     
 02F2 0000              nop
 02F4                   .dbline 240
 02F4           ;               asm("nop");
 02F4 0000              nop
 02F6                   .dbline 241
 02F6           ;               asm("nop");
 02F6 0000              nop
 02F8                   .dbline 242
 02F8           ;               asm("nop");             
 02F8 0000              nop
 02FA                   .dbline 243
 02FA           ;               asm("nop");                                     
 02FA 0000              nop
 02FC                   .dbline 244
 02FC           ;               asm("nop");
 02FC 0000              nop
 02FE                   .dbline 245
 02FE           ;               asm("nop");
 02FE 0000              nop
 0300                   .dbline 246
 0300           ;               asm("nop");             
 0300 0000              nop
 0302                   .dbline 247
 0302           ;               asm("nop");                                     
 0302 0000              nop
 0304                   .dbline 248
 0304           ;               asm("nop");
 0304 0000              nop
 0306                   .dbline 249
 0306           ;               asm("nop");
 0306 0000              nop
 0308                   .dbline 250
 0308           ;               asm("nop");
 0308 0000              nop
 030A                   .dbline -2
 030A           L83:
 030A                   .dbline 0 ; func end
 030A 0895              ret
 030C                   .dbend
 030C                   .dbfunc e TempRead6675Dat _TempRead6675Dat fi
 030C           ;            tmp -> R10,R11
 030C           ;              i -> R12
                        .even
 030C           _TempRead6675Dat::
 030C 0E940000          xcall push_gset4x
 0310                   .dbline -1
 0310                   .dbline 263
 0310           ; }
 0310           ; 
 0310           ; 
 0310           ; 
 0310           ; /*************************************************************************************************************
 0310           ; *     函数名称 :TempRead6675Dat
 0310           ; *     功能描述 :读取温度
 0310           ; *     实际参数 :
 0310           ; *     返回值   :
 0310           ; *     说明     :
 0310           ; *************************************************************************************************************/
 0310           ; unsigned int TempRead6675Dat(void)
 0310           ; {
 0310                   .dbline 265
 0310           ;       unsigned char i;
 0310           ;       unsigned int tmp=0;
 0310 AA24              clr R10
 0312 BB24              clr R11
 0314                   .dbline 267
 0314           ;       
 0314           ;       CLRSCK;
 0314 DA98              cbi 0x1b,2
 0316                   .dbline 269
 0316           ; 
 0316           ;       for(i=0;i<15;i++)
 0316 CC24              clr R12
 0318 0CC0              xjmp L88
 031A           L85:
 031A                   .dbline 270
 031A           ;       {
 031A                   .dbline 271
 031A           ;               TempDelay ();                                                                                                   
 031A E7DF              xcall _TempDelay
 031C                   .dbline 272
 031C           ;               if(RSO)
 031C C99B              sbis 0x19,1
 031E 03C0              rjmp L89
 0320                   .dbline 273
 0320           ;                       tmp|=1;
 0320 C501              movw R24,R10
 0322 8160              ori R24,1
 0324 5C01              movw R10,R24
 0326           L89:
 0326                   .dbline 274
 0326 DA9A              sbi 0x1b,2
 0328                   .dbline 275
 0328 AA0C              lsl R10
 032A BB1C              rol R11
 032C                   .dbline 276
 032C DEDF              xcall _TempDelay
 032E                   .dbline 277
 032E DA98              cbi 0x1b,2
 0330                   .dbline 278
 0330           L86:
 0330                   .dbline 269
 0330 C394              inc R12
 0332           L88:
 0332                   .dbline 269
 0332 8C2D              mov R24,R12
 0334 8F30              cpi R24,15
 0336 88F3              brlo L85
 0338                   .dbline 279
 0338           ;               SETSCK;
 0338           ;               tmp<<=1;
 0338           ;               TempDelay ();
 0338           ;               CLRSCK;
 0338           ;       }
 0338           ;       return(tmp>>2);
 0338 8501              movw R16,R10
 033A 1695              lsr R17
 033C 0795              ror R16
 033E 1695              lsr R17
 0340 0795              ror R16
 0342                   .dbline -2
 0342           L84:
 0342 0E940000          xcall pop_gset4x
 0346                   .dbline 0 ; func end
 0346 0895              ret
 0348                   .dbsym r tmp 10 i
 0348                   .dbsym r i 12 c
 0348                   .dbend
 0348                   .dbfunc e TempInit _TempInit fV
                        .even
 0348           _TempInit::
 0348                   .dbline -1
 0348                   .dbline 291
 0348           ; }
 0348           ; 
 0348           ; 
 0348           ; 
 0348           ; /*************************************************************************************************************
 0348           ; *     函数名称 :TempInit
 0348           ; *     功能描述 :初始化6675
 0348           ; *     实际参数 :
 0348           ; *     返回值   :
 0348           ; *     说明     :
 0348           ; *************************************************************************************************************/
 0348           ; void TempInit (void){
 0348                   .dbline 292
 0348           ;        DDRA|= 0x04;      //TSCK
 0348 D29A              sbi 0x1a,2
 034A                   .dbline 293
 034A           ;        DDRA&=~0x02;      //TMISO
 034A D198              cbi 0x1a,1
 034C                   .dbline 295
 034C           ; 
 034C           ;        TempCs(0);        //CS = 0,Enable 6675
 034C 0027              clr R16
 034E 84DE              xcall _TempCs
 0350                   .dbline 297
 0350           ;                                                                                                                                                                                                                                                                                 
 0350           ;        TempRead6675Dat();//进行第一次哑转换
 0350 DDDF              xcall _TempRead6675Dat
 0352                   .dbline 299
 0352           ; 
 0352           ;        TempCs(1);        //CS = 0,Disable 6675         
 0352 01E0              ldi R16,1
 0354 81DE              xcall _TempCs
 0356                   .dbline -2
 0356           L91:
 0356                   .dbline 0 ; func end
 0356 0895              ret
 0358                   .dbend

⌨️ 快捷键说明

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