69 lines
1.9 KiB
C
Raw Blame History

#ifndef __OLED_H
#define __OLED_H
//#include "driver_gpio.h"
//#include "driver_system.h"
//#include "sys_utils.h"
#include "typedef.h"
#include "gpio_pub.h"
//typedef unsigned char u8;
//typedef int u32;
//typedef short u16;
//-----------------OLED<45>˿ڶ<CBBF><DAB6><EFBFBD>----------------
#include "gpio.h"
#include "typedef.h"
#include "rtdef.h"
#include "drv_iic.h"
#define OLED_I2C_SCK_PIN 20
#define OLED_I2C_SDA_PIN 21
#define OLED_I2C_SCK_H bk_gpio_output(OLED_I2C_SCK_PIN, 1)
#define OLED_I2C_SCK_L bk_gpio_output(OLED_I2C_SCK_PIN, 0)
#define OLED_I2C_SDA_H bk_gpio_output(OLED_I2C_SDA_PIN, 1)
#define OLED_I2C_SDA_L bk_gpio_output(OLED_I2C_SDA_PIN, 0)
#define OLED_CMD 0 //д<><D0B4><EFBFBD><EFBFBD>
#define OLED_DATA 1 //д<><D0B4><EFBFBD><EFBFBD>
#define MAX_COLUMN 72
#define MAX_ROW 40
void OLED_ClearPoint(u8 x,u8 y);
void OLED_ColorTurn(u8 i);
void OLED_DisplayTurn(u8 i);
void I2C_Start(void);
void I2C_Stop(void);
void I2C_WaitAck(void);
void Send_Byte(u8 dat);
void OLED_WR_Byte(u8 dat,u8 mode);
void OLED_DisPlay_On(void);
void OLED_DisPlay_Off(void);
void OLED_Refresh(void);
void OLED_Clear(void);
void OLED_DrawPoint(u8 x,u8 y,u8 t);
void OLED_DrawLine(u8 x1,u8 y1,u8 x2,u8 y2,u8 mode);
void OLED_DrawCircle(u8 x,u8 y,u8 r);
void OLED_DrawFilledCircle(u8 x0, u8 y0, u8 r, u8 c);
void OLED_ShowChar(u8 x,u8 y,u8 chr,u8 size1,u8 mode);
void OLED_ShowChar6x8(u8 x,u8 y,u8 chr,u8 mode);
void OLED_ShowString(u8 x,u8 y,u8 *chr,u8 size1,u8 mode);
void OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 size1,u8 mode);
void OLED_ShowChinese(u8 x,u8 y,u8 num,u8 size1,u8 mode);
void OLED_ScrollDisplay(u8 num,u8 space,u8 mode);
void OLED_ShowPicture(u8 x,u8 y,u8 sizex,u8 sizey,u8 BMP[],u8 mode);
void OLED_Init(void);
void OLED_ShowCharge(u8 x,u8 y,u8 const *ptr,u8 size1,u8 mode);
void OLED_ShowBat(u8 x,u8 y,u8 size1,u8 mode);
void oled_show_battery(u8 battery_lev,u8 charge_sta);
#endif