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

📄 rdio.lst

📁 Philps MF500完整设计资料大全
💻 LST
📖 第 1 页 / 共 4 页
字号:
 105      =1  
 106      =1  #define CALL_isr_UART()         TI = 1
 107      =1  
 108      =1  
 109      =1  #define SER_BCC                 0
 110      =1  #define SER_CRC                 1
 111      =1  
 112      =1  #define BCC_CHECKBYTECNT        1
 113      =1  
 114      =1  // CCITT-CRC16 (x^16 + x^12 + x^5 + 1) => 0x11021
 115      =1  
 116      =1  #define CRC_POLYNOM             0x1021
 117      =1  #define CRC_PRESET              0xFFFF
 118      =1  #define CRC_CHECKBYTECNT        2
 119      =1  
 120      =1  
 121      =1  // Receive States
 122      =1  
 123      =1  #define RECV_STX                0
 124      =1  #define RECV_DATA_DLE_ETX       1
 125      =1  #define RECV_ETX                2
 126      =1  
 127      =1  #define RECV_DLE                3
 128      =1  #define RECV_DLE_OR_NAK         4
 129      =1  
 130      =1  
 131      =1  // Values for checking the Data Length of the Commands
 132      =1  
 133      =1  #define MINCMDNR                0x40
 134      =1  #define MAXCMDNR                0x57
 135      =1  
 136      =1  #define CMDCNT                  MAXCMDNR - MINCMDNR + 1
 137      =1  
 138      =1  #ifdef __SRC
C51 COMPILER V7.20   RDIO                                                                  12/08/2004 10:59:27 PAGE 6   

           =1 
           =1  uchar code CmdLenTab[CMDCNT] = {
           =1 
           =1  // CmdNr: 0x40 ...
           =1                          7,  1,  5,  4,  2,  0,  1, 17,  5,  5,  1,  1, 14,  1,  2,  0,
           =1 
           =1  // CmdNr: 0x50 ...        ... 0x57
           =1                          1,  1,  2, 22,  1,  0,    3,   5};
           =1 #else
 148      =1  
 149      =1   extern uchar code CmdLenTab[CMDCNT];
 150      =1  
 151      =1  #endif
 152      =1  
 153      =1  
 154      =1  // Serial Buffer
 155      =1  
 156      =1  #define HEADER                  3
 157      =1  
 158      =1  #define MAXDATA                 30
 159      =1  
 160      =1  #define SERBUFLEN               HEADER + MAXDATA + CRC_CHECKBYTECNT + 1
 161      =1  
 162      =1  #define SEQNR                   0
 163      =1  
 164      =1  #define COMMAND                 1
 165      =1  #define STATUS                  1
 166      =1  
 167      =1  #define LENGTH                  2
 168      =1  
 169      =1  #define MODE                    3
 170      =1  #define BCNT                    3
 171      =1  #define ADR                     3
 172      =1  #define SERNR                   3
 173      =1  #define SIZE                    3
 174      =1  #define TIME                    3
 175      =1  #define TAGTYPE                 3
 176      =1  #define INFO                    3
 177      =1  #define CTLBYTE                 3
 178      =1  #define PORTBYTE                3
 179      =1  #define HLREQMODE               3
 180      =1  
 181      =1  #define SECNR                   4
 182      =1  #define DATABYTES               4
 183      =1  #define VALUE                   4
 184      =1  #define BAUD                    4
 185      =1  #define SERNR_in                4
 186      =1  #define HL_SERNR                4
 187      =1  #define KEY_ADDR                4
 188      =1  #define POSITION                4
 189      =1  #define SEL_CNT                 4
 190      =1  
 191      =1  #define TKEY                    5
 192      =1  #define AUTHADD                 5
 193      =1  #define DES_KEY                 5
 194      =1  #define MKAC                    5
 195      =1  #define CARD_ADDR               5
 196      =1  #define NUM                     5
 197      =1  
 198      =1  #define CIPHER                  6
 199      =1  
 200      =1  #define AUTHMODE                7
C51 COMPILER V7.20   RDIO                                                                  12/08/2004 10:59:27 PAGE 7   

 201      =1  
 202      =1  #define ADRCHKWR                8
 203      =1  #define HLAUTHMODE              8
 204      =1  
 205      =1  #define DATACHKWR               9
 206      =1  #define HLSECNR                 9
 207      =1  
 208      =1  #define NKEY6                   11
 209      =1  #define NKEY8                   13
 210      =1  
 211      =1  #define QUIT                    30
 212      =1  
 213      =1  // Timer 0
 214      =1  
 215      =1  #define T_533_ms                14 // (533 ms)
 216      =1  
 217      =1  #define START_T0(x)             Timer0Cnt = (x); TL0 = 0; TH0 = 0; TR0 = 1
 218      =1  #define STOP_T0()               TR0 = 0
 219      =1  
 220      =1  #define CALL_isr_T0()           TR0 = 0; Timer0Cnt = 0; TF0 = 1
 221      =1  
 222      =1  
 223      =1  #ifndef NO_TIMER2
 224      =1  
 225      =1   // Timer 2
 226      =1  
 227      =1   #define RCAP2_50us             65536L - OSC_FREQ/240417L
 228      =1   #define RCAP2_1ms              65536L - OSC_FREQ/12021L
 229      =1   #define RCAP2_10ms             65536L - OSC_FREQ/1200L
 230      =1  
 231      =1   sfr16   RCAP2LH                = 0xCA;
 232      =1   sfr16   T2LH                   = 0xCC;
 233      =1  
 234      =1  #else
           =1 
           =1  #define SCON                   S0CON
           =1  #define SBUF                   S0BUF
           =1  #define ES                     ES0
           =1 
           =1 #endif
 241      =1  
 242      =1  #ifdef NOP_DELAY
           =1 
           =1  #define DELAY_us(x)            delay_50us_NOP()
           =1 
           =1 #else
 247      =1  
 248      =1   #define DELAY_us(x)            for (i = 0; i < (uchar)(((x)*9)/20); i++)
 249      =1   // 20 <= x <= 567
 250      =1  
 251      =1  #endif
 252      =1  
 253      =1  
 254      =1  // Global Variables
 255      =1  
 256      =1  EXTERN volatile bit             Idle;
 257      =1  EXTERN volatile bit             CmdReceived;
 258      =1  
 259      =1  EXTERN volatile bit             DataDleReceived;
 260      =1  EXTERN volatile bit             CmdValid;
 261      =1  EXTERN volatile bit             LLfReady;
 262      =1  EXTERN volatile bit             SendReady;
C51 COMPILER V7.20   RDIO                                                                  12/08/2004 10:59:27 PAGE 8   

 263      =1  EXTERN volatile bit             Quit;
 264      =1  EXTERN volatile bit             EnableRS422;
 265      =1  EXTERN volatile bit             EnableTransferCmd;
 266      =1  EXTERN volatile bit             Enable_LEDs;
 267      =1  EXTERN volatile bit             AutoBaud;
 268      =1  
 269      =1  #ifdef AUTODELAY
 270      =1   EXTERN volatile bit            DelayRateLocked;
 271      =1   EXTERN volatile uchar          DelayRate;
 272      =1   EXTERN volatile uchar          CmdCnt;
 273      =1  
 274      =1   #define MAXDELAYRATE                   100
 275      =1   #define AUTODELAY_FALLBACK             200
 276      =1  #endif
 277      =1  
 278      =1  EXTERN volatile uchar           RecvState;
 279      =1  EXTERN volatile uchar           SendState;
 280      =1  EXTERN volatile uchar           Index;
 281      =1  EXTERN volatile uchar           RepCnt;
 282      =1  EXTERN volatile uchar           Timer0Cnt;
 283      =1  EXTERN volatile uchar           SeqNr;
 284      =1  EXTERN volatile uchar           QuitStatus;
 285      =1  EXTERN volatile uchar           CheckByteCnt;
 286      =1                          
 287      =1  EXTERN volatile char            BaudRate;
 288      =1  EXTERN volatile uchar           Capt_L;
 289      =1  EXTERN volatile uchar           Capt_H;
 290      =1  EXTERN volatile uint            Capt;
 291      =1  
 292      =1  EXTERN volatile uchar   idata   SerBuffer[SERBUFLEN];
 293      =1  
 294      =1  
 295      =1  // Global Prototypes
 296      =1  
 297      =1  EXTERN void delay_8us_NOP(void);
 298      =1  
 299      =1  EXTERN void delay_50us(uchar _50us);
 300      =1  EXTERN void delay_1ms(uchar _1ms);
 301      =1  EXTERN void delay_10ms(uint _10ms);
 302      =1  
 303      =1  #ifdef NOP_DELAY
           =1  EXTERN void delay_50us_NOP(void);
           =1 #endif
 306      =1  
 307      =1  EXTERN uchar xtoa_h(uchar _byte);
 308      =1  EXTERN uchar xtoa_l(uchar _byte);
 309      =1  
 310      =1  EXTERN void  auto_baud(void);
 311      =1  
 312      =1  
 313      =1  #undef EXTERN
 314      =1  
 315      =1  
 316      =1  /***************************************************************************/
 317      =1  
  16          #include <p89c51rx.h>
   1      =1  /*--------------------------------------------------------------------------
   2      =1  P89C51.H
   3      =1  
   4      =1  Header file for the ISP Flash Philips P89C51RX.
   5      =1  --------------------------------------------------------------------------*/
   6      =1  
C51 COMPILER V7.20   RDIO                                                                  12/08/2004 10:59:27 PAGE 9   

   7      =1  /*------------------------------------------------
   8      =1  Byte Registers
   9      =1  ------------------------------------------------*/
  10      =1  sfr P0      = 0x80;
  11      =1  sfr SP      = 0x81;
  12      =1  sfr DPL     = 0x82;
  13      =1  sfr DPH     = 0x83;
  14      =1  sfr PCON    = 0x87;
  15      =1  sfr TCON    = 0x88;
  16      =1  sfr TMOD    = 0x89;
  17      =1  sfr TL0     = 0x8A;
  18      =1  sfr TL1     = 0x8B;
  19      =1  sfr TH0     = 0x8C;
  20      =1  sfr TH1     = 0x8D;
  21      =1  sfr AUXR    = 0x8E;     
  22      =1  sfr P1      = 0x90;
  23      =1  sfr SCON    = 0x98;
  24      =1  sfr SBUF    = 0x99;
  25      =1  sfr P2      = 0xA0;
  26      =1  sfr AUXR1   = 0xA2;
  27      =1  sfr IE      = 0xA8;
  28      =1  sfr SADDR   = 0xA9;
  29      =1  sfr P3      = 0xB0;
  30      =1  sfr IPH     = 0xB7;
  31      =1  sfr IP      = 0xB8;
  32      =1  sfr SADEN   = 0xB9;
  33      =1  sfr PMR     = 0xC4;     
  34      =1  sfr T2CON   = 0xC8;
  35      =1  sfr T2MOD   = 0xC9;
  36      =1  sfr RCAP2L  = 0xCA;
  37      =1  sfr RCAP2H  = 0xCB;
  38      =1  sfr TL2     = 0xCC;
  39      =1  sfr TH2     = 0xCD;
  40      =1  sfr PSW     = 0xD0;
  41      =1  sfr CCON    = 0xD8;
  42      =1  sfr CMOD    = 0xD9;
  43      =1  sfr CCAPM0  = 0xDA;
  44      =1  sfr CCAPM1  = 0xDB;
  45      =1  sfr CCAPM2  = 0xDC;
  46      =1  sfr CCAPM3  = 0xDD;
  47      =1  sfr CCAPM4  = 0xDE;
  48      =1  sfr ACC     = 0xE0;
  49      =1  sfr A       = 0xE0;
  50      =1  sfr CL      = 0xE9;
  51      =1  sfr CCAP0L  = 0xEA;
  52      =1  sfr CCAP1L  = 0xEB;
  53      =1  sfr CCAP2L  = 0xEC;
  54      =1  sfr CCAP3L  = 0xED;
  55      =1  sfr CCAP4L  = 0xEE;
  56      =1  sfr B       = 0xF0;
  57      =1  sfr CH      = 0xF9;
  58      =1  sfr CCAP0H  = 0xFA;
  59      =1  sfr CCAP1H  = 0xFB;
  60      =1  sfr CCAP2H  = 0xFC;
  61      =1  sfr CCAP3H  = 0xFD;
  62      =1  sfr CCAP4H  = 0xFE;
  63      =1  
  64      =1  /*------------------------------------------------

⌨️ 快捷键说明

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