女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【CW32模塊使用】0.96寸IIC單色屏

CW32生態(tài)社區(qū) ? 2025-05-11 16:19 ? 次閱讀

一、模塊來(lái)源

模塊實(shí)物展示:

wKgZO2ggXXaAZTtsAABBivB4yE8474.jpg


資料下載鏈接:https://pan.baidu.com/s/1xy2zH8-hs-S8-_AcVtBP_g
資料提取碼:0jhj

二、規(guī)格參數(shù)

工作電壓:3.3V

工作電流:9MA

模塊尺寸:27.3 x 27.8 MM

像素大小:128(H) x 64(V)RGB

驅(qū)動(dòng)芯片:SSD1306

通信協(xié)議:IIC

管腳數(shù)量:4 Pin(2.54mm間距排針

以上信息見(jiàn)廠家資料文件

wKgZPGggXXeAfgTEAAAuOK5EA90160.jpg

文件路徑

wKgZO2ggXXeAI66TAAAa2vs96AI445.jpg

尺寸參數(shù)

三、移植過(guò)程

我們的目標(biāo)是將例程移植至立創(chuàng)·CW32F030C8T6開(kāi)發(fā)板上。按照以下步驟,即可完成移植。

將源碼導(dǎo)入工程;

根據(jù)編譯報(bào)錯(cuò)處進(jìn)行粗改;

修改引腳配置;

修改時(shí)序配置;

移植驗(yàn)證。

3.1查看資料

打開(kāi)廠家資料例程(例程下載見(jiàn)百度網(wǎng)盤(pán)鏈接下載)。具體路徑見(jiàn)例程路徑

wKgZPGggXXiABKvkAACNSEbwr2I577.jpg

例程路徑

3.2移植至工程

將廠家資料路徑下的【LCD】文件夾,復(fù)制到自己的工程中。(工程可以參考入門(mén)手冊(cè)工程模板

wKgZO2ggXXmAOY8-AABNcECTDrI585.jpg

復(fù)制示意圖

我們打開(kāi)工程文件,將我們剛剛復(fù)制到文件夾中的文件,導(dǎo)入C文件和路徑。

wKgZPGggXXmAQwbVAAB9zeBoj6U773.jpg

oled.h 文件下的 sys.h 改為 board.h

wKgZO2ggXXqAb4t_AAAWsPutwMM839.jpg

修改oled.h頭文件

oled.c 文件下的 delay.h 注釋掉。

wKgZPGggXXqAJMeeAAAYMEVDSjI812.jpg

修改oled.c文件

oled.h文件中定義三個(gè)宏,u8、u16、u32。

#ifndef u8
#define u8 uint8_t
#endif

#ifndef u16
#define u16 uint16_t
#endif

#ifndef u32
#define u32 uint32_t
#endif

3.3. 引腳選擇?

該屏幕需要設(shè)置4個(gè)接口,具體接口說(shuō)明見(jiàn) 各引腳說(shuō)明

wKgZO2ggXXuAa0uQAAIdkeVLtic612.jpg

模塊為IIC通信協(xié)議的從機(jī),SCL為IIC信號(hào)線,SDA為IIC數(shù)據(jù)線。

3.4. 軟件I2C移植?

當(dāng)前廠家源碼使用的是軟件IIC接口,IIC時(shí)序部分廠家已經(jīng)完成,我們只需要將引腳和延時(shí)配置好即可。所以對(duì)應(yīng)接入的屏幕引腳請(qǐng)按照你的需要。這里選擇的引腳見(jiàn)下圖。

wKgZPGggXXuAIOuKAAfweAtgzN0149.jpg

選擇好引腳后,進(jìn)入工程開(kāi)始編寫(xiě)屏幕引腳初始化代碼。

在oled.h中定義LCD端口移植宏

//-----------------OLED端口引腳移植定義----------------

#define OLED_RCC_ENABLE()        __RCC_GPIOB_CLK_ENABLE()

#define OLED_GPIO_PORT           CW_GPIOB

#define OLED_SCL_PIN             GPIO_PIN_10
#define OLED_SDA_PIN             GPIO_PIN_11

將oled.c源代碼中的 void OLED_Init(void) 修改為如下代碼。

//OLED的初始化
void OLED_Init(void)
{
    GPIO_InitTypeDef  GPIO_InitStructure;

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//使能GPIO時(shí)鐘

    //GPIO初始化設(shè)置
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10|GPIO_Pin_11;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//推挽輸出模式
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//100MHz
    GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化

    delay_ms(200);

    OLED_WR_Byte(0xAE,OLED_CMD);//--turn off oled panel
    OLED_WR_Byte(0x00,OLED_CMD);//---set low column address
    OLED_WR_Byte(0x10,OLED_CMD);//---set high column address
    OLED_WR_Byte(0x40,OLED_CMD);//--set start line address  Set Mapping RAM Display Start Line (0x00~0x3F)
    OLED_WR_Byte(0x81,OLED_CMD);//--set contrast control register
    OLED_WR_Byte(0xCF,OLED_CMD);// Set SEG Output Current Brightness
    OLED_WR_Byte(0xA1,OLED_CMD);//--Set SEG/Column Mapping     0xa0左右反置 0xa1正常
    OLED_WR_Byte(0xC8,OLED_CMD);//Set COM/Row Scan Direction   0xc0上下反置 0xc8正常
    OLED_WR_Byte(0xA6,OLED_CMD);//--set normal display
    OLED_WR_Byte(0xA8,OLED_CMD);//--set multiplex ratio(1 to 64)
    OLED_WR_Byte(0x3f,OLED_CMD);//--1/64 duty
    OLED_WR_Byte(0xD3,OLED_CMD);//-set display offset        Shift Mapping RAM Counter (0x00~0x3F)
    OLED_WR_Byte(0x00,OLED_CMD);//-not offset
    OLED_WR_Byte(0xd5,OLED_CMD);//--set display clock divide ratio/oscillator frequency
    OLED_WR_Byte(0x80,OLED_CMD);//--set divide ratio, Set Clock as 100 Frames/Sec
    OLED_WR_Byte(0xD9,OLED_CMD);//--set pre-charge period
    OLED_WR_Byte(0xF1,OLED_CMD);//Set Pre-Charge as 15 Clocks & Discharge as 1 Clock
    OLED_WR_Byte(0xDA,OLED_CMD);//--set com pins hardware configuration
    OLED_WR_Byte(0x12,OLED_CMD);
    OLED_WR_Byte(0xDB,OLED_CMD);//--set vcomh
    OLED_WR_Byte(0x40,OLED_CMD);//Set VCOM Deselect Level
    OLED_WR_Byte(0x20,OLED_CMD);//-Set Page Addressing Mode (0x00/0x01/0x02)
    OLED_WR_Byte(0x02,OLED_CMD);//
    OLED_WR_Byte(0x8D,OLED_CMD);//--set Charge Pump enable/disable
    OLED_WR_Byte(0x14,OLED_CMD);//--set(0x10) disable
    OLED_WR_Byte(0xA4,OLED_CMD);// Disable Entire Display On (0xa4/0xa5)
    OLED_WR_Byte(0xA6,OLED_CMD);// Disable Inverse Display On (0xa6/a7)
    OLED_Clear();
    OLED_WR_Byte(0xAF,OLED_CMD);
}

將lcd_init.h中的 OLED端口定義 宏。進(jìn)行修改!

//-----------------OLED端口定義----------------

#define OLED_SCL_Clr() GPIO_WritePin(OLED_GPIO_PORT,OLED_SCL_PIN,GPIO_Pin_RESET)//SCL
#define OLED_SCL_Set() GPIO_WritePin(OLED_GPIO_PORT,OLED_SCL_PIN,GPIO_Pin_SET)

#define OLED_SDA_Clr() GPIO_WritePin(OLED_GPIO_PORT,OLED_SDA_PIN,GPIO_Pin_RESET)//SDA
#define OLED_SDA_Set() GPIO_WritePin(OLED_GPIO_PORT,OLED_SDA_PIN,GPIO_Pin_SET)

//#define OLED_RES_Clr() GPIO_ResetBits(GPIOA,GPIO_Pin_2)//RES
//#define OLED_RES_Set() GPIO_SetBits(GPIOA,GPIO_Pin_2)

wKgZO2ggXXyAXMZ9AAD8yNZ-M10021.jpg

原來(lái)端口定義

wKgZPGggXXyAY-zMAAQ5x99yHGc913.jpg

修改后端口定義

打開(kāi)oled.c文件 找到 void IIC_delay(void) 函數(shù),將里面的內(nèi)容替換為

/**********************************************************
 * 函 數(shù) 名 稱(chēng):IIC_delay
 * 函 數(shù) 功 能:延時(shí)
 * 傳 入 參 數(shù):無(wú)
 * 函 數(shù) 返 回:無(wú)
 * 作       者:www.lckfb.com
 * 備       注:
**********************************************************/
void IIC_delay(void)
{
        delay_us(5);
}

四. 移植驗(yàn)證?

在main.c中輸入代碼如下

/*
 * 立創(chuàng)開(kāi)發(fā)板軟硬件資料與相關(guān)擴(kuò)展板軟硬件資料官網(wǎng)全部開(kāi)源
 * 開(kāi)發(fā)板官網(wǎng):www.lckfb.com
 * 技術(shù)支持常駐論壇,任何技術(shù)問(wèn)題歡迎隨時(shí)交流學(xué)習(xí)
 * 立創(chuàng)論壇:https://oshwhub.com/forum
 * 關(guān)注bilibili賬號(hào):【立創(chuàng)開(kāi)發(fā)板】,掌握我們的最新動(dòng)態(tài)!
 * 不靠賣(mài)板賺錢(qián),以培養(yǎng)中國(guó)工程師為己任
 * Change Logs:
 * Date           Author       Notes
 * 2024-06-18     LCKFB-LP    first version
 */
#include "board.h"
#include "stdio.h"
#include "bsp_uart.h"
#include "oled.h"

int32_t main(void)
{
    board_init();        // 開(kāi)發(fā)板初始化

    uart1_init(115200);        // 串口1波特率115200

    OLED_Init();     //初始化OLED
    OLED_Clear();

    while(1)
    {
        OLED_ShowString(0,0,(uint8_t *)"ABC",8,1);//6*8 “ABC”
        OLED_ShowString(0,8,(uint8_t *)"ABC",12,1);//6*12 “ABC”
        OLED_ShowString(0,20,(uint8_t *)"ABC",16,1);//8*16 “ABC”
        OLED_ShowString(0,36,(uint8_t *)"ABC",24,1);//12*24 “ABC”
        OLED_Refresh();
        delay_ms(100);

    }
}

上電效果:

wKgZO2ggXX2AE4fXAAH31cha-0A982.jpg

模塊移植成功案例代碼:

鏈接:https://pan.baidu.com/s/1YnMyfuDg7ax4LpDQ028dWQ?pwd=LCKF 提取碼:LCKF

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 移植
    +關(guān)注

    關(guān)注

    1

    文章

    394

    瀏覽量

    28583
  • IIC
    IIC
    +關(guān)注

    關(guān)注

    11

    文章

    306

    瀏覽量

    39196
  • CW32
    +關(guān)注

    關(guān)注

    1

    文章

    242

    瀏覽量

    1105
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    CW32移植Free-RTOS】CW32開(kāi)發(fā)者扶持計(jì)劃

    CW32配置Free-RTOS全過(guò)程,CW32開(kāi)發(fā)者扶持計(jì)劃
    的頭像 發(fā)表于 04-18 09:38 ?6574次閱讀
    【<b class='flag-5'>CW32</b>移植Free-RTOS】<b class='flag-5'>CW32</b>開(kāi)發(fā)者扶持計(jì)劃

    CW32快速開(kāi)發(fā)入門(mén)

    CW32快速開(kāi)發(fā)入門(mén)
    的頭像 發(fā)表于 04-24 18:56 ?2627次閱讀
    <b class='flag-5'>CW32</b>快速開(kāi)發(fā)入門(mén)

    CW32開(kāi)發(fā)者扶持計(jì)劃#CW32 #芯片

    CW32
    CW32生態(tài)社區(qū)
    發(fā)布于 :2023年05月24日 16:56:14

    基于 SPI 協(xié)議在 0.96 OLED上

    硬件——0.96OLED顯示模塊0.91 1.3液晶供原理圖12864
    發(fā)表于 11-30 08:26

    0.96IIC通訊OLED顯示時(shí)有時(shí)無(wú)的原因?怎么解決?

    最近使用0.96IIC的OLED顯示 突然發(fā)現(xiàn)有的時(shí)候,上電以后顯示不會(huì)亮,但有時(shí)候就沒(méi)事,一直用的相同的程序,不知道啥子問(wèn)題,板子給
    發(fā)表于 10-08 15:04

    0.96_OLED顯示_arduino_IIC_例程

    0.96OLED顯示_arduino_IIC_例程.rar
    發(fā)表于 07-11 18:43 ?96次下載

    0.96單色OLED驅(qū)動(dòng)板電路原理圖免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是0.96單色OLED驅(qū)動(dòng)板電路原理圖免費(fèi)下載。
    發(fā)表于 07-23 08:00 ?44次下載
    <b class='flag-5'>0.96</b><b class='flag-5'>寸</b><b class='flag-5'>單色</b>OLED驅(qū)動(dòng)板電路原理圖免費(fèi)下載

    利用51單片機(jī)+0.96iic接口oled顯示圖片或動(dòng)圖

    ~利用51單片機(jī)+0.96iic接口oled顯示圖片或動(dòng)圖
    發(fā)表于 11-10 17:21 ?34次下載
    利用51單片機(jī)+<b class='flag-5'>0.96</b><b class='flag-5'>寸</b><b class='flag-5'>iic</b>接口oled顯示圖片或動(dòng)圖

    基于 SPI 協(xié)議在 0.96 OLED上【平滑顯示漢字】及【溫濕度數(shù)據(jù)采集顯示】

    硬件——0.96OLED顯示模塊0.91 1.3液晶供原理圖12864
    發(fā)表于 11-21 18:21 ?20次下載
    基于 SPI 協(xié)議在 <b class='flag-5'>0.96</b> <b class='flag-5'>寸</b> OLED上【平滑顯示漢字】及【溫濕度數(shù)據(jù)采集顯示】

    cw32和stm32的區(qū)別

    cw32和stm32的區(qū)別 CW32和STM32是兩種常見(jiàn)的單片機(jī),被廣泛應(yīng)用于各種電子設(shè)備中。在本文中,我們將深入探討CW32和STM32之間的區(qū)別和優(yōu)劣勢(shì)。 1. 硬件性能 硬件性能是衡量單片機(jī)
    的頭像 發(fā)表于 08-16 11:15 ?5302次閱讀

    基于CW32的RC522刷卡模塊的應(yīng)用

    基于CW32的RC522刷卡模塊的應(yīng)用
    的頭像 發(fā)表于 11-02 14:53 ?1601次閱讀
    基于<b class='flag-5'>CW32</b>的RC522刷卡<b class='flag-5'>模塊</b>的應(yīng)用

    基于CW32的物聯(lián)網(wǎng)應(yīng)用

    CW32】基于CW32的物聯(lián)網(wǎng)應(yīng)用
    的頭像 發(fā)表于 11-02 15:55 ?1138次閱讀
    基于<b class='flag-5'>CW32</b>的物聯(lián)網(wǎng)應(yīng)用

    基于CW32的遙控循跡小車(chē)

    本實(shí)驗(yàn)是使用CW32單片機(jī)制作一個(gè)入門(mén)的遙控循跡小車(chē)。遙控采用藍(lán)牙配合手機(jī)APP進(jìn)行遙控。循跡使用一個(gè)5路的循跡模塊。使用OLED模塊進(jìn)行顯示當(dāng)前小車(chē)狀態(tài)。
    的頭像 發(fā)表于 11-17 17:46 ?1363次閱讀
    基于<b class='flag-5'>CW32</b>的遙控循跡小車(chē)

    【外設(shè)移植】0.96IIC單色+Ai-M61開(kāi)發(fā)板

    本作品由安信可社區(qū)用戶(hù) 沈夜 制作 ? 01外設(shè)介紹 先來(lái)介紹下0.96OLED顯示(驅(qū)動(dòng)芯片:SSD1306 / SSD1315) [color=rgba(0, 0, 0, 0.87
    的頭像 發(fā)表于 02-26 09:54 ?3792次閱讀
    【外設(shè)移植】<b class='flag-5'>0.96</b><b class='flag-5'>寸</b><b class='flag-5'>IIC</b><b class='flag-5'>單色</b><b class='flag-5'>屏</b>+Ai-M61開(kāi)發(fā)板

    CW32模塊使用】0.96SPI單色

    硬件SPI與軟件SPI相比,硬件SPI是靠硬件上面的SPI控制器,所有的時(shí)鐘邊緣采樣,時(shí)鐘發(fā)生,還有時(shí)序控制,都是由硬件完成的。它降低了CPU的使用率,提高了運(yùn)行速度。軟件SPI就是用代碼控制IO輸出高低電平,模擬SPI的時(shí)序,這種方法通信速度較慢,且不可靠。
    的頭像 發(fā)表于 03-29 17:29 ?2001次閱讀
    【<b class='flag-5'>CW32</b><b class='flag-5'>模塊</b>使用】<b class='flag-5'>0.96</b><b class='flag-5'>寸</b>SPI<b class='flag-5'>單色</b><b class='flag-5'>屏</b>