好文档 - 专业文书写作范文服务资料分享网站

u盘读写控制源程序_ch376芯片

天下 分享 时间: 加入收藏 我要投稿 点赞

主要包含4个C文件和和三个头文件 CH376INC.H 与CH376HFT.C为u盘主文件 SPI_SW.C 为对硬件操作文件 单片机与SPI接口 FILE_SYS.H与FILE_SYS.C 为ch376接口函数 分别列出

CH376INC.H文件:

/* C Define for CH376 */ /* Website: http://wch.cn */ /* Email: tech@wch.cn */ /* Author: W.ch 2008.10 */ /* V1.0 for CH376 */

#ifndef __CH376INC_H__ #define __CH376INC_H__

#ifdef __cplusplus extern \#endif /*

********************************************************************************************************************* */ /* 常用类型和常量定义 */

#ifndef TRUE #define TRUE 1 #define FALSE 0

#endif #ifndef NULL #define NULL 0 #endif

#ifndef UINT8

typedef unsigned char UINT8; #endif

#ifndef UINT16

typedef unsigned short UINT16; #endif

#ifndef UINT32

typedef unsigned long UINT32; #endif

#ifndef PUINT8

typedef unsigned char *PUINT8; #endif

#ifndef PUINT16

typedef unsigned short *PUINT16; #endif

#ifndef PUINT32

typedef unsigned long *PUINT32; #endif

#ifndef UINT8V

typedef unsigned char volatile UINT8V; #endif

#ifndef PUINT8V

typedef unsigned char volatile *PUINT8V; #endif /*

********************************************************************************************************************* */ /* 硬件特性 */

#define CH376_DAT_BLOCK_LEN 0x40 /* USB单个数据包, 数据块的最大长度, 默认缓冲区的长度 */ /*

********************************************************************************************************************* */ /* 命令代码 */

/* 部分命令兼容CH375芯片, 但是输入数据或者输出数据的可能局部不同) */ /* 一个命令操作顺序包含:

一个命令码(对于串口方式,命令码之前还需要两个同步码), 若干个输入数据(可以是0个),

产生中断通知 或者 若干个输出数据(可以是0个), 二选一, 有中断通知则一定没有输出数据, 有输出数据则一定不产生中断

仅CMD01_WR_REQ_DATA命令例外, 顺序包含: 一个命令码, 一个输出数据, 若干个输入数据

命令码起名规则: CMDxy_NAME

其中的x和y都是数字, x说明最少输入数据个数(字节数), y说明最少输出数据个数(字节数), y如果是H则说明产生中断通知,

有些命令能够实现0到多个字节的数据块读写, 数据块本身的字节数未包含在上述x或y之内 */

/* 本文件默认会同时提供与CH375芯片命令码兼容的命令码格式(即去掉x和y之后), 如果不需要, 那么可以定义_NO_CH375_COMPATIBLE_禁止 */ /*

********************************************************************************************************************* */

/* 主要命令(手册一), 常用 */

#define CMD01_GET_IC_VER 0x01 /* 获取芯片及固件版本 */ /* 输出: 版本号( 位7为0, 位6为1, 位5~位0为版本号 ) */ /* CH376返回版本号的值为041H即版本号为01H */

#define CMD21_SET_BAUDRATE 0x02 /* 串口方式: 设置串口通讯波特率(上电或者复位后的默认波特率为9600bps,由D4/D5/D6引脚选择) */ /* 输入: 波特率分频系数, 波特率分频常数 */

/* 输出: 操作状态( CMD_RET_SUCCESS或CMD_RET_ABORT, 其它值说明操作未完成 ) */

#define CMD00_ENTER_SLEEP 0x03 /* 进入睡眠状态 */

#define CMD00_RESET_ALL

0x05

/* 执行硬件复位 */

#define CMD11_CHECK_EXIST 0x06 /* 测试通讯接口和工作状态 */ /* 输入: 任意数据 */

/* 输出: 输入数据的按位取反 */

#define CMD20_CHK_SUSPEND 0x0B /* 设备方式: 设置检查USB总线挂起状态的方式 */

/* 输入: 数据10H, 检查方式 */

/* 00H=不检查USB挂起, 04H=以50mS为间隔检查USB挂起, 05H=以10mS为间隔检查USB挂起 */

#define CMD20_SET_SDO_INT 0x0B /* SPI接口方式: 设置SPI的SDO引脚的中断方式 */

u盘读写控制源程序_ch376芯片

主要包含4个C文件和和三个头文件CH376INC.H与CH376HFT.C为u盘主文件SPI_SW.C为对硬件操作文件单片机与SPI接口FILE_SYS.H与FILE_SYS.C为ch376接口函数分别列出CH376INC.H文件:/*CDefineforCH376*//*Website:htt
推荐度:
点击下载文档文档为doc格式
22p3e5uidk85bn78adhp
领取福利

微信扫码领取福利

微信扫码分享