更新
This commit is contained in:
		| @@ -8,15 +8,17 @@ | ||||
|  | ||||
| #ifndef __ABS_DRIVE_OLED_H | ||||
| #define __ABS_DRIVE_OLED_H | ||||
|  | ||||
| //#include "stdlib.h"	 | ||||
| #include "stdint.h" | ||||
| #include "stdlib.h" | ||||
|  | ||||
|  | ||||
| /**************************配置区(BEGIN)***************************/ | ||||
| /*------------你的头文件(BEGIN)----------------*/ | ||||
| #include "spi.h" | ||||
| #include "gpio.h" | ||||
| #include "main.h" | ||||
| /*------------你的头文件(END)------------------*/ | ||||
|  | ||||
|  | ||||
| /**************************配置区***************************/ | ||||
| /*----1、选择驱动芯片----*/ | ||||
| /* | ||||
| 根据你的OLED屏幕选择其中一种 | ||||
| @@ -51,23 +53,31 @@ | ||||
| #define Enable_ABS_OLED_RES | ||||
|  | ||||
|  | ||||
| /**************************配置区***************************/ | ||||
| /**************************配置区(END)***************************/ | ||||
|  | ||||
| /*----------------------------------------------分割线(以下内容非开发人员切勿改动)---------------------------------------------------------*/ | ||||
|  | ||||
|  | ||||
|  | ||||
| #define OLED_CMD  0	 | ||||
| #define OLED_DATA 1	 | ||||
|  | ||||
|  | ||||
| /*************************数据定义区*****************************/ | ||||
| /*************************数据定义区(BEGIN)*****************************/ | ||||
|  | ||||
| #define u8 uint8_t | ||||
| #define u16 uint16_t | ||||
| #define u32 uint32_t | ||||
|  | ||||
|  | ||||
| typedef struct _ABS_OLED_Drive{ | ||||
| 	void (*ShowString)(u8 x,u8 y,char *chr,u8 size1,u8 mode); | ||||
| 	void (*ShowNum)(u8 x,u8 y,u32 num,u8 len,u8 size1,u8 mode); | ||||
| 	void (*ShowChinese)(u8 x,u8 y,u8 num,u8 size1,u8 mode); | ||||
| 	 | ||||
| 	void (*DrawPoint)(u8 x,u8 y,u8 t); | ||||
| 	void (*DrawLine)(u8 x1,u8 y1,u8 x2,u8 y2,u8 mode); | ||||
| 	void (*DrawCircle)(u8 x,u8 y,u8 r); | ||||
| 	void (*ShowImage)(u8 x,u8 y,u8 sizex,u8 sizey,u8 BMP[],u8 mode); | ||||
| 	 | ||||
| 	void (*Clear)(void); | ||||
| 	void (*Refresh)(void); | ||||
| }	ABS_OLED_Drive; | ||||
|  | ||||
| /* | ||||
| *OLED的状态 | ||||
| @@ -76,9 +86,9 @@ typedef enum _OLED_STATE{ | ||||
| 	ABS_OLED_OK 					=0x00U,			//状态正确 | ||||
| 	ABS_OLED_ERROR				=0x01U,			//状态异常 | ||||
| } AbsDriveOLED_STATE; | ||||
| /*************************数据定义区*****************************/ | ||||
| /*************************数据定义区(END)*******************************/ | ||||
|  | ||||
| /***********************命令区*****************************/ | ||||
| /***********************命令区(BEGIN)*****************************/ | ||||
| #if (defined ABS_SSD1306)||(defined ABS_SSD1315) | ||||
| //设置类 | ||||
| //-------基本命令-------------- | ||||
| @@ -97,31 +107,35 @@ typedef enum _OLED_STATE{ | ||||
| 	#define CMD_SetColumnAddr_OLED							0x21	//设置列开始和结束地址 | ||||
| 	 | ||||
| #endif | ||||
| /***********************命令区*****************************/ | ||||
| /***********************命令区(END)*******************************/ | ||||
|  | ||||
|  | ||||
| /***********************函数区*****************************/ | ||||
| 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 OLED_DisPlay_On(void); | ||||
| void OLED_DisPlay_Off(void); | ||||
| /***********************函数区(BEGIN)*****************************/ | ||||
| void ABS_OLED_ClearPoint(u8 x,u8 y); | ||||
| void ABS_OLED_ColorTurn(u8 i); | ||||
| void ABS_OLED_DisplayTurn(u8 i); | ||||
| void ABS_OLED_DisPlay_On(void); | ||||
| void ABS_OLED_DisPlay_Off(void); | ||||
| void ABS_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_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 ABS_OLED_Clear(void); | ||||
| void ABS_OLED_DrawPoint(u8 x,u8 y,u8 t); | ||||
| void ABS_OLED_DrawLine(u8 x1,u8 y1,u8 x2,u8 y2,u8 mode); | ||||
| void ABS_OLED_DrawCircle(u8 x,u8 y,u8 r); | ||||
| void ABS_OLED_ShowChar(u8 x,u8 y,u8 chr,u8 size1,u8 mode); | ||||
| void ABS_OLED_ShowString(u8 x,u8 y,char *chr,u8 size1,u8 mode); | ||||
| void ABS_OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 size1,u8 mode); | ||||
| void ABS_OLED_ShowChinese(u8 x,u8 y,u8 num,u8 size1,u8 mode); | ||||
| void ABS_OLED_ScrollDisplay(u8 num,u8 space,u8 mode); | ||||
| void ABS_OLED_ShowPicture(u8 x,u8 y,u8 sizex,u8 sizey,u8 BMP[],u8 mode); | ||||
| void ABS_OLED_Init(void); | ||||
|  | ||||
| ABS_OLED_Drive Create_OLED(void);													//创建OLED设备 | ||||
| /***********************函数区(END)*******************************/ | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| #endif				//__ABS_DRIVE_OLED_H | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user