历史上的今天
今天是:2025年08月06日(星期三)
2020年08月06日 | stm8单片机的SWIM模式引脚复用
2020-08-06 来源:elecfans
SWIM模式
上电复位后,SWIM复位并进入OFF模式。
1、OFF:上电复位的默认状态。此时,SWIM引脚不能应用为I/O口。
2、I/O:通过将全局配置寄存器(CFG_GCR)中的SWD位置位后可将SWIM引脚设定为普通I/O口。一旦系统复位,SWIM模块重新回到OFF模式。
3、SWIM:当SWIM引脚出现特定序列信号时,就会进入此状态。这种模式下,调试工具通过SWIM引脚使用三种命令(SRST系统复位,ROTF运行中读,WOTF运行中写)来控制STM8。

SWIM引脚复用
通过将全局配置寄存器(CFG_GCR)中的SWD位置位后可将SWIM引脚设定为普通I/O口但需要注意:

如果SWIM引脚用作普通I/O口,最好在程序设定SWIM引脚为I/O口之前,添加一个1~5秒的延时。如此,用户便可使单片机上电复位后进入SWIM并可以重新烧写单片机。如果在上电复位后立马设定SWIM引脚为普通I/O口,单片机便进入不了SWIM模式,从而永久锁死(如果封装没有NRST)。这个延时可在代码最终完成后删除。
如果SWIM引脚用作普通I/O口不能再次烧写程序时,可通过按下复位键,并在松开复位键的瞬间,点击下载程序便可。


PD1/NRST脚在复位和复位后,处于上拉输入状态。
史海拾趣
|
请各位高手指教,下面的电路能不能成立,不能成立的原因是什么? 电路是我自己画的,个人分析如下,有不对的地方希望大家指正:谢谢~ 1》通电,12V经R1到Q1的C极,经R2加至Q1的B极,Q1饱和导通,C极等于0 此时Q2,Q3,Q4的B极全部为0 Q2为PNP管,此时是导通状态,但对电路没影响 2》按S1, ...… 查看全部问答> |
|
我想在eboot中加入USB中断的方式下载功能。现在遇到这么一个问题,中断触发时,响应中断,进入中断处理函数,然后退出中断。等下一个中断到来时,就无法响应中断了。中断处理函数退出时,已经开了中断。也就是说,只响应一次中断,请问,这是什么原 ...… 查看全部问答> |
|
wince下的驱动程序的编写是不是都可以用流驱动来做,, 我知道像键盘.显示.电源都是本机驱动... 想问一下打印机驱动可以用流驱动来做不??怎样实现与具体的硬件相连呢?… 查看全部问答> |
|
F2812 的C编译器好像不分char和int都用一个16位来存储?? F2812 的C编译器好像不分char和int都用一个16位来存储??这岂不是很浪费? 比如 const unsigned char gImage_background[1000] = {。。。。} 我把.econst 分配在长度为0x200word(1024byte)的内存里,被告知: [Linking...] \\" ...… 查看全部问答> |




