#ifndef __OLED_H #define __OLED_H #include "stdlib.h" #include "stm32f10x.h" #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 //-----------------OLED IIC端口定义---------------- #define OLED_SCLK_Clr() GPIO_ResetBits(GPIOB,GPIO_Pin_2)//SCL #define OLED_SCLK_Set() GPIO_SetBits(GPIOB,GPIO_Pin_2) #define OLED_SDIN_Clr() GPIO_ResetBits(GPIOF,GPIO_Pin_10)//SDA #define OLED_SDIN_Set() GPIO_SetBits(GPIOF,GPIO_Pin_10) #define OLED_CMD 0 //写命令 #define OLED_DATA 1 //写数据 //OLED控制用函数 void OLED_WR_Byte(unsigned dat,unsigned cmd); void OLED_Display_On(void); void OLED_Display_Off(void); void OLED_Init(void);//初始化SSD1306 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_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 Delay_50ms(unsigned int Del_50ms); void Delay_1ms(unsigned int Del_1ms); void fill_picture(unsigned char fill_Data); void Picture(); void IIC_Start(); void IIC_Stop(); 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 OLED_ShowString1(u8 x,u8 y,const char *p,char size); void IIC_Wait_Ack(); void OLED_QRcode_Display(char *str,uint8_t offset,uint8_t colour);//二维码的内容和第一个点再X轴的位置 void Show_Str_Fury(u16 x,u16 y,u16 width,u16 height,u8*str,u8 size); void OLED_Refresh_Gram(void);//更新显存到OLED void OLED_Refresh_Gram1(void); #endif