亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? plc.i

?? 此源碼為商用的電力抄表系統(tǒng)的主機端源程序。通過電力載波模塊
?? I
字號:
#line 1 "plc.c" /0   #line 1 "C:\KEIL\C51\INC\PHILIPS\REG922.H" /0       sfr P0   = 0x80; sfr P1   = 0x90; sfr P3   = 0xB0; sfr PSW  = 0xD0; sfr ACC  = 0xE0; sfr B    = 0xF0; sfr SP   = 0x81; sfr DPL  = 0x82; sfr DPH  = 0x83; sfr PCON = 0x87; sfr TCON = 0x88; sfr TMOD = 0x89; sfr TL0  = 0x8A; sfr TL1  = 0x8B; sfr TH0  = 0x8C; sfr TH1  = 0x8D; sfr IEN0 = 0xA8; sfr IP0  = 0xB8; sfr SCON = 0x98; sfr SBUF = 0x99;   sfr AUXR1  = 0xA2; sfr SADDR  = 0xA9; sfr SADEN  = 0xB9; sfr BRGR0  = 0xBE; sfr BRGR1  = 0xBF; sfr BRGCON = 0xBD; sfr CMP1   = 0xAC; sfr CMP2   = 0xAD; sfr DIVM   = 0x95; sfr FMADRH = 0xE7; sfr FMADRL = 0xE6; sfr FMCON  = 0xE4; sfr FMDATA = 0xE5; sfr I2ADR  = 0xDB; sfr I2CON  = 0xD8; sfr I2DAT  = 0xDA; sfr I2SCLH = 0xDD; sfr I2SCLL = 0xDC; sfr I2STAT = 0xD9; sfr IP1    = 0xF8; sfr IP1H   = 0xF7; sfr KBCON  = 0x94; sfr KBMASK = 0x86; sfr KBPATN = 0x93; sfr P0M1   = 0x84; sfr P0M2   = 0x85; sfr P1M1   = 0x91; sfr P1M2   = 0x92; sfr P3M1   = 0xB1; sfr P3M2   = 0xB2; sfr PCONA  = 0xB5; sfr PT0AD  = 0xF6; sfr RSTSRC = 0xDF; sfr RTCCON = 0xD1; sfr RTCH   = 0xD2; sfr RTCL   = 0xD3; sfr SSTAT  = 0xBA; sfr TAMOD  = 0x8F; sfr TRIM   = 0x96; sfr WDCON  = 0xA7; sfr WDL    = 0xC1; sfr WFEED1 = 0xC2; sfr WFEED2 = 0xC3; sfr IP0H   = 0xB7; sfr IEN1   = 0xE8;    sbit CY   = PSW^7; sbit AC   = PSW^6; sbit F0   = PSW^5; sbit RS1  = PSW^4; sbit RS0  = PSW^3; sbit OV   = PSW^2; sbit F1   = PSW^1; sbit P    = PSW^0;   sbit TF1  = TCON^7; sbit TR1  = TCON^6; sbit TF0  = TCON^5; sbit TR0  = TCON^4; sbit IE1  = TCON^3; sbit IT1  = TCON^2; sbit IE0  = TCON^1; sbit IT0  = TCON^0;   sbit EA   = IEN0^7; sbit EWDRT = IEN0^6; sbit EBO  = IEN0^5; sbit ES   = IEN0^4;   sbit ESR  = IEN0^4;  sbit ET1  = IEN0^3; sbit EX1  = IEN0^2; sbit ET0  = IEN0^1; sbit EX0  = IEN0^0;   sbit EC   = IEN1^2; sbit EKBI = IEN1^1; sbit EI2C = IEN1^0;   sbit PST  = IP0^6; sbit PC   = IP0^2; sbit PKBI = IP0^1; sbit Pi2c = IP0^0;   sbit PWDRT = IP0^6; sbit PBO  = IP0^5; sbit PS   = IP0^4;   sbit PSR  = IP0^4; sbit PT1  = IP0^3; sbit PX1  = IP0^2; sbit PT0  = IP0^1; sbit PX0  = IP0^0;    sbit SM0  = SCON^7;   sbit FE   = SCON^7; sbit SM1  = SCON^6; sbit SM2  = SCON^5; sbit REN  = SCON^4; sbit TB8  = SCON^3; sbit RB8  = SCON^2; sbit TI   = SCON^1; sbit RI   = SCON^0;   sbit I2EN  = I2CON^6; sbit STA   = I2CON^5; sbit STO   = I2CON^4; sbit SI    = I2CON^3; sbit AA    = I2CON^2; sbit CRSEL = I2CON^0;   sbit KB7 = P0^7;   sbit T1  = P0^7; sbit KB6 = P0^6;    sbit KB5 = P0^5; sbit KB4 = P0^4; sbit KB3 = P0^3; sbit KB2 = P0^2; sbit KB1 = P0^1; sbit KB0 = P0^0;      sbit RST     = P1^5; sbit INT1    = P1^4; sbit INT0    = P1^3;   sbit SDA     = P1^3; sbit T0      = P1^2;   sbit SCL     = P1^2; sbit RxD     = P1^1; sbit TxD     = P1^0;   sbit XTAL1= P3^1; sbit XTAL2= P3^0;   #line 7 "plc.c" /0    #line 1 "sart.h" /0    #line 1 "C:\KEIL\C51\INC\PHILIPS\REG922.H" /0   #line 11 "C:\KEIL\C51\INC\PHILIPS\REG922.H" /1                                                                                                                                                                             #line 183 "C:\KEIL\C51\INC\PHILIPS\REG922.H" /0 #line 8 "sart.h" /0       sbit      RX_RDY        = 0x96;							  sbit      TX_BUSY       = 0x87;							  sbit      RX_BUSY       = 0x94;							  sbit      D_RDY         = 0x83;							  sbit      D_SYNC        = 0x80;							  sbit      SCLK      	= 0x81;							  sbit      SDATA   	    = 0x82;							  sbit      Rxok          = 0x97;							  sbit      RST_PLC       = 0x86;							  sbit      TX_EN         = 0x92;							  sbit      SYNC_50Hz     = 0x93;							  sbit      K2            = P3^1;	 sbit      K1            = P3^0;						   void uart_init(); int uart_recved(); int uart_processed(); unsigned char uart_getchar();   int recv_amr_frame(void);  void uart_sendchar(char c); void uart_sendblock(char buf[], int len);    void sync_sendchar(char c); int sync_recved(); int sync_data_ready(); int sync_getchar(); int sync_getblock(char *buf, int len); #line 9 "plc.c" /0   #line 1 "plc.h" /0                                                  void send_data(unsigned char c);    void send_block(unsigned char block[], unsigned int len);   void write_reg(unsigned char op, unsigned char val);      int read_reg(unsigned char op); int read_buffer(unsigned char op, unsigned char buf[], unsigned int len);  void send_command(unsigned char cmd);  int set_rate(unsigned char val); int get_rate(); int set_mode(unsigned char val); int get_mode();   int set_fec(unsigned int on);   int set_autosync(unsigned int on);  int set_op(unsigned int normal_op);  int set_timing(unsigned char t1, unsigned char t2, unsigned char t3);  int get_timing(unsigned char t[3]);  int set_thres_sync(unsigned char val); int get_thres_sync();  int set_thres_det(unsigned char val); int get_thres_det();  int set_carrier(unsigned char f1, unsigned char f2, unsigned char f3, unsigned char f4); int get_carrier(unsigned char f[4]);  int set_scaling(unsigned char val); int get_scaling();  int set_agc(unsigned char agc[8]); int get_agc(unsigned char agc[8]);  int read_crc();  int read_rssi(unsigned char rssi[2]);  int write_txbuffer(unsigned char buffer[]);  int read_txbuffer(unsigned char buffer[]);  int read_rxbuffer(unsigned char buffer[]);  void send();      int plc_init(unsigned int smod); int plc_config(unsigned char buf[], unsigned int len); int plc_send(unsigned char frame[]); int plc_resend(); int plc_recved(); int plc_getframe(unsigned char frame[]); int plc_reset(); void plc_power_on(void);  void ist_count();  void timeout_t2(void); void thres_adjust();  void timeout_t4(void);  void w_flsh(unsigned char dat,unsigned char dat1); void Remote_Replies(unsigned char buf[]);  void Rx_Command_Reply(unsigned char comm);     #line 10 "plc.c" /0   #line 1 "timer.h" /0    void timer0_init(char interval, int count);   void setup_t0(unsigned int t, void (*proc)()); void disable_t0(void);  void setup_t1(unsigned int t, void (*proc)()); void disable_t1(void);  void setup_t2(unsigned int t, void (*proc)()); void disable_t2(void);  void setup_t3(unsigned int t, void (*proc)()); void disable_t3(void);  void setup_t4(unsigned int t, void (*proc)()); void disable_t4(void);  void wdt_init(); void clr_wdt();#line 11 "plc.c" /0   #line 1 "wr_flash.h" /0   #line 1 "C:\KEIL\C51\INC\PHILIPS\REG922.H" /0   #line 11 "C:\KEIL\C51\INC\PHILIPS\REG922.H" /1                                                                                                                                                                             #line 183 "C:\KEIL\C51\INC\PHILIPS\REG922.H" /0 #line 2 "wr_flash.h" /0             extern  bit  FLASH_WriteNByte(unsigned int addr, unsigned char  *dat_buf, unsigned char no);    extern  void  FLASH_ReadNByte(unsigned int addr, unsigned char *dat_buf, unsigned char no);         bit  FLASH_WriteByte(unsigned int addr, unsigned char dat);   unsigned int  FLASH_ReadByte(unsigned int addr);#line 12 "plc.c" /0               idata unsigned char cur_smod = 2;	  idata unsigned char frame_sz = 18;     unsigned char code plc_setting[] = {0x30,0x00,0x32,0x10,0x33,0x01,0x34,0x02,0x35,0x12,0x36,0x08,0x37,0x3C,0x38,0x60,0x39,0x64,0x3a,0x68,0x3b,0x6c,0x3c,0x04,0x3e,0x00,0x3f,0x00};   idata unsigned char thres_ea; idata unsigned char wet;  bit packet_recved; bit packet_recving; bit timeout_40s; bit timeout_1s; bit timeout_1m; extern bit reply;  bit rx_adj; bit rx_stop; bit delay_tx; idata unsigned char thres_set; void timeout_t2(void);      void send_data(unsigned char c) { sync_sendchar(c); }     void send_block(unsigned char block[], unsigned int len) {  unsigned char i;  for (i = 0; i < len; i++)   send_data(block[i]);  }     void write_reg(unsigned char op, unsigned char val) {  unsigned char buf[2];  buf[0] = op; buf[1] = val; send_block(buf, 2);  }     int read_reg(unsigned char op) {  unsigned char i;    send_data(op);        i = 0; while (i++ < 100) { if (sync_data_ready()) break; }  if (!sync_data_ready()) {    return -1;    }  i = sync_getchar();    return  i;    }    int read_buffer(unsigned char op, unsigned char buf[], unsigned int len) {  unsigned int i;     send_data(op);     if (cur_smod == 1) {    return -1; }   i = 0; while (i++ < 100) { if (sync_data_ready()) break; }  if (!sync_data_ready()) {   return -1;    }  i = sync_getblock(buf, len);   return i;    }        int set_thres_ea(unsigned char val) {  write_reg(0x32, val);      if (read_reg(0xF2) != (unsigned int)val) return -1; }     int set_thres_eb(unsigned char val) {  write_reg(0x36, val);    if (read_reg(0xF6) != (unsigned int)val) return -1; }    int read_crc() { return (read_reg(0xF1) & 0x01);  }      int write_txbuffer(unsigned char buffer[]) { send_data(0x7F); send_block(buffer, frame_sz);  return 0; }               int plc_config(unsigned char buf[], unsigned int len) {  send_block(buf, len);  return 1; }        int plc_recved() { return sync_recved(); }    int plc_getframe(unsigned char *frame) {  unsigned int res;  res = read_buffer(0xC0, frame, frame_sz);  if (res < 0) return -1;  return frame_sz;  }    void thres_adjust(void) { timeout_1s = 0; rx_adj = 0; rx_stop = 1; wet = 0; set_thres_eb(1);  disable_t2();   while(rx_stop){    clr_wdt(); if(timeout_40s){      thres_ea -= 8 + 16;     if (thres_ea < 16) {thres_ea = 16; plc_power_on();}   timeout_40s = 0; set_thres_ea(thres_ea);	 rx_adj = 0; }  timeout_1s = 0; setup_t0(600, ist_count);   while(timeout_1s == 0){clr_wdt();}   if(wet > 4) { thres_ea +=  16; if (thres_ea > 0x80) thres_ea = 0x80;    rx_adj = 1;      set_thres_ea(thres_ea); } if (wet == 4) { thres_ea +=  8; if (thres_ea > 0x80){ thres_ea = 0x80; plc_power_on();}   rx_adj = 1;      set_thres_ea(thres_ea); rx_stop = 0;  } else rx_stop = 0;  wet = 0; }   disable_t0();    clr_wdt();    thres_ea += 16; if (thres_ea > 0x80) thres_ea = 0x80; set_thres_ea(thres_ea);   set_thres_eb(thres_ea>>1); wet = 0; setup_t2(4000, timeout_t2); }     void timeout_t3(void) { disable_t3();     if (RX_BUSY){wet ++;}   else {  packet_recved = 1; packet_recving = 1; } }    void RX_BUSY_ISR (void) interrupt 2		     {  setup_t3(10, timeout_t3);      packet_recving = 0;  }    void ist_count()  {   timeout_1s = 1;  }    void timeout_t2(void) { timeout_40s = 1;  }    void timeout_t4(void) { delay_tx = 0; disable_t4(); }     void plc_power_on(void) {  unsigned int i; clr_wdt();   RST_PLC = 0; for (i = 0; i < 3000; i++) {;} clr_wdt(); RST_PLC = 1; for (i = 0; i < 100; i++) {;}    plc_config(plc_setting, sizeof(plc_setting)); clr_wdt();  clr_wdt();  set_thres_eb(0); thres_set = 0; thres_ea = 0x05;  while (thres_set < 4) { wet = 0;  timeout_1s = 0;   setup_t0(600, ist_count);    while (timeout_1s == 0) { clr_wdt();} disable_t0();  if	(wet > 4) { thres_ea += 16; if (thres_ea > 0x80)  thres_ea = 0x80;  set_thres_ea(thres_ea); } else { thres_set++; } }  thres_ea += 16; if (thres_ea > 0x80) thres_ea = 0x80;  set_thres_ea(thres_ea); set_thres_eb(thres_ea>>1); clr_wdt();  packet_recved = 0; packet_recving = 0; wet = 0; }    void w_flsh(unsigned char dat,unsigned char dat1) {  unsigned char buf[2];  write_reg(0x33, dat); write_reg(0x3c, dat1); buf[0] = dat; buf[1] = dat1; EA = 0;  FLASH_WriteNByte(0x1c00, buf, 2);   EA = 1; }      void Rx_Command_Reply(unsigned char comm) {  unsigned char Command; Command = comm & 0x3f; switch(Command){    case 0x01:{reply = 1;}break;  case 0x02:{reply = 0;}break; } }     void Remote_Replies(unsigned char buf[])  { buf[0] = 0xa1;   write_txbuffer(buf);	  sync_sendchar(0x7e); }    

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲综合色区另类av| 日本sm残虐另类| 日韩一区二区三区高清免费看看| 成人一区二区三区视频在线观看| 亚洲动漫第一页| 亚洲欧美怡红院| 久久久久亚洲蜜桃| 欧美卡1卡2卡| 色噜噜狠狠色综合欧洲selulu| 国产精一品亚洲二区在线视频| 亚洲线精品一区二区三区八戒| 久久精品一区二区三区不卡牛牛 | 欧美成人性福生活免费看| 91小视频免费观看| 国产不卡视频一区二区三区| 裸体一区二区三区| 亚洲成人免费av| 亚洲天堂免费在线观看视频| 久久香蕉国产线看观看99| 日韩午夜中文字幕| 欧美日产国产精品| 欧美日韩精品欧美日韩精品| 一本色道**综合亚洲精品蜜桃冫| 国产成人亚洲综合色影视| 激情文学综合网| 美女视频一区在线观看| 日韩激情视频网站| 日韩专区欧美专区| 天堂va蜜桃一区二区三区| 亚洲一区二区三区中文字幕| 一区二区三区四区av| 中文字幕在线观看不卡视频| 国产精品久久777777| 欧美国产成人精品| 国产精品女同一区二区三区| 中文字幕av一区二区三区高| 国产欧美一区二区三区鸳鸯浴| 国产欧美一区二区在线观看| 欧美国产日本视频| 日本一区二区电影| 亚洲欧洲一区二区在线播放| 中文字幕一区av| 亚洲人被黑人高潮完整版| 亚洲丝袜制服诱惑| 亚洲黄色录像片| 亚洲aⅴ怡春院| 免费在线观看不卡| 卡一卡二国产精品 | 99久久精品国产网站| 99麻豆久久久国产精品免费优播| www.日韩精品| 色香蕉久久蜜桃| 欧美日韩一区二区在线观看| 欧美乱妇一区二区三区不卡视频| 欧美挠脚心视频网站| 日韩美女天天操| 久久久精品天堂| 亚洲视频在线一区观看| 一区二区三区不卡视频在线观看| 天天色 色综合| 精品一区二区三区在线播放视频| 高清久久久久久| 色婷婷av一区二区三区大白胸| 在线观看91精品国产麻豆| 欧美电影精品一区二区| 欧美高清一级片在线观看| 亚洲美女视频在线| 免费在线观看日韩欧美| 国产成人综合视频| 91福利国产成人精品照片| 欧美一级在线免费| 欧美激情一区二区三区全黄| 亚洲一区二区在线播放相泽| 久久狠狠亚洲综合| 99re成人精品视频| 制服.丝袜.亚洲.中文.综合| 久久亚洲精华国产精华液| 尤物av一区二区| 麻豆极品一区二区三区| 91同城在线观看| 日韩三级在线免费观看| 国产精品二三区| 久久精工是国产品牌吗| 91色视频在线| 欧美videofree性高清杂交| 亚洲日本免费电影| 久久99国产精品久久99| 91麻豆.com| 日韩精品一区二区三区视频播放 | 91福利区一区二区三区| 久久久一区二区三区捆绑**| 一区二区三区国产精华| 国产精品1024| 日韩一区二区三区三四区视频在线观看 | 亚洲免费毛片网站| 国产伦精品一区二区三区在线观看| 色综合天天天天做夜夜夜夜做| 欧美一区二区在线播放| 亚洲少妇30p| 国产成人一级电影| 日韩一区二区高清| 亚洲宅男天堂在线观看无病毒| 国产成人三级在线观看| 欧美电影免费观看高清完整版在线 | 日韩高清一区二区| 色悠久久久久综合欧美99| 国产午夜精品在线观看| 日本午夜一本久久久综合| 在线精品视频一区二区三四| 国产精品麻豆99久久久久久| 久久精品噜噜噜成人88aⅴ| 欧美在线视频日韩| 亚洲天堂成人在线观看| 国产精品一区二区视频| 精品国产一区久久| 热久久国产精品| 欧美在线观看一区二区| 中文无字幕一区二区三区 | 亚洲成人自拍网| www.日本不卡| 久久久久高清精品| 狠狠久久亚洲欧美| 精品国产一区二区精华| 久久精品国产精品亚洲综合| 69av一区二区三区| 日韩精品亚洲一区二区三区免费| 91精品福利在线| 亚洲美女免费在线| 色综合天天综合色综合av| 欧美激情在线看| 国产激情一区二区三区桃花岛亚洲| 日韩欧美国产综合在线一区二区三区| 亚洲成人黄色影院| 欧美丝袜自拍制服另类| 性做久久久久久久久| 91成人免费在线| 一区二区三区日韩| 色视频成人在线观看免| 一级做a爱片久久| 欧美在线一二三四区| 亚洲成精国产精品女| 欧美日韩精品一区二区| 婷婷久久综合九色综合绿巨人| 欧美调教femdomvk| 午夜欧美在线一二页| 欧美一级欧美一级在线播放| 免费高清在线一区| 久久久综合精品| av亚洲精华国产精华精| 亚洲色图视频免费播放| 欧美性受极品xxxx喷水| 午夜电影网亚洲视频| 欧美大片日本大片免费观看| 国产一区二区影院| 国产精品夫妻自拍| 欧美日韩精品专区| 韩国毛片一区二区三区| 国产精品国产馆在线真实露脸 | 精品国产乱码久久久久久图片| 久久9热精品视频| 日本一区二区在线不卡| 一本大道av一区二区在线播放| 一个色综合av| 日韩欧美激情四射| 成人av电影在线播放| 亚洲成年人影院| 国产欧美一区二区精品久导航| 99精品偷自拍| 青草av.久久免费一区| 中文字幕电影一区| 欧美日韩精品高清| 国产麻豆欧美日韩一区| 亚洲最大成人综合| 亚洲精品一区二区三区香蕉| 成人av免费在线观看| 日韩av午夜在线观看| 国产精品素人一区二区| 欧美日韩不卡一区二区| 高清在线不卡av| 天天综合天天综合色| 亚洲国产成人私人影院tom| 欧美高清视频在线高清观看mv色露露十八 | 韩国欧美国产一区| 一区二区三区日韩在线观看| 精品国产乱码久久久久久图片| 色播五月激情综合网| 精品系列免费在线观看| 亚洲国产aⅴ天堂久久| 国产精品天美传媒| 日韩视频免费观看高清完整版| 91影视在线播放| 国产毛片精品一区| 日韩精品欧美精品| 亚洲欧美偷拍卡通变态| 亚洲精品在线免费播放| 91麻豆精品91久久久久久清纯 | 国产乱人伦偷精品视频不卡| 亚洲高清在线精品| 亚洲视频在线观看三级| 国产三级一区二区|