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

📄 1.ls1

📁 本设计采用ATMEL公司的AT89S52单片机和红外遥控技术实现近距离无线通信的软硬件系统。为了使受控设备识别信号
💻 LS1
📖 第 1 页 / 共 5 页
字号:
0032 6023            444             JZ      ?C0033
0034 24F8            445             ADD     A,#0F8H
0036 601A            446             JZ      ?C0032
0038 24FC            447             ADD     A,#0FCH
003A 6011            448             JZ      ?C0031
003C 24FE            449             ADD     A,#0FEH
003E 6008            450             JZ      ?C0030
0040 14              451             DEC     A
0041 7026            452             JNZ     ?C0026
                     453     ;             {
                     454                             ; SOURCE LINE # 87
A51 MACRO ASSEMBLER  1                                                                    06/10/2007 20:32:48 PAGE     8

                     455     ;              case 0xfe:l=0x7f;break;
                     456                             ; SOURCE LINE # 88
0043                 457     ?C0029:
0043 75007F   F      458             MOV     l?342,#07FH
0046 8021            459             SJMP    ?C0026
                     460     ;                  case 0xfd:l=0x6f;break;
                     461                             ; SOURCE LINE # 89
0048                 462     ?C0030:
0048 75006F   F      463             MOV     l?342,#06FH
004B 801C            464             SJMP    ?C0026
                     465     ;                  case 0xfb:l=0x77;break;
                     466                             ; SOURCE LINE # 90
004D                 467     ?C0031:
004D 750077   F      468             MOV     l?342,#077H
0050 8017            469             SJMP    ?C0026
                     470     ;                  case 0xf7:l=0x7c;break;
                     471                             ; SOURCE LINE # 91
0052                 472     ?C0032:
0052 75007C   F      473             MOV     l?342,#07CH
0055 8012            474             SJMP    ?C0026
                     475     ;                  case 0xef:l=0x39;break;      
                     476                             ; SOURCE LINE # 92
0057                 477     ?C0033:
0057 750039   F      478             MOV     l?342,#039H
005A 800D            479             SJMP    ?C0026
                     480     ;                  case 0xdf:l=0x5e;break;
                     481                             ; SOURCE LINE # 93
005C                 482     ?C0034:
005C 75005E   F      483             MOV     l?342,#05EH
005F 8008            484             SJMP    ?C0026
                     485     ;                  case 0xbf:l=0x79;break;
                     486                             ; SOURCE LINE # 94
0061                 487     ?C0035:
0061 750079   F      488             MOV     l?342,#079H
0064 8003            489             SJMP    ?C0026
                     490     ;                  case 0x7f:l=0x02;break;       
                     491                             ; SOURCE LINE # 95
0066                 492     ?C0036:
0066 750002   F      493             MOV     l?342,#02H
                     494     ;                  default: break;                                        //读键值
                     495                             ; SOURCE LINE # 96
                     496     ;              } 
                     497                             ; SOURCE LINE # 97
                     498     ;                 }
                     499                             ; SOURCE LINE # 98
                     500     ;         }
                     501                             ; SOURCE LINE # 99
0069                 502     ?C0026:
                     503     ;         return l;
                     504                             ; SOURCE LINE # 100
0069 AF00     F      505             MOV     R7,l?342
                     506     ;   }
                     507                             ; SOURCE LINE # 101
006B                 508     ?C0038:
006B 22              509             RET     
                     510     ; END OF kbscan2
                     511     
                     512     ; 
                     513     ;       /*=========显示函数==========*/ 
                     514     ;       void display(uchar n)    
                     515     
----                 516             RSEG  ?PR?_display?1
0000                 517     _display:
                     518                             ; SOURCE LINE # 104
                     519     ;---- Variable 'n?443' assigned to Register 'R7' ----
                     520     ;          {   
A51 MACRO ASSEMBLER  1                                                                    06/10/2007 20:32:48 PAGE     9

                     521                             ; SOURCE LINE # 105
                     522     ;              P2=n;
                     523                             ; SOURCE LINE # 106
0000 8FA0            524             MOV     P2,R7
                     525     ;           } 
                     526                             ; SOURCE LINE # 107
0002 22              527             RET     
                     528     ; END OF _display
                     529     
                     530     ; 
                     531     ;         /*=========发射调制后的高电平函数==========*/ 
                     532     ;         void sendh(uchar n)
                     533     
----                 534             RSEG  ?PR?_sendh?1
0000                 535     _sendh:
                     536             USING   0
                     537                             ; SOURCE LINE # 110
                     538     ;---- Variable 'n?544' assigned to Register 'R7' ----
                     539     ;               { 
                     540                             ; SOURCE LINE # 111
                     541     ;                 uchar e;                                                                 
                                                                   
                     542     ;                 sendport=1;              
                     543                             ; SOURCE LINE # 113
0000 D2B0            544             SETB    sendport
                     545     ;                 for(e=0;e<n;e++)      
                     546                             ; SOURCE LINE # 114
                     547     ;---- Variable 'e?545' assigned to Register 'R6' ----
0002 E4              548             CLR     A
0003 FE              549             MOV     R6,A
0004                 550     ?C0040:
0004 EE              551             MOV     A,R6
0005 C3              552             CLR     C
0006 9F              553             SUBB    A,R7
0007 5009            554             JNC     ?C0043
                     555     ;                 {             
                     556                             ; SOURCE LINE # 115
                     557     ;          #pragma ASM
                     558     ;                 NOP
0009 00              559               NOP
                     560     ;                 NOP
000A 00              561               NOP
                     562     ;                 NOP
000B 00              563               NOP
                     564     ;                 NOP
000C 00              565               NOP
                     566     ;                 #pragma ENDASM
                     567     ;                 sendport=!sendport;           
                     568                             ; SOURCE LINE # 122
000D B2B0            569             CPL     sendport
                     570     ;                 }     
                     571                             ; SOURCE LINE # 123
000F 0E              572             INC     R6
0010 80F2            573             SJMP    ?C0040
                     574     ;           }
                     575                             ; SOURCE LINE # 124
0012                 576     ?C0043:
0012 22              577             RET     
                     578     ; END OF _sendh
                     579     
                     580     ; 
                     581     ;        /*=========发射函数==========*/ 
                     582     ;    void send(uchar qq)
                     583     
----                 584             RSEG  ?PR?_send?1
0000                 585     _send:
A51 MACRO ASSEMBLER  1                                                                    06/10/2007 20:32:48 PAGE    10

                     586             USING   0
                     587                             ; SOURCE LINE # 127
                     588     ;---- Variable 'qq?646' assigned to Register 'R7' ----
                     589     ;   {
                     590                             ; SOURCE LINE # 128
                     591     ;     bit c;
                     592     ;     uchar i;
                     593     ;       datayuan=qq;    
                     594                             ; SOURCE LINE # 131
0000 8F00     F      595             MOV     datayuan,R7
                     596     ;       datafan=~qq;
                     597                             ; SOURCE LINE # 132
0002 EF              598             MOV     A,R7
0003 F4              599             CPL     A
0004 F500     F      600             MOV     datafan,A
                     601     ;     sendh(0xef);         //发送起始位 高电平
                     602                             ; SOURCE LINE # 133
0006 7FEF            603             MOV     R7,#0EFH
0008 120000   F      604             LCALL   _sendh
                     605     ;     delay(0x007a);      //发送起始位  低电平
                     606                             ; SOURCE LINE # 134
000B 7F7A            607             MOV     R7,#07AH
000D 7E00            608             MOV     R6,#00H
000F 120000   F      609             LCALL   _delay
                     610     ;     address=0x55;     //地址码
                     611                             ; SOURCE LINE # 135
0012 750055   F      612             MOV     address,#055H
                     613     ; 
                     614     ;     for(i=0;i<8;i++)        
                     615                             ; SOURCE LINE # 137
                     616     ;---- Variable 'i?648' assigned to Register 'R5' ----
0015 E4              617             CLR     A
0016 FD              618             MOV     R5,A
0017                 619     ?C0044:
                     620     ;    {
                     621                             ; SOURCE LINE # 138
                     622     ;      c=ad7;   
                     623                             ; SOURCE LINE # 139
0017 A200     F      624             MOV     C,ad7
0019 9200     F      625             MOV     c?647,C
                     626     ;      if(c==1) 
                     627                             ; SOURCE LINE # 140
001B 300004   F      628             JNB     c?647,?C0047
                     629     ;      sendh(0x9f);
                     630                             ; SOURCE LINE # 141
001E 7F9F            631             MOV     R7,#09FH
0020 8002            632             SJMP    ?C0088
0022                 633     ?C0047:
                     634     ;        else 
                     635     ;      sendh(0x4f); 
                     636                             ; SOURCE LINE # 143
0022 7F4F            637             MOV     R7,#04FH
0024                 638     ?C0088:
0024 120000   F      639             LCALL   _sendh
0027                 640     ?C0048:
                     641     ;      delay(0x0082);
                     642                             ; SOURCE LINE # 144
0027 120000   F      643             LCALL   L?0092
                     644     ;        address<<=1;  
                     645                             ; SOURCE LINE # 145
002A E500     F      646             MOV     A,address
002C 25E0            647             ADD     A,ACC
002E F500     F      648             MOV     address,A
                     649     ;     }                         //发送地址位 
                     650                             ; SOURCE LINE # 146
0030 0D              651             INC     R5
A51 MACRO ASSEMBLER  1                                                                    06/10/2007 20:32:48 PAGE    11

0031 BD08E3          652             CJNE    R5,#08H,?C0044
0034                 653     ?C0045:
                     654     ;     
                     655     ;      for(i=0;i<8;i++)              
                     656                             ; SOURCE LINE # 148
0034 E4              657             CLR     A
0035 FD              658             MOV     R5,A
0036                 659     ?C0049:
                     660     ;      {
                     661                             ; SOURCE LINE # 149
                     662     ;         c=datayuan7;
                     663                             ; SOURCE LINE # 150
0036 A200     F      664             MOV     C,datayuan7
0038 9200     F      665             MOV     c?647,C
                     666     ;         if(c==1)

⌨️ 快捷键说明

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