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

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

?? sd.lst

?? FS7805 使用SD卡的demo
?? LST
?? 第 1 頁 / 共 3 頁
字號:
 542   1              return Status;
 543   1          
 544   1          SdWaitCard();
 545   1            
 546   1          return STATUS_SUCCESS; 
 547   1      }   
 548          //----------------------------------------------------------------------------
 549          STATUS SdWaitCmd()
C51 COMPILER V7.50   SD                                                                    04/17/2007 10:40:23 PAGE 10  

 550          {   
 551   1              CmdTimer = SD_CMD_TIMEOUT;      
 552   1              while((!(SDMI_INT&bmSD_COMPLETE_INT))&&CmdTimer); //
 553   1              SDMI_INT&=~bmSD_COMPLETE_INT; //
 554   1          
 555   1              if (CmdTimer)
 556   1                      return STATUS_SUCCESS;
 557   1              else 
 558   1              {
 559   2                      SdCtrlReset();
 560   2                      return STATUS_FLASH_ERROR;
 561   2              }
 562   1      }   
 563              
 564          //----------------------------------------------------------------------------
 565          /*
 566          STATUS SdSetBlockLen(INT16U len)
 567          {   
 568              STATUS Status;
 569              
 570              SdWaitCard();
 571              
 572                  *((INT32U *)(&SdCmdBuf[1]))=len;
 573              Status = SdSendCmd(SET_BLOCK_LEN,SdCmdBuf);
 574                  if(Status == STATUS_SUCCESS)
 575              {
 576                  SDMI_LENH=len>>8;
 577                  SDMI_LENL=len;
 578              }
 579                     
 580              return Status;   
 581          }   
 582           */   
 583          //--------------------------------------------------------------------
 584          // Read first sector of data from SD/MMC
 585          //--------------------------------------------------------------------
 586          STATUS SdReadOneSector()
 587          {
 588   1              STATUS Status;
 589   1          int RetryCount1 , RetryCount2;
 590   1          BOOL ReadyForData;
 591   1      
 592   1              if (!SdCardExist())
 593   1                      return STATUS_FLASH_ERROR;
 594   1      
 595   1          if(SectorStart > SdAvailableBlocks)
 596   1              return STATUS_PARAM_ERROR;
 597   1      
 598   1          SdWaitCard();
 599   1        
 600   1          for(RetryCount1 = 0; RetryCount1 < 5; RetryCount1++)
 601   1          {
 602   2              ReadyForData = FALSE;
 603   2              for(RetryCount2 = 0; RetryCount2 < 20; RetryCount2++)
 604   2              {
 605   3                  *((INT32U *)(&SdCmdBuf[1])) = RCA;
 606   3                  Status = SdSendCmd(SEND_STATUS, SdCmdBuf);
 607   3                  if(Status != STATUS_SUCCESS)
 608   3                      continue;  
 609   3                  if(SdRespBuf[3] & 0x01) // READY_FOR_DATA in Card Status
 610   3                  {
 611   4                      ReadyForData = TRUE;
C51 COMPILER V7.50   SD                                                                    04/17/2007 10:40:23 PAGE 11  

 612   4                      break;
 613   4                  }
 614   3              }        
 615   2              if(!ReadyForData)
 616   2                  continue;
 617   2                  
 618   2                      //SDMI_BUFBASE=0xEC; //FIFOA0
 619   2                             
 620   2              *((INT32U *)(&SdCmdBuf[1])) = 
 621   2                  SectorStart << BYTES_PER_SECTOR_SHIFT;
 622   2      
 623   2                      //***********************8
 624   2              if (SectorCount > 1) // Muti-Read.
 625   2              {    
 626   3                              SDMI_CTL|=bmSD_AUTO_CLK_EN;     
 627   3                      Status = SdSendCmd(READ_MUL_BLOCK, SdCmdBuf);
 628   3                      if(Status != STATUS_SUCCESS)
 629   3                      continue;
 630   3              }
 631   2              else
 632   2              {
 633   3                              Status = SdSendCmd(READ_BLOCK, SdCmdBuf);
 634   3                      if(Status != STATUS_SUCCESS)
 635   3                              continue;
 636   3              }
 637   2      //*******************************   
 638   2              if(SDMI_ST&bmSD_CRC16_ERR)//
 639   2              {
 640   3                  SDMI_ST &=~bmSD_CRC16_ERR;
 641   3                  continue;
 642   3              }
 643   2              else
 644   2                  return STATUS_SUCCESS;
 645   2          }
 646   1          return STATUS_FLASH_ERROR;
 647   1      }
 648          
 649          //----------------------------------------------------------------------------
 650          //  Description:
 651          //    Read one sector of data from the SD device 
 652          //----------------------------------------------------------------------------
 653          STATUS SdReadNextSectorData()
 654          {
 655   1              STATUS Status;
 656   1              bit Stop;
 657   1      
 658   1              Stop = SectorCount == 1;
 659   1      
 660   1      
 661   1              
 662   1              SDMI_CMD=SD_CMD_RX_DATA_ONLY;  //       
 663   1              SDMI_CTL|=bmSD_AUTO_CLK_EN;    //
 664   1              if ((Status = SdWaitCmd()) != STATUS_SUCCESS)//
 665   1                      return Status;
 666   1      
 667   1              if(SDMI_ST&bmSD_CRC16_ERR) // CRC7 Error
 668   1              {
 669   2                      SDMI_ST&=~bmSD_CRC16_ERR; // Clear INT
 670   2                      return STATUS_DATA_ERROR;
 671   2              }
 672   1              
 673   1              if (Stop)
C51 COMPILER V7.50   SD                                                                    04/17/2007 10:40:23 PAGE 12  

 674   1                      return SdStopCmd();
 675   1              
 676   1              return STATUS_SUCCESS;
 677   1      }
 678          
 679          STATUS SdReadSector()
 680          {
 681   1          STATUS Status = SdReadOneSector();
 682   1          SectorStart ++;
 683   1          return Status;
 684   1      }
 685          
 686          STATUS SdReadNextSector()
 687          {
 688   1          BYTE        RetryCount;
 689   1      
 690   1              STATUS Status = SdReadNextSectorData();
 691   1          if(Status != STATUS_SUCCESS)
 692   1              {
 693   2                      for(RetryCount = 0 ; RetryCount < 5; RetryCount ++)
 694   2                      {
 695   3                              Status = SdStopCmd();
 696   3                              if(Status != STATUS_SUCCESS)
 697   3                                      continue;
 698   3                              Status = SdReadOneSector();
 699   3                                      break;
 700   3                      }       
 701   2              }
 702   1          SectorStart ++;
 703   1          return Status;
 704   1      }
 705          //--------------------------------------------------------------------
 706          // Write one sector of data to SD/MMC
 707          //--------------------------------------------------------------------
 708          STATUS SdWriteOneSector()
 709          {
 710   1          STATUS Status;
 711   1          BYTE CrcSts;
 712   1          int RetryCount1 , RetryCount2;
 713   1          BOOL ReadyForData;
 714   1      
 715   1          if(SDMI_ST & bmSD_WR_PROTECT)
 716   1              return STATUS_WRITE_PROTECT;
 717   1        
 718   1          SdWaitCard();
 719   1      
 720   1              //MMCtest ++;
 721   1          for(RetryCount1 = 0; RetryCount1 < 5; RetryCount1++)
 722   1          {
 723   2              ReadyForData = FALSE;
 724   2              for(RetryCount2 = 0; RetryCount2 < 20; RetryCount2++)
 725   2              {
 726   3                  *((INT32U *)(&SdCmdBuf[1])) = RCA;
 727   3                  Status = SdSendCmd(SEND_STATUS, SdCmdBuf);
 728   3                  if(Status != STATUS_SUCCESS) //MMCerror1++;
 729   3                      continue;  
 730   3                  if(SdRespBuf[3] & 0x01) // READY_FOR_DATA in Card Status
 731   3                  {
 732   4                      ReadyForData = TRUE;
 733   4                      break;
 734   4                  }
 735   3              }        
C51 COMPILER V7.50   SD                                                                    04/17/2007 10:40:23 PAGE 13  

 736   2              if(!ReadyForData) //MMCerror2++;
 737   2                  continue;
 738   2      
 739   2              //SDMI_BUFBASE=0xF0; //FIFOB0
 740   2      
 741   2              *((INT32U *)(&SdCmdBuf[1])) = SectorStart << BYTES_PER_SECTOR_SHIFT;
 742   2                      //***********************8
 743   2                      if (SectorCount > 1) // Muti-Read.
 744   2                      {   
 745   3                  Status = SdSendCmd(WRITE_MUL_BLOCK, SdCmdBuf);
 746   3                  if(Status != STATUS_SUCCESS)
 747   3                      continue;
 748   3                      }
 749   2              else
 750   2                      {
 751   3                              Status = SdSendCmd(WRITE_BLOCK, SdCmdBuf);
 752   3                  if(Status != STATUS_SUCCESS)
 753   3                      continue;
 754   3                      }
 755   2                      //*******************************           
 756   2                      CrcSts = (SDMI_ST&0x38) >> 3;
 757   2                      if(CrcSts != GOOD_CRC16_STS) //MMCerror3++;
 758   2                              continue;
 759   2                      else    //*/
 760   2                              return STATUS_SUCCESS;
 761   2              }
 762   1          
 763   1          return STATUS_FLASH_ERROR;
 764   1      }
 765          
 766          //----------------------------------------------------------------------------
 767          //  Description:
 768          //    Write one sector of data from the SD device 
 769          //----------------------------------------------------------------------------
 770          STATUS SdWriteNextSector()
 771          {
 772   1              STATUS Status;
 773   1              BYTE CrcSts;
 774   1              bit Stop;
 775   1              
 776   1              Stop = SectorCount == 1;
 777   1              
 778   1              SdWaitCard();
 779   1              
 780   1              //SDMI_BUFBASE=0xF0; //FIFOB0
 781   1              
 782   1              SDMI_CMD=SD_CMD_TX_DATA_ONLY; 
 783   1              if ((Status = SdWaitCmd()) != STATUS_SUCCESS)
 784   1                      return Status;
 785   1              CrcSts = (SDMI_ST&0x38) >> 3;
 786   1              if (CrcSts != GOOD_CRC16_STS)
 787   1                      return STATUS_DATA_ERROR;
 788   1              
 789   1              if (Stop)
 790   1                      return SdStopCmd();
 791   1              
 792   1              return STATUS_SUCCESS;
 793   1      }
 794          
 795          STATUS SdWriteSector()
 796          {
 797   1          STATUS Status = SdWriteOneSector();
C51 COMPILER V7.50   SD                                                                    04/17/2007 10:40:23 PAGE 14  

 798   1          SectorStart ++;
 799   1          return Status;
 800   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   2361    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =     39    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      8      41
   IDATA SIZE       =      9    ----
   BIT SIZE         =   ----       2
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看日韩一区| 欧美成人性福生活免费看| 免费成人美女在线观看| 一区二区三区不卡视频在线观看| 精品国产制服丝袜高跟| 7777精品久久久大香线蕉| 欧美性极品少妇| 欧美精品在线观看一区二区| 欧美二区三区的天堂| 国产精品久久午夜夜伦鲁鲁| 欧美国产欧美综合| 自拍av一区二区三区| 亚洲欧美视频在线观看| 亚洲国产精品一区二区久久| 一区二区三区免费网站| 国产成人免费视频 | 久久久99精品免费观看不卡| 日韩免费性生活视频播放| 精品国产乱码久久久久久1区2区 | 成人精品国产免费网站| 99国产麻豆精品| 欧美性猛交一区二区三区精品| 精品999久久久| 麻豆精品视频在线| 成人美女视频在线看| 欧美做爰猛烈大尺度电影无法无天| 国产人伦精品一区二区| 亚洲蜜桃精久久久久久久| 国产91露脸合集magnet| 欧美日韩激情在线| 国产午夜亚洲精品午夜鲁丝片| 麻豆精品一区二区av白丝在线| 欧美四级电影网| 亚洲午夜电影在线| 在线中文字幕一区| 精品国产伦理网| 精品一区二区三区久久久| 91在线观看一区二区| 日本久久精品电影| 夜夜揉揉日日人人青青一国产精品 | 日本vs亚洲vs韩国一区三区二区| 欧美在线免费视屏| 午夜久久福利影院| 成人午夜精品在线| 综合亚洲深深色噜噜狠狠网站| 成人污视频在线观看| 成人免费一区二区三区视频| 人人精品人人爱| 精品黑人一区二区三区久久| 国产精品一二三区| 欧美一级专区免费大片| 亚洲欧美日韩一区| 欧美乱熟臀69xxxxxx| 美女视频网站黄色亚洲| 国产欧美一区二区三区沐欲 | 日本一区二区动态图| 91老司机福利 在线| 亚洲国产wwwccc36天堂| 日韩一级二级三级| 视频在线观看91| 在线免费不卡电影| 日本女优在线视频一区二区| 欧美写真视频网站| 麻豆国产精品视频| 国产精品久久久久久福利一牛影视 | 国产精品美女久久久久久久网站| 久久99精品久久久久久| 中文字幕欧美激情一区| 欧美日韩第一区日日骚| 国产一区在线不卡| 久久久久久久久蜜桃| 精品一区二区免费在线观看| 国产精品久久三区| 欧美一区二区三区免费| 91日韩精品一区| 激情综合色综合久久| 一区二区在线免费观看| 色老汉av一区二区三区| 久久精品国产99国产| 精品国产乱码久久久久久浪潮| 91麻豆精东视频| 国产中文字幕一区| 国产偷v国产偷v亚洲高清| 欧美日韩三级一区二区| 青青草原综合久久大伊人精品| 日本一区二区三区四区| 欧美一级久久久久久久大片| 97超碰欧美中文字幕| 国产综合成人久久大片91| 日韩av中文在线观看| 综合久久久久综合| 国产三级久久久| 日韩欧美国产麻豆| 欧美电影在线免费观看| 色国产精品一区在线观看| 国产成人av一区二区三区在线观看| 喷白浆一区二区| 亚洲午夜一二三区视频| 亚洲视频一区在线观看| 久久久亚洲综合| 久久综合999| 91免费版pro下载短视频| 国产麻豆午夜三级精品| 老司机免费视频一区二区| 午夜精品在线看| 一区二区免费看| 亚洲精品视频一区二区| 亚洲视频图片小说| 国产精品全国免费观看高清| 国产亚洲精品资源在线26u| 精品国产91乱码一区二区三区| 在线综合+亚洲+欧美中文字幕| 欧美日韩一区二区电影| 欧美三区在线视频| 欧美高清hd18日本| 欧美久久久久久久久久| 欧美剧情电影在线观看完整版免费励志电影| av在线不卡免费看| 久久国产成人午夜av影院| 日韩成人一区二区三区在线观看| 亚洲成人激情综合网| 国产精品色呦呦| 国产欧美日韩在线| 中文字幕一区在线观看视频| 亚洲欧洲色图综合| 一区二区三区在线免费播放| 亚洲成人一区二区| 毛片av中文字幕一区二区| 久久国产精品99精品国产| 国产大陆亚洲精品国产| av一区二区不卡| 欧美无砖专区一中文字| 欧美狂野另类xxxxoooo| 欧美大片拔萝卜| 中文字幕欧美国产| 一区二区三区日韩欧美精品| 亚洲成人综合网站| 国产乱码精品一区二区三区忘忧草| 成人免费高清视频在线观看| 在线观看www91| 日韩欧美在线网站| 亚洲国产高清在线观看视频| 亚洲乱码中文字幕| 美日韩一区二区三区| 成人一区二区三区在线观看| 欧洲中文字幕精品| 精品国产乱码久久久久久蜜臀 | 亚洲电影你懂得| 免费在线一区观看| 9色porny自拍视频一区二区| 欧美日韩中文字幕一区| 久久在线观看免费| 亚洲欧美国产三级| 久热成人在线视频| 91蝌蚪国产九色| 精品免费国产一区二区三区四区| 国产亚洲精品精华液| 亚洲国产综合视频在线观看| 国产麻豆午夜三级精品| 欧美午夜精品免费| 中文字幕高清一区| 日本亚洲天堂网| 91麻豆国产福利在线观看| 精品电影一区二区三区| 亚洲国产日韩在线一区模特| 丰满少妇久久久久久久| 欧美一区二区三区四区在线观看| 国产精品每日更新在线播放网址| 日韩av一区二区在线影视| 99久久精品免费看| 欧美大白屁股肥臀xxxxxx| 亚洲综合色噜噜狠狠| 亚洲综合无码一区二区| 国产剧情一区在线| 91精品在线麻豆| 一个色在线综合| 99re8在线精品视频免费播放| 精品999在线播放| 美女精品自拍一二三四| 欧美视频一区二区三区四区| 亚洲同性gay激情无套| 大胆亚洲人体视频| 久久精品欧美日韩精品| 久久精品久久精品| 欧美一级日韩一级| 五月激情六月综合| 欧美日韩不卡在线| 亚洲精选视频免费看| 91亚洲国产成人精品一区二三| 国产调教视频一区| 国产一区二区毛片| 久久久综合精品| 国产精品一二三| 久久久久久久综合狠狠综合| 激情综合色播五月| 国产亚洲精品bt天堂精选| 国产精品一区二区久久不卡| 久久午夜羞羞影院免费观看| 国产一区二区成人久久免费影院| 精品久久99ma|