我现在手里有一块三线SPI 1.8寸液晶,我用模拟SPI驱动刷屏太慢,LCD驱动芯片是ST7735,打算改用STM32硬件SPI可是LCD 的SPI只有三根线,CS (片选)AO(命令)和SDA(数据),液晶的读写数据都通过SDA线进行的,我在STM32的参考手册上看到他的SPI有: 单线双向接收 和 单线双向发送的功能,我对这两种功能不了解,我大部分时间都是通STM32给
LCD发送数据,只有用到读点函数的时候才会接收LCD的数据,请教原子哥,我应该设置成哪种模式,单线双向接收,是指的一根线既能发送也能接收吗?,
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
---------------------------------
楼主,SPI的LCD是无法读取数据的,网上那些可以用SPI驱动的屏都是2线SPI(片选CS没算在内),也就是一个时钟SCK、一个数据SDA。楼主的这个屏也是这样的,VCC和GND不用说,REST复位引脚,AO我猜应该是命令、数据选择引脚,SDA数据,SCK时钟,LED背光。
两线半双工SPI与三线全双工SPI在库函数配置时都是一样的,只是配置为两线SPI时MISO不配置为复用功能,为IO功能就行,这样SPI就工作在两线只发送模式。如果想加快刷屏速度和减小CPU负担,可以采用DMA方式。
SPI其它工作模式具体说明请参考中文数据SPI章节。
驱动SPI OLED 工程代码请参考: http://openedv.com/posts/list/0/63761.htm?privmsg=25465&&sysid=4#363554
第21楼
一周热门 更多>