OpenEdv-开源电子网

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

ucos ii多个任务使用显示屏,导致花屏

[复制链接]
无名无姓 该用户已被删除
发表于 2017-1-9 09:40:59 | 显示全部楼层 |阅读模式
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

69

主题

978

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3772
金钱
3772
注册时间
2015-4-26
在线时间
765 小时
发表于 2017-1-9 09:56:36 | 显示全部楼层
定个全局变量,简单实现ucosiii里的互斥信号量
回复

使用道具 举报

9

主题

1385

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
11990
金钱
11990
注册时间
2013-3-8
在线时间
1277 小时
发表于 2017-1-9 10:31:55 | 显示全部楼层
要么用全局变量,要么把写屏操作都放到一个任务里,用信号量处理。
回复

使用道具 举报

25

主题

281

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2504
金钱
2504
注册时间
2015-8-17
在线时间
383 小时
发表于 2017-1-9 10:42:15 | 显示全部楼层
用信号量,每次操作显示屏的时候要上锁,要不然没操作完就切到其他任务去了
做事的原则:
1.每个问题重复三遍、研究三遍后再提问,直接得到答案的人什么都没学会。
2.做事要有始有终,感谢那些帮助自己解决问题的人,把解决的方法总结起来。
回复

使用道具 举报

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
发表于 2017-1-9 18:18:51 | 显示全部楼层
屏幕操作单独放到一个任务里就好,然后做个全局变量,用来控制需要显示哪个界面,因为你屏幕不可能同时显示2个界面吧!所以没必要每个任务都去操作屏幕,其他任务只要控制好变量就好
回复

使用道具 举报

无名无姓 该用户已被删除
 楼主| 发表于 2017-1-10 10:22:03 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

14

主题

219

帖子

0

精华

高级会员

Rank: 4

积分
598
金钱
598
注册时间
2014-4-14
在线时间
76 小时
发表于 2017-1-10 14:27:31 | 显示全部楼层
无名无姓 发表于 2017-1-10 10:22
屏里有一个定时刷新的信息,还有按键控制的信息,所以都是分开跑的。

不要去定时刷新,定时刷新有毛的意义,如果屏幕需要显示时钟,只要判断下时间发生改变了刷新下时钟就好,其他地方的界面不要去动,只有在需要切换界面时才去刷新整个界面,剩下的只要改动需要改的地方就好,全部只在一个任务里面轮训就好了,我就是这么做了,都没遇到啥问题,有啥好纠结的~~
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-30 11:45

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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