搜索
bottom↓
回复: 26

我把P1的8个口作为液晶的并行数据口,但硬件SPI口也在P1上

[复制链接]

出0入0汤圆

发表于 2014-10-13 17:24:54 | 显示全部楼层 |阅读模式
单片机是STC12C5410AD,我把NRF的4个SPI口也接在了P1的4个硬件SPI上了,可以利用程序的方法使两者不干扰吗?否则只能在其他IO口上用软件SPI了

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2014-10-13 17:26:40 | 显示全部楼层
外部SPI器件的 CS 用别的io就行了

出0入0汤圆

发表于 2014-10-13 17:28:39 | 显示全部楼层
自古二楼出真相

出0入0汤圆

 楼主| 发表于 2014-10-13 17:34:14 | 显示全部楼层
wkman 发表于 2014-10-13 17:26
外部SPI器件的 CS 用别的io就行了

这样的话,也是硬件SPI么,我看IO口描述里有SPI的CS口,那就是说其实可以连其他的么,只要MISO,MOSI,SCK是连在指定的IO口上?

出0入0汤圆

发表于 2014-10-13 17:37:49 | 显示全部楼层
SPI的CS不用P1上的IO口就可以了嘛

出0入0汤圆

 楼主| 发表于 2014-10-13 18:16:06 | 显示全部楼层
yoghourt 发表于 2014-10-13 17:37
SPI的CS不用P1上的IO口就可以了嘛

试了下,不行额,我把液晶插上,液晶显示到没问题,但是SPI不能用,NRF检测错误。

出0入0汤圆

发表于 2014-10-13 18:29:43 | 显示全部楼层
CS都没选中,SPI那边应该不能操作啊

出0入0汤圆

发表于 2014-10-13 18:31:48 | 显示全部楼层
Edwardwei 发表于 2014-10-13 18:16
试了下,不行额,我把液晶插上,液晶显示到没问题,但是SPI不能用,NRF检测错误。 ...

这个在启动SPI的时候要重新配置SPI,使用IO口的时候重新配置IO口吧

出0入0汤圆

 楼主| 发表于 2014-10-13 18:32:04 | 显示全部楼层
yoghourt 发表于 2014-10-13 18:29
CS都没选中,SPI那边应该不能操作啊

我把CS放到其他IO口上了啊,我还试了把SCK,MISO,MOSI放在其他口上,可以运行,但是放在P1上,SPI就不行了

出0入0汤圆

 楼主| 发表于 2014-10-13 18:35:58 | 显示全部楼层
yoghourt 发表于 2014-10-13 18:29
CS都没选中,SPI那边应该不能操作啊

忘记说了,我还没有用硬件SPI来做,因为之前有在8952上用软件SPI做过,所以直接移植过来用的。

出0入0汤圆

 楼主| 发表于 2014-10-13 18:36:24 | 显示全部楼层
xiayuan 发表于 2014-10-13 18:31
这个在启动SPI的时候要重新配置SPI,使用IO口的时候重新配置IO口吧

忘记说了,我还没有用硬件SPI来做,因为之前有在8952上用软件SPI做过,所以直接移植过来用的。

出0入0汤圆

发表于 2014-10-13 18:41:40 | 显示全部楼层
你可以先把液晶部分功能关掉,只是用SPI功能,查看是否出错。确定一下是否是因为端口复用引起的

出0入0汤圆

 楼主| 发表于 2014-10-13 18:55:33 | 显示全部楼层
xiayuan 发表于 2014-10-13 18:41
你可以先把液晶部分功能关掉,只是用SPI功能,查看是否出错。确定一下是否是因为端口复用引起的 ...

不是,我没有用硬件SPI功能,而是把那三个IO口当做普通IO口用,用软件SPI通信

出0入0汤圆

发表于 2014-10-13 19:30:45 | 显示全部楼层
Edwardwei 发表于 2014-10-13 18:55
不是,我没有用硬件SPI功能,而是把那三个IO口当做普通IO口用,用软件SPI通信 ...

我的意思是,P1口不用做液晶数据口,仅仅用来做SPI的功能,把两种功能分开调试,如果这样还是不正常的话那么就是电路或者程序的问题,跟P1口用不用做液晶数据口就没有关系。

出0入0汤圆

发表于 2014-10-13 19:34:03 | 显示全部楼层
软件SPI就随便找几个其他口,硬件SPI需要用把CS放其他口上,在CS是高电平时从设备IO是高阻态没影响,要用SPI时软件拉低CS脚,基本不影响传输速度。

出0入0汤圆

 楼主| 发表于 2014-10-13 19:53:02 | 显示全部楼层
xiayuan 发表于 2014-10-13 19:30
我的意思是,P1口不用做液晶数据口,仅仅用来做SPI的功能,把两种功能分开调试,如果这样还是不正常的话 ...

我去掉了液晶程序,用LED灯指示,把SPI口还是放在P1上,然后运行可以正常连接,但是把液晶插上后,就不行了

出0入0汤圆

发表于 2014-10-13 20:11:11 | 显示全部楼层
在液晶的数据口加一片锁存器

出0入0汤圆

 楼主| 发表于 2014-10-13 20:44:24 | 显示全部楼层
xiayuan 发表于 2014-10-13 20:11
在液晶的数据口加一片锁存器

算了,加锁存太麻烦,我还是把液晶的那三个接口换下,因为所有的AD口都在P1上,以后要用AD的话还是会有问题

出0入0汤圆

发表于 2014-10-13 21:19:06 | 显示全部楼层
Edwardwei 发表于 2014-10-13 20:44
算了,加锁存太麻烦,我还是把液晶的那三个接口换下,因为所有的AD口都在P1上,以后要用AD的话还是会有问 ...

如果IO口够用的话的确没必要这样做,数据口复用最好加锁存

出0入0汤圆

 楼主| 发表于 2014-10-13 21:58:28 | 显示全部楼层
xiayuan 发表于 2014-10-13 21:19
如果IO口够用的话的确没必要这样做,数据口复用最好加锁存

我是在一个很小的洞洞板上做的,没有位置去放锁存的,几乎是没有其他空间了。
不过我刚刚试了试,发现把CS放其他口,SPI不动,然后每次写完液晶后把P1口全置1,发现可以用了,但是奇怪的是,如果开头运行LCD初始化,SPI就不能工作,但是去掉那个初始化,不断电下载程序(LCD没断电,还保存初始化的配置),可以完美运行显示,怎么写液晶都行,就是不能在开头运行LCD初始化。所以如果断电,就要加上初始化下载后,再去掉初始化不断电下载。。。。 我快错乱了。。。

出0入26汤圆

发表于 2014-10-13 22:31:04 来自手机 | 显示全部楼层
是不是LCM锁住IO了?修改LCM的CS或者rst脚的电位看看

出0入0汤圆

发表于 2014-10-14 09:22:32 | 显示全部楼层
Edwardwei 发表于 2014-10-13 18:35
忘记说了,我还没有用硬件SPI来做,因为之前有在8952上用软件SPI做过,所以直接移植过来用的。 ...

CS无效时,直接忽略SPI线上的变化就好了啊

出0入0汤圆

发表于 2014-10-14 09:27:49 | 显示全部楼层
Edwardwei 发表于 2014-10-13 18:32
我把CS放到其他IO口上了啊,我还试了把SCK,MISO,MOSI放在其他口上,可以运行,但是放在P1上,SPI就不行了 ...

那可能是其他方面的原因。

出0入0汤圆

发表于 2014-10-14 18:42:44 | 显示全部楼层
Edwardwei 发表于 2014-10-13 21:58
我是在一个很小的洞洞板上做的,没有位置去放锁存的,几乎是没有其他空间了。
不过我刚刚试了试,发现把C ...

你的P1口有没有配置啊,那个单片机IO口有配置寄存器

出0入0汤圆

发表于 2014-10-14 21:23:37 来自手机 | 显示全部楼层
也要控制液晶屏的cs

出0入0汤圆

发表于 2014-10-14 23:03:44 | 显示全部楼层
CS口的时序对了就行,但注意这些程序不要并行

出0入0汤圆

 楼主| 发表于 2014-10-15 23:34:36 | 显示全部楼层
xiayuan 发表于 2014-10-14 18:42
你的P1口有没有配置啊,那个单片机IO口有配置寄存器

所有IO口默认就是准双向口,应该没有必要配置。而且我也运行成功了,就是只要程序开有LCD的初始化,SPI就有问题了,这个问题我就搞不懂了。初始化程序又不能不加。。。
最后我还是把那三个口换成其他三个口了,然后把液晶的程序改了一下,运行OK。这三个口以后还得用作AD口,毕竟所有AD口都在P1上。。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 10:28

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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