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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? ff.lst

?? C8051F340讀寫(xiě)SD卡,帶文件系統(tǒng)
?? LST
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
 224          /*-----------------------------------------------------------------------*/
 225          /* Change window offset                                                  */
 226          /*-----------------------------------------------------------------------*/
 227          
 228          static
 229          FRESULT move_window (
 230                  FATFS *fs,              /* File system object */
 231                  DWORD sector    /* Sector number to make apperance in the fs->win[] */
 232          )                                       /* Move to zero only writes back dirty window */
 233          {
 234   1              DWORD wsect;
 235   1      
 236   1      
 237   1              wsect = fs->winsect;
 238   1              if (wsect != sector) {  /* Changed current window */
 239   2      #if !_FS_READONLY
C51 COMPILER V7.06   FF                                                                    03/06/2010 17:37:27 PAGE 5   

 240   2                      if (fs->wflag) {        /* Write back dirty window if needed */
 241   3                              if (disk_write(fs->drive, fs->win, wsect, 1) != RES_OK)
 242   3                                      return FR_DISK_ERR;
 243   3                              fs->wflag = 0;
 244   3                              if (wsect < (fs->fatbase + fs->sects_fat)) {    /* In FAT area */
 245   4                                      BYTE nf;
 246   4                                      for (nf = fs->n_fats; nf > 1; nf--) {   /* Refrect the change to all FAT copies */
 247   5                                              wsect += fs->sects_fat;
 248   5                                              disk_write(fs->drive, fs->win, wsect, 1);
 249   5                                      }
 250   4                              }
 251   3                      }
 252   2      #endif
 253   2                      if (sector) {
 254   3                              if (disk_read(fs->drive, fs->win, sector, 1) != RES_OK)
 255   3                                      return FR_DISK_ERR;
 256   3                              fs->winsect = sector;
 257   3                      }
 258   2              }
 259   1      
 260   1              return FR_OK;
 261   1      }
 262          
 263          
 264          
 265          
 266          /*-----------------------------------------------------------------------*/
 267          /* Clean-up cached data                                                  */
 268          /*-----------------------------------------------------------------------*/
 269          #if !_FS_READONLY
 270          static
 271          FRESULT sync (  /* FR_OK: successful, FR_DISK_ERR: failed */
 272                  FATFS *fs       /* File system object */
 273          )
 274          {
 275   1              FRESULT res;
 276   1      
 277   1      
 278   1              res = move_window(fs, 0);
 279   1              if (res == FR_OK) {
 280   2                      /* Update FSInfo sector if needed */
 281   2                      if (fs->fs_type == FS_FAT32 && fs->fsi_flag) {
 282   3                              fs->winsect = 0;
 283   3                              mem_set(fs->win, 0, 512);
 284   3                              ST_WORD(fs->win+BS_55AA, 0xAA55);
 285   3                              ST_DWORD(fs->win+FSI_LeadSig, 0x41615252);
 286   3                              ST_DWORD(fs->win+FSI_StrucSig, 0x61417272);
 287   3                              ST_DWORD(fs->win+FSI_Free_Count, fs->free_clust);
 288   3                              ST_DWORD(fs->win+FSI_Nxt_Free, fs->last_clust);
 289   3                              disk_write(fs->drive, fs->win, fs->fsi_sector, 1);
 290   3                              fs->fsi_flag = 0;
 291   3                      }
 292   2                      /* Make sure that no pending write process in the physical drive */
 293   2                      if (disk_ioctl(fs->drive, CTRL_SYNC, (void*)NULL) != RES_OK)
 294   2                              res = FR_DISK_ERR;
 295   2              }
 296   1      
 297   1              return res;
 298   1      }
 299          #endif
 300          
 301          
C51 COMPILER V7.06   FF                                                                    03/06/2010 17:37:27 PAGE 6   

 302          
 303          
 304          /*-----------------------------------------------------------------------*/
 305          /* FAT access - Read value of a FAT entry                                */
 306          /*-----------------------------------------------------------------------*/
 307          
 308          static
 309          DWORD get_fat ( /* 0xFFFFFFFF:Disk error, 1:Interal error, Else:Cluster status */
 310                  FATFS *fs,      /* File system object */
 311                  DWORD clst      /* Cluster# to get the link information */
 312          )
 313          {
 314   1              UINT wc, bc;
 315   1              DWORD fsect;
 316   1      
 317   1      
 318   1              if (clst < 2 || clst >= fs->max_clust)  /* Range check */
 319   1                      return 1;
 320   1      
 321   1              fsect = fs->fatbase;
 322   1              switch (fs->fs_type) {
 323   2              case FS_FAT12 :
 324   2                      bc = clst; bc += bc / 2;
 325   2                      if (move_window(fs, fsect + (bc / SS(fs)))) break;
 326   2                      wc = fs->win[bc & (SS(fs) - 1)]; bc++;
 327   2                      if (move_window(fs, fsect + (bc / SS(fs)))) break;
 328   2                      wc |= (WORD)fs->win[bc & (SS(fs) - 1)] << 8;
 329   2                      return (clst & 1) ? (wc >> 4) : (wc & 0xFFF);
 330   2      
 331   2              case FS_FAT16 :
 332   2                      if (move_window(fs, fsect + (clst / (SS(fs) / 2)))) break;
 333   2                      return LD_WORD(&fs->win[((WORD)clst * 2) & (SS(fs) - 1)]);
 334   2      
 335   2              case FS_FAT32 :
 336   2                      if (move_window(fs, fsect + (clst / (SS(fs) / 4)))) break;
 337   2                      return LD_DWORD(&fs->win[((WORD)clst * 4) & (SS(fs) - 1)]) & 0x0FFFFFFF;
 338   2              }
 339   1      
 340   1              return 0xFFFFFFFF;      /* An error occured at the disk I/O layer */
 341   1      }
 342          
 343          
 344          
 345          
 346          /*-----------------------------------------------------------------------*/
 347          /* FAT access - Change value of a FAT entry                              */
 348          /*-----------------------------------------------------------------------*/
 349          #if !_FS_READONLY
 350          static
 351          FRESULT put_fat (
 352                  FATFS *fs,      /* File system object */
 353                  DWORD clst,     /* Cluster# to be changed in range of 2 to fs->max_clust - 1 */
 354                  DWORD val       /* New value to mark the cluster */
 355          )
 356          {
 357   1              UINT bc;
 358   1              BYTE *p;
 359   1              DWORD fsect;
 360   1              FRESULT res;
 361   1      
 362   1      
 363   1              if (clst < 2 || clst >= fs->max_clust) {        /* Range check */
C51 COMPILER V7.06   FF                                                                    03/06/2010 17:37:27 PAGE 7   

 364   2                      res = FR_INT_ERR;
 365   2      
 366   2              } else {
 367   2                      fsect = fs->fatbase;
 368   2                      switch (fs->fs_type) {
 369   3                      case FS_FAT12 :
 370   3                              bc = clst; bc += bc / 2;
 371   3                              res = move_window(fs, fsect + (bc / SS(fs)));
 372   3                              if (res != FR_OK) break;
 373   3                              p = &fs->win[bc & (SS(fs) - 1)];
 374   3                              *p = (clst & 1) ? ((*p & 0x0F) | ((BYTE)val << 4)) : (BYTE)val;
 375   3                              bc++;
 376   3                              fs->wflag = 1;
 377   3                              res = move_window(fs, fsect + (bc / SS(fs)));
 378   3                              if (res != FR_OK) break;
 379   3                              p = &fs->win[bc & (SS(fs) - 1)];
 380   3                              *p = (clst & 1) ? (BYTE)(val >> 4) : ((*p & 0xF0) | ((BYTE)(val >> 8) & 0x0F));
 381   3                              break;
 382   3      
 383   3                      case FS_FAT16 :
 384   3                              res = move_window(fs, fsect + (clst / (SS(fs) / 2)));
 385   3                              if (res != FR_OK) break;
 386   3                              ST_WORD(&fs->win[((WORD)clst * 2) & (SS(fs) - 1)], (WORD)val);
 387   3                              break;
 388   3      
 389   3                      case FS_FAT32 :
 390   3                              res = move_window(fs, fsect + (clst / (SS(fs) / 4)));
 391   3                              if (res != FR_OK) break;
 392   3                              ST_DWORD(&fs->win[((WORD)clst * 4) & (SS(fs) - 1)], val);
 393   3                              break;
 394   3      
 395   3                      default :
 396   3                              res = FR_INT_ERR;
 397   3                      }
 398   2                      fs->wflag = 1;
 399   2              }
 400   1      
 401   1              return res;
 402   1      }
 403          #endif /* !_FS_READONLY */
 404          
 405          
 406          
 407          
 408          /*-----------------------------------------------------------------------*/
 409          /* FAT handling - Remove a cluster chain                                 */
 410          /*-----------------------------------------------------------------------*/
 411          #if !_FS_READONLY
 412          static
 413          FRESULT remove_chain (
 414                  FATFS *fs,                      /* File system object */
 415                  DWORD clst                      /* Cluster# to remove a chain from */
 416          )
 417          {
 418   1              FRESULT res;
 419   1              DWORD nxt;
 420   1      
 421   1      
 422   1              if (clst < 2 || clst >= fs->max_clust) {        /* Check the range of cluster# */
 423   2                      res = FR_INT_ERR;
 424   2      
 425   2              } else {
C51 COMPILER V7.06   FF                                                                    03/06/2010 17:37:27 PAGE 8   

 426   2                      res = FR_OK;
 427   2                      while (clst < fs->max_clust) {                  /* Not a last link? */
 428   3                              nxt = get_fat(fs, clst);                        /* Get cluster status */
 429   3                              if (nxt == 0) break;                            /* Empty cluster? */
 430   3                              if (nxt == 1) { res = FR_INT_ERR; break; }      /* Internal error? */
 431   3                              if (nxt == 0xFFFFFFFF) { res = FR_DISK_ERR; break; }    /* Disk error? */
 432   3                              res = put_fat(fs, clst, 0);                     /* Mark the cluster "empty" */
 433   3                              if (res != FR_OK) break;
 434   3                              if (fs->free_clust != 0xFFFFFFFF) {     /* Update FSInfo */
 435   4                                      fs->free_clust++;
 436   4                                      fs->fsi_flag = 1;
 437   4                              }
 438   3                              clst = nxt;     /* Next cluster */
 439   3                      }
 440   2              }
 441   1      
 442   1              return res;
 443   1      }
 444          #endif
 445          
 446          
 447          
 448          
 449          /*-----------------------------------------------------------------------*/
 450          /* FAT handling - Stretch or Create a cluster chain                      */
 451          /*-----------------------------------------------------------------------*/
 452          #if !_FS_READONLY
 453          static
 454          DWORD create_chain (    /* 0:No free cluster, 1:Internal error, 0xFFFFFFFF:Disk error, >=2:New cluster# */
 455                  FATFS *fs,                      /* File system object */

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产视频网站| 色婷婷精品久久二区二区蜜臀av | 日本vs亚洲vs韩国一区三区二区| 日本中文字幕一区二区有限公司| 国产成人啪午夜精品网站男同| 欧美熟乱第一页| 中文字幕一区在线| 免费在线观看一区| 欧美伦理视频网站| 亚洲国产一区在线观看| av日韩在线网站| 国产日韩精品久久久| 美女一区二区三区| 久久国产乱子精品免费女| 国产传媒欧美日韩成人| 成人午夜视频在线| 欧美久久久久久久久中文字幕| 久久精品人人做| 亚洲裸体xxx| 久久精品99国产精品日本| 久久综合九色综合97婷婷| 亚洲一区二区三区四区五区黄| 国产精品一区一区| 久久久久久久性| 久久99国产精品尤物| 欧美三级视频在线| 亚洲天堂久久久久久久| 一本色道**综合亚洲精品蜜桃冫 | 狠狠狠色丁香婷婷综合激情| 欧美日韩一区二区电影| 日韩精品免费专区| 欧美人妇做爰xxxⅹ性高电影| 亚洲视频在线一区二区| 欧美三级三级三级爽爽爽| 亚洲欧美一区二区三区国产精品 | 3atv在线一区二区三区| 亚洲国产一区二区三区青草影视 | 免费观看日韩av| 精品国产99国产精品| 国产精品天天看| 99精品国产热久久91蜜凸| 欧美经典三级视频一区二区三区| 99精品视频一区二区三区| 亚洲欧洲无码一区二区三区| 成人av影院在线| 国产欧美一区二区三区在线看蜜臀 | 在线视频一区二区三| 一区二区三区四区五区视频在线观看 | 日本美女视频一区二区| 欧美日韩黄色一区二区| 蜜臀久久99精品久久久画质超高清 | 午夜精品视频在线观看| 亚洲色图制服丝袜| 日韩视频在线永久播放| 床上的激情91.| 国产日韩亚洲欧美综合| 91 com成人网| 成人精品小蝌蚪| 日精品一区二区三区| 国产精品人成在线观看免费| 蜜臀久久久久久久| 亚洲成人福利片| 中文字幕一区免费在线观看 | 日本系列欧美系列| 亚洲一区二区三区视频在线 | 国产在线播放一区| 日本中文一区二区三区| 亚洲一区二区中文在线| 国产精品高清亚洲| 欧美经典三级视频一区二区三区| 亚洲欧洲另类国产综合| 中文字幕欧美区| 国产欧美日韩精品在线| 一区二区三区在线免费视频| 国产情人综合久久777777| 国产精品动漫网站| 亚洲综合在线视频| 一区二区三区在线观看网站| 国产精品久久久久永久免费观看 | 国产精品资源网站| 国产精品12区| 99视频一区二区| 色婷婷国产精品综合在线观看| 欧美午夜电影在线播放| 91麻豆精品国产91久久久久久 | 亚洲一线二线三线视频| 麻豆精品一区二区av白丝在线| 日本不卡123| 国产91丝袜在线播放| 91丨九色丨蝌蚪丨老版| 欧美成人女星排名| 国产精品你懂的在线欣赏| 亚洲在线观看免费视频| 久久99蜜桃精品| 国产.精品.日韩.另类.中文.在线.播放 | 亚洲国产欧美在线| 日韩电影网1区2区| 国产麻豆成人传媒免费观看| 91免费在线看| 精品粉嫩aⅴ一区二区三区四区| 中文字幕一区二区在线观看 | 5858s免费视频成人| 国产欧美日韩在线| 麻豆精品在线播放| 欧美日本乱大交xxxxx| 一区二区三区.www| 欧美亚洲另类激情小说| 亚洲日本电影在线| 成人永久aaa| 亚洲欧美在线视频观看| 国产高清精品在线| 欧美人与禽zozo性伦| 亚洲亚洲人成综合网络| 国产精品一区二区黑丝| 亚洲精品在线免费播放| 国产一区二区不卡| 欧美日韩久久一区| 亚洲一区二区精品3399| 欧美绝品在线观看成人午夜影视| 中文字幕一区二区三中文字幕 | 一区二区三区产品免费精品久久75| 精品日韩一区二区三区免费视频| 日本亚洲电影天堂| 国产精品久久99| 一卡二卡三卡日韩欧美| 欧美午夜电影一区| 国产精品一区二区免费不卡| 亚洲综合久久av| 亚洲视频一区在线| 日韩美女视频一区| 日本一区二区三区国色天香| 欧美色综合天天久久综合精品| 久久久久久久久免费| 91精品免费在线| 色屁屁一区二区| 久久人人爽人人爽| 国产欧美日韩麻豆91| 久久亚洲春色中文字幕久久久| 国产一区二区三区美女| 一区二区三区加勒比av| 欧美视频日韩视频| 成人美女视频在线观看18| 欧美视频一区在线| av电影在线不卡| 国产在线观看一区二区| av欧美精品.com| 91在线无精精品入口| www.成人网.com| 国产91精品一区二区麻豆亚洲| 一本一道久久a久久精品| 成人午夜av电影| 成人精品视频一区| 欧美久久婷婷综合色| 国产99久久久精品| 成人av电影在线网| 在线视频欧美区| 日韩在线卡一卡二| 久久99精品久久久久久动态图 | 97国产一区二区| 国产精品人成在线观看免费| 国产午夜精品久久久久久久| 久久一区二区三区国产精品| 国产精品日韩成人| 亚洲综合一区在线| 成人精品视频一区二区三区| 91原创在线视频| 欧美一级日韩一级| 成人app软件下载大全免费| 国产麻豆精品theporn| 国产成人精品一区二| 春色校园综合激情亚洲| 国产成人精品在线看| 久久九九国产精品| 水蜜桃久久夜色精品一区的特点 | 九色综合狠狠综合久久| 欧美性猛片xxxx免费看久爱| 久久久久久久精| 欧美天堂亚洲电影院在线播放| 99精品国产热久久91蜜凸| 欧美成人一区二区三区片免费| 亚洲一区二区偷拍精品| 国产99精品国产| 久久综合资源网| 久久精品99国产精品| 日韩欧美在线影院| 亚洲大片免费看| 色婷婷激情综合| 免费观看一级欧美片| 精品福利视频一区二区三区| 国内精品国产成人| 中文一区二区完整视频在线观看| 大尺度一区二区| 亚洲香蕉伊在人在线观| 91精品国产综合久久福利软件| 免费观看日韩av| 久久久亚洲国产美女国产盗摄| 国产一区二区三区免费看| 亚洲视频一二三区| 精品国产乱码久久久久久久久 | 国内成+人亚洲+欧美+综合在线|