OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3184|回复: 10

请问一下如何用同一个按键释放信号量控制流水灯方向

[复制链接]

9

主题

39

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
246
金钱
246
注册时间
2020-5-8
在线时间
64 小时
发表于 2020-5-11 18:43:09 | 显示全部楼层 |阅读模式
5金钱
求问程序应该怎么改 TIM截图20200511183418.png TIM截图20200511183430.png TIM截图20200511183438.png

最佳答案

查看完整内容[请看2#楼]

任务里面做个标记就行了,第一次收到信号量, 正向,第二次,反向,第三次正向。。。。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2020-5-11 18:43:10 | 显示全部楼层
任务里面做个标记就行了,第一次收到信号量, 正向,第二次,反向,第三次正向。。。。
回复

使用道具 举报

0

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
77
金钱
77
注册时间
2016-1-5
在线时间
1 小时
发表于 2020-5-11 18:43:11 | 显示全部楼层
帮顶!!!!!!
回复

使用道具 举报

9

主题

39

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
246
金钱
246
注册时间
2020-5-8
在线时间
64 小时
 楼主| 发表于 2020-5-11 18:46:25 | 显示全部楼层
给点提示也行,挺急的
回复

使用道具 举报

9

主题

39

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
246
金钱
246
注册时间
2020-5-8
在线时间
64 小时
 楼主| 发表于 2020-5-12 08:45:39 | 显示全部楼层
正点原子 发表于 2020-5-11 18:43
任务里面做个标记就行了,第一次收到信号量, 正向,第二次,反向,第三次正向。。。。

标记怎么做,没学过呀
回复

使用道具 举报

9

主题

39

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
246
金钱
246
注册时间
2020-5-8
在线时间
64 小时
 楼主| 发表于 2020-5-12 08:52:15 | 显示全部楼层
正点原子 发表于 2020-5-11 18:43
任务里面做个标记就行了,第一次收到信号量, 正向,第二次,反向,第三次正向。。。。

目前只学过这三个任务,超出就不会了
回复

使用道具 举报

9

主题

39

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
246
金钱
246
注册时间
2020-5-8
在线时间
64 小时
 楼主| 发表于 2020-5-12 14:53:12 | 显示全部楼层
如果我将取消task3的发送信息量,那么每按一次开关任务23循环1次,我要怎么做才能再按一次开关任务32循环1次?2楼说的标记信号量我不知道怎么具体操作,求帮忙
回复

使用道具 举报

9

主题

39

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
246
金钱
246
注册时间
2020-5-8
在线时间
64 小时
 楼主| 发表于 2020-5-12 16:28:55 | 显示全部楼层
顶一下
回复

使用道具 举报

9

主题

39

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
246
金钱
246
注册时间
2020-5-8
在线时间
64 小时
 楼主| 发表于 2020-5-12 17:24:33 | 显示全部楼层
正点原子 发表于 2020-5-11 18:43
任务里面做个标记就行了,第一次收到信号量, 正向,第二次,反向,第三次正向。。。。

在吗,求教
回复

使用道具 举报

9

主题

219

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1430
金钱
1430
注册时间
2020-5-12
在线时间
393 小时
发表于 2020-5-13 11:28:54 | 显示全部楼层
在最前面定义一个 static unsigned char Dire_Flag = 0;然后在task1 里面 的if判断里面加一句这个 Dire_Flag = 1 - Dire_Flag; task2 和task3里面判断Dire_Flag的值,当它等于1是正向,等于0是反向。
回复

使用道具 举报

9

主题

39

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
246
金钱
246
注册时间
2020-5-8
在线时间
64 小时
 楼主| 发表于 2020-5-13 15:53:39 | 显示全部楼层
叶子君 发表于 2020-5-13 11:28
在最前面定义一个 static unsigned char Dire_Flag = 0;然后在task1 里面 的if判断里面加一句这个 Dire_Fla ...

大概懂了,其实按键释放信号量对task2和task3只是第一次有作用吧,改向看的是按键次数吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-29 15:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表