Arduino SSD1306 OLED(IIC)显示屏初始化点亮 | MacOS

IIC(Inter-Integrated Circuit)其实是IICBus(集成电路总线)简称,它是一种串行通信总线,使用多主从架构。

其一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。

I2C接口在Arduino的 Wire-library. 中被预先定义好:
// On an arduino UNO: A4(SDA), A5(SCL)
// On an arduino MEGA 2560: 20(SDA), 21(SCL)
// On an arduino LEONARDO: 2(SDA), 3(SCL),

屏幕尺寸约为0.96英寸,由SSD1306驱动,驱动接口I2C,I2C地址
(默认0x3c /有的为0x3d)。

不同型号的屏幕可能有不同的通信地址,为了确认自己的I2C地址,可通过以下程序进行查询(最好扫描一下,以防出错):

#include <Wire.h>  
   
void setup(){  
  Wire.begin();  
  Serial.begin(9600);  
  Serial.println("\nI2C Scanner");  
}  
void loop(){  
  byte error, address;  
  int nDevices;  
  Serial.println("Scanning...");  
  nDevices = 0;  
  for (address = 1; address < 127; address++ ){  
    // The i2c_scanner uses the return value of  
    // the Write.endTransmisstion to see if  
    // a device did acknowledge to the address.  
    Wire.beginTransmission(address);  
    error = Wire.endTransmission();  
    if (error == 0){  
      Serial.print("I2C device found at address 0x");  
      if (address < 16)  
        Serial.print("0");  
      Serial.print(address, HEX);  
      Serial.println(" !");  
      nDevices++;  
    }else if (error == 4){  
      Serial.print("Unknow error at address 0x");  
      if (address < 16)  
        Serial.print("0");  
      Serial.println(address, HEX);  
    }  
  }  
  if (nDevices == 0)  
    Serial.println("No I2C devices found\n");  
  else  
    Serial.println("done\n");  
  delay(5000); // wait 5 seconds for next scan  
} 

上传成功后在串口监视器可查看该屏幕的地址值
手中这块屏幕地址为0x3C
!!编程之前需要添加Adafruit_SSD1306和Adafruit_GFX这两个库文件

在arduino IDE菜单栏中项目——加载库——管理库 中搜索SSD1306,

选择Adafruit_SSD1306,可直接进行安装,此时会弹出一个提醒栏让你一起安装Adafruit_GFX,一步到位
在这里插入图片描述在这里插入图片描述
而后即可在示例中找到对应屏幕的代码,打开上传即可看到动画效果在这里插入图片描述

在这里插入图片描述

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: Arduino SSD1306 OLED显示屏是一种基于Arduino开发板的显示屏,采用SSD1306驱动芯片,具有高度、低功耗、高对比度等特点。它可以用于显示各种信息,如文本、图像、图标等,适用于各种Arduino项目。 ### 回答2: Arduino SSD1306 OLED显示屏是一块高分辨率的单色显示屏,非常适合DIY电子爱好者在自己的项目中使用。与传统的LCD显示屏不同,OLED显示屏具有更快的响应速度、更低的功耗和更高的对比度,同时消耗的电力也更少,在相同的度下更加节能,因此在需要使用电池供电的项目中得到广泛应用。Arduino SSD1306 OLED显示屏OLED屏幕、驱动IC、电容、电阻和其他一些辅助器件组成,通过I2C总线与Arduino板通信。 为了控制这块显示屏,我们需要一个专门编写的程序。在这个程序中,我们可以定义需要显示的内容,包括文本、图形、图标和图像。可以通过设置显示屏坐标和颜色来创建自定义的显示内容。可以使用不同的字体、大小和样式来创建独特的设计。 使用Arduino SSD1306 OLED显示屏的优点不只是它的高效能和易用性,还在于其开放性和扩展性。用户可以使用不同的软件库和驱动程序来创建自己的创新项目,或者使用可用的库和例子来快速上手。对于那些不熟悉编程的用户,也可以使用现成的图形库来轻松地创建复杂的图形和界面。 总的来说,Arduino SSD1306 OLED显示屏是一款多功能的单色显示屏,其灵活性和高效能使其成为DIY电子爱好者的首选。适用于各种类型的项目,包括智能家居、传感器网络、机器人、万花筒、数据可视化和可穿戴设备。 ### 回答3: Arduino ssd1306 oled显示屏是一种非常常见和实用的显示屏,其特点是高度、高对比度、低功耗、反应速度快等。这种显示屏采用SSD1306控制芯片,可以通过I2C接口与Arduino连接。SSD1306控制芯片集成了控制器和驱动器,可以通过软件控制屏幕内容。 要使用Arduino ssd1306 oled显示屏,首先需要下载并安装相应的库。在Arduino IDE中打开菜单“工具”-“库管理器”,搜索SSD1306并下载“Adafruit SSD1306”或者“U8g2”库。接下来,连接Arduino ssd1306 oled显示屏Arduino板上,将VCC连接到5V,GND连接到GND,SDA连接到SDA,SCL连接到SCL。在Arduino IDE中选择正确的板子和端口,并打开一个新的示例程序。如果已安装了U8g2库,可以在示例中找到ssd1306的例子程序进行测试。 在程序中,可以通过调用相应函数来控制显示屏上显示内容,例如显示文本、图形、动画等。可以设置屏幕分辨率、字体大小、对齐方式等缩放和定位属性。可以使用函数来绘制点、线、矩形、圆形、多边形等基本图形,也可以导入和显示位图和动画等多媒体内容。 总的来说,Arduino ssd1306 oled显示屏是一种非常实用和常用的显示屏,可以用于各种跟踪、监控、测量、控制等应用场景。通过简单的硬件和软件设计,可以快速、方便、高效地实现其功能。在今后的开发中,Arduino ssd1306 oled显示屏将会得到更广泛的应用和发展。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值