五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

RA4M2開發(fā)(2)----基于IIC驅(qū)動(dòng)OLED

2023-08-23 10:40 作者:記帖  | 我要投稿

概述

  1. 在e2studio中創(chuàng)建新的工程并導(dǎo)入必要的文件,包括I2C驅(qū)動(dòng)代碼和SSD1306 OLED顯示驅(qū)動(dòng)代碼。

  2. 配置RA4M2的I2C接口,使其作為I2C master進(jìn)行通信。

  3. 初始化SSD1306 OLED顯示驅(qū)動(dòng)代碼,并配置顯示屏的物理地址和分辨率。

  4. 通過I2C驅(qū)動(dòng)代碼將數(shù)據(jù)寫入SSD1306 OLED顯示屏。

  5. 在e2studio中運(yùn)行代碼并檢查顯示屏是否正常顯示數(shù)據(jù)。

注意:具體的代碼細(xì)節(jié)可能因項(xiàng)目而異,請(qǐng)確保遵循廠商的數(shù)據(jù)手冊(cè)和應(yīng)用程序示例。

最近在弄ST和瑞薩的課程,需要樣片的可以加群申請(qǐng):6_15061293 。


視頻教學(xué)

https://www.bilibili.com/video/BV13o4y1N7BQ/

csdn課程

csdn課程更加詳細(xì)。
https://edu.csdn.net/course/detail/36131

樣品申請(qǐng)

https://www.wjx.top/vm/wBbmSFp.aspx#



硬件準(zhǔn)備

首先需要準(zhǔn)備一個(gè)開發(fā)板,這里我準(zhǔn)備的是芯片型號(hào)R7FA4M2AD3CFP的開發(fā)板:


新建工程


工程模板

保存工程路徑

芯片配置

本文中使用R7FA4M2AD3CFP來進(jìn)行演示。

工程模板選擇

時(shí)鐘設(shè)置

開發(fā)板上的外部高速晶振為12M.

需要修改XTAL為12M。




IIC屬性配置

查看手冊(cè),可以得知OLED的IIC地址為“b0111100” or “b0111101”,即0x3c或者0x3d。



在OLED的模塊中,絲印上面寫的地址是0x78(b0111 1000)或者0x7a(b0111 1010),是因?yàn)榧恿艘晃籖W位,因?yàn)橐话阒灰l(fā)送數(shù)據(jù)讓屏幕進(jìn)行顯示。



IIC配置

配置RA4M2的I2C接口,使其作為I2C master進(jìn)行通信。

查看開發(fā)板原理圖,對(duì)應(yīng)的IIC為P408和P409。

點(diǎn)擊Stacks->New Stack->Connectivity -> I2C Master(r_sci_i2c)。


設(shè)置IIC的配置,需要注意從機(jī)的地址,在stm32等程序中寫的是0x78,但是這里的地址位數(shù)是7位,故需要右移一位,變成0x3c。


R_SCI_I2C_Open()函數(shù)原型

R_SCI_I2C_Open()函數(shù)為執(zhí)行IIC初始化,開啟配置如下所示。


R_SCI_I2C_Write()函數(shù)原型

R_SCI_I2C_Write()函數(shù)是向IIC設(shè)備中寫入數(shù)據(jù),寫入格式如下所示。


sci_i2c_master_callback()回調(diào)函數(shù)

對(duì)于數(shù)據(jù)是否發(fā)送完畢,可以查看是否獲取到I2C_MASTER_EVENT_TX_COMPLETE字段。


控制與發(fā)送數(shù)據(jù)

對(duì)于發(fā)送數(shù)據(jù),可以使用R_SCI_I2C_Write()函數(shù),對(duì)于是否發(fā)送完畢,可以判斷I2C_MASTER_EVENT_TX_COMPLETE != i2c_event,并且引入超時(shí)機(jī)制。

向0x3c設(shè)備寫命令0x00的IIC_Command指令。



IIC寫數(shù)據(jù)

向0x3c設(shè)備寫數(shù)據(jù)0x40的IIC_Data指令。


驅(qū)動(dòng)代碼

若需要讓OLED顯示字符或者圖片,需要添加驅(qū)動(dòng)文件,添加方式如下。

主要需要添加如下四個(gè)文件。

oled.c:該文件包含控制OLED屏幕并與之通信的主要代碼。具有初始化屏幕、繪制圖形和文本以及更新顯示的函數(shù)。

oled.h:這個(gè)頭文件可以聲明函數(shù)原型和任何在oled.c文件中使用的常量或變量。

bmp.h:該文件包含在OLED屏幕上呈現(xiàn)BMP圖像文件的代碼。

oledfont.h:這個(gè)文件包含在OLED屏幕上渲染自定義字體的代碼,或者可能聲明一個(gè)用于顯示文本的字體表。

這四個(gè)文件附錄在最后。

字符取模

由于單片機(jī)的flash比較吃緊,所以要顯示漢字需要先進(jìn)行取模。首先需要設(shè)置為字符模式。

取模軟件設(shè)置。

設(shè)置完之后就可以取自己想要漢字的編碼,輸入完畢點(diǎn)擊生成字模即可。

在oledfont.h中放入字庫。

字體大小只有2個(gè)。

在hal_entry.c中添加顯示


顯示結(jié)果如下所示。


圖片取模

設(shè)置為圖形模式。


格式設(shè)置。


選擇需要打開的文件。


打開的文件必須為bmp文件。


選擇生成字模。


圖片數(shù)據(jù)放在bmp.h中。

顯示圖片

主程序

oled.c

oled.h

oledfont.h

bmp.h


RA4M2開發(fā)(2)----基于IIC驅(qū)動(dòng)OLED的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
丹棱县| 波密县| 陈巴尔虎旗| 方正县| 武乡县| 吴旗县| 阳江市| 苍溪县| 宾阳县| 宁远县| 南安市| 神池县| 凭祥市| 巢湖市| 三江| 嘉鱼县| 建德市| 海兴县| 保山市| 黄梅县| 叙永县| 乾安县| 同仁县| 盱眙县| 同德县| 建湖县| 仁化县| 西藏| 唐河县| 璧山县| 锡林浩特市| 安宁市| 大庆市| 华蓥市| 兴安县| 许昌市| 瓮安县| 奉贤区| 郸城县| 平武县| 延津县|