OpenEdv-开源电子网

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

求助:STM32F030F4硬件SPI使用9bit长度驱动3线SPI的LCD

[复制链接]

19

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
184
金钱
184
注册时间
2016-11-3
在线时间
42 小时
发表于 2019-2-19 17:19:21 | 显示全部楼层 |阅读模式
1金钱
如题:因为f103不支持9bit,特意换成了f030f4p6,现在模拟SPI驱动已经OK了,但是硬件SPI始终没有调出来,用逻辑分析仪测试已经是发送9bit数据了,但是这个数据的SCK和CS还有MOSI三个引脚的时序对应不上,感觉像是错位了,在CS高电平释放芯片的时候,MOSI仍然在工作发送数据,请问如何让时序能够对应起来?
附件1:主程序和SPI初始化代码
无标题.png
附件2:逻辑分析仪的现象
QQ截图20190219171325.png

大神们帮帮忙啊

最佳答案

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

问题已经解决,只需要将CS一直拉低就可以了 就是说在SPI初始化的时候就将CS一直拉低,不升高,反正也是只控制一个器件,最后的解决方法,真是让我没想到啊。。。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

19

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
184
金钱
184
注册时间
2016-11-3
在线时间
42 小时
 楼主| 发表于 2019-2-19 17:19:22 | 显示全部楼层
问题已经解决,只需要将CS一直拉低就可以了 就是说在SPI初始化的时候就将CS一直拉低,不升高,反正也是只控制一个器件,最后的解决方法,真是让我没想到啊。。。
回复

使用道具 举报

3

主题

259

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2317
金钱
2317
注册时间
2016-12-2
在线时间
354 小时
发表于 2019-2-19 17:34:44 | 显示全部楼层
lcd_cs(1);
在这一行前面, 复制SPI_I2S_SendData16() 上一行前面的while(...) 内容试试看.
也许是硬件没送完MOSI, cs就拉上去了, 所以试试看等待送完再拉是否可行,

回复

使用道具 举报

10

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
149
金钱
149
注册时间
2018-5-8
在线时间
27 小时
发表于 2019-2-19 17:40:46 | 显示全部楼层
你是软件控制片选啊,所以你去拉cs是不起作用的
回复

使用道具 举报

19

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
184
金钱
184
注册时间
2016-11-3
在线时间
42 小时
 楼主| 发表于 2019-2-19 17:48:35 | 显示全部楼层
dscx05 发表于 2019-2-19 17:40
你是软件控制片选啊,所以你去拉cs是不起作用的

这个改成硬件控制片选么?
回复

使用道具 举报

19

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
184
金钱
184
注册时间
2016-11-3
在线时间
42 小时
 楼主| 发表于 2019-2-19 17:48:57 | 显示全部楼层
sammy902583 发表于 2019-2-19 17:34
lcd_cs(1);
在这一行前面, 复制SPI_I2S_SendData16() 上一行前面的while(...) 内容试试看.
也许是硬件没 ...

已经试过了,无效啊
回复

使用道具 举报

3

主题

259

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2317
金钱
2317
注册时间
2016-12-2
在线时间
354 小时
发表于 2019-2-19 17:52:58 | 显示全部楼层
慢慢炖 发表于 2019-2-19 17:48
已经试过了,无效啊

status有错, 感觉是库有问题...

那可以考虑拉cs前, 直接delay一些时间, 看看是否有变化.
如果delay有效, 又不排斥的话, 直接这样用也是可以的.
回复

使用道具 举报

19

主题

58

帖子

0

精华

初级会员

Rank: 2

积分
184
金钱
184
注册时间
2016-11-3
在线时间
42 小时
 楼主| 发表于 2019-2-19 20:18:23 | 显示全部楼层
sammy902583 发表于 2019-2-19 17:52
status有错, 感觉是库有问题...

那可以考虑拉cs前, 直接delay一些时间, 看看是否有变化.

延迟也试了,可以将CS控制在MOSI之前,但是我用硬件SPI本来就是为了速度快,加延时又慢了,我决定用硬件CS先试一下
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
39
金钱
39
注册时间
2019-8-27
在线时间
8 小时
发表于 2020-3-2 19:58:52 | 显示全部楼层
f103弄不了三线的吗
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-21 11:23

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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