本次使用的是N32G45XVL-STB_V1.1开发板,如下图所示

在测试例程的时候,为了验证例程,后续才更好选择例程进行移植开发。测试过程中,普通例程运行非常好。但是测试RT_Thread例程的事,总是会出现错误,如下图所示:

经过查询,这个错误是因为例程放入的文件夹深度太深,使得keil找不到文件。所以把例程重新复制到文件夹深度比较浅的文件夹里。重新测试了几个例程,已经没有了错误。
以下为测试的是RT_Thread18_Virtual_COM_Port例程。此例程是使用USB口模拟串口进行收发数据。
下载完成后,串口打印如下信息:

程序经过少做修改,如下:
void cdc_acm_data_send_with_dtr_test(void)
{
uint8_t sendLen,data_buffer[100];// = { 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A };
static uint8_t i;
sendLen=sprintf((char *)data_buffer,"USB CDC test num=%d\n",++i);
usbd_ep_write(CDC_IN_EP, data_buffer, sendLen, NULL);
}
然后从芯片的USB口接入USB,打开串口工具接受数据,USB会模拟串口打印如下信息:

本次的分享也许只是我的经验不足所致,希望有遇到相同错误的小伙伴们有所帮助。
|