通过在I2C接口下的OLED显示

一、I2C简介

1、I2C(Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。
2、总线特点:I2C总线最主要的优点是其简单性和有效性。由于接口直接在组件之上,因此I2C总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。总线的长度可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。I2C总线的另一个优点是,它支持多主控(multimastering), 其中任何能够进行发送和接收的设备都可以成为主总线。一个主控能够控制信号的传输和时钟频率。当然,在任何时间点上只能有一个主控。
3、 I2C串行总线概述
I2C总线是PHLIPS公司推出的一种串行总线,是具备多主机系统所需的包括总线裁决和高低速器件同步功能的高性能串行总线。I2C总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。
I2C总线通过上拉电阻接正电源。当总线空闲时,两根线均为高电平。连到总线上的任一器件输出的低电平,都将使总线的信号变低,即各器件的SDA及SCL都是线“与”关系。在这里插入图片描述
在这里插入图片描述
每个接到I2C总线上的器件都有唯一的地址。主机与其他器件间的数据传送可以是由主机发送数据到其他器件,这时主机即为发送器。由总线上接收数据的器件即为接收器。
在多主机系统中,可能同时有几个主机企图启动总线传送数据。为了避免混乱,I2C总线要通过总线仲裁,以决定由哪一台主机控制总线。

二、I2C接口实验

1、准备工作

按照下图路径打开下载的第一个安装包,打开OLED
在这里插入图片描述

2、生成字模

在这里插入图片描述
点击设置更改为下列设置在这里插入图片描述
输入了自己想要的字之后点生成字模,然后将生成后的复制到程序代码中
生成自己的名字(汉字用英文字母代替)
{0x40,0x00,0x47,0xC2,0x44,0x41,0x44,0x42,0x7C,0x7C,0x01,0x00,0x01,0x00,0xFF,0xFF,0x01,0x02,0x05,0x84,0x09,0x60,0x11,0x10},
{0x61,0x08,0x01,0x04,0x01,0x02,0x00,0x00},/“Z”,0/
{0x08,0x20,0x08,0x22,0x08,0x41,0xFF,0xFE,0x08,0x80,0x09,0x00,0x20,0x10,0x2F,0xD0,0x2A,0x98,0x2A,0x96,0xFF,0xD0,0x2A,0x91},
{0xAA,0xBF,0x6F,0xD0,0x20,0x10,0x00,0x00},/“B”,1/
{0x00,0x00,0x3F,0xF0,0x22,0x20,0x22,0x20,0x22,0x20,0x3F,0xF1,0x00,0x02,0x00,0x0C,0x7F,0xF0,0x44,0x40,0x44,0x40,0x44,0x42},
{0x44,0x41,0x7F,0xFE,0x00,0x00,0x00,0x00},/“M”,2/
{0x00,0x10,0x00,0x10,0x00,0x10,0x0F,0xD0,0x0A,0x90,0x0A,0x90,0x0A,0x90,0xFA,0xFF,0x4A,0x90,0x4A,0x90,0x4A,0x90,0x4F,0xD0},
{0x40,0x10,0x40,0x10,0x00,0x10,0x00,0x00},/“Z”,3/

3、修改代码

再打开第一步打开的keil代码
在这里插入图片描述
将生成的字模复制过去
在这里插入图片描述

再打开main.c,修改下列代码
showchinese函数用来显示汉字
showstring函数用来显示字符串在这里插入图片描述

4、将IIC连接到开发板

在这里插入图片描述

5、运行程序

将刚刚修改的程序下载到开发板中
显示结果:
在这里插入图片描述

6、显示温湿度

接着上篇的工程,将之前温湿度模块中的myiic.c和hemtem.c文件移植到这个工程里,并添加路径,得到如下:

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: ESP8266是一款常用的WiFi模块,而0.96寸I2C接口OLED是一种常用的显示,可以通过I2C总线与ESP8266进行通信,实现显示功能。这种显示具有低功耗、高对比度、高亮度等特点,非常适合在嵌入式系统中使用。 ### 回答2: ESP8266是一款流行的WiFi模块,可用于连接网络、控制和监测物联网设备。同时,市场上也配有一款OLED幕,如0.96英寸I2C接口OLEDOLED幕是显示技术的一种,通过光电致发光显示。相对于其他显示技术有许多优点,例如可视角度宽、对比度高、反应速度快等。OLED比传统显示更低能耗,同时更加清晰。因为其无需背光,可显示纯黑色,而一些传统幕的黑色由于需要透过电子过滤器导致亮度变低,这导致OLED幕更加清晰。 0.96英寸I2C接口OLED幕通过I2C总线与ESP8266模块通信。I2C简称是“Inter-Integrated Circuit”,是在IC之间传输数据的一种协议。ESP8266通过I2C协议从OLED读取数据,例如要显示的文字或图像,以在幕上显示。通过I2C接口,可以轻松地添加幕到项目中,使得观察和控制设备更加方便。 在使用ESP8266 0.96英寸I2C接口OLED幕时,需要在代码中初始化I2C总线和OLED管脚,然后再将数据发送到幕中。OLED库可以使操作变得更容易,可以提供快速和简单的借口。 总之,ESP8266 0.96英寸I2C接口OLED幕是一款适合用于物联网设备的附属产品,具有与ESP8266的通信和显示简单且高质量的特点。它能让我们在项目中增加显示,以便于更好地控制和监测设备。 ### 回答3: ESP8266是一个低功耗的Wi-Fi模块,可以在各种IoT设备和应用中使用。而0.96寸I2C接口OLED则是一种小型的显示,可以显示文字和图像,具有低功耗和高对比度等特点。 这两个设备的结合可以带来很多应用的可能性。通过ESP8266连接互联网,可以获取网络中的各种数据,例如天气信息、股票行情等等。然后将这些数据显示OLED幕上,提供给用户查看。同时,ESP8266和OLED的结合也可以实现一些基本的交互功能,例如通过按钮等输入设备来控制设备的状态。 此外,ESP8266还具有很强的扩展性,可以通过GPIO来连接各种外设。通过这种方式,可以将ESP8266和OLED组合起来,实现更为复杂的应用场景。例如利用温湿度传感器和ESP8266来实现室内环境监测,并将数据显示OLED幕上。 当然,ESP8266和OLED的结合也需要一定的硬件和软件开发能力。硬件方面需要将OLED幕通过I2C接口连接到ESP8266上,并编写相应的硬件程序。软件方面需要编写相应的驱动程序,以及与互联网等外部设备进行通信的应用程序。 总之,ESP8266和OLED的结合可以实现很多有趣的应用场景,需要开发者具备一定的硬件和软件开发能力,才能充分发挥其潜力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值