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

📄 wiegand.ls1

📁 c8051f310xmodembootloader.rar
💻 LS1
📖 第 1 页 / 共 5 页
字号:
                     889     ;                   D0IN=0;
                     890                             ; SOURCE LINE # 203
003F C294            891             CLR     D0IN
                     892     ;                  }
                     893                             ; SOURCE LINE # 204
0041 8007            894             SJMP    ?C0048
0043                 895     ?C0047:
                     896     ;                  else
                     897     ;                  {
                     898                             ; SOURCE LINE # 206
                     899     ;                   D0OUT=1;
                     900                             ; SOURCE LINE # 207
0043 D296            901             SETB    D0OUT
                     902     ;                   delayus(90);
                     903                             ; SOURCE LINE # 208
0045 120000   F      904             LCALL   L?0098
                     905     ;                   D0OUT=0;
                     906                             ; SOURCE LINE # 209
0048 C296            907             CLR     D0OUT
                     908     ;                  }
                     909                             ; SOURCE LINE # 210
004A                 910     ?C0048:
                     911     ;                  delayms(2);
                     912                             ; SOURCE LINE # 211
004A                 913     ?C0095:
004A 7F02            914             MOV     R7,#02H
004C 7E00            915             MOV     R6,#00H
A51 MACRO ASSEMBLER  WIEGAND                                                              08/03/2009 16:57:28 PAGE    15

004E 120000   F      916             LCALL   _delayms
                     917     ;                  wiebuf[k]<<=1;
                     918                             ; SOURCE LINE # 212
0051 7400     F      919             MOV     A,#LOW (wiebuf)
0053 29              920             ADD     A,R1
0054 F582            921             MOV     DPL,A
0056 E4              922             CLR     A
0057 3400     F      923             ADDC    A,#HIGH (wiebuf)
0059 F583            924             MOV     DPH,A
005B E0              925             MOVX    A,@DPTR
005C 25E0            926             ADD     A,ACC
005E F0              927             MOVX    @DPTR,A
                     928     ;                 }
                     929                             ; SOURCE LINE # 213
                     930     ;          }  
                     931                             ; SOURCE LINE # 214
005F                 932     ?C0042:
005F 0B              933             INC     R3
0060 EB              934             MOV     A,R3
0061 6408            935             XRL     A,#08H
0063 70A9            936             JNZ     ?C0040
                     937     ; }
                     938                             ; SOURCE LINE # 215
0065                 939     ?C0049:
0065 22              940             RET     
                     941     ; END OF _wiedataout
                     942     
                     943     ; /***************************************************************************************
                     944     ; **函数功能:Even_Parity          偶检验  前12bits or 前16bits
                     945     ; **入参:    wiebuf, wieformat
                     946     ; **返回值:    bit
                     947     ; **作者:      jerkoh
                     948     ; **日期:      2009-06-16
                     949     ; **说明:      无
                     950     ; ***************************************************************************************/
                     951     ; bit even_parity(unsigned char wieformat)
                     952     
----                 953             RSEG  ?PR?_even_parity?WIEGAND
0000                 954     _even_parity:
                     955             USING   0
                     956                             ; SOURCE LINE # 224
                     957     ;---- Variable 'i?452' assigned to Register 'R6' ----
                     958     ;---- Variable 'j?453' assigned to Register 'R5' ----
                     959     ;---- Variable 'wieformat?451' assigned to Register 'R7' ----
                     960     ; {
                     961                             ; SOURCE LINE # 225
                     962     ;   unsigned char i,j;
                     963     ;   bit opt;
                     964     ; 
                     965     ;   if(wieformat==26)
                     966                             ; SOURCE LINE # 229
0000 EF              967             MOV     A,R7
0001 641A            968             XRL     A,#01AH
0003 7030            969             JNZ     ?C0050
                     970     ;    {
                     971                             ; SOURCE LINE # 230
                     972     ;       for(i=0,j=0;i<8;i++)
                     973                             ; SOURCE LINE # 231
0005 FE              974             MOV     R6,A
0006 FD              975             MOV     R5,A
0007                 976     ?C0051:
                     977     ;         {   
                     978                             ; SOURCE LINE # 232
                     979     ;         if(wiebuf[3]&0x80)
                     980                             ; SOURCE LINE # 233
0007 900000   F      981             MOV     DPTR,#wiebuf+03H
A51 MACRO ASSEMBLER  WIEGAND                                                              08/03/2009 16:57:28 PAGE    16

000A E0              982             MOVX    A,@DPTR
000B FF              983             MOV     R7,A
000C 30E701          984             JNB     ACC.7,?C0054
                     985     ;                 {
                     986                             ; SOURCE LINE # 234
                     987     ;                  j++;
                     988                             ; SOURCE LINE # 235
000F 0D              989             INC     R5
                     990     ;                 }
                     991                             ; SOURCE LINE # 236
0010                 992     ?C0054:
                     993     ;                wiebuf[3]<<=1;
                     994                             ; SOURCE LINE # 237
0010 EF              995             MOV     A,R7
0011 25E0            996             ADD     A,ACC
0013 900000   F      997             MOV     DPTR,#wiebuf+03H
0016 F0              998             MOVX    @DPTR,A
                     999     ;         }
                    1000                             ; SOURCE LINE # 238
0017 0E             1001             INC     R6
0018 EE             1002             MOV     A,R6
0019 B408EB         1003             CJNE    A,#08H,?C0051
001C                1004     ?C0052:
                    1005     ;     for(i=0;i<4;i++)
                    1006                             ; SOURCE LINE # 239
001C E4             1007             CLR     A
001D FE             1008             MOV     R6,A
001E                1009     ?C0055:
                    1010     ;         {
                    1011                             ; SOURCE LINE # 240
                    1012     ;           if(wiebuf[4]&0x80)
                    1013                             ; SOURCE LINE # 241
001E 900000   F     1014             MOV     DPTR,#wiebuf+04H
0021 E0             1015             MOVX    A,@DPTR
0022 FF             1016             MOV     R7,A
0023 30E701         1017             JNB     ACC.7,?C0058
                    1018     ;                 {
                    1019                             ; SOURCE LINE # 242
                    1020     ;                  j++;
                    1021                             ; SOURCE LINE # 243
0026 0D             1022             INC     R5
                    1023     ;                 }
                    1024                             ; SOURCE LINE # 244
0027                1025     ?C0058:
                    1026     ;                 wiebuf[4]<<=1;
                    1027                             ; SOURCE LINE # 245
0027 EF             1028             MOV     A,R7
0028 25E0           1029             ADD     A,ACC
002A 900000   F     1030             MOV     DPTR,#wiebuf+04H
002D F0             1031             MOVX    @DPTR,A
                    1032     ;         } 
                    1033                             ; SOURCE LINE # 246
002E 0E             1034             INC     R6
002F EE             1035             MOV     A,R6
0030 B404EB         1036             CJNE    A,#04H,?C0055
0033 802F           1037             SJMP    ?C0059
                    1038     ;    }
                    1039                             ; SOURCE LINE # 247
0035                1040     ?C0050:
                    1041     ;    else                 //34
                    1042     ;       {
                    1043                             ; SOURCE LINE # 249
                    1044     ;         for(i=0,j=0;i<8;i++)
                    1045                             ; SOURCE LINE # 250
0035 E4             1046             CLR     A
0036 FE             1047             MOV     R6,A
A51 MACRO ASSEMBLER  WIEGAND                                                              08/03/2009 16:57:28 PAGE    17

0037 FD             1048             MOV     R5,A
0038                1049     ?C0060:
                    1050     ;         {   
                    1051                             ; SOURCE LINE # 251
                    1052     ;         if(wiebuf[2]&0x80)
                    1053                             ; SOURCE LINE # 252
0038 900000   F     1054             MOV     DPTR,#wiebuf+02H
003B E0             1055             MOVX    A,@DPTR
003C FF             1056             MOV     R7,A
003D 30E701         1057             JNB     ACC.7,?C0063
                    1058     ;                 {
                    1059                             ; SOURCE LINE # 253
                    1060     ;                  j++;
                    1061                             ; SOURCE LINE # 254
0040 0D             1062             INC     R5
                    1063     ;                 }
                    1064                             ; SOURCE LINE # 255
0041                1065     ?C0063:
                    1066     ;                  wiebuf[2]<<=1;
                    1067                             ; SOURCE LINE # 256
0041 EF             1068             MOV     A,R7
0042 25E0           1069             ADD     A,ACC
0044 900000   F     1070             MOV     DPTR,#wiebuf+02H
0047 F0             1071             MOVX    @DPTR,A
                    1072     ;         }
                    1073                             ; SOURCE LINE # 257
0048 0E             1074             INC     R6
0049 EE             1075             MOV     A,R6
004A B408EB         1076             CJNE    A,#08H,?C0060
004D                1077     ?C0061:
                    1078     ;     for(i=0;i<8;i++)
                    1079                             ; SOURCE LINE # 258
004D E4             1080             CLR     A
004E FE             1081             MOV     R6,A
004F                1082     ?C0064:
                    1083     ;         {
                    1084                             ; SOURCE LINE # 259
                    1085     ;           if(wiebuf[3]&0x80)
                    1086                             ; SOURCE LINE # 260
004F 900000   F     1087             MOV     DPTR,#wiebuf+03H
0052 E0             1088             MOVX    A,@DPTR
0053 FF             1089             MOV     R7,A
0054 30E701         1090             JNB     ACC.7,?C0067
                    1091     ;                 {
                    1092                             ; SOURCE LINE # 261
                    1093     ;                  j++;
                    1094                             ; SOURCE LINE # 262
0057 0D             1095             INC     R5
                    1096     ;                 }
                    1097                             ; SOURCE LINE # 263
0058                1098     ?C0067:
                    1099     ;                 wiebuf[3]<<=1;
                    1100                             ; SOURCE LINE # 264
0058 EF             1101             MOV     A,R7
0059 25E0           1102             ADD     A,ACC
005B 900000   F     1103             MOV     DPTR,#wiebuf+03H
005E F0             1104             MOVX    @DPTR,A
                    1105     ;         } 
                    1106                             ; SOURCE LINE # 265
005F 0E             1107             INC     R6
0060 EE             1108             MOV     A,R6
0061 B408EB         1109             CJ

⌨️ 快捷键说明

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