女人被爽到高潮视频免cn费95,久久99精品久久久久久久不卡,内射人妻骚骚骚,久久精品一区二区三区四区啪啪 ,美女视频黄频a美女大全

  • 正文
    • 一、模塊來源>>>
    • 二、規(guī)格參數(shù)>>>
    • 三、移植過程>>>
    • 四移植驗(yàn)證>>>
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

【CW32模塊使用】0.91寸彩屏

05/21 10:53
306
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

一、模塊來源>>>

產(chǎn)品實(shí)物展示:

資料下載鏈接:https://pan.baidu.com/s/1fKmD5lr4bA0WB54ukonI-A

資料提取碼:1111

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

以下信息見廠家資料屏幕規(guī)格書。

工作電壓:3~5V

工作電流:最大16mA

模塊尺寸:12(H) x 38(V) MM

像素大?。?28(H) x 32(V)

驅(qū)動芯片:SSD1306

通信協(xié)議IIC

工作電流:最大16mA

模塊尺寸:12(H) x 38(V) MM

像素大?。?28(H) x 32(V)

驅(qū)動芯片:SSD1306

通信協(xié)議:IIC

三、移植過程>>>

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

將源碼導(dǎo)入工程;根據(jù)編譯報錯處進(jìn)行粗改;修改引腳配置;修改時序配置;移植驗(yàn)證。

3.1查看資料

打開廠家資料例程(例程下載見?例程下載)。具體路徑見?例程路徑

例程路徑

3.2移植至工程

將廠家資料路徑下的【OLED】文件夾,復(fù)制到自己的工程中。自己的工程至少需要有毫秒級延時函數(shù)。(工程可以參考空白工程下載)

打開自己的工程,將我們剛剛復(fù)制過來的文件導(dǎo)入.c和.h文件。

將 oled.h 文件下的 stm32f0xx.h 改為 board.h。

(在左邊將 oled.c 的工程目錄展開,就發(fā)現(xiàn)有oled.h)

修改oled.h頭文件

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

修改oled.c頭文件

3.3引腳選擇

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

3.4軟件SPI移植

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

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

為了方便后續(xù)移植,我在oled.h?處宏定義了每一個引腳,后續(xù)根據(jù)需要進(jìn)行修改即可。

//-----------------OLED端口移植----------------//GND - GND//VCC - 3.3V//SCL - PA2//SDA - PA0
#define?RCC_GPIO_ENABLE() ? __RCC_GPIOC_CLK_ENABLE()
#define?PORT_LCD ? ? ? ? ? ?CW_GPIOA
//SCL#define?GPIO_LCD_SCL ? ? ? ?GPIO_PIN_2//SDA#define?GPIO_LCD_SDA ? ? ? ?GPIO_PIN_0

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

//OLED的初始化void?OLED_Init(void){? ? ? ? GPIO_InitTypeDef GPIO_InitStruct;?// GPIO初始化結(jié)構(gòu)體
? ? ? ??RCC_GPIO_ENABLE(); ? ? ? ?// 使能GPIO時鐘
? ? ? ? GPIO_InitStruct.Pins?=?GPIO_LCD_SCL|GPIO_LCD_SDA; ? ? ? ?// GPIO引腳? ? ? ? GPIO_InitStruct.Mode?=?GPIO_MODE_OUTPUT_PP; ? ? ? ? ? ? ?// 推挽輸出? ? ? ? GPIO_InitStruct.Speed?=?GPIO_SPEED_HIGH; ? ? ? ? ? ? ? ??// 輸出速度高? ? ? ??GPIO_Init(PORT_LCD, &GPIO_InitStruct); ? ? ? ? ? ? ? ? ??// 初始化
? ? ? ??delay_ms(200);

? ? ? ??OLED_WR_Byte(0xAE,OLED_CMD);?/*display off*/? ? ? ??OLED_WR_Byte(0x00,OLED_CMD);?/*set lower column address*/? ? ? ??OLED_WR_Byte(0x10,OLED_CMD);?/*set higher column address*/? ? ? ??OLED_WR_Byte(0x00,OLED_CMD);?/*set display start line*/? ? ? ??OLED_WR_Byte(0xB0,OLED_CMD);?/*set page address*/? ? ? ??OLED_WR_Byte(0x81,OLED_CMD);?/*contract control*/? ? ? ??OLED_WR_Byte(0xff,OLED_CMD);?/*128*/? ? ? ??OLED_WR_Byte(0xA1,OLED_CMD);?/*set segment remap*/? ? ? ??OLED_WR_Byte(0xA6,OLED_CMD);?/*normal / reverse*/? ? ? ??OLED_WR_Byte(0xA8,OLED_CMD);?/*multiplex ratio*/? ? ? ??OLED_WR_Byte(0x1F,OLED_CMD);?/*duty = 1/32*/? ? ? ??OLED_WR_Byte(0xC8,OLED_CMD);?/*Com scan direction*/? ? ? ??OLED_WR_Byte(0xD3,OLED_CMD);?/*set display offset*/? ? ? ??OLED_WR_Byte(0x00,OLED_CMD);? ? ? ??OLED_WR_Byte(0xD5,OLED_CMD);?/*set osc division*/? ? ? ??OLED_WR_Byte(0x80,OLED_CMD);? ? ? ??OLED_WR_Byte(0xD9,OLED_CMD);?/*set pre-charge period*/? ? ? ??OLED_WR_Byte(0x1f,OLED_CMD);? ? ? ??OLED_WR_Byte(0xDA,OLED_CMD);?/*set COM pins*/? ? ? ??OLED_WR_Byte(0x00,OLED_CMD);? ? ? ??OLED_WR_Byte(0xdb,OLED_CMD);?/*set vcomh*/? ? ? ??OLED_WR_Byte(0x40,OLED_CMD);? ? ? ??OLED_WR_Byte(0x8d,OLED_CMD);?/*set charge pump enable*/? ? ? ??OLED_WR_Byte(0x14,OLED_CMD);? ? ? ??OLED_Clear();? ? ? ??OLED_WR_Byte(0xAF,OLED_CMD);?/*display ON*/}

lcd_init.h中的?OLED端口定義?宏,修改為:

//-----------------OLED端口定義----------------#define?OLED_SCL_Clr() ? ?GPIO_WritePin(PORT_LCD, GPIO_LCD_SCL, GPIO_Pin_RESET)//SCL#define?OLED_SCL_Set() ? ?GPIO_WritePin(PORT_LCD, GPIO_LCD_SCL, GPIO_Pin_SET)//SCL#define?OLED_SDA_Clr() ? ?GPIO_WritePin(PORT_LCD, GPIO_LCD_SDA, GPIO_Pin_RESET)//SDA#define?OLED_SDA_Set() ? ?GPIO_WritePin(PORT_LCD, GPIO_LCD_SDA, GPIO_Pin_SET)//SDA

源端口定義

修改后端口定義

打開oled.c 文件,找到 void IIC_delay(void) 函數(shù),修改為

//延時void?IIC_delay(void){? ? ? ??delay_us(2);}

移植驗(yàn)證>>>

在main.c中輸入代碼如下

/*?* 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(); ? ? ? ?// 開發(fā)板初始化? ??uart1_init(115200); ? ? ? ?// 串口1波特率115200? ??OLED_Init(); ?//初始化OLED? ??OLED_Clear();? ??OLED_Refresh();? ??while(1)? ? {? ? ? ??OLED_ShowString(0,0,(uint8_t?*)"ABC",8,1);//6*8 “ABC”? ? ? ??OLED_ShowString(10,8,(uint8_t?*)"ABC",12,1);//6*12 “ABC”? ? ? ??OLED_ShowString(20,18,(uint8_t?*)"ABC",16,1);//8*16 “ABC”? ? ? ??OLED_ShowString(60,36,(uint8_t?*)"ABC",24,1);//12*24 “ABC”? ? ? ??OLED_Refresh();? ? ? ??delay_ms(500);? ? }}

上電效果:

移植成功案例代碼:

鏈接:https://pan.baidu.com/s/10HdOiMl6pTdMaBzueuqlNQ?pwd=LCKF

提取碼:LCKF

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄

以開放、共享、互助為理念,致力于構(gòu)建武漢芯源半導(dǎo)體CW32系列MCU生態(tài)社區(qū)。無論是嵌入式MCU小自還是想要攻破技術(shù)難題的工程師,亦或是需求解決方案的產(chǎn)品經(jīng)理都可在CW32生態(tài)社區(qū)汲取營養(yǎng)、共同成長。