能发现MCU。造成这个情况的原因是什么呢?有人说我把SWDIO,SWCLCK引脚初始化了,所以只能写一次,反复写就出那个错误。但是我代码里初始化GPIO没动GPIOA的13,14引脚啊,这两个引脚是SWDIO和SWCLCK。
- // 初始化 GPIOA
- GPIO_Config_T GPIO_InitStructure;
- GPIO_InitStructure.pin = GPIO_PIN_12;
- GPIO_InitStructure.mode = GPIO_MODE_IN; // 设置 GPIOA 的工作模式为输入模式
- GPIO_InitStructure.outtype = GPIO_OUT_TYPE_PP; // 设置 GPIOA 的驱动模式为推挽式
- GPIO_InitStructure.pupd = GPIO_PUPD_NO; // 设置 GPIOA 的上拉/下拉电阻为无
- GPIO_Config(GPIOA, &GPIO_InitStructure); // 初始化 GPIOA
- NVIC_EnableIRQRequest(EINT4_15_IRQn, 0); //使能GPIO中断
- RCM_EnableAHBPeriphClock(RCM_AHB_PERIPH_GPIOA);
- GPIO_Config_T GPIO_InitStruct;
- GPIO_InitStruct.pin = GPIO_PIN_6 | GPIO_PIN_7; // 设置 GPIOA 6,7为PWM输出
- GPIO_InitStruct.mode = GPIO_MODE_AF; // 设置 GPIOA 的工作模式为输出模式
- GPIO_InitStruct.speed = GPIO_SPEED_50MHz;
- GPIO_InitStruct.outtype = GPIO_OUT_TYPE_PP; // 设置 GPIOA 的驱动模式为推挽式
- GPIO_InitStruct.pupd = GPIO_PUPD_NO; // 设置 GPIOA 的上拉/下拉电阻为无
- GPIO_Config(GPIOA, &GPIO_InitStruct); // 初始化 GPIOA
- // 配置GPIO复用功能
- GPIO_ConfigPinAF(GPIOA, GPIO_PIN_SOURCE_6, GPIO_AF_PIN2);
- GPIO_ConfigPinAF(GPIOA, GPIO_PIN_SOURCE_7, GPIO_AF_PIN2);
- /* Config GPIO */
- GPIO_InitStruct.pin = GPIO_PIN_8 | GPIO_PIN_9;
- GPIO_InitStruct.mode = GPIO_MODE_AF;
- GPIO_InitStruct.speed = GPIO_SPEED_50MHz;
- GPIO_InitStruct.outtype = GPIO_OUT_TYPE_OD;
- GPIO_InitStruct.pupd = GPIO_PUPD_PU;
- GPIO_Config(GPIOA, &GPIO_InitStruct);
- GPIO_ConfigPinAF(GPIOA, GPIO_PIN_SOURCE_8, GPIO_AF_PIN2);
- GPIO_ConfigPinAF(GPIOA, GPIO_PIN_SOURCE_9, GPIO_AF_PIN2);
- /* Enable TMR1,TMR3 Periph Clock */
- RCM_EnableAPB2PeriphClock(RCM_APB2_PERIPH_TMR1);
- RCM_EnableAPB1PeriphClock(RCM_APB1_PERIPH_TMR3);
|