ST公司推销的比较好,所以现在很多单片机应用市场大多采用的ST芯片,我在学校实验室就用的比较多STM32,有事会出现程序莫名错误,复用功能,关闭特殊功能,端口映射等,现总结一下本人所遇到的一些问题的解决方法
1、查看IO口基本配置
一般情况IO口配置错误是无法完成预期功能,注意推挽输出、开漏输出、复用功能等,例如串口就需要使用复用推挽输出等
2、查看时钟使能情况
时钟不使能,IO口使用是不会正常的
3、使用某些特殊功能要开启AFIO时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
还需要查看在哪一条时钟线上,不能开错
4、某些IO口默认就是特殊IO口,使用时需关掉特殊工能
PA13 14 15是JTAG口,默认就是这个工能,如果想要当做普通IO口使用,必须要关掉该工能
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);