[其他ST产品] 请教一个stm32的硬件SPI 驱动0.96寸oled屏幕的问题

[复制链接]
 楼主| flycamelaaa 发表于 2022-9-14 16:48 | 显示全部楼层 |阅读模式
请教一下大家,本人在学习oled屏幕,发现网上多是IIC和软件SPI,遂想利用stm32的硬件spi来驱动oled屏幕,此oled屏幕为7针,并无MISO引脚,只有一个MOSI(D1脚)发送数据。因为stm32并不需要读oled的数据,oled屏幕如下:
poYBAGMUtX2ALMnBAA1vNDPXrkA402.png
在网上寻找到一份硬件spi驱动oled的代码,阅读代码的时候出现以下的问题,来请教一下各位,代码如下:
poYBAGMUtyKAcsgrAABwJ0CdPl4701.png
问题如下:此oled屏幕没有MISO引脚,也就是说stm32是不会接收到数据到缓冲区的,请问这个代码为什么能检测RXNE位来判断数据发送成功?
在另外一份代码中同样发现了这个问题,都是大同小异的:
poYBAGMUuCyAYl7AAAAcnFLSeUw249.png
想请问一下各位为什么能判断RXNE为来判断数据发送成功?感谢大家解答。

LcwSwust 发表于 2022-9-14 16:57 | 显示全部楼层
RXNE表示收到数据,因为发送的同时也在接收数据.比如SCK上升沿发送数据\SCK下降沿接收数据.
probedog 发表于 2022-10-9 14:52 | 显示全部楼层
你仔细看看OLED屏幕说明书,,图片屏幕DO,DI,DC,CS RES都等同于标准spi那些管脚?
classroom 发表于 2022-10-9 14:53 | 显示全部楼层
他不是判断RXNE来确定发送完成了,spi的收发是可以同步的,是两根线,你完全可以将收的代码删掉不影响屏幕的使用,这个程序只是收发写到一块了,比如你发了一个数据,然后又发了一个数据,他会判断发送缓冲区为空以后才会发送,你这个判断的是TXE发送完成然后再去发送。
1988020566 发表于 2022-11-19 10:59 | 显示全部楼层
  OLED显示模块在protues上仿真  
xiaoyaodz 发表于 2022-11-20 15:33 | 显示全部楼层
驱动Oled一般是SPI总线的,做好总线驱动程序然后就可以操作oled寄存器了
abotomson 发表于 2022-11-24 12:38 | 显示全部楼层
使用硬件SPI比用模拟SPI好,速度,稳定性
sesefadou 发表于 2022-11-24 13:03 | 显示全部楼层
这个网上没有代码可以参考的吗              
minzisc 发表于 2022-11-24 14:01 | 显示全部楼层
spi的例程有很多可以参考的。
尽快回复过 发表于 2024-8-31 21:54 | 显示全部楼层
使用 STM32 的库函数或 STM32CubeMX 配置 SPI 外设。
Pulitzer 发表于 2024-11-4 07:22 | 显示全部楼层

通孔(THT)和表面贴装(SMT)
童雨竹 发表于 2024-11-4 09:18 | 显示全部楼层

首先是进行按比例和具体的施胶量进行混合操作
Wordsworth 发表于 2024-11-4 10:21 | 显示全部楼层

产生较强的阻尼效果
Clyde011 发表于 2024-11-4 11:24 | 显示全部楼层

然后使用铣削工具将孔与铜一起切成两半。
公羊子丹 发表于 2024-11-4 12:17 | 显示全部楼层

该电容可以存储高达8KV的电位
万图 发表于 2024-11-4 13:20 | 显示全部楼层

设置测试负载,测试负载应该符合电源的规格要求
Uriah 发表于 2024-11-4 14:23 | 显示全部楼层

类似于IC的安装方式。
Bblythe 发表于 2024-11-4 17:22 | 显示全部楼层

切割板边以形成一系列半孔
周半梅 发表于 2024-11-4 19:18 | 显示全部楼层

从电路原理图上看,反激式与正激式很相象,表面上只是变压器同名端的区别,但电路的工作方式不同,D3、N3的作用也不同。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

824

主题

4298

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部