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

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

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

3天內不再提示

復旦微FM33LG048軟件I2C驅動OLED的demo 幫助新手快速從STM32上手FM33

大大通 ? 2023-11-11 08:27 ? 次閱讀

demo任務:利用復旦微FM33LG048外設I2C驅動OLED顯示

demo目的:通過demo熟悉復旦微的I2C、GPIO外設,幫助復旦微的新學習者快速了解復旦微庫函數

demo設備:MCU——FM33LG048;OLED——四針腳OLED,型號:JMD096D.

移植教程

#include "main.h"

#include "fm33_assert.h"

#include "OLED.h"

/*********************************************主函數*******************************************/

int main(void)

{

/* Initialize FL Driver Library */

FL_Init();

/* Configure the system clock */

MF_Clock_Init();

OLED_Init(); // 初始化OLED

OLED_ShowString(2,1,"hello"); //顯示hello字符串

}

FL_Init();在復旦微官方例程中已經給出,未修改任何代碼,故這里不再贅述。

MF_Clock_Init();主要用于初始化各外設以及配置系統時鐘,需要注意,為了方便移植OLED,將MF_Clock_Init()中GPIO初始化相關代碼移動到OLED.c文件中。

demo所用函數如下,直觀展示了與SMT32的對比,方便新手快速從SMT32入手復旦微FM33。

/******************************************************復旦微GPIO初始化************************************************************************************/

void MF_I2C_MASTER_Init(void)void MF_I2C_MASTER_Init(void)

{

FL_GPIO_InitTypeDef GPIO_InitStruct;

FL_I2C_MasterMode_InitTypeDef I2C_InitStruct;

/* PA11 I2C_SCL */

GPIO_InitStruct.pin = FL_GPIO_PIN_11;

GPIO_InitStruct.mode = FL_GPIO_MODE_DIGITAL;

GPIO_InitStruct.outputType = FL_GPIO_OUTPUT_PUSHPULL;

GPIO_InitStruct.pull = FL_DISABLE;

GPIO_InitStruct.remapPin = FL_DISABLE;

GPIO_InitStruct.analogSwitch = FL_DISABLE;

FL_GPIO_Init(GPIOA, &GPIO_InitStruct);

/* PA12 I2C_SDA */

GPIO_InitStruct.pin = FL_GPIO_PIN_12;

GPIO_InitStruct.mode = FL_GPIO_MODE_DIGITAL;

GPIO_InitStruct.outputType = FL_GPIO_OUTPUT_PUSHPULL;

GPIO_InitStruct.pull = FL_DISABLE;

GPIO_InitStruct.remapPin = FL_DISABLE;

GPIO_InitStruct.analogSwitch = FL_DISABLE;

FL_GPIO_Init(GPIOA, &GPIO_InitStruct);

I2C_InitStruct.clockSource = FL_CMU_I2C_CLK_SOURCE_RCHF;

I2C_InitStruct.baudRate = 100000;

FL_I2C_MasterMode_Init(I2C, &I2C_InitStruct); }

以下是STM32的GPIO初始化

/*****************************************************SMT32 GPIO初始化**********************************************/

void OLED_I2C_Init(void)

{

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);

GPIO_InitTypeDef GPIO_InitStructure;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;

GPIO_Init(GPIOB, &GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;

GPIO_Init(GPIOB, &GPIO_InitStructure);

OLED_W_SCL(1);

OLED_W_SDA(1);

}

需要注意,在復旦微庫函數中,沒有STM32的GPIO_WriteBit(*GPIOx,GPIO_Pin_x,Value)對應的庫函數,需要自己封裝。

以下給出兩者代碼不同之處

/**************************************STM32向特定引腳寫入0,1數據********************************************/

#define OLED_W_SCL(x) GPIO_WriteBit(GPIOB, GPIO_Pin_8, (BitAction)(x))

#define OLED_W_SDA(x) GPIO_WriteBit(GPIOB, GPIO_Pin_9, (BitAction)(x))

BitAction為枚舉類型,只能是0或1

/*************************************復旦微向特定引腳寫入0,1數據*********************************************/

void OLED_W_SCL(uint8_t x)

{ if(x==0)

{ FL_GPIO_ResetOutputPin(GPIOA,FL_GPIO_PIN_11); }

else

{ FL_GPIO_SetOutputPin(GPIOA,FL_GPIO_PIN_11); } }

void OLED_W_SDA(uint8_t x)

{ if(x==0)

{ FL_GPIO_ResetOutputPin(GPIOA,FL_GPIO_PIN_12); }

else

{ FL_GPIO_SetOutputPin(GPIOA,FL_GPIO_PIN_12); }}

完整代碼在附件。

其他部分復旦微FM33與SMT32高度類似,不再展示。

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

    關注

    119

    文章

    6249

    瀏覽量

    226295
  • STM32
    +關注

    關注

    2282

    文章

    10980

    瀏覽量

    360799
  • I2C
    I2C
    +關注

    關注

    28

    文章

    1510

    瀏覽量

    126243
  • GPIO
    +關注

    關注

    16

    文章

    1236

    瀏覽量

    53184
收藏 人收藏

    評論

    相關推薦

    嵌入式學習-飛凌嵌入式ElfBoard ELF 1板卡-I2C設備驅動之Linux下的I2C驅動簡介

    的通信協議,其中一個設備作為主設備控制總線,并與多個設備通信。在Linux內核中,I2C驅動主要由三部分組成:I2C核心、I2C總線
    發表于 04-15 10:39

    飛凌嵌入式ElfBoard ELF 1板卡-I2C設備驅動之Linux下的I2C驅動簡介

    的通信協議,其中一個設備作為主設備控制總線,并與多個設備通信。在Linux內核中,I2C驅動主要由三部分組成:I2C核心、I2C總線
    發表于 04-15 10:19

    HTR33xx具有中斷功能的16位I2C和SMBus IO擴展器中文手冊

    ? ? ? HTR33xx是一款I2C和SMBus ?IO擴展器2.2V~5.5V電源供電。16個IO端口中的任何一個都可以單獨配置為輸入或輸出。此外,任一I0可驅動LED。? ? ?
    發表于 04-14 16:25 ?0次下載

    STM32學習筆記_I2C詳解(可下載)

    連接到總線的外圍設備都有一個獨立的地址,主機可以通過該地址來訪問不同設備。主機可通過 SDA 線發送設備地址查找I2C 通常用于連接微控制器及其外圍設備,是
    發表于 03-14 17:33 ?2次下載

    I2C總線與Arduino的接口示例

    基礎 I2C總線由兩條線組成:數據線(SDA)和時鐘線(SCL)。SDA用于傳輸數據,而SCL用于同步數據傳輸。I2C設備可以是主設備或設備。主設備生成時鐘信號并啟動數據傳輸,設備
    的頭像 發表于 01-17 15:34 ?1000次閱讀

    EE-204:Blackfin處理器SCCB軟件接口,用于配置I2C器件

    電子發燒友網站提供《EE-204:Blackfin處理器SCCB軟件接口,用于配置I2C器件.pdf》資料免費下載
    發表于 01-07 14:32 ?0次下載
    EE-204:Blackfin處理器SCCB<b class='flag-5'>軟件</b>接口,用于配置<b class='flag-5'>I2C</b><b class='flag-5'>從</b>器件

    高效電梯語音播報:基于復旦FM33LF016的DAC音頻方案

    的商業中心,還是安靜的醫院環境,DAC都能確保語音播報的清晰度,讓乘客準確獲取到站信息。方案特色復旦基于FM33LF016推出了一套DAC音頻輸出方案。
    的頭像 發表于 12-27 16:33 ?350次閱讀
    高效電梯語音播報:基于<b class='flag-5'>復旦</b><b class='flag-5'>微</b><b class='flag-5'>FM33</b>LF016的DAC音頻方案

    復旦MCU 行業應用 | FM33LF0xx系列MCU在焊機行業應用案例

    :控制電路為模擬電路的傳統焊機、同時具有模擬電路和數字電路的半數字化焊機,以及控制電路全為數字電路的全數字化焊機。方案架構半數字焊機產品應用基于FM33LF0
    的頭像 發表于 12-09 16:57 ?598次閱讀
    <b class='flag-5'>復旦</b><b class='flag-5'>微</b>MCU 行業應用 | <b class='flag-5'>FM33</b>LF0xx系列MCU在焊機行業應用案例

    VK16K33A存儲器映射和多功能LED控制驅動芯片中文手冊

    使其適用于多種 LED 應用,包括 LED 模塊和顯示子系統。VK16K33A通過雙向I2C 接口可與大多數微控制器進行通信。L63+204特點:● 工作電壓:3V~5.5V● 內部RC 振蕩器
    發表于 11-14 16:15 ?1次下載

    復旦榮獲ISO26262:2018功能安全ASIL B產品認證證書

    2024年10月29日,上海復旦微電子集團股份有限公司(簡稱:“復旦”)榮獲ISO26262:2018功能安全產品認證證書(ASILB等級)。這標志著復旦
    的頭像 發表于 11-08 01:06 ?626次閱讀
    <b class='flag-5'>復旦</b><b class='flag-5'>微</b>榮獲ISO26262:2018功能安全ASIL B產品認證證書

    RISC V的I2C操作

    。tsuData中,1代表10ns;Timeout中,1表示10nstLow和tHigh的1代表10ns10.1.3 軟件部分(Risc V)l? I2C通信主要包括以下幾個部分:1、主設備發送起始位(Start
    的頭像 發表于 11-01 11:06 ?534次閱讀

    昂科燒錄器支持FuDanWei復旦微電子的低功耗微控制器FM33FR024

    芯片燒錄行業領導者-昂科技術近日發布最新的燒錄軟件更新及新增支持的芯片型號列表,其中FuDanWei復旦微電子的低功耗微控制器FM33FR024已經被昂科的通用燒錄平臺AP8000所支持
    的頭像 發表于 10-12 11:29 ?541次閱讀
    昂科燒錄器支持FuDanWei<b class='flag-5'>復旦</b>微電子的低功耗微控制器<b class='flag-5'>FM33</b>FR024

    TCA9617A電平轉換FM+ I2C總線中繼器數據表

    電子發燒友網站提供《TCA9617A電平轉換FM+ I2C總線中繼器數據表.pdf》資料免費下載
    發表于 07-02 09:46 ?0次下載
    TCA9617A電平轉換<b class='flag-5'>FM</b>+ <b class='flag-5'>I2C</b>總線中繼器數據表

    TCA9617B電平轉換FM+I2C總線中繼器數據表

    電子發燒友網站提供《TCA9617B電平轉換FM+I2C總線中繼器數據表.pdf》資料免費下載
    發表于 06-19 09:56 ?0次下載
    TCA9617B電平轉換<b class='flag-5'>FM+I2C</b>總線中繼器數據表

    賽普拉斯 Cypress 品牌 CY7C1021DV33-10ZSXIT

    63813-SXC CY8C4247LQI-BL483 FM31256-GTR CY7C1041DV33-10ZSXI CY8C21534-24PVXI CY8
    發表于 04-20 16:47
    主站蜘蛛池模板: 美女视频毛片 | 可以在线看黄的网站 | 三级黄色片免费观看 | 欧洲精品码一区二区三区免费看 | 在线播放国产不卡免费视频 | 天天插天天摸 | 欧美网站色 | 色免费在线观看 | 加勒比精品久久一区二区三区 | 婷婷六月丁香午夜爱爱 | 乱说欲小说又粗又长 | 看黄网站在线 | 国产一级特黄aa大片在线 | 人人射人人 | 成人三级电影在线观看 | 色婷婷六月丁香七月婷婷 | 欧美一区二区三区视频在线观看 | 亚洲激情视频 | 亚洲福利秒拍一区二区 | 天天草夜夜爽 | 拍真实国产伦偷精品 | 又长又大又粗又硬3p免费视频 | 日韩一级在线播放免费观看 | 天天爱天天操天天射 | 久久久久99精品成人片三人毛片 | 日本天天色 | 手机在线看a | 久久青草国产手机看片福利盒子 | 国产亚洲精品久久久极品美女 | 色视频2| 97影院理论午夜论不卡 | 一级特黄色片 | 亚洲男同tv| 第四色激情网 | 成人影院在线观看视频 | 久草色香蕉 | www懂爱 | 久久免费99精品久久久久久 | 国产精品二区三区免费播放心 | 亚洲日本欧美日韩高观看 | 18年大片免费在线 |