/*接线
oled------->432p401r
cs------>18
res----->3
dc------>4
d1(sid)----->15(MOSI)
d0(cl)------>7(clk)
*/
//#define cs 18
//#define rst 3
//#define sid 15
//#define sclk 7
//#define dc 4
#define OLED_DC 4
#define OLED_CS 18
#define OLED_CLK 7
#define OLED_MOSI 15
#define OLED_RESET 3
#define _BV(bit) (1 << (bit))
#include #include #include #include #include
SSD1306 oled(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);
void setup()
{
Serial.begin(9600);
oled.ssd1306_init(SSD1306_SWITCHCAPVCC);
oled.display(); // show splashscreen
delay(2000);
oled.clear(); // clears the screen and buffer
}
void loop()
{
oled.drawstring(0, 0, "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation");
oled.display();
oled.clear(); // clears the screen and buffer
delay(2000);
oled.fillcircle(32, 32, 10, WHITE);
oled.display();
delay(2000);
}
演示效果
关键字:SPI 驱动oled
引用地址:
432使用SPI驱动oled
推荐阅读最新更新时间:2024-11-10 09:33
基于MSP432P401R的OLED I2C程序
前言 因为电赛可能需要MSP432用到OLED,所以尝试移植一下STM32的OLED程序试试,成功后记录一下ovo,话不多说,直接上代码,不想看代码的同学直接看总结的链接下载。 //main.c #include main.h #include string.h #include bmp.h /* 全局变量申明区 */ u8 a=0; u16 len ; /* 函数调用申明区 */ u16 flag=0; int main(void) { u8 t=0; t=' '; SystemClockInit(HFXT);//系统时钟初始化(系统主时钟) SystemClockInit
[单片机]
stm8s开发(七) SPI的使用:SPI主机通信!
科普SPI:是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,分别是:SCK(时钟)、MOSI(主机发送数据)、MISO(主机接收数据)、NSS(片选),其中NSS的片选信号,大部分情况下我们使用的是软件NSS,即为使用一个GPIO进行软件控制片选。值得注意的是,其中SPI有4中模式:分别是空闲时SCLK的电平高低、MISO采样时第12个变化沿。 stm8s的SPI结构如下图, 如果用形象的比喻的话:SCK像一个发条齿轮,只有当发条齿轮转动的时候(SCK输出8个时钟),MOSI才能将1Byte的数据发送出去,同时,MISO将1Byte的数据接收回来。 使用SPI无非就一个初
[单片机]
spi实验:接收电路与发送电路的自环测试
SPI简介: SPI,是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线。 SPI 规定了两个 SPI 设备之间通信必须由主设备 (Master) 来控制次设备 (Slave). 一个 Master 设备可以通过提供 Clock 以及对 Slave 设备进行片选 (Slave Select) 来控制多个 Slave 设备, SPI 协议还规定 Slave 设备的 Clock 由 Master 设备通过 SCK 管脚提供给 Slave 设备, Slave 设备本身不能产生或控制 Clock, 没有 Cl
[单片机]
AVR学习笔记------SPI总线和AVR SPI
SPI是一种采用串行同步方式的3线或4线通信接口,使用信号有使能信号,同步时钟,同步数据输入和数据输出。其常用于微控制器和外围芯片的直接连接和扩展。 一个典型的SPI总线系统包括一个主机和一个从机,双方之间通过主机输出/从机输入(MOSI),主机输入/从机输出(MISO) ,同步时钟信号(SCLK),从机选择(SS|),4跟信号线相连。SPI的通信过程本质上就是在同步时钟作用下的串行移位。可以把主机和从机看成是两个串行移位寄存器,通过MOSI和MISO首尾相连。主机发起传输时,先拉低从机选择信号,然后在内部时钟的作用下将SPI数据寄存器中的内容逐步移出,通过MOSI传送到从机。双方数据交换完毕后,拉高从机选择信号,停止SC
[单片机]
ARM平台嵌入式Linux下SPI设备连接
简介:在嵌入式ARM平台设备上,经常有在一个SPI bus上面挂接一个或者多个SPI设备的需求,由于挂载一个设备的情况比较简单,本文主要就在嵌入式Linux环境下挂载多个SPI设备进行说明。 本文所采用的硬件为Toradex 公司Colibri VF61计算机模块和开发载板,核心为Cortex-A5和M4异构双核,这里A5运行Toradex官方发布的Embedded Linux BSP V2.5,M4核心这里不做使用。 本文涉及Toradex发布Embedded Linux源码下载,Device Tree 定制编译,相关操作请参考下面文章,本文不做赘述。 http://developer.toradex.com/kno
[单片机]
SPI主机实验---7段数码管显示
1、功能:在7段数码管上显示一些字符 2、原理图: 3、程序清单: /****************************************Copyright (c)************************************************** **--------------File Info------------------------------------------------------------------------------- ** File name: main.c ** Last modified Date: 2011-04-24 ** Last Version:
[单片机]
MSP432(Keil5)——1.LED驱动
hello大家好,好久不见,这是本次代码示例使用的开发板,也就是TI官方提供LaunchPad。 所有的代码本人均已验证完成,不含任何隐患,这次分享旨在以最简洁快速方式提供给大家MSP432的基本驱动代码,供大家学习交流。 led.c #include led.h //LED初始化 void LED_Init(void) { /*初始化小红灯IO口为输出模式*/ MAP_GPIO_setAsOutputPin(GPIO_PORT_P1, GPIO_PIN0); /*初始化RGB灯IO口为输出模式*/ MAP_GPIO_setAsOutputPin(GPIO_PORT_P2, GPIO_PIN0
[单片机]
【STM32CubeMX】12,STM32之SPI串行FLASH
1,野火的自带版本讲的还不错,综合多方的资料看比较好 (1) SS ( Slave Select):从设备选择信号线,常称为片选信号线,也称为 NSS、CS,以下用 NSS 表示。当有多个 SPI 从设备与 SPI 主机相连时,设备的其它信号线 SCK、MOSI及 MISO 同时并联到相同的 SPI 总线上,即无论有多少个从设备,都共同只使用这 3 条总线;而每个从设备都有独立的这一条 NSS 信号线,本信号线独占主机的一个引脚,即有多少个从设备,就有多少条片选信号线。I2C 协议中通过设备地址来寻址、选中总线上的某个设备并与其进行通讯;而 SPI 协议中没有设备地址,它使用 NSS 信号线来寻址,当主机要选择从设备时,把该从
[单片机]