LKS03x 可实现 SWD 的两个 IO 复用为其它 IO 的功能,SWCLK 复用的 IO 是 P1.8,SWDIO 复用的
IO 是 P1.9。注意事项如下:
➢ 默认状态是不开启复用,需要软件向 SYS_IO_CFG [6]写 0 开启复用。即芯片硬复位结束后,初
始状态是 SWD 用途,SWD 的两个 IO 在芯片内部有上拉(芯片内部上拉电阻约为 10K),在 IO
用作 SWD 功能时,上拉默认开启且无法关闭。当 IO 用作 GPIO 时,上拉可以通过 GPIO1_PUE[8]
和 GPIO1_PUE[9]来控制。芯片上电复位 30ms 内 P1.8 和 P1.9 固定为 SWD 功能,软件可以向
SYS_IO_CFG[6]写 0,但 IO 功能切换需要等待 30ms 后才生效。30ms 使用 LRC 计数,由于工艺
原因存在一定偏差。
➢ 开启复用后,KEIL 等工具无法直接访问芯片,即 Debug 和擦除下载功能均失效。若需要重新
下载程序,有两个方案。
⚫ 其一,建议使用凌鸥专用离线下载器擦除。软件开启复用的时间,建议保留一定余量,例如
100ms 左右,保证离线下载器能擦除,防止死锁。余量的多少是保证离线下载器擦除的成功率。
余量越大,一次性擦除成功的概率越大。
⚫ 其二,程序内部有退出机制,例如某个其它 IO 电平发生变化(一般为输入),表明外界需要用
SWDIO,软件重新配置,解除复用。此时,可以恢复 KEIL 的功能。
|