STM32/STM8技术william hill官网
直播中

吴连泉

9年用户 243经验值
擅长:MEMS/传感技术 嵌入式技术 接口/总线/驱动 控制/MCU
私信 关注
[问答]

stm8 c语言如何实现暂停功能?

使用按键来实现如下功能。按1下,start,再按一下暂停,再按一下continue,请问功能如何实现? 主任务是 数码管逐个点亮。
已退回5积分

回帖(6)

jxd

2016-4-15 15:42:19
这个很简单啊,在数码管的程序加上一个标记(标记为1运行,为0暂停)。按键端处理,每次按下延时100ms,前面说到的标记翻转一次就好了。
举报

吴连泉

2016-4-15 16:00:27
引用: 4946530 发表于 2016-4-15 15:42
这个很简单啊,在数码管的程序加上一个标记(标记为1运行,为0暂停)。按键端处理,每次按下延时100ms,前面说到的标记翻转一次就好了。

这个是跳出来执行另一个动作 不是维持原有的动作 ,当暂停后再运行,会出问题
举报

jxd

2016-4-15 16:02:58
引用: yzmotion03 发表于 2016-4-15 16:00
这个是跳出来执行另一个动作 不是维持原有的动作 ,当暂停后再运行,会出问题

多动脑子,,一切数据都可以保存维持的,这段代码真的不能再简单了
举报

吴连泉

2016-4-16 09:31:52
引用: 4946530 发表于 2016-4-15 16:02
多动脑子,,一切数据都可以保存维持的,这段代码真的不能再简单了

没解决问题,终极的解决办法还是状态机  delay不是最优方案,占用资源太多
举报

jxd

2016-4-18 17:38:08
引用: yzmotion03 发表于 2016-4-16 09:31
没解决问题,终极的解决办法还是状态机  delay不是最优方案,占用资源太多

可以用中断执行啊。。。
举报

吴连泉

2016-9-28 14:25:29
问题解决了,实际还是用状态机 把它挂在空的状态就可以了  
举报

更多回帖

发帖
×
20
完善资料,
赚取积分