请选择 进入手机版 | 继续访问电脑版

安富莱电子论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 228|回复: 3
收起左侧

[FreeRTOS] 驱动总线保护

[复制链接]

1

主题

3

帖子

5

积分

新手上路

积分
5
发表于 2019-1-8 17:18:21 | 显示全部楼层 |阅读模式
各位大神,请教一下,现在有个项目使用SPI flash,此flash有一个文件系统,还有一部分空间用于存储字库,在界面显示的时候从flash中读取字模,此时可能在其他线程对文件系统进行读写,这时应该如何保护SPI总线不被打断,在读取或写入flash时会用到中断。
回复

使用道具 举报

5524

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
44655
QQ
发表于 2019-1-8 17:56:32 | 显示全部楼层
要的。
两种方法
1、底层读写函数要加互斥。
2、独立创建1个SPI Flash任务,需要读字库和其它操作的任务给其发命令处理。
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

1

主题

3

帖子

5

积分

新手上路

积分
5
 楼主| 发表于 2019-1-8 18:28:00 | 显示全部楼层
eric2013 发表于 2019-1-8 17:56
要的。
两种方法
1、底层读写函数要加互斥。

不好意思,还有一个问题给落下了,有一个USB MSC要访问这个文件系统,但是呢这个USB访问文件系统的时候读写完成后在在中断中执行回调函数,回调函数中又会读取或写入数据,这样就不能采用互斥锁来保护总线了,中断中不能操作互斥信号量,咋办哇?
回复

使用道具 举报

5524

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
44655
QQ
发表于 2019-1-9 00:07:31 | 显示全部楼层
wx_K4oOQPbX 发表于 2019-1-8 18:28
不好意思,还有一个问题给落下了,有一个USB MSC要访问这个文件系统,但是呢这个USB访问文件系统的时候 ...

回调函数发消息给任务,在任务里面执行。
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|安富莱电子论坛 ( 鄂ICP备09023347号,公安机关备案号42010602000201 )

GMT+8, 2019-4-22 18:18 , Processed in 0.165332 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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