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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? e51pro.lst

?? Easy 51Pro v2.0宇宙版編程器資料,包含了源程序
?? LST
?? 第 1 頁 / 共 4 頁
字號:
C51 COMPILER V7.07   E51PRO                                                                10/28/2003 18:27:17 PAGE 1   


C51 COMPILER V7.07, COMPILATION OF MODULE E51PRO
OBJECT MODULE PLACED IN e51pro.OBJ
COMPILER INVOKED BY: f:\winsoft\Keil\C51\BIN\C51.EXE e51pro.c WARNINGLEVEL(1) OPTIMIZE(5,SIZE) REGFILE(.\E51Pro.ORC) BRO
                    -WSE INCDIR(G:\MCU工程\E51Pro\) DEBUG OBJECTEXTEND CODE

stmt level    source

   1          //////////////////////////////////////////////////////////////////////////////////////////////////
   2          //E51Pro.c
   3          //Easy 51Pro編程器主程序,負責通訊,管理編程操作
   4          ///////////////////////////////////////////////////////////////////////////////////////////////////
   5          
   6          #include <E51Pro.h>
   7          
   8          BYTE ComBuf[18];//串口通訊數據緩存,發送和接收都使用
   9          UINT nAddress;//ROM中地址計數
  10          UINT nTimeOut;//超時計數
  11          ProWork pw;//編程器一般操作
  12          
  13          void Delay_us(BYTE nUs)//微秒級延時<255us
  14          {
  15   1              TH0=0;
  16   1              TL0=0;
  17   1              TR0=1;
  18   1              while(TL0<nUs)//利用T0做定時計數器,循環采樣,直到達到定時值
  19   1              {
  20   2              }
  21   1              TR0=0;
  22   1      }
  23          
  24          void Delay_ms(UINT nMs)//豪秒級的延時<65535ms
  25          {
  26   1              UINT n=0;
  27   1              TR0=1;
  28   1              while(n<nMs)////利用T0做定時計數器,循環采樣,直到達到定時值
  29   1              {
  30   2                      TH0=0;
  31   2                      TL0=20;
  32   2                      while(TH0<4)
  33   2                      {
  34   3                      }
  35   2                      n++;
  36   2              }
  37   1              TR0=0;
  38   1      }
  39           
  40          BOOL WaitComm()//等待上位機的命令,18字節
  41          {
  42   1              BYTE n=0;
  43   1              RI=0;
  44   1              while(!RI){}//等待第一個字節
  45   1              ComBuf[n]=SBUF;
  46   1              RI=0;
  47   1              n++;
  48   1              for(n;n<=17;n++)
  49   1              {
  50   2                      nTimeOut=0;
  51   2                      while(!RI)
  52   2                      {
  53   3                              nTimeOut++;
  54   3                              if(nTimeOut>10000)//后17個字節都有超時限制 
C51 COMPILER V7.07   E51PRO                                                                10/28/2003 18:27:17 PAGE 2   

  55   3                                      return 0;
  56   3                      }
  57   2                      ComBuf[n]=SBUF;
  58   2                      RI=0;
  59   2              }
  60   1              return 1;
  61   1      }
  62          
  63          BOOL WaitResp()//等待上位機回應,1字節,有超時限制 
  64          {
  65   1              nTimeOut=0;
  66   1              RI=0;
  67   1              while(!RI)
  68   1              {
  69   2                      nTimeOut++;
  70   2                      if(nTimeOut>50000) 
  71   2                      {
  72   3                              return 0;
  73   3                      }
  74   2              }
  75   1              RI=0;
  76   1              ComBuf[0]=SBUF;
  77   1              return 1;
  78   1      }
  79          
  80          BOOL WaitData()//寫器件時等待上位機數據,18字節,有超時限制 
  81          {
  82   1              BYTE n;
  83   1              RI=0;
  84   1              for(n=0;n<=17;n++)
  85   1              {
  86   2                      nTimeOut=0;
  87   2                      while(!RI)
  88   2                      {
  89   3                              nTimeOut++;
  90   3                              if(nTimeOut>10000)
  91   3                              {
  92   4                                      return 0;
  93   4                              }
  94   3                      }
  95   2                      RI=0;
  96   2                      ComBuf[n]=SBUF;
  97   2              }
  98   1              return 1;
  99   1      }
 100          
 101          void SendData()//發送數據或回應操作完成,18字節
 102          {
 103   1              BYTE n=0;
 104   1              for(n;n<=17;n++)
 105   1              {
 106   2                      TI=0;
 107   2                      SBUF=ComBuf[n];
 108   2                      while(!TI){}
 109   2                      TI=0;
 110   2              }
 111   1      }
 112          
 113          void SendResp()//回應上位機1個字節,在寫器件函數中使用
 114          {
 115   1              TI=0;
 116   1              SBUF=ComBuf[0];
C51 COMPILER V7.07   E51PRO                                                                10/28/2003 18:27:17 PAGE 3   

 117   1              while(!TI){}
 118   1              TI=0;
 119   1      }
 120          
 121          void SetVpp5V()//設置Vpp為5v
 122          {
 123   1              P3_4=0;
 124   1              P3_3=0;
 125   1      }
 126          
 127          void SetVpp0V()//設置Vpp為0v
 128          {
 129   1              P3_3=0;
 130   1              P3_4=1;
 131   1      }
 132          
 133          void SetVpp12V()//設置Vpp為12v
 134          {
 135   1              P3_4=0;
 136   1              P3_3=1;
 137   1      }
 138          
 139          void RstPro()//編程器復位
 140          {
 141   1              pw.fpProOver();//直接編程結束
 142   1              SendData();//通知上位機,表示編程器就緒,可以直接用此函數因為協議號(ComBuf[0])還沒被修改,下同
 143   1      }
 144          
 145          void ReadSign()//讀特征字
 146          {
 147   1              pw.fpReadSign();
 148   1              SendData();//通知上位機,送出讀出器件特征字
 149   1      }
 150          
 151          void Erase()//擦除器件
 152          {
 153   1              pw.fpErase();
 154   1              SendData();//通知上位機,擦除了器件
 155   1      }
 156          
 157          void Write()//寫器件
 158          {
 159   1              BYTE n;
 160   1              pw.fpInitPro();//編程前的準備工作
 161   1              SendData();//回應上位機表示進入寫器件狀態,可以發來數據
 162   1              while(1)
 163   1              {
 164   2                      if(WaitData())//如果等待數據成功
 165   2                      {
 166   3                              if(ComBuf[0]==0x07)//判斷是否繼續寫
 167   3                              {
 168   4                                      for(n=2;n<=17;n++)//ComBuf[2~17]為待寫入數據塊
 169   4                                      {
 170   5                                              if(!pw.fpWrite(ComBuf[n]))//<<<<<<<<<<<<<<<<<<<調用寫該器件一個單元的函數
 171   5                                              {
 172   6                                                      pw.fpProOver();//出錯了就結束編程
 173   6                                                      ComBuf[0]=0xff;
 174   6                                                      SendResp();//回應上位機一個字節,表示寫數據出錯了
 175   6                                                      WaitData();//等待上位機的回應后就結束
 176   6                                                      return; 
 177   6                                              }
 178   5                                              nAddress++;//下一個單元
C51 COMPILER V7.07   E51PRO                                                                10/28/2003 18:27:17 PAGE 4   

 179   5                                      }
 180   4                                      ComBuf[0]=1;//回應上位機一個字節,表示數據塊順利完成,請求繼續
 181   4                                      SendResp();
 182   4                              }
 183   3                              else if(ComBuf[0]==0x00)//寫器件結束
 184   3                                      break;
 185   3                              else//可能是通訊出錯了
 186   3                              {
 187   4                                      pw.fpProOver();
 188   4                                      return;
 189   4                              }
 190   3                      }
 191   2                      else//等待數據失敗
 192   2                      {
 193   3                              pw.fpProOver();
 194   3                              return;
 195   3                      }
 196   2              }
 197   1              pw.fpProOver();//編程結束后的工作
 198   1              Delay_ms(50);//延時等待上位機寫線程結束
 199   1              ComBuf[0]=0;//通知上位機編程器進入就緒狀態
 200   1              SendData();
 201   1      }
 202          
 203          void Read()//讀器件
 204          {
 205   1              BYTE n;
 206   1              pw.fpInitPro();//先設置成編程狀態
 207   1              SendData();//回應上位機表示進入讀狀態
 208   1              while(1)
 209   1              {
 210   2                      if(WaitResp())//等待上位機回應1個字節
 211   2                      {
 212   3                              if(ComBuf[0]==0)//ComBuf[0]==0表示讀結束
 213   3                              {
 214   4                                      break;
 215   4                              }
 216   3                              else if(ComBuf[0]==0xff)//0xff表示重發
 217   3                              {
 218   4                                      nAddress=nAddress-0x0010;
 219   4                              }
 220   3                              for(n=2;n<=17;n++)//ComBuf[2~17]保存讀出的數據塊
 221   3                              {
 222   4                                      ComBuf[n]=pw.fpRead();//<<<<<<<<<<<<<<<<<<<調用寫該器件一個單元的函數
 223   4                                      nAddress++;//下一個單元
 224   4                              }
 225   3                              ComBuf[0]=6;//向上位機發送讀出的數據塊
 226   3                              SendData();
 227   3                      }
 228   2                      else
 229   2                              break;//等待回應失敗    
 230   2      
 231   2              }
 232   1              pw.fpProOver();//操作結束設置為運行狀態
 233   1              ComBuf[0]=0;//通知上位機編程器進入就緒狀態
 234   1              SendData();
 235   1      }
 236          
 237          void Lock()//寫鎖定位
 238          {
 239   1              pw.fpLock();
 240   1              SendData();
C51 COMPILER V7.07   E51PRO                                                                10/28/2003 18:27:17 PAGE 5   

 241   1      }
 242          
 243          ///////////////////////////////////////////////////////////////////////////////////////////////////
 244          //所支持的FID,請在這里繼續添加
 245          ///////////////////////////////////////////////////////////////////////////////////////////////////
 246          extern void PreparePro00();//FID=00:AT89C51編程器
 247          extern void PreparePro01();//FID=01:AT89C2051編程器
 248          extern void PreparePro02();//FID=02:AT89S51編程器
 249          
 250          void main()
 251          {
 252   1              SP=0x60;
 253   1              SetVpp5V();//先初始化Vpp為5v
 254   1              SCON=0x00;
 255   1              TCON=0x00;
 256   1              //PCON=0x00;//波特率*2
 257   1              IE=0x00;
 258   1              //TMOD: GATE|C/!T|M1|M0|GATE|C/!T|M1|M0
 259   1              //        0    0   1  0   0    0   0  1
 260   1              TMOD=0x21;//T0用于延時程序
 261   1              TH1=0xff;
 262   1              TL1=0xff;//波特率28800*2,注意PCON
 263   1              //SCON: SM0|SM1|SM2|REN|TB8|RB8|TI|RI

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人午夜看片网址| 日韩高清电影一区| 国产偷国产偷亚洲高清人白洁| 91精品国产91久久综合桃花| 欧美日韩国产综合一区二区三区 | 亚洲天堂免费在线观看视频| 26uuu国产电影一区二区| 欧美大片一区二区| 26uuu欧美日本| 久久久国产一区二区三区四区小说| 精品三级在线看| 久久久99免费| 中文字幕一区二区5566日韩| 一区二区三区在线免费观看| 日日夜夜一区二区| 久久精品国产秦先生| 国产精品一区不卡| 91丨porny丨国产入口| 色呦呦一区二区三区| 在线播放国产精品二区一二区四区| 欧美一区二区三区精品| 国产精品高潮呻吟| 五月天亚洲婷婷| 日韩精品色哟哟| 久久国产精品99精品国产| 国产精品主播直播| 色欧美乱欧美15图片| 69p69国产精品| 久久婷婷成人综合色| 日韩毛片高清在线播放| 亚洲在线中文字幕| 国产一区二区三区在线观看免费| 波多野结衣精品在线| 欧美伦理视频网站| 国产日本欧美一区二区| 亚洲午夜成aⅴ人片| 精品中文字幕一区二区小辣椒| 99精品视频一区二区三区| 欧美日韩高清一区二区三区| 国产欧美一区二区精品婷婷| 亚洲国产人成综合网站| 成人午夜激情影院| 日韩三级高清在线| 亚洲尤物在线视频观看| 国产精品18久久久久久久久久久久| 99热精品国产| 久久先锋影音av鲁色资源网| 亚洲成人手机在线| 99精品国产99久久久久久白柏 | 欧美日韩综合色| 久久久久99精品一区| 日韩黄色免费网站| 色婷婷精品大在线视频| 亚洲国产高清在线| 久久www免费人成看片高清| 欧美在线综合视频| 成人免费视频在线观看| 国产精品资源站在线| 精品久久五月天| 日本不卡在线视频| 欧美日韩一区中文字幕| 一区二区三区欧美视频| 97超碰欧美中文字幕| 国产午夜久久久久| 国产一区二区久久| 精品久久久久久无| 麻豆精品视频在线| 日韩欧美黄色影院| 欧美aaaaa成人免费观看视频| 欧美日本视频在线| 日韩av网站免费在线| 欧美日韩一级视频| 五月天丁香久久| 欧美一级午夜免费电影| 日本亚洲电影天堂| 欧美电影精品一区二区| 久久9热精品视频| 精品入口麻豆88视频| 精品一区二区在线观看| 久久久国产精品不卡| 国产91精品欧美| 国产精品国产自产拍高清av王其| 成人免费看视频| 成人免费在线视频| 在线中文字幕一区| 日韩精彩视频在线观看| 日韩三级伦理片妻子的秘密按摩| 精品一区二区日韩| 国产精品网站导航| 色综合天天综合色综合av| 亚洲线精品一区二区三区| 日韩一区二区三区四区| 激情图片小说一区| 国产精品人成在线观看免费| 日本国产一区二区| 琪琪一区二区三区| 国产精品视频一区二区三区不卡| 99国产精品视频免费观看| 偷拍一区二区三区四区| 久久久久久97三级| 91蝌蚪porny| 青青草伊人久久| 国产精品无人区| 欧美三级中文字| 国内外成人在线视频| 国产精品伦理一区二区| 欧美区一区二区三区| 狠狠色丁香九九婷婷综合五月| 国产精品青草综合久久久久99| 色素色在线综合| 老司机免费视频一区二区| 亚洲同性gay激情无套| 欧美一区二区三区男人的天堂| 国产美女主播视频一区| 亚洲午夜日本在线观看| 国产午夜亚洲精品羞羞网站| 欧美视频一区二区三区四区 | 日本在线不卡一区| 欧美国产激情一区二区三区蜜月| 欧美区一区二区三区| 波波电影院一区二区三区| 日本成人中文字幕在线视频| 中文字幕一区在线观看| 色综合色综合色综合| 亚洲一线二线三线视频| 日韩一区二区三区免费看| 99久久久国产精品免费蜜臀| 日韩精品高清不卡| 亚洲在线观看免费| 国产欧美久久久精品影院| 日韩一区二区三区精品视频| 欧美性生活大片视频| 成人激情文学综合网| 狠狠色狠狠色综合| 美女mm1313爽爽久久久蜜臀| 亚洲妇熟xx妇色黄| 亚洲美女电影在线| 中国av一区二区三区| 久久精品人人做人人爽97| 日韩一区二区三免费高清| 欧美在线视频日韩| 91免费国产在线观看| 成人动漫一区二区| www.欧美日韩| 欧美日本国产视频| 国产成人丝袜美腿| 精品制服美女久久| 美女视频一区在线观看| 午夜精品免费在线| 日韩精品一级中文字幕精品视频免费观看| 国产精品麻豆99久久久久久| 欧美激情一区二区在线| 久久嫩草精品久久久精品| 精品91自产拍在线观看一区| 欧美一区二区三区在线观看| 日韩一区二区三区视频在线| 欧美一三区三区四区免费在线看 | 不卡一区二区在线| 国产成人a级片| 成人av网站大全| 91麻豆国产福利在线观看| 99久久精品情趣| 在线亚洲高清视频| 欧美高清性hdvideosex| 日韩一级片网址| 国产欧美精品一区aⅴ影院| 美女在线视频一区| 日韩制服丝袜av| 日韩电影在线一区二区| 秋霞成人午夜伦在线观看| 免费高清在线一区| 国产乱子伦一区二区三区国色天香| 国产真实乱对白精彩久久| 从欧美一区二区三区| 色欲综合视频天天天| 欧美日韩成人综合| 精品国产三级电影在线观看| 日本一区二区动态图| 亚洲成人午夜电影| 国产一区二区主播在线| av不卡在线播放| 91精品国产91久久综合桃花| 久久精品日产第一区二区三区高清版 | 亚洲女子a中天字幕| 亚洲大片免费看| 日日摸夜夜添夜夜添精品视频| 亚洲精品视频在线| 亚洲成人av一区| 国内欧美视频一区二区| 色婷婷精品大在线视频| 精品粉嫩超白一线天av| 亚洲人被黑人高潮完整版| 日本在线不卡一区| 91蝌蚪国产九色| 久久综合99re88久久爱| 亚洲综合图片区| 国产美女在线精品| 欧美丰满一区二区免费视频| 中文字幕av一区 二区| 婷婷开心久久网|