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

📄 comm.ls1

📁 SPWM三相波形发生器
💻 LS1
📖 第 1 页 / 共 5 页
字号:
0207                 342     syncode:
0207 47505253        343             DB  'G' ,'P' ,'R' ,'S' 
                     344     
                     345     
                     346     
----                 347             RSEG  ?C_INITSEG
0000 02              348             DB      002H
0001 00       F      349             DB      CrcTabL
0002 0000     F      350             DW      ?SC_0    ; ptr2
A51 MACRO ASSEMBLER  COMM                                                                 12/03/2004 17:52:51 PAGE     8

                     351     
0004 02              352             DB      002H
0005 00       F      353             DB      CrcTabH
0006 0000     F      354             DW      ?SC_257  ; ptr2
                     355     
                     356     ; #include <reg52.h>
                     357     ; #include "MENUADDRESS.H"
                     358     ; #include <string.h>
                     359     ; #include <absacc.h>
                     360     ; 
                     361     ; #define uchar unsigned char
                     362     ; #define uint  unsigned int
                     363     ; 
                     364     ; #define       XTAL       11059200     /* CPU Oscillator Frequency *///
                     365     ; #define       EXP_XTAL        11059200//   14745600
                     366     ; 
                     367     ; #define       EXP_RHR 0x8000
                     368     ; #define       EXP_THR 0x8000
                     369     ; #define       EXP_DLL 0x8000
                     370     ; #define       EXP_DLM 0x8100
                     371     ; #define       EXP_IER 0x8100
                     372     ; #define       EXP_ISR 0x8200
                     373     ; #define       EXP_FCR 0x8200
                     374     ; #define       EXP_LCR 0x8300
                     375     ; #define       EXP_MCR 0x8400
                     376     ; #define       EXP_LSR 0x8500
                     377     ; #define       EXP_EFR 0x8200
                     378     ; 
                     379     ; sfr    AUXR = 0x8E;
                     380     ; 
                     381     ; sbit TR_485 = P1^1;   //reset  mc35   at least 100 ms.        can't use P1_4.
                     382     ; sbit RTS = P1^0;      //reset  mc35   at least 100 ms.        can't use P1_4.
                     383     ; sbit CTS = P1^5;      //reset  mc35   at least 100 ms.        can't use P1_4.
                     384     ; sbit D3 = P1^2;       //reset  mc35   at least 100 ms.        can't use P1_4.
                     385     ; sbit D4 = P3^5;       //reset  mc35   at least 100 ms.        can't use P1_4.
                     386     ; sbit D5 = P3^4;       //reset  mc35   at least 100 ms.        can't use P1_4.
                     387     ; 
                     388     ; //define int number
                     389     ; #define               DEF_INT_EX0                             0
                     390     ; #define               DEF_INT_TIME0                   1
                     391     ; #define               DEF_INT_EX1                             2
                     392     ; #define               DEF_INT_TIME1                   3
                     393     ; #define               DEF_INT_ASYNC                   4
                     394     ; 
                     395     ; #define               DEF_COMMBUFF_LEN                520
                     396     ; #define               EXP_COMMBUFF_LEN                520
                     397     ; #define               DEF_PARITY_NON                  0x00
                     398     ; #define               DEF_PARITY_EVEN                 0x01
                     399     ; #define               DEF_PARITY_ODD                  0x02
                     400     ; #define               DEF_PARITY_2STOP                0x03
                     401     ; #define               DEF_CRC_OK                              0xB8F0
                     402     ; 
                     403     ; uchar code *CrcTabL =
                     404     ; "\x00\x11\x23\x32\x46\x57\x65\x74\x8c\x9d\xaf\xbe\xca\xdb\xe9\xf8\x10\x01\x33\x22\x56\x47
                             \x75\x64\x9c\x8d\xbf\xae\xda\xcb\xf9\xe8"
                     405     ; "\x21\x30\x02\x13\x67\x76\x44\x55\xad\xbc\x8e\x9f\xeb\xfa\xc8\xd9\x31\x20\x12\x03\x77\x66
                             \x54\x45\xbd\xac\x9e\x8f\xfb\xea\xd8\xc9"
                     406     ; "\x42\x53\x61\x70\x04\x15\x27\x36\xce\xdf\xed\xfc\x88\x99\xab\xba\x52\x43\x71\x60\x14\x05
                             \x37\x26\xde\xcf\xfd\xec\x98\x89\xbb\xaa"
                     407     ; "\x63\x72\x40\x51\x25\x34\x06\x17\xef\xfe\xcc\xdd\xa9\xb8\x8a\x9b\x73\x62\x50\x41\x35\x24
                             \x16\x07\xff\xee\xdc\xcd\xb9\xa8\x9a\x8b"
                     408     ; "\x84\x95\xa7\xb6\xc2\xd3\xe1\xf0\x08\x19\x2b\x3a\x4e\x5f\x6d\x7c\x94\x85\xb7\xa6\xd2\xc3
                             \xf1\xe0\x18\x09\x3b\x2a\x5e\x4f\x7d\x6c"
                     409     ; "\xa5\xb4\x86\x97\xe3\xf2\xc0\xd1\x29\x38\x0a\x1b\x6f\x7e\x4c\x5d\xb5\xa4\x96\x87\xf3\xe2
                             \xd0\xc1\x39\x28\x1a\x0b\x7f\x6e\x5c\x4d"
                     410     ; "\xc6\xd7\xe5\xf4\x80\x91\xa3\xb2\x4a\x5b\x69\x78\x0c\x1d\x2f\x3e\xd6\xc7\xf5\xe4\x90\x81
A51 MACRO ASSEMBLER  COMM                                                                 12/03/2004 17:52:51 PAGE     9

                             \xb3\xa2\x5a\x4b\x79\x68\x1c\x0d\x3f\x2e"
                     411     ; "\xe7\xf6\xc4\xd5\xa1\xb0\x82\x93\x6b\x7a\x48\x59\x2d\x3c\x0e\x1f\xf7\xe6\xd4\xc5\xb1\xa0
                             \x92\x83\x7b\x6a\x58\x49\x3d\x2c\x1e\x0f"
                     412     ; ;
                     413     ; uchar code *CrcTabH =
                     414     ; "\x00\x89\x12\x9b\x24\xad\x36\xbf\x48\xc1\x5a\xd3\x6c\xe5\x7e\xf7\x81\x08\x93\x1a\xa5\x2c
                             \xb7\x3e\xc9\x40\xdb\x52\xed\x64\xff\x76"
                     415     ; "\x02\x8b\x10\x99\x26\xaf\x34\xbd\x4a\xc3\x58\xd1\x6e\xe7\x7c\xf5\x83\x0a\x91\x18\xa7\x2e
                             \xb5\x3c\xcb\x42\xd9\x50\xef\x66\xfd\x74"
                     416     ; "\x04\x8d\x16\x9f\x20\xa9\x32\xbb\x4c\xc5\x5e\xd7\x68\xe1\x7a\xf3\x85\x0c\x97\x1e\xa1\x28
                             \xb3\x3a\xcd\x44\xdf\x56\xe9\x60\xfb\x72"
                     417     ; "\x06\x8f\x14\x9d\x22\xab\x30\xb9\x4e\xc7\x5c\xd5\x6a\xe3\x78\xf1\x87\x0e\x95\x1c\xa3\x2a
                             \xb1\x38\xcf\x46\xdd\x54\xeb\x62\xf9\x70"
                     418     ; "\x08\x81\x1a\x93\x2c\xa5\x3e\xb7\x40\xc9\x52\xdb\x64\xed\x76\xff\x89\x00\x9b\x12\xad\x24
                             \xbf\x36\xc1\x48\xd3\x5a\xe5\x6c\xf7\x7e"
                     419     ; "\x0a\x83\x18\x91\x2e\xa7\x3c\xb5\x42\xcb\x50\xd9\x66\xef\x74\xfd\x8b\x02\x99\x10\xaf\x26
                             \xbd\x34\xc3\x4a\xd1\x58\xe7\x6e\xf5\x7c"
                     420     ; "\x0c\x85\x1e\x97\x28\xa1\x3a\xb3\x44\xcd\x56\xdf\x60\xe9\x72\xfb\x8d\x04\x9f\x16\xa9\x20
                             \xbb\x32\xc5\x4c\xd7\x5e\xe1\x68\xf3\x7a"
                     421     ; "\x0e\x87\x1c\x95\x2a\xa3\x38\xb1\x46\xcf\x54\xdd\x62\xeb\x70\xf9\x8f\x06\x9d\x14\xab\x22
                             \xb9\x30\xc7\x4e\xd5\x5c\xe3\x6a\xf1\x78"
                     422     ; ;
                     423     ; 
                     424     ; void  _AsyncOpen(uint Baud, uchar Parity);
                     425     ; //void        _AsyncClose(void);
                     426     ; //uchar       _AsyncPutTest(void);
                     427     ; void  _AsyncPut(uchar ucValue);
                     428     ; uchar _AsyncGetTest(void);
                     429     ; uchar _AsyncGet(void);
                     430     ; 
                     431     ; void  _EXP_Open(uint Baud, uchar Parity);
                     432     ; //void        _EXP_Close(void);
                     433     ; //uchar       _EXP_PutTest(void);
                     434     ; void  _EXP_Put(uchar ucValue);
                     435     ; uchar _EXP_GetTest(void);
                     436     ; uchar _EXP_Get(void);
                     437     ; void  _EXP_Puts(uchar *p);
                     438     ; 
                     439     ; uchar xdata   PUB_CommBuffR[DEF_COMMBUFF_LEN];
                     440     ; uchar xdata   PUB_CommBuffT[16];
                     441     ; uint  idata   PUB_CountRH, PUB_CountRT;
                     442     ; uint  idata   PUB_CountTH, PUB_CountTT;
                     443     ; uchar idata   PUB_ByteTT;
                     444     ; uchar idata   PUB_CommParity;
                     445     ; extern        bit     PUB_Async_TI ;
                     446     ; extern        bit     PUB_Async_RI ;
                     447     ; uchar idata   PUB_Async_RecData;
                     448     ; 
                     449     ; uchar xdata   EXP_CommBuffR[EXP_COMMBUFF_LEN];
                     450     ; uchar xdata   EXP_CommBuffT[EXP_COMMBUFF_LEN];
                     451     ; uint  idata   EXP_CountRH, EXP_CountRT;
                     452     ; uint  idata   EXP_CountTH, EXP_CountTT;
                     453     ; uchar idata   EXP_ByteTT;
                     454     ; uchar idata   EXP_CommParity;
                     455     ; extern        bit EXP_Async_TI ;
                     456     ; extern        bit EXP_Async_RI ;
                     457     ; uchar idata   EXP_Async_RecData;
                     458     ; 
                     459     ; uint  CrcData(uint CrcBuff, uchar dd);
                     460     ; 
                     461     ; const unsigned char code syncode[4]={"GPRS"};
                     462     ; uchar idata   NR, NS;
                     463     ; uchar         idata   RecStatus;
                     464     ; uchar         idata   RecCounter;
                     465     ; uchar idata   DTUID[7];
                     466     ; uchar idata   CtrlData;
A51 MACRO ASSEMBLER  COMM                                                                 12/03/2004 17:52:51 PAGE    10

                     467     ; uint  idata   RecData;
                     468     ; uint  idata   CrcBuff;
                     469     ; uint  idata   CrcSend;
                     470     ; 
                     471     ; //-------main.c-----------
                     472     ; extern        uchar   idata   input[32]; 
                     473     ; extern        bit     Crc_Flag;
                     474     ; extern        bit     Frame_Flag;
                     475     ; extern        unsigned long  idata    Ht_Bt   ;       
                     476     ; extern        unsigned long  idata    TempCount;
                     477     ; extern        unsigned long GET_COUNT();
                     478     ; extern        void Delay(uint x);
                     479     ; 
                     480     ; //------EEPROM.c----------
                     481     ; extern void ReadUserBlock(uchar idata *input,uint Address,uchar Number);
                     482     ; 
                     483     
----                 484             RSEG  ?PR?COMM
0000                 485     Com010F:
0000                 486     L?0272:
                     487             USING   0
0000                 488     L?0273:
0000 7800     F      489             MOV     R0,#LOW (EXP_Async_RecData)
0002 E6              490             MOV     A,@R0
0003 F9              491             MOV     R1,A
0004                 492     L?0274:
0004 7800     F      493             MOV     R0,#LOW (CrcBuff)
0006 E6              494             MOV     A,@R0
0007 FC              495             MOV     R4,A
0008 08              496             INC     R0
0009 E6              497             MOV     A,@R0
000A FD              498             MOV     R5,A
000B EC              499             MOV     A,R4
000C 6201            500             XRL     AR1,A
000E E500     F      501             MOV     A,CrcTabH+01H
0010 29              502             ADD     A,R1
0011 F582            503             MOV     DPL,A
0013 E4              504             CLR     A
0014 3500     F      505             ADDC    A,CrcTabH
0016 F583            506             MOV     DPH,A
0018 E4              507             CLR     A
0019 93              508             MOVC    A,@A+DPTR
001A FF              509             MOV     R7,A
001B EF              510             MOV     A,R7
001C 6D              511             XRL     A,R5
001D FE              512             MOV     R6,A
001E E500     F      513             MOV     A,CrcTabL+01H
0020 29              514             ADD     A,R1
0021 F582            515             MOV     DPL,A
0023 E4              516             CLR     A
0024 3500     F      517             ADDC    A,CrcTabL
0026 F583            518             MOV     DPH,A
0028 E4              519             CLR     A
0029 93              520             MOVC    A,@A+DPTR
002A FD              521             MOV     R5,A
002B EE              522             MOV     A,R6
002C 18              523             DEC     R0
002D F6              524             MOV     @R0,A
002E ED              525             MOV     A,R5
002F 08              526             INC     R0
0030 F6              527             MOV     @R0,A
0031 22              528             RET     
0032                 529     L?0275:
                     530             USING   0
0032                 531     L?0276:
0032 7800     F      532             MOV     R0,#LOW (EXP_CountRH+01H)
A51 MACRO ASSEMBLER  COMM                                                                 12/03/2004 17:52:51 PAGE    11

0034                 533     L?0277:
0034 C3              534             CLR     C
0035                 535     L?0278:
0035 E6              536             MOV     A,@R0
0036 9407            537             SUBB    A,#07H
0038 18              538             DEC     R0
0039 E6              539             MOV     A,@R0
003A 9402            540             SUBB    A,#02H
003C 22              541             RET     
003D                 542     L?0280:
                     543             USING   0
003D                 544     L?0281:
003D 7800     F      545             MOV     R0,#LOW (input)
003F 7C00     F      546             MOV     R4,#HIGH (input)
0041 7D00            547             MOV     R5,#00H
0043 7B00            548             MOV     R3,#00H
0045 7A00     F      549             MOV     R2,#HIGH (DTUID)
0047 7900     F      550             MOV     R1,#LOW (DTUID)

⌨️ 快捷键说明

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