CCS-MSPM0G3507-6-模块篇-OLED的移植
前言
基础篇结束,接下来我们来开始进行模块驱动
如果懂把江科大的OLED移植成HAL库,那其实也没什么难
首先配置OLED的引脚
这里我配置PA16和17为推挽输出,PA0和1不要用,因为只有那两个引脚能使用MPU6050
根据配置出来的引脚,我们去宏定义那边弄
OLED.h
#ifndef __OLED_H
#define __OLED_H
#include "ti_msp_dl_config.h"#define OLED_SCL DL_GPIO_PIN_17
#define OLED_SDA DL_GPIO_PIN_16void OLED_Init(void);
void OLED_Clear(void);
void OLED_ShowChar(uint8_t Line, uint8_t Column, char Char);
void OLED_ShowString(uint8_t Line, uint8_t Column, char *String);
void OLED_ShowNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length);
void OLED_ShowSignedNum(uint8_t Line, uint8_t Column, int32_t Number, uint8_t Length);
void OLED_ShowHexNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length);
void OLED_ShowBinNum(uint8_t Line, uint8_t Column, uint32_t Number, uint8_t Length);#endif
OLED.c
#include "OLED.h"
#include "OLED_Font.h"static void OLED_W_SCL(uint8_t x)
{if (x){DL_GPIO_setPins(OLED_PORT, OLED_SCL);}else{DL_GPIO_clearPins(OLED_PORT, OLED_SCL);}
}static void OLED_W_SDA(uint8_t x)
{if (x){DL_GPIO_setPins(OLED_PORT, OLED_SDA);}else{DL_GPIO_clearPins(OLED_PORT, OLED_SDA);}
}/*引脚初始化*/
void OLED_I2C_Init(void)
{OLED_W_SCL(1);OLED_W_SDA(1);
}
把OLED_I2C_Start前面的这样修改就OK了
然后初始化调用就OK了