您的位置:首页 > 编程语言

Esp8266 进阶之路31【外设篇】分享一个乐鑫esp8266 SDK编程使用 IIC总线驱动 0.96寸的OLED显示屏,显示天气预报信息。(附带Demo)

2018-10-27 09:54 267 查看
版权声明:本文为博主半颗心脏一心一血敲出来的原创作品,未经博主允许不得转载,多谢支持。 https://blog.csdn.net/xh870189248/article/details/83443614
  • 12、 Esp8266进阶之路第四篇: 图文并茂学习阿里云主机搭建8266MQTT服务器,实现移动网络远程控制一盏LED。

  • 13、 Esp8266进阶之路第五篇: 动手做个8266毕设小案例,smartConfig + MQTT协议轻松实现远程控制一盏LED。

  • 14、 Esp8266进阶之路第六篇: esp8266的 FreeRtos系统学习的正确姿势 ------ 环境搭建、烧录。

  • 15、 Esp8266进阶之路第七篇: esp8266的 物联网又一股清流,8266接入阿里云平台非阿里智能的SDS服务,点亮一盏LED灯。

  • 16、 Esp8266进阶之路第八篇: esp8266的 基于Nonos移植红外线H1838,实现红外遥控器配网,远程控制一盏灯。

  • 17、 Esp8266进阶之路第九篇: esp8266自研的快速上电开关五次 (开-关为一次) ,无需按键触发则8266进去一键配网模式。

  • 18、 Esp8266进阶之路第十篇: esp8266 基于NONOS 实现 OTA 远程升级,实现无线“ 热修复 ”升级固件程序。

  • 19、 Esp8266进阶之路第十一篇【外设篇】esp8266驱动 ds18b20、dht11 温湿度传感器,采集温湿度传感器到服务器。

  • 20、 Esp8266进阶之路第十一篇【高级篇】深入学习esp8266的esp now模式,仿机智云做一个小网关,实现无需网络下轻松彼此连接通讯交互数据。

  • 21、 Esp8266进阶之路第十二篇【高级篇】浅谈 esp8266 如何在本地局域网网络情况下实现最大效率地和前端实现数据交互。

  • 22、 Esp8266进阶之路第十三篇【混杂篇】esp8266的工程如何添加第三方静态库文件以及如何自定义文件夹,聊聊那些makeFile的事。。

  • 23、 Esp8266进阶之路第十四篇【高级篇】再来一波 esp8266 基于 freeRtos系统连接自己私有的服务器实现OTA远程升级,接触下 lwip的基本知识。。

  • 24、 Esp8266进阶之路第十五篇【高级篇】渗透学习回顾下esp8266的外置spi芯片25q系列,熟悉8266代码块在其的分布,得心应手放置图片或其他资料。

  • 25、 Esp8266进阶之路第十六篇【高级篇】深聊下esp8266的串口 Uart 通讯中断编程,为您准备好了 NONOS 版本 和 RTOS 系统的串口驱动文件。

  • 26、 Esp8266进阶之路第十七篇【高级篇】RTOS分析 MQTT 实现过程,实现移植 MQTT协议在 esp8266 rtos实时系统,可断线重连。

  • 27、 Esp8266进阶之路第十八篇【高级篇】跟紧脚步,用VisualStudio Code开发 esp8266 rtos SDK v3.0版本,全新的 idf 框架,节省内存模块化开发。

  • 28、 Esp8266进阶之路第十九篇【高级篇】高级篇】教你轻松自如使用cJson在乐鑫 esp8266 如何解析一段json数据以及如何生成一段json数据。

  • 29、 Esp8266进阶之路第二十篇【高级篇】百万条消息免费之乐鑫esp8266使用TCP直连模式MQTT协议接入阿里云物联网平台,支持私家服务器对接,支持阿里云规则引擎。

  • 30、 Esp8266进阶之路第二十一篇【外设篇】乐鑫esp8266 SDK编程使用 IIC总线驱动 0.96寸的OLED显示屏,显示天气预报信息。

  • 文章目录

    一、前言;

    •    最近在我的技术群里看到蛮多人要求我出个开发板,好吧!那我抽个时间和群里的管理员出个开发板,带领大家去学习这个物联网黑马芯片

      esp8266
      的详细教程,当然是个人组织的,会方方面面介绍怎么入门,进阶,怎么学习网络协议栈,更好地开发自己的产品或者大学生比赛用到!当然了,最终还是会提到怎么接入阿里智能京东微联这些大平台!

    •     今天有幸整理下

      esp8266
      使用IIC总线驱动 0.96寸的OLED显示屏,在之前的原生乐鑫SDK高级使用之封装Post与Get请求云端,拿到“天气预报信息”,我提到可以拿到信息之后,可以显示在显示屏上面,现在我准备开源这个步骤和代码,至于怎么解析
      json
      数据,大家可以去看看我另外一篇博客esp8266解析CJSON,之后显示加载出来就可以了!

    二、
    esp8266
    iic
    接口?

    •     
      esp8266
      没有硬件
      iic
      接口,都是软件模拟出来的!
      而且ESP8266 ⽬目前提供作为 I2C 主设备的接⼝口,可以对其他 I2C 从设备(例如⼤大多数数字传感器)进⾏行控制与读写。

    总的来说,官方对此有说明如下:

    1. 同时,芯⽚片内部提供上拉电阻,以节省外部的上拉电阻。
    2. ESP8266 作为 I2C 主机的 SDA 与 SCL 线波形由 GPIO 模拟产⽣生,在 SCL 的上升沿之后 SDA 取数。SCL⾼高低电平各保持 5us,因此 I2C 时钟频率约为 100KHz。
    3. 每个 GPIO 管脚内部都可以配置为开漏模式(open-drain),从⽽而可以灵活的将 GPIO ⼝口⽤用作 I2C data 或 clock 功能。

    三、如何显示中文文字在显示屏?

    • 第一步:这个步骤相信大家都清楚,首先要取模,我这里先从
      Windows
      系统新建一个
      .bmp
      格式的图片,注意文件像素大小是
      128*64
      ,因为我们的
      oled
      像素就是这个!

    • 第二步:打开取模软件小工具,我这里使用的是
      PCtoLCD2002
      ,打开一个文件,选择我们上面的
      .bmp
      文件。如图:

    • 第三步:注意保存的取模数据的格式,选项如下:

    • 第四步:在软件下面有个生成字模,然后我们保存为
      .txt
      文档,后面代码工程会用到!

    四、修改工程

    • 我分享的工程代码是弄好了字模数组的,大家只要修改下即可,在
      bmp.h
      头文件下面的
      BMP[]
      数组,您只需要替换为您的字模即可!注意数组格式!!
    • 下面贴下部分代码:
    void user_init(void) {
    
    i2c_master_gpio_init();
    OLED_Init(); //oled初始化
    OLED_ShowStr(0, 3, "System Start", 2); //显示System Start
    
    //	显示延时10秒
    os_delay_us(60000);
    os_delay_us(60000);
    os_delay_us(60000);
    os_delay_us(60000);
    os_delay_us(60000);
    os_delay_us(60000);
    os_delay_us(60000);
    os_delay_us(60000);
    os_delay_us(60000);
    os_delay_us(60000);
    //	清屏
    OLED_CLS();
    //	显示位图,自左上角0,0,位置分辨率点起,至第128个分辨率点、第8行的右下角,显示图片“esp8266 天气预报”的位图数据
    OLED_DrawBMP(0, 0, 128, 8, BMP);
    
    }
    • 因为是软件模拟出来的,所以,可以任意修改为你想要的
      gpio
      口,我都为您宏定义好了!您只需要在
      i2c_master.h
      头文件重新修改即可!注意下管脚对应的寄存器哈!下面是我自己的定义!
    #define I2C_MASTER_SDA_MUX PERIPHS_IO_MUX_GPIO4_U
    #define I2C_MASTER_SCL_MUX PERIPHS_IO_MUX_GPIO5_U
    #define I2C_MASTER_SDA_GPIO 4
    #define I2C_MASTER_SCL_GPIO 5
    #define I2C_MASTER_SDA_FUNC FUNC_GPIO4
    #define I2C_MASTER_SCL_FUNC FUNC_GPIO5

    五、一些必要的函数说明!

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: 
    相关文章推荐