<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用I2C協議點亮OLED

CHANBAEK ? 來源:魚香ROS ? 作者:小魚 ? 2023-07-15 16:47 ? 次閱讀

你好,我是愛吃魚香ROS的小魚。本節我們就嘗試直接使用I2C協議來點亮OLED,因為主要測試I2C協議,所以對于復雜的顯示處理部分小魚就略過了,畢竟有方便的開源庫使用,我們也不用那么糾結,如果實在想使用I2C直接驅動OLED,可以去看小魚在雷達驅動板上手擼的代碼。

教程所使用硬件平臺為MicroROS學習板V1.0.0,可點擊閱讀原文購買及查看詳情

圖片

一、新建工程

還是老樣子,不過這次不需要添加任何依賴。

圖片

二、I2CAPI介紹

這里我們需要了解幾個Wire常用的API。

1.Wire.begin 初始化可以設置引腳,如Wire.begin(18, 19);

2.Wire.beginTransmission,開始傳輸,傳入目標地址,如OLED-0x3C Wire.beginTransmission(0x3c);

3.Wire.write 開始寫數據, 直接傳入要寫的數據即可

4.Wire.endTransmission 結束傳輸,寫入完成后調用

三、編寫代碼

#include < Arduino.h >
#include "Wire.h"

uint8_t cmd_ssd1315[] = {0xae, 0x00, 0x10, 0x40, 0x81, 0xcf, 0xa1, 0xc8, 0xa6, 0xa8,
                         0x3f, 0xd3, 0x00, 0xd5, 0x80, 0xd9, 0xf1, 0xda, 0x12, 0xdb,
                         0x40, 0x20, 0x00, 0x8d, 0x14, 0xa4, 0xa6, 0xaf};

void setup()
{
  Wire.begin(18, 19);
  Wire.beginTransmission(0x3c);
  for (int i = 0; i < 28; i++)
  {
    Wire.write(cmd_ssd1315[i]);
  }
  Wire.endTransmission();
}

void loop()
{
  // put your main code here, to run repeatedly:
}

這里的代碼,我們將cmd_ssd1315中的數據依次通過I2C寫入地址為0x3C的設備中,這些數據分別代表著初始化OLED所需要的參數,如亮度、方向等信息,具體請參考SSD1315的手冊,或自行百度。

四、測試

將代碼下載到開發板,查看OLED,可以看到OLED此時成功亮起,有很多斑點,屬于正?,F象。

圖片

五、總結

本節我們主要嘗試通過I2C發送一段指令給OLED,并將其成功點亮。至此我們嵌入式開發基礎篇的內容就全部完成了,下一章開始我們將正式進入MicroROS的開發中來,到時會有我們熟悉的WIFI、藍牙等模塊的使用。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • OLED
    +關注

    關注

    119

    文章

    6060

    瀏覽量

    222041
  • 代碼
    +關注

    關注

    30

    文章

    4586

    瀏覽量

    67214
  • 學習板
    +關注

    關注

    0

    文章

    40

    瀏覽量

    12089
  • I2C協議
    +關注

    關注

    0

    文章

    25

    瀏覽量

    8403
  • ROS
    ROS
    +關注

    關注

    1

    文章

    273

    瀏覽量

    16783
收藏 人收藏

    評論

    相關推薦

    全面掌握面試必考題I2C協議 - 第1節

    I2C協議
    充八萬
    發布于 :2023年09月01日 18:58:30

    全面掌握面試必考題I2C協議 - 第4節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:01:01

    全面掌握面試必考題I2C協議 - 第5節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:01:51

    全面掌握面試必考題I2C協議 - 第6節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:02:42

    全面掌握面試必考題I2C協議 - 第7節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:03:32

    全面掌握面試必考題I2C協議 - 第10節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:06:03

    全面掌握面試必考題I2C協議 - 第11節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:06:53

    全面掌握面試必考題I2C協議 - 第12節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:07:43

    全面掌握面試必考題I2C協議 - 第13節

    I2C協議
    充八萬
    發布于 :2023年09月01日 19:08:34

    LPC1768單片機硬件I2C中斷驅動OLED的問題

    我現在遇到了問題,我想用LPC1768單片機硬件I2C中斷驅動OLED我是一個初學者,剛剛接觸LPC這款單片機,寄存器操作點亮LED之后,想點亮OL
    發表于 01-20 09:25

    i2c通信協議

    1.1 i2c通信協議通信協議:用來實現數據傳輸。i2c物理總線:SCL(時鐘線) SDA(數據線)i2c通信
    發表于 03-06 16:15

    I2C通訊協議

    目錄 I2C協議 I2C 物理層I2C協議層STM32的硬件I2C軟件模擬
    發表于 08-11 07:36

    I2C協議簡介

    這里寫自定義目錄標題一、I2C 協議簡介二、I2C的分類1、軟件I2C2、硬件I2C3、區別三、基于I2
    發表于 08-23 07:27

    I2C協議以及I2C讀寫EEPROM

    I2C協議以及I2C讀寫EEPROM實驗文章目錄I2C協議以及I2C讀寫EEPROM實驗
    發表于 08-23 08:25

    通過I2C發送一段指令給OLED并將其成功點亮

    OLED此時成功亮起,有很多斑點,屬于正?,F象?! ∥?、總結  本節我們主要嘗試通過I2C發送一段指令給OLED,并將其成功點亮。至此我們嵌入式開發基礎篇的內容就全部完成了。原作者:小
    發表于 03-28 16:23
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>