我以CMS32L1032(ARM®Cortex®-M0+)单片机举例:
一、直接将下载端口引脚复用是会出问题的
电平可能跟别的IO不一样,然后还不好用,仔细阅读芯片手册:
然后禁用代码是:
//禁用SM调试接口
*(volatile uint32_t *)0x4001B004|=(1<<24);// 设置SWDIS位为1
二、不要单片机一开始就禁用,否则无法下载程序
(可以使用复位然后快速下载程序试试,不好整)
需要延时一段时间再禁用,但是只禁用了还不行,阅读手册发现:
单片机复位后swlck(P21)引脚是默认上拉,所以还需要禁用上拉电阻