79 lines
2.1 KiB
C
79 lines
2.1 KiB
C
|
||
#ifndef __OLED_H
|
||
#define __OLED_H
|
||
|
||
#include "system/includes.h"
|
||
#include "generic/log.h"
|
||
#include "os/os_api.h"
|
||
#include "device/gpio.h"
|
||
|
||
//中景元原厂OLED,OLED数据线IO配置
|
||
#define OLED_CLK_IO IO_PORTA_09
|
||
#define OLED_SDA_IO IO_PORTA_10
|
||
|
||
#define OLED_MODE 0
|
||
#define SIZE 8
|
||
#define XLevelL 0x00
|
||
#define XLevelH 0x10
|
||
#define Max_Column 128
|
||
#define Max_Row 64
|
||
#define Brightness 0xFF
|
||
#define X_WIDTH 128
|
||
#define Y_WIDTH 64
|
||
|
||
#define OLED_CMD 0 //写命令
|
||
#define OLED_DATA 1 //写数据
|
||
|
||
void oled_gpio_init(void);
|
||
void oled_sclk_init(void);
|
||
void oled_sdi_init(void);
|
||
void oled_sdi_set(char val);
|
||
void oled_sclk_set(char val);
|
||
|
||
#define OLED_GPIO_INIT() oled_gpio_init()
|
||
|
||
#define OLED_SCLK_INIT() oled_sclk_init()
|
||
#define OLED_SCLK_Set() oled_sclk_set(1)
|
||
#define OLED_SCLK_Clr() oled_sclk_set(0)
|
||
|
||
#define OLED_SDIN_INIT() oled_sdi_init()
|
||
#define OLED_SDIN_Clr() oled_sdi_set(0)
|
||
#define OLED_SDIN_Set() oled_sdi_set(1)
|
||
|
||
#define Delay_50ms() os_time_dly(5) //延时函数
|
||
|
||
//OLED控制用函数
|
||
void OLED_WR_Byte(unsigned char dat, unsigned char cmd);
|
||
void OLED_Display_On(void);
|
||
void OLED_Display_Off(void);
|
||
void OLED_Init(void);
|
||
void OLED_Clear(void);
|
||
void OLED_DrawPoint(u8 x, u8 y, u8 t);
|
||
void OLED_Fill(u8 x1, u8 y1, u8 x2, u8 y2, u8 dot);
|
||
void OLED_ShowChar(u8 x, u8 y, u8 chr, u8 Char_Size);
|
||
void OLED_ShowNum(u8 x, u8 y, u32 num, u8 len, u8 size);
|
||
void OLED_ShowString(u8 x, u8 y, u8 *p, u8 Char_Size);
|
||
void OLED_Set_Pos(unsigned char x, unsigned char y);
|
||
void OLED_ShowCHineseString(u8 x, u8 y, u8 start_num, u8 num);
|
||
void OLED_Show_Chinese(u16 x, u16 y, u8 *str, u8 size);
|
||
void OLED_Show_Chinese_Just(u16 x, u16 y, u8 *str, u8 size);
|
||
void OLED_ShowCHinese(u8 x, u8 y, u8 no);
|
||
void OLED_DrawBMP(unsigned char x0, unsigned char y0, unsigned char x1, unsigned char y1, unsigned char BMP[]);
|
||
void fill_picture(unsigned char fill_Data);
|
||
void Picture(void);
|
||
void IIC_Start(void);
|
||
void IIC_Stop(void);
|
||
void Write_IIC_Command(unsigned char IIC_Command);
|
||
void Write_IIC_Data(unsigned char IIC_Data);
|
||
void Write_IIC_Byte(unsigned char IIC_Byte);
|
||
void IIC_Wait_Ack(void);
|
||
void OLED_Task(void);
|
||
void OLED_ShowSpectrum(u8 x, u8 y);
|
||
|
||
#endif
|
||
|
||
|
||
|
||
|
||
|