有关CH372评估板PC机应用程序的问题

能否告诉我以下命令的具体含义? 谢谢!![Emot]19[/Emot] #define USB_CMD_GET_FW_INFO 0x00 #define USB_CMD_GET_APP_INFO 0x10 #define USB_CMD_MEM_ACCESS 0x80 #define USB_CMD_MEM_DIR_WR 0x40 #define USB_CMD_MEM_WIDTH 0x0C #define USB_CMD_MEM_W_BYTE 0x00 #define USB_CMD_MEM_W_WORD 0x04 #define USB_CMD_MEM_W_DWORD 0x08 #define USB_CMD_MEM_W_BIT 0x0C #define USB_CMD_MEM_SPACE 0x03 #define USB_CMD_MEM_S_SFR 0x00 #define USB_CMD_MEM_S_IRAM 0x01 #define USB_CMD_MEM_S_XRAM 0x02 #define USB_CMD_MEM_S_ROM 0x03 #define ERR_SUCCESS 0x00 #define ERR_UNSUPPORT 0x80 #define ERR_UNDEFINED 0xFF

BOOL CH375DBG_GetFirmwareInfo( PUCHAR ver ) { // 获取调试固件程序的版本,并取消未完成的上传数据块 // 输入参数: ver 指向一个字节变量单元,用于存放获取的版本号 USB_DOWN_PKT down; USB_UP_PKT up; ULONG len; if ( CH375DBG_Opened == FALSE ) { // CH372/CH375设备尚未被打开 CH375DBG_Opened = CH375OpenDevice( CH375DBG_Index ) != INVALID_HANDLE_VALUE; // 打开CH375设备 if ( CH375DBG_Opened == FALSE ) return( FALSE ); } down.mCommand = USB_CMD_GET_FW_INFO; down.mCommandNot = ~ down.mCommand; down.u.mDword = 0; down.mLength = 0; len = mOFFSET( USB_DOWN_PKT, mBuffer ); if ( CH375WriteData( CH375DBG_Index, &down, &len ) ) { // 写出命令块 len = sizeof( USB_UP_PKT ); if ( CH375ReadData( CH375DBG_Index, &up, &len ) ) { // 读取应答块 if ( up.mStatus == ERR_SUCCESS && up.mCommandNot == down.mCommandNot && up.mLength >= 1 ) { // 操作成功,并且返回数据 *ver = up.mBuffer[0]; // 返回版本号 return( TRUE ); } } } return( FALSE ); }

[Emot]6[/Emot][Emot]6[/Emot][Emot]6[/Emot][b]文字[/b][u] down.mCommand = USB_CMD_GET_FW_INFO;[/u] 谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢!!!!!!![Emot]13[/Emot][Emot]13[/Emot][Emot]19[/Emot]

那些命令码是自定义下传包中用来执行读写操作的命令码.在下位机程序是有专门响应这些命令码的程序.


只有登录才能回复,可以选择微信账号登录