一、SPI(串行外设接口)
1.SPI协议简介
SPI协议是由摩托罗拉公司提出的通讯协议(Serial Peripheral Interface),即串行外围设备接口,是一种高速全双工的通信总线。它被广泛地使用在ADC、LCD等设备与MCU间,要求通讯速率较高的场合。
2.SPI物理层
SPI通讯设备之间的常用连接方式见图
SS( Slave Select):从设备选择信号线,常称为片选信号线。 SCK (Serial Clock):时钟信号线,用于通讯数据同步。 MOSI (Master Output, Slave Input):主设备输出/从设备输入引脚。 MISO(Master Input,,Slave Output):主设备输入/从设备输出引脚。
3.SPI基本通讯过程
SPI通讯的通讯时序 这是一个主机的通讯时序。NSS、SCK、MOSI信号都由主机控制产生,而MISO的信号由从机产生,主机通过该信号线读取从机的数据。MOSI与MISO的信号只在NSS为低电平的时候才有效,在SCK的每个时钟周期MOSI和MISO传输一位数据。
二、使用0.96寸OLED显示屏显示数据
任务:
-
显示自己的学号和姓名; -
显示AHT20的温度和湿度; -
上下或左右的滑动显示长字符,比如“Hello,欢迎来到重庆交通大学物联网205实训室!”或者一段歌词或诗词(最好使用硬件刷屏模式)。
程序代码 我的名字对应的点阵
在main函数中调用显示中文的函数
GUI_ShowCHinese(10,0,16,"重庆交通大学",1);
函数原型
x为相对于屏幕左边偏移量 y为相对于屏幕上边偏移量 hsize为点阵大小,选择16 str为显示的字符串 mode为模型,选择1 其他显示函数参数大同小异 显示学号
GUI_ShowString(10,24,"631907060326",16,1);
函数原型
x为相对于屏幕左边偏移量 y为相对于屏幕上边偏移量 chr为显示的字符串 Char_Size为字体大小,可以选择16 mode 默认选择1即可
三、结果
四、参考文献
1.醉意丶千层梦 STM32F103基于spi实现OLED显示
|