OpenEdv-开源电子网

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

对于使用双SPI的一点疑问

[复制链接]

60

主题

153

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
369
金钱
369
注册时间
2013-12-23
在线时间
32 小时
发表于 2014-4-3 15:03:57 | 显示全部楼层 |阅读模式
前两天在论坛里面请教如何能实现USB在PC上读写SD卡和LCD使用同一个SPI而互不干扰,坛友让我用双SPI,USB一个LCD一个,果断实验之。由于我还要用到DAC所以采用重映射的方式把SPI1重映射,但实现再有几个问题,因为我的SD卡中存放的是音频文件,可能需要在PC上播放那么就要不停的去取数据,而USB是在中断当中的,这样一来如果一旦USB使用,看似LCD和USB是不同SPI互不影响,但在同一时间只有一个设备可以使用,如果我的LCD正在传送数据的时候USB中断来了,LCD的工作不就停止了吗?他们能互不干扰的工作吗?第二就是SPI1成功映射LCD也有显示但那时我发现我的按键没有办法使用了,通过滴答时钟中的led闪烁程序可以确定程序运行正常,确认开发板原理图,按键使用的是PE14,15和PB10,11,4个引脚而重映射的引脚是CS:PA15,CLK:PB3,MOSI:PB5,应该没有冲突啊,重映射的时候我是关了JTAG开的SWD。按键无法使用的话也无法测试是否会花屏,请教一下是什么原因
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2014-4-3 16:17:44 | 显示全部楼层
可以分时复用,你在LCD操作SPI的时候,做一个标记,标记正在操作,然后操作完了取消标记。
同样USB操作的时候,也设置这个标记,操作完后取消标记。

这样,任何一个设备要操作SD卡的时候,先判断这个标记,否则等待。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-4-3 16:19:53 | 显示全部楼层
一直都是原子哥说法那样做,定义一个标志,复用的时候优先检查这个标志,在忙就等待,类似于LCD忙标志一样
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复 支持 反对

使用道具 举报

头像被屏蔽

38

主题

382

帖子

0

精华

高级会员

Rank: 4

积分
596
金钱
596
注册时间
2012-12-5
在线时间
19 小时
发表于 2014-4-3 16:40:19 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-12 20:11

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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