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

📄 led.lis

📁 本次设计的自动往返电动小汽车
💻 LIS
字号:
                        .module led.c
                        .area code(ram, con, rel)
                        .area lit(rom, con, rel)
 0000           _printtable::
 0000 3F06              .byte 63,6
 0002 5B4F              .byte 91,'O
 0004 666D              .byte 'f,'m
 0006 7D07              .byte 125,7
 0008 7F67              .byte 127,'g
 000A 777C              .byte 'w,124
 000C 395E              .byte 57,94
 000E 7971              .byte 'y,'q
 0010 80                .byte 128
 0011                   .dbfile C:\DOCUME~1\Administrator\桌面\car\led.c
 0011                   .dbsym e printtable _printtable A[17:17]kc
                        .area data(ram, con, rel)
 0000                   .dbfile C:\DOCUME~1\Administrator\桌面\car\led.c
                        .area text(rom, con, rel)
 0000                   .dbfile C:\DOCUME~1\Administrator\桌面\car\led.c
 0000                   .dbfunc e led_init _led_init fV
                        .even
 0000           _led_init::
 0000                   .dbline -1
 0000                   .dbline 17
 0000           ; /*****************************************
 0000           ;  名称: LED显示函数
 0000           ;  入参:断位weizhi ,           数据data
 0000           ;  备注:A口0-A口5控制0位-5位
 0000           ;        B口输出数据内容
 0000           ; ****************************************/
 0000           ; #include <io8515v.h>
 0000           ; #include <macros.h>
 0000           ; #define WEIZHI PORTA
 0000           ; #define DATA   PORTB
 0000           ; 
 0000           ; #pragma data:code
 0000           ; const unsigned char printtable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
 0000           ;                                   0x7f,0x67,0x77,0x7c,0x39,0x5e,0x79,0x71,0x80};              
 0000           ; #pragma data:data             
 0000           ; void led_init(void)
 0000           ; {
 0000                   .dbline 18
 0000           ;  WEIZHI|=0x3F;
 0000 8BB3              in R24,0x1b
 0002 8F63              ori R24,63
 0004 8BBB              out 0x1b,R24
 0006                   .dbline 19
 0006           ;  DATA=0xFF;
 0006 8FEF              ldi R24,255
 0008 88BB              out 0x18,R24
 000A                   .dbline -2
 000A                   .dbline 20
 000A           ;  }                            
 000A           L1:
 000A                   .dbline 0 ; func end
 000A 0895              ret
 000C                   .dbend
 000C                   .dbfunc e led _led fV
 000C           ;           data -> R20
 000C           ;         weizhi -> R22,R23
                        .even
 000C           _led::
 000C 00D0              rcall push_gset2
 000E 422F              mov R20,R18
 0010 602F              mov R22,R16
 0012 712F              mov R23,R17
 0014                   .dbline -1
 0014                   .dbline 22
 0014           ; void led(int weizhi,char data)
 0014           ; {
 0014                   .dbline 23
 0014           ;  led_init();
 0014 F5DF              rcall _led_init
 0016                   .dbline 24
 0016           ;  switch(weizhi)
 0016 6030              cpi R22,0
 0018 6707              cpc R22,R23
 001A A9F0              breq L5
 001C           X0:
 001C 6130              cpi R22,1
 001E E0E0              ldi R30,0
 0020 7E07              cpc R23,R30
 0022 A9F0              breq L6
 0024 6230              cpi R22,2
 0026 E0E0              ldi R30,0
 0028 7E07              cpc R23,R30
 002A A9F0              breq L7
 002C 6330              cpi R22,3
 002E E0E0              ldi R30,0
 0030 7E07              cpc R23,R30
 0032 A9F0              breq L8
 0034 6430              cpi R22,4
 0036 E0E0              ldi R30,0
 0038 7E07              cpc R23,R30
 003A A9F0              breq L9
 003C 6530              cpi R22,5
 003E E0E0              ldi R30,0
 0040 7E07              cpc R23,R30
 0042 A9F0              breq L10
 0044 17C0              rjmp L4
 0046           X1:
 0046                   .dbline 25
 0046           ;               {
 0046           L5:
 0046                   .dbline 26
 0046           ;               case 0:WEIZHI &=0xFE;
 0046 8BB3              in R24,0x1b
 0048 8E7F              andi R24,254
 004A 8BBB              out 0x1b,R24
 004C                   .dbline 27
 004C           ;                                         break;
 004C 13C0              rjmp L4
 004E           L6:
 004E                   .dbline 28
 004E           ;               case 1:WEIZHI &=0xFD;
 004E 8BB3              in R24,0x1b
 0050 8D7F              andi R24,253
 0052 8BBB              out 0x1b,R24
 0054                   .dbline 29
 0054           ;                                         break;
 0054 0FC0              rjmp L4
 0056           L7:
 0056                   .dbline 30
 0056           ;               case 2:WEIZHI &=0xFB;
 0056 8BB3              in R24,0x1b
 0058 8B7F              andi R24,251
 005A 8BBB              out 0x1b,R24
 005C                   .dbline 31
 005C           ;                                         break;
 005C 0BC0              rjmp L4
 005E           L8:
 005E                   .dbline 32
 005E           ;               case 3:WEIZHI &=0xF7;
 005E 8BB3              in R24,0x1b
 0060 877F              andi R24,247
 0062 8BBB              out 0x1b,R24
 0064                   .dbline 33
 0064           ;                                         break;
 0064 07C0              rjmp L4
 0066           L9:
 0066                   .dbline 34
 0066           ;               case 4:WEIZHI &=0xEF;
 0066 8BB3              in R24,0x1b
 0068 8F7E              andi R24,239
 006A 8BBB              out 0x1b,R24
 006C                   .dbline 35
 006C           ;                                         break;
 006C 03C0              rjmp L4
 006E           L10:
 006E                   .dbline 36
 006E           ;               case 5:WEIZHI &=0xDF;
 006E 8BB3              in R24,0x1b
 0070 8F7D              andi R24,223
 0072 8BBB              out 0x1b,R24
 0074                   .dbline 37
 0074           ;                                         break;
 0074                   .dbline 38
 0074           ;               default:      break;
 0074           L4:
 0074                   .dbline 40
 0074           ;               }
 0074           ;  DATA =printtable[data];                      
 0074 80E0              ldi R24,<_printtable
 0076 90E0              ldi R25,>_printtable
 0078 242E              mov R2,R20
 007A 3324              clr R3
 007C 280E              add R2,R24
 007E 391E              adc R3,R25
 0080 E22D              mov R30,R2
 0082 F32D              mov R31,R3
 0084 C895              lpm
 0086 08BA              out 0x18,R0
 0088                   .dbline -2
 0088                   .dbline 41
 0088           ; }
 0088           L2:
 0088 00D0              rcall pop_gset2
 008A                   .dbline 0 ; func end
 008A 0895              ret
 008C                   .dbsym r data 20 c
 008C                   .dbsym r weizhi 22 I
 008C                   .dbend

⌨️ 快捷键说明

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