//Connected LED
if (u8LedMode & 0x02) //Connected LED: 200ms on/off for CDC, fast
{
u8LedMode &= ~0x02;
if (u8SysTick_Counter & 0x01) {
LedConnectedOn();
}
else
LedConnectedOff();
}
else
{
if ((u8SysTick_Counter & 0x07) == 0) //Connected LED: 200ms on, 1400ms off, slower
LedConnectedOn();
else
LedConnectedOff();
}
//Running LED
if (u8LedMode & 0x01) //Running LED: 200ms on, 600ms off
{
if ((u8SysTick_Counter & 0x01) == 0)
LedRunningOn();
else
LedRunningOff();
}
}
下载程序时,LED无法快闪??LedRunningOn和LedConnectedOn都是使用PA9引脚
我的程序里面的STLINK_2A/2B,都可以用于STLINKv2,有一个表格说明了区别,你可以试一试。
原STLINK使用两个GPIO引脚的,我的程序只用到其中的一个,不需要修改硬件。
大佬:
程序下载到st-link中运行成功了。真的谢谢楼主。。
LED闪烁的情况:
void SysTick_Handler(void)
{
u8SysTick_Counter--;
//Connected LED
if (u8LedMode & 0x02) //Connected LED: 200ms on/off for CDC, fast
{
u8LedMode &= ~0x02;
if (u8SysTick_Counter & 0x01) {
LedConnectedOn();
}
else
LedConnectedOff();
}
else
{
if ((u8SysTick_Counter & 0x07) == 0) //Connected LED: 200ms on, 1400ms off, slower
LedConnectedOn();
else
LedConnectedOff();
}
//Running LED
if (u8LedMode & 0x01) //Running LED: 200ms on, 600ms off
{
if ((u8SysTick_Counter & 0x01) == 0)
LedRunningOn();
else
LedRunningOff();
}
}
下载程序时,LED无法快闪??LedRunningOn和LedConnectedOn都是使用PA9引脚
正常,下载程序的时候,没有做特殊处理。
UART有数据传送的时候是快闪,并且还不在debug模式下。
好的,谢谢楼主。。。。。
我看看能不能改先....
pa2和pa3,调音台是雅马哈自主芯片,和单片机完全没有关系,为什么cdc能用。
因为我们这个CDC(准确的说法应该是叫做VCP)就是一个USB转UART的连接线。
虽然CDC和DAP是由同一片MCU(STM32F103C8T6)实现的两个功能,走的是同一个USB口,但是这两个功能是完全独立的。可以单独使用。 你只连接PA2/PA3时,就可以单独使用其CDC(USB-UART)的功能。
因为USB库和VCP要使用ARM的RTE环境和Keil5+Keil4兼容包,那些文件是Keil下面自带的,所以不能用VisualStudio来编译。
1.现在我想更改引脚,我使用的代码版本是PA13,PA14作为仿真器的两个引脚,现在想要更改引脚.我去掉C/C++头文件里面的SWD_REMAP这个宏后修改PIN_SWDIO_TMS_PIN这个宏仍然会导致下载一次程序后就无法下载程序的现象,您知道是什么原因吗?
2.请问usbd_init(); usbd_connect(__TRUE);这两句没办法跳到函数定义处,请问这是调用哪里的?
1. 全局搜索SWD_REMAP,它是重定义SWD的GPIO,看看什么地方没有照顾到的。
2. 应该是在USB_CM3.lib库文件的里面吧,没有源码可以跟踪。
好的,谢谢楼主的回复.
进入Debug模式以后,PC13的LED,常亮是Running,闪动是暂停。
PB7--PB3的SWO线接上没有,用我的测试程序。