在例子(CH573EVT.ZIP\EVT\EXAM\USB\Device\COM\)上修改:
1. DebugInit函数只保留这两句:
GPIOA_ResetBits( GPIO_Pin_9 );
GPIOA_ModeCfg( GPIO_Pin_9, GPIO_ModeOut_PP_5mA );
2. 屏蔽全部关于打印的语句。
3. 其它代码不动。
把这个代码编译后,下载到CH571R芯片里,USB功能正常,但PA9引脚一直输出高电平,请问为什么不是低电平?
在例子(CH573EVT.ZIP\EVT\EXAM\USB\Device\COM\)上修改:
1. DebugInit函数只保留这两句:
GPIOA_ResetBits( GPIO_Pin_9 );
GPIOA_ModeCfg( GPIO_Pin_9, GPIO_ModeOut_PP_5mA );
2. 屏蔽全部关于打印的语句。
3. 其它代码不动。
把这个代码编译后,下载到CH571R芯片里,USB功能正常,但PA9引脚一直输出高电平,请问为什么不是低电平?
补充:PA8可以正常操作;例如USB每上传一次,就取反PA8,PA9;但只有PA8能变化,PA9还是一直保持高电平。
这个PA9引脚有什么特别处理么?
PA9默认是串口1打印用到的,如果需要作为通用GPIO,将打印函数删除,串口的初始化删除,并将DEBUG删除。
做了这三步:
屏蔽全部打印相关语句,dg_log, printf。
屏蔽函数DebugInit,在main里也没有调用。
图片里的DEBUG定义也删除了。
然后在 main 里的 InitUSBDevPara() 前面增加这四句:
.....
// DebugInit(); //PA9
// printf("start\n");
GPIOA_ResetBits( GPIO_Pin_8 );
GPIOA_ModeCfg(GPIO_Pin_8, GPIO_ModeOut_PP_5mA );
GPIOA_ResetBits( GPIO_Pin_9 );
GPIOA_ModeCfg( GPIO_Pin_9, GPIO_ModeOut_PP_5mA );
InitUSBDevPara();
但PA9还是一直为高电平,不能为低电平。。。