下面应用函数中调用的全是原厂库函数
运行结果是U盘中创建的文件中只有一个无关的乱码字符
调试发现在字节写的函数中,第一个中断返回就是0x14,而非0x1e,直接跳过了写数据过程
U盘的连接检测,初始化什么的都能成功,创建文件也能成功,写数据问题究竟是什么原因,望解释,谢谢。
void CheckUsbConnect(void)
{
static u16 u16_file_id = 0;
static u32 u32_line_id = 0;
static u08 TarFileName[64];
if (CH376DiskConnect() != USB_INT_SUCCESS)
{
return;
}
if (CH376DiskMount() != USB_INT_SUCCESS)
{
return;
}
if (u32_line_id == 0)
{
sprintf((char*)TarFileName, "\\AIB%05d.TXT", u16_file_id);
memcpy(pst_m_manual->mu08_made_core, TarFileName, 20);
if (CH376FileCreate((u08*)TarFileName) != USB_INT_SUCCESS)
{
return;
}
}
else
{
CH376WriteVar32(VAR_START_CLUSTER, 0);
if (CH376FileOpen(TarFileName) != USB_INT_SUCCESS)
{
return;
}
if (CH376ByteLocate(u32_line_id * 8) != USB_INT_SUCCESS)
{
return;
}
u32_line_id ++;
if (u32_line_id >= 10000)
{
u32_line_id = 0;
u16_file_id ++;
}
pst_m_using->ms16_cycle = u32_line_id;
}
if (CH376ByteWrite(pst_m_manual->mu08_made_date, 8, NULL) != USB_INT_SUCCESS)
{
return;
}
if (CH376FileClose(TRUE) != USB_INT_SUCCESS)
{
return;
}
}