在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

RA6M3 HMI Board之硬件I2C實踐流程

冬至子 ? 來源:yefeng ? 作者:yefeng ? 2023-11-13 12:53 ? 次閱讀

1、前言說明

I2C總線是Philips公司在八十年代初推出的一種串行、半雙工的總線,主要用于近距離、低速的芯片之間的通信

I2C總線有兩根雙向的信號線,一根數據線SDA用于收發數據,一根時鐘線SCL用于通信雙方時鐘的同步。

I2C總線硬件結構簡單,簡化了PCB布線,降低了系統成本,提高了系統可靠性,因此在各個領域得到了廣泛應用。

1.1 本章內容

本章內容主要介紹如何利用瑞薩RA6M3系列芯片R7FA6M3AH3CFB的硬件i2c功能控制點亮0.96寸i2c接口OLED顯示屏。

1.2 模塊介紹

1.2.1 瑞薩ra6m3的硬件i2c

硬件資源數量

瑞薩ra6m3系列芯片具有3路硬件i2c通訊接口,另外還有10路的串行通訊接口(SCI),也可擴展為硬件i2c。

芯片的i2c資源數量可參考下表:

1.jpg

模塊硬件特點

通訊格式

I2c總線格式或SMBus格式
可選擇主機模式和從機模式
在傳輸時可自動獲得數據建立時間、保持時間以及總線釋放時間
傳輸速率

支持超快速模式,傳輸速率高達1Mbps
SCL時鐘

在主機模式下,時鐘的占空比可在4 – 96%之間調整
總線時序信號的產生與檢測

自動產生標準的i2c總線時序條件(起始、重復起始、停止)
做從機使用時可自動偵測其它主機發送的起始(或重復起始),停止條件
從機地址

可配置高達3個從機地址
支持7位、10位地址格式,并且可以同時使用這2種模式
支持廣播尋址,設備ID尋址以及SMBus主機地址偵測
應答

數據傳輸時,可自動加載應答位
數據接收時,可自動傳輸應答位
等待功能
在數據接收期間,保持SDL位位低電平的時候,下列等待周期將變得有效:

在第8和第9個時鐘之間的等待
在第9個時鐘和下一數據幀的第1個時鐘之間的等待
SDA輸出延時

在輸出數據的時候,可加入延時功能(包括應答位)
仲裁

多主機仲裁
偵測到起始條件失去仲裁,避免產生2個以上的起始條件
在傳輸一個非應答位期間,如果SDA線上的電平和自己不匹配失去仲裁
從機傳輸時,內部數據和通訊線上的電平不匹配將失去仲裁
超時

內部狀態檢測到超時時,可停止SCL的時鐘輸出
噪聲濾波

數字濾波器支持檢測SCL和SDA線上的信號
濾波器支持可編程的窗口期用來濾除噪聲干擾
中斷源

傳輸錯誤或者事件(仲裁丟失、無應答、超時、起始條件、停止條件)發生將產生中斷
接收數據緩沖區滿(包括從機地址匹配模式)可產生中斷
傳輸數據緩沖區空(包括從機地址匹配模式)可產生中斷
傳輸結束產生中斷
模塊停止省電模式

可配置為停止模式來降低電源的消耗,達到低功耗目的
支持的操作模式

主機傳送
主機接收
從機傳送
從機接收
事件連接(輸出)

支持傳輸錯誤或者總線事件(仲裁丟失、無應答、超時、起始條件或者重復起始條件、停止條件)
支持數據滿、從機地址匹配
支持數據空、從機地址匹配
傳輸結束
喚醒功能

支持使用喚醒事件將cpu從待機模式喚醒(此功能只支持I2C0外設,I2C1,I2C2不支持)
硬件i2c框圖

1.jpg

1.2.2 0.96寸OLED顯示屏

顯示屏特性
分辨率:128x64
控制芯片:SSD1306
接口類型:I2C
工作電壓:3.3v ~ 5V
顯示顏色:藍色

顯示屏外觀

1.jpg

接口定義

1.jpg

1.3 硬件連接

1.jpg

連接說明:

1.jpg

由于OLED顯示屏比較小,供電電流不大,可以直接用GPIO輸出高電平來供電。

2、步驟說明

2.1 新建工程

新建ra6m3_hmi_board_i2c_hardware工程

打開RT-Thread Studio軟件,執行菜單【文件】->【新建】->【RT-Thread項目】彈出新建項目對話框,選擇【基于開發板】的項目,其它配置如下圖 所示,項目名稱:ra6m3_hmi_board_i2c_hardware,點擊【完成】。

1.jpg

配置FSP路徑并允許FSP軟件

雙擊項目資源管理器里面的【RA Smart Configurator】,在彈出的對話框中點擊【是】,然后選擇瑞薩FSP軟件的安裝路徑:本機安裝在: C:RenesasRAsc_v2021-10_fsp_v3.5.0

1.jpg

2.jpg

配置GPIO
配置P506為GPIO輸出模式,默認高電平
配置P008為GPIO輸出模式,默認低電平
配置 Connectivity->IIC1 功能,Enable,引腳為P206(SDA), P205(SCL)

1.jpg

2.jpg

3.jpg

配置硬件i2c模塊

依次選擇【Stacks】->【New Stack】->【Connectivity】->【I2C Master(r_iic_master)】,創建I2C Master模塊,關鍵參數如下表

1.jpg

配置如下圖所示

1.jpg

2.jpg

5 生成配置代碼

點擊 【Generate Project Content】生成配置代碼

2.2 編寫測試程序

添加軟件包u8g2組件

雙擊RT-Thread Settings,進入添加軟件包界面,點擊【添加軟件包】,在彈出的對話框中搜索欄輸入u8g2,選中u8g2官方軟件包,添加到工程

1.jpg

2.jpg

配置u8g2組件

點擊u8g2組件,選擇【配置項】,并按如下圖所示配置u8g2(official)軟件包,然后保存配置

1.jpg

2.jpg

使能硬件i2c總線驅動

1.jpg

測試代碼

測試代碼無需編寫,u8g2提供了example,直接使用,然后編譯工程并下載到開發板。

#include
#include
#include
#include
static void u8g2_ssd1306_12864_hw_i2c_example(int argc,char argv[])
{
u8g2_t u8g2;
// Initialization
u8g2_Setup_ssd1306_i2c_128x64_noname_f( &u8g2, U8G2_R0, u8x8_byte_rtthread_hw_i2c, u8x8_gpio_and_delay_rtthread);
u8g2_InitDisplay(&u8g2);
u8g2_SetPowerSave(&u8g2, 0);
/
full buffer example, setup procedure ends in _f */
u8g2_ClearBuffer(&u8g2);
u8g2_SetFont(&u8g2, u8g2_font_ncenB08_tr);
u8g2_DrawStr(&u8g2, 1, 18, "U8g2 on RT-Thread");
u8g2_SendBuffer(&u8g2);
// Draw Graphics
u8g2_SetFont(&u8g2, u8g2_font_unifont_t_symbols);
u8g2_DrawGlyph(&u8g2, 112, 56, 0x2603 );
u8g2_SendBuffer(&u8g2);
}
MSH_CMD_EXPORT(u8g2_ssd1306_12864_hw_i2c_example, i2c ssd1306 sample);

3、代碼驗證

下載程序,然后終端界面顯示,提示符下輸入 tab 并按回車顯示所有命令,可以看到u8g2的示例已經出現

1.jpg

輸入u8g2,按tab自動補全,然后再按回車執行示例代碼,效果如下圖所示

1.jpg

1.jpg

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

    關注

    6

    文章

    1922

    瀏覽量

    45485
  • PCB布線
    +關注

    關注

    20

    文章

    463

    瀏覽量

    42054
  • I2C總線
    +關注

    關注

    8

    文章

    391

    瀏覽量

    60936
  • SDL
    SDL
    +關注

    關注

    0

    文章

    18

    瀏覽量

    7401
  • OLED顯示屏
    +關注

    關注

    6

    文章

    217

    瀏覽量

    30694
  • RA6M3
    +關注

    關注

    0

    文章

    52

    瀏覽量

    117
收藏 人收藏

    評論

    相關推薦

    RA6M3 HMI BoardSDHI測評實踐步驟

    首先對SDHI和SDIO本質上的區別進行說明,然后使用RT-Studio新建工程進行開發,通過RASC對RA6M3的底層硬件配置,然后使用SDHI接口實現SD的識別,搭配文件系統對SD卡進行讀寫操作,同時記錄開發遇到的問題。
    的頭像 發表于 08-07 15:54 ?1181次閱讀
    <b class='flag-5'>RA6M3</b> <b class='flag-5'>HMI</b> <b class='flag-5'>Board</b><b class='flag-5'>之</b>SDHI測評<b class='flag-5'>實踐</b>步驟

    如何利用rt-thread和HMI Board RA6M3開發一套物聯網工控機?

    近年來,隨著新一輪的科技發展以及工業產業升級,工業經濟慢慢的由數字化向網絡化和智能化發展。基于這一理念,本人利用rt-thread和HMI Board RA6M3開發了一套物聯網工控機。
    的頭像 發表于 09-15 15:27 ?1487次閱讀
    如何利用rt-thread和<b class='flag-5'>HMI</b> <b class='flag-5'>Board</b> <b class='flag-5'>RA6M3</b>開發一套物聯網工控機?

    RA6M3 HMI Board評測挑戰】-瑞薩RA6M3上的CAN實踐

    RA6M3 HMI Board 評測大挑戰】-瑞薩RA6M3上的CAN實踐
    的頭像 發表于 10-17 14:55 ?2017次閱讀
    【<b class='flag-5'>RA6M3</b> <b class='flag-5'>HMI</b> <b class='flag-5'>Board</b>評測挑戰】-瑞薩<b class='flag-5'>RA6M3</b>上的CAN<b class='flag-5'>實踐</b>

    RA6M3硬件用戶手冊(英)

    RA6M3硬件用戶手冊(英)
    發表于 11-07 19:49 ?0次下載
    <b class='flag-5'>RA6M3</b><b class='flag-5'>硬件</b>用戶手冊(英)

    RA6M3硬件用戶手冊(中英)

    RA6M3硬件用戶手冊(中英)
    發表于 11-07 19:49 ?2次下載
    <b class='flag-5'>RA6M3</b><b class='flag-5'>硬件</b>用戶手冊(中英)

    RA6M3 組用戶手冊:硬件

    RA6M3 組用戶手冊:硬件
    發表于 05-12 19:25 ?0次下載
    <b class='flag-5'>RA6M3</b> 組用戶手冊:<b class='flag-5'>硬件</b>

    RA6M3 組數據表

    RA6M3 組數據表
    發表于 05-12 19:25 ?0次下載
    <b class='flag-5'>RA6M3</b> 組數據表

    RA6M3 HMI Board SDHI實踐

    進行說明,然后使用RT-Studio新建工程進行開發,通過RASC對RA6M3的底層硬件配置,然后使用SDHI接口實現SD的識別,搭配文件系統對SD卡進行讀寫操作,同時記錄開發遇到的問題。 1.2
    的頭像 發表于 06-19 18:15 ?1097次閱讀
    <b class='flag-5'>RA6M3</b> <b class='flag-5'>HMI</b> <b class='flag-5'>Board</b> <b class='flag-5'>之</b>SDHI<b class='flag-5'>實踐</b>

    RA6M3 HMI Board RTC實踐

    開發環境: RT-Thread Studio:v2.2.6 開發板:RA6M3 HMI Board開發板 MCU:R7FA6M3AH3CFB 1 R
    的頭像 發表于 06-21 21:31 ?2951次閱讀
    <b class='flag-5'>RA6M3</b> <b class='flag-5'>HMI</b> <b class='flag-5'>Board</b> <b class='flag-5'>之</b>RTC<b class='flag-5'>實踐</b>

    RA6M3 組用戶手冊:硬件

    RA6M3 組用戶手冊:硬件
    發表于 06-29 19:17 ?0次下載
    <b class='flag-5'>RA6M3</b> 組用戶手冊:<b class='flag-5'>硬件</b>

    【線下培訓】上海臨港: RT-Thread × 瑞薩 工業監視器 RA6M3 HMI Board解決方案

    RT-Thread 與瑞薩將于10月14日在上海臨港舉行一場線下培訓。 本次培訓將為開發者們帶來期待已久的熱門技術主題, RT-Thread × 瑞薩 工業監視器 RA6M3 HMI Board
    的頭像 發表于 09-07 17:40 ?801次閱讀
    【線下培訓】上海臨港: RT-Thread × 瑞薩 工業監視器 <b class='flag-5'>RA6M3</b> <b class='flag-5'>HMI</b> <b class='flag-5'>Board</b>解決方案

    瑞薩RA6M3 HMI-Board Video Demo 上手指南

    高性能芯片 RA6M3 及 RT-Thread 和 LVGL 軟件生態,HMI Board 不僅硬件性能強勁,同時軟件生態豐富,助力開發者快速開發出 GUI 智能
    的頭像 發表于 09-15 18:25 ?1771次閱讀
    瑞薩<b class='flag-5'>RA6M3</b> <b class='flag-5'>HMI-Board</b> Video Demo 上手指南

    瑞薩RA6M3 MCU通過I2C讀取HS3001溫濕度傳感器

    瑞薩RA6M3 MCU通過I2C讀取HS3001溫濕度傳感器
    的頭像 發表于 09-26 16:57 ?1004次閱讀
    瑞薩<b class='flag-5'>RA6M3</b> MCU通過<b class='flag-5'>I2C</b>讀取HS3001溫濕度傳感器

    瑞薩 RA6M3 開發實踐指南-UART實踐

    RT-Thread即將發布一系列RA6M3外設驅動的實踐指南,我們將使用瑞薩RA6M3 HMI-Board 開發板,帶領大家上手RT-Thread設備驅動。? 【
    的頭像 發表于 09-23 12:15 ?1374次閱讀

    RA6M3 RT-Thread* LVGL HMI Board開發實踐指南-GPIO實踐

    RT-Thread即將發布一系列RA6M3外設驅動的實踐指南,我們將使用瑞薩RA6M3 HMI-Board 開發板,帶領大家上手RT-Thread設備驅動, 本篇文章將介紹GPIO外設
    的頭像 發表于 11-30 19:05 ?1287次閱讀
    <b class='flag-5'>RA6M3</b> RT-Thread* LVGL <b class='flag-5'>HMI</b> <b class='flag-5'>Board</b>開發<b class='flag-5'>實踐</b>指南-GPIO<b class='flag-5'>實踐</b>
    主站蜘蛛池模板: 在线欧美激情| 国产在线一区视频| 一级黄色片欧美| 男人不识本站| 天天黄色| 污污的黄色小说| 色猫成人网| 综合色影院| 免费国产h视频在线观看| 午夜精品影院| 国产成人v爽在线免播放观看| 久草色香蕉| 亚洲综合丁香婷婷六月香| 黄色a∨| 久久99精品福利久久久| 中文字幕色网站| 黄色小视频免费看| 精品影视网站入口| 亚洲高清免费在线观看| 国产美女视频一区二区二三区 | 日韩精品一区二区三区免费视频 | 天天综合亚洲国产色| 一区二区三| 免费看国产一级特黄aa大片| 日本高清一本视频| 99久久99久久久精品齐齐鬼色| 欧美精品网站| 爱爱帝国亚洲一区二区三区| 久久综合中文字幕| 成人精品第一区二区三区| 午夜免费免费啪视频观看| 夜夜超b天天| 日本不卡免费一区| 老色批影院| 亚洲成成品网站有线| 日韩美女奶水喂男人在线观看| 天天干天天射天天操| 在线啪| 亚洲一本之道在线观看不卡| 欧美午夜寂寞影院安卓列表| 韩国三级hd|