⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usb.h

📁 MSP430F1611U盘数据读写 通过调试
💻 H
字号:
#include  <io430x16x.h>
#include"CH375INC.h"
#define CH375_BLOCK_SIZE	64/* CH375 maximum data block size */
#define CH375_BLK_PER_SEC	8/* CH375 block per sector, SECTOR_SIZE/CH375_BLOCK_SIZE */


struct USBAtt
{
  unsigned char FATNum;//FAT表的个数  
  int PerByteSec;//每扇区字节数
  unsigned long NumIndex;//根目录项数
  unsigned long ZongSecter;//U盘总扇区数  
  unsigned char DiskStart;//起始绝对扇区号
  unsigned char SecPerClus;//每簇扇区数
  unsigned char RsvdSecCnt;//保留扇区数
  int FATz16;//每个FAT16的FAT表占用的扇区数
  unsigned long USBCont;//U盘容量,以KByte为单位
  
  unsigned char DBRStart;//DBR区起始扇区和结束扇区
  unsigned char DBREnd;
  unsigned char ReseverStart;//保留区起始扇区和结束扇区
  unsigned char ReseverEnd;
  unsigned long FAT1Start;//FAT主表起始扇区和结束扇区
  unsigned long FAT1End;
  unsigned long FAT2Start;//FAT副表起始扇区和结束扇区
  unsigned long FAT2End;
  unsigned long FDTStart;//FDT起始扇区和结束扇区
  unsigned long FDTEnd;
  unsigned long DATStart;//DAT起始扇区和结束扇区
  unsigned long DATEnd;  
};//定义U盘属性结构体



void  mDelaymS( int ms );
void Init_Clock(void);
void Init(void);
void SysInit();
unsigned char ReadP10();
void SendCMD(unsigned char CMD);
void SendDAT(unsigned char DATE);
unsigned char ReceiveDAT();
void Reset375();
void Set375Band();
unsigned char WRCD375(unsigned char CMD,unsigned char DATE);
unsigned char WRC375(unsigned char CMD);
unsigned char Test375();
unsigned char USBInit();
void LED3Light();
void LED3wink();
void LED5Light();
void LED5wink();
void LED3glitter();
void LED3kglitter();
void LED5glitter();
void LED5kglitter();
void LED35glitter();
void LED35kglitter();
void LED53glitter();
void LED53kglitter();
void LED3355glitter();
void LED3355kglitter();
unsigned char mWriteSector( unsigned long iLbaStart, unsigned char iSectorCount ,unsigned char *mBufferPoint);
/*将缓冲区中的多个扇区的数据块写入U盘
iLbaStart 是写入的线起始性扇区号, iSectorCount 是写入的扇区数
返回0则成功,否则返回错误代码*/
unsigned char mReadSector( unsigned long iLbaStart, unsigned char iSectorCount,unsigned char *mBufferPoint );
/************************************************************************
从U盘读取多个扇区的数据块到缓冲区
iLbaStart 是准备读取的线性起始扇区号, iSectorCount 是准备读取的扇区数
************************************************************************/
//void dese();
void Send();
void McuBChange();
struct USBAtt  AcquireAtt();
void HardwareRst();


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -