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

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

?? chap_9.lst

?? 初學51的值得看一下…………里面有很多實例
?? LST
?? 第 1 頁 / 共 5 頁
字號:
 186   1              //端點0接收到setup包處理      
 187   1              if(USB_Int_Flag.BITS.EP0SETUP)
 188   1              {
 189   2                      EA_DISABLE;
 190   2                      USB_Setup();
 191   2                      EA_ENABLE;
 192   2              }
 193   1              
 194   1              //掛起處理
 195   1              if(USB_Int_Flag.BITS.SUSP)
 196   1              {               
 197   2                      //清除掛起標志
 198   2                      EA_DISABLE;
 199   2                      USB_Int_Flag.BITS.SUSP = 0;
 200   2                      EA_ENABLE;
 201   2                      //ISP1581進入掛起狀態           
 202   2                      D14_Cntrl_Reg.D14_MODE.BITS.GOSUSP = 1;
 203   2                      D14_Cntrl_Reg.D14_MODE.BITS.GOSUSP = 0;
 204   2              }
 205   1              
 206   1              //掛起恢復處理
 207   1              if(USB_Int_Flag.BITS.RESUME)
 208   1              {
 209   2                      //清除恢復標志
 210   2                      EA_DISABLE;
 211   2                      USB_Int_Flag.BITS.RESUME = 0;         
 212   2                      EA_ENABLE;
 213   2                      //產生一個恢復信號
 214   2                      D14_Cntrl_Reg.D14_MODE.BITS.SNDRSU = 1;
 215   2                      D14_Cntrl_Reg.D14_MODE.BITS.SNDRSU = 0;
 216   2              }
 217   1              
 218   1              //高速狀態
 219   1              if(USB_Int_Flag.BITS.HS_STAT)
 220   1              {
 221   2                      //清除高速狀態標志
 222   2                      EA_DISABLE;
 223   2                      USB_Int_Flag.BITS.HS_STAT = 0;
 224   2                      EA_ENABLE;
 225   2                      if(Kernel_Flag.BITS.HS_FS_State == FULL_SPEED)
 226   2                      {
 227   3                              //切換高速指示
 228   3                              HS_FS_LED = HIGH_SPEED_LED;
 229   3                              //設置高速模式狀態
 230   3                              Kernel_Flag.BITS.HS_FS_State = HIGH_SPEED;
 231   3                              //重新配置高速端點
 232   3                              Init_Endpoint();
 233   3      
 234   3      //                      PIO_Count = 64;
 235   3                              PIO_Count = 512;
 236   3                      }
 237   2              }
 238   1      }
 239          
 240          
 241          //***********************************************************************
C51 COMPILER V7.06   CHAP_9                                                                07/02/2003 10:05:13 PAGE 5   

 242          //*                                                                                                                                     *
 243          //*     Routine         :                                                               *
 244          //*     Input           : None                                                                                  *
 245          //*     Output          : None                                                                  *
 246          //*     Function        :                                                               *
 247          //*                                                                                                                                             *
 248          //***********************************************************************
 249          //建立包處理
 250          void USB_Setup(void)
 251          {
 252   1              unsigned char type, req;
 253   1      
 254   1              //清除EP0SETUP中斷標志
 255   1              USB_Int_Flag.BITS.EP0SETUP = 0;   
 256   1              //清除總線復位標志
 257   1              Kernel_Flag.BITS.Bus_Reset = 0;
 258   1              //選擇端點0SETUP緩沖區
 259   1              D14_Cntrl_Reg.D14_ENDPT_INDEX = 0x20;
 260   1              
 261   1              //讀取USB請求
 262   1              //讀取請求類型
 263   1              USB_Device_Request.bmRequestType =  D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 264   1              //讀取請求號
 265   1              USB_Device_Request.bRequest = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 266   1              //讀取16bit請求數據
 267   1              USB_Device_Request.wValue = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 268   1              USB_Device_Request.wValue <<= 8;
 269   1              USB_Device_Request.wValue |= D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 270   1              //讀取16bit請求索引
 271   1              USB_Device_Request.wIndex = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 272   1              USB_Device_Request.wIndex <<= 8;
 273   1              USB_Device_Request.wIndex |= D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 274   1              //讀取16bit長度
 275   1              USB_Device_Request.wLength = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 276   1              USB_Device_Request.wLength <<= 8;
 277   1              USB_Device_Request.wLength |= D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 278   1              
 279   1              //長度處理(高低8位對調)
 280   1              Temp = USB_Device_Request.wLength;
 281   1              USB_Device_Request.wLength = 0;
 282   1              USB_Device_Request.wLength = (UC) Temp;
 283   1              USB_Device_Request.wLength <<= 8;
 284   1              Temp >>= 8;
 285   1              USB_Device_Request.wLength |= Temp;
 286   1              
 287   1              type = USB_Device_Request.bmRequestType & 0x60;
 288   1              req = USB_Device_Request.bRequest & 0x0f;
 289   1      
 290   1              //廠商請求
 291   1              if (type == 0x40)
 292   1              {
 293   2                      Vendor_Specific_Command();//廠商請求處理
 294   2              }
 295   1              else if (type == 0x00)
 296   1                      (*StandardDeviceRequest[req])();//調用標準請求
 297   1      }
 298          
 299          //***********************************************************************
 300          //*                                                                                                                                     *
 301          //*     Routine         :                                                               *
 302          //*     Input           : None                                                                                  *
 303          //*     Output          : None                                                                  *
C51 COMPILER V7.06   CHAP_9                                                                07/02/2003 10:05:13 PAGE 6   

 304          //*     Function        :                                                               *
 305          //*                                                                                                                                             *
 306          //***********************************************************************
 307          //廠商請求處理
 308          void Vendor_Specific_Command(void)
 309          {
 310   1              if(USB_Device_Request.bRequest == 0x0C)
 311   1              {
 312   2                      switch (USB_Device_Request.wIndex)
 313   2                      {
 314   3                      case GET_FIRMWARE_VERSION  ://獲取固件版本
 315   3                              if(USB_Device_Request.wLength == 1)
 316   3                              {
 317   4                                      //select endpoint
 318   4                                      D14_Cntrl_Reg.D14_ENDPT_INDEX = 1;
 319   4                                      //set the data length to 1 byte
 320   4                                      D14_Cntrl_Reg.D14_BUFFER_LENGTH_LSB = 1;
 321   4                                      D14_Cntrl_Reg.D14_BUFFER_LENGTH_MSB = 0;
 322   4                                      //sent 0x21 as data
 323   4                                      D14_Cntrl_Reg.D14_DATA_PORT_LSB = 0x22;//版本號
 324   4                                      wait_ep0tx();
 325   4                                      ep0out_ack();
 326   4      //                              ep0in_ack();
 327   4                                      break;
 328   4                              }
 329   3                              
 330   3                      case SETUP_DMA_REQUEST :
 331   3                              //Out Token Ack detected
 332   3                              wait_ep0rx();
 333   3                              D14_Cntrl_Reg.D14_ENDPT_INDEX = 0;
 334   3                              //
 335   3                              FileSize.Size.Address[0] = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 336   3                              FileSize.Size.Address[1] = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 337   3                              FileSize.Size.Address[2] = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 338   3                              //讀取傳輸字節數
 339   3                              Temp = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 340   3                              bytecount = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 341   3                              bytecount <<= 8;
 342   3                              bytecount |= Temp;
 343   3                              //讀取傳輸方式
 344   3                              FileSize.Size.DIR = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 345   3                              ep0in_ack();
 346   3                              Kernel_Flag.BITS.Transfer_Start = 1;//標志傳輸數據開始
 347   3                              break;
 348   3                      
 349   3                      case GET_SET_EEPROM_REQUEST  ://對EEPROM操作的請求
 350   3                              //Out Token Ack detected
 351   3                              wait_ep0rx();
 352   3                              D14_Cntrl_Reg.D14_ENDPT_INDEX = 0;
 353   3                              //
 354   3                              FileSize.Size.Address[0] = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 355   3                              FileSize.Size.Address[1] = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 356   3                              FileSize.Size.Address[2] = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 357   3                              //讀取傳輸字節數
 358   3                              Temp = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 359   3                              bytecount = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 360   3                              bytecount <<= 8;
 361   3                              bytecount |= Temp;
 362   3                              bytecouter=(UC)bytecount;
 363   3                              //讀取傳輸方式
 364   3                              FileSize.Size.DIR = D14_Cntrl_Reg.D14_DATA_PORT_LSB;
 365   3                              ep0in_ack();
C51 COMPILER V7.06   CHAP_9                                                                07/02/2003 10:05:13 PAGE 7   

 366   3                              Kernel_Flag.BITS.Transfer_Start = 1;//標志傳輸數據開始
 367   3                              break;
 368   3                      default :
 369   3                              if(USB_Device_Request.bmRequestType == 0xC0)
 370   3                              {
 371   4                                      ep0in_ack();
 372   4                                      break;                          
 373   4                              }
 374   3                              if(USB_Device_Request.bmRequestType == 0x40)
 375   3                              {       
 376   4                                      D14_Cntrl_Reg.D14_ENDPT_INDEX = 0;
 377   4                                      D14_Cntrl_Reg.D14_CONTROL_FUNCTION.BITS.STALL = 1;
 378   4                                      while(!USB_Int_Flag.BITS.EP0SETUP)
 379   4                                      {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
综合激情网...| 无吗不卡中文字幕| 国产99久久久精品| 国产精品美女一区二区| 91视频观看免费| 亚洲一区二区三区四区不卡| 在线播放中文一区| 毛片一区二区三区| 久久久亚洲欧洲日产国码αv| 国产精品一区二区三区网站| 国产精品国产精品国产专区不片| 99精品久久久久久| 亚洲成av人片一区二区梦乃| 精品少妇一区二区三区在线播放 | 成人午夜视频网站| 亚洲视频中文字幕| 欧美日本一区二区三区| 激情都市一区二区| 中文一区一区三区高中清不卡| 91女神在线视频| 午夜精品123| 国产亚洲va综合人人澡精品| 一本色道亚洲精品aⅴ| 午夜精品在线视频一区| 久久久久综合网| 色8久久精品久久久久久蜜| 婷婷国产v国产偷v亚洲高清| 精品久久久久久久久久久久久久久 | 艳妇臀荡乳欲伦亚洲一区| 欧美日韩一区二区在线视频| 国产一区美女在线| 亚洲精品大片www| 欧美一级久久久| av欧美精品.com| 婷婷国产在线综合| 国产精品私人影院| 欧美巨大另类极品videosbest | 五月激情六月综合| 国产精品久久久久久久第一福利| 欧美日韩一区二区三区免费看| 经典三级一区二区| 一区二区三区四区五区视频在线观看| 欧美一级二级在线观看| 99r精品视频| 国产一区在线观看麻豆| 午夜精品视频在线观看| 国产日产精品一区| 91精品国产高清一区二区三区 | 成人午夜伦理影院| 亚洲综合色视频| 久久精品一区二区三区av | 成人免费视频视频在线观看免费| 夜夜精品浪潮av一区二区三区| 久久理论电影网| 欧美巨大另类极品videosbest | 一区二区三区高清在线| www久久久久| 欧美精品777| 97久久精品人人澡人人爽| 精彩视频一区二区三区| 奇米影视在线99精品| 亚洲一区在线观看免费| 国产精品国产三级国产普通话99| 欧美v日韩v国产v| 欧美日韩精品高清| 欧美性一级生活| 91年精品国产| 欧美挠脚心视频网站| 成人国产亚洲欧美成人综合网| 久草中文综合在线| 麻豆久久久久久久| 奇米影视在线99精品| 日本视频免费一区| 日韩在线卡一卡二| 日韩精品成人一区二区三区| 亚洲444eee在线观看| 亚洲国产精品久久久男人的天堂| 亚洲激情网站免费观看| 亚洲欧美一区二区三区孕妇| 亚洲日本电影在线| 亚洲人精品午夜| 一区二区不卡在线播放 | 欧美国产日产图区| 亚洲精品一区二区三区在线观看| 日韩精品一区在线观看| 精品国产免费久久 | 成人激情图片网| gogogo免费视频观看亚洲一| 国产ts人妖一区二区| 成人免费视频视频| 色天使久久综合网天天| 欧美伊人久久大香线蕉综合69 | 911国产精品| 正在播放亚洲一区| 精品欧美一区二区久久| 国产无遮挡一区二区三区毛片日本| 久久久久9999亚洲精品| 中文字幕在线一区免费| 欧美专区日韩专区| 天天色天天操综合| 奇米精品一区二区三区在线观看| 久久精品999| 国产91在线观看| av一二三不卡影片| 欧美日韩电影在线| 久久久一区二区| 国产精品青草综合久久久久99| 国产精品久久久一本精品 | 国产一区在线观看视频| 成人高清视频免费观看| 欧美中文字幕久久| 精品乱人伦一区二区三区| 国产精品国产馆在线真实露脸| 亚洲激情自拍视频| 人妖欧美一区二区| 99久久精品久久久久久清纯| 欧美日韩一级片网站| 亚洲精品在线一区二区| 亚洲欧美日韩国产一区二区三区| 视频一区中文字幕国产| 国产a视频精品免费观看| 欧美亚州韩日在线看免费版国语版| 欧美mv日韩mv国产网站app| 中文字幕一区二区视频| 免费的成人av| 97久久人人超碰| 欧美tickling挠脚心丨vk| 综合自拍亚洲综合图不卡区| 日本不卡视频在线观看| www.成人网.com| 精品国产一区久久| 久久精品国产网站| 91久久线看在观草草青青| 久久久影视传媒| 日韩电影在线观看一区| 99精品久久99久久久久| 久久久午夜精品理论片中文字幕| 洋洋成人永久网站入口| 一区二区三区欧美久久| 91免费小视频| 久久综合久久综合九色| 一区二区理论电影在线观看| 国产在线一区二区| 制服丝袜亚洲播放| 亚洲一二三专区| 美国十次了思思久久精品导航| 久久看人人爽人人| 91免费看片在线观看| 欧美r级在线观看| 男人的j进女人的j一区| 欧美伊人久久久久久午夜久久久久| 这里是久久伊人| 亚洲一区二区黄色| 欧美精品一二三| 视频一区中文字幕| 欧美一区二区三区成人| 日韩vs国产vs欧美| 国产精品久久一卡二卡| 久久精工是国产品牌吗| 在线一区二区观看| 久久久亚洲精品一区二区三区| 日韩精品视频网| 4438x亚洲最大成人网| 美女视频黄 久久| 国产喂奶挤奶一区二区三区| 极品瑜伽女神91| 欧美一级夜夜爽| 一区二区三区久久| 粉嫩久久99精品久久久久久夜| 亚洲六月丁香色婷婷综合久久 | 在线观看av不卡| 国产在线视频一区二区| 精品一区二区在线播放| 日本不卡中文字幕| 国产乱淫av一区二区三区 | 精品日产卡一卡二卡麻豆| 精品乱人伦小说| 制服丝袜在线91| 中文成人综合网| 中文字幕亚洲精品在线观看| 欧美综合在线视频| 日韩精品乱码av一区二区| 久久网这里都是精品| 91国偷自产一区二区三区观看| 日韩精品一区第一页| 日本一区二区三区在线观看| 99久久精品免费| 毛片不卡一区二区| 亚洲精品国产a| 精品国产髙清在线看国产毛片| av毛片久久久久**hd| 亚洲欧美色图小说| 亚洲综合色网站| 蜜桃一区二区三区在线观看| 国产目拍亚洲精品99久久精品| 亚洲国产欧美在线| 日韩高清国产一区在线| 国产91色综合久久免费分享| 91丝袜呻吟高潮美腿白嫩在线观看| 欧洲一区在线观看|