51单片机四脚OLED屏幕显示程序
时间: 2023-08-13 10:06:03 浏览: 209
以下是51单片机控制四脚OLED屏幕显示的程序,可以根据具体的OLED屏幕型号进行修改:
```c
#include <reg52.h>
//定义OLED屏幕的IIC控制引脚
sbit SCL=P1^0;
sbit SDA=P1^1;
//OLED屏幕初始化函数
void OLED_Init()
{
//OLED屏幕初始化的命令序列
unsigned char OLED_Init_Cmd[]={
0xAE, //关闭OLED屏幕
0x00, //设置低位列地址
0x10, //设置高位列地址
0x40, //设置起始行地址
0xB0, //设置页地址
0x81, 0xCF, //设置对比度
0xA1, //设置段重定向
0xA6, //正常显示
0xA8, 0x3F, //设置驱动路数
0xC8, //设置COM扫描方向
0xD3, 0x00, //设置显示偏移
0xD5, 0x80, //设置震荡器频率
0xD9, 0xF1, //设置预充电周期
0xDA, 0x12, //设置COM引脚硬件配置
0xDB, 0x40, //设置VCOMH电压倍率
0x8D, 0x14, //设置DC-DC开关模式
0xAF //开启OLED屏幕
};
unsigned char i;
for(i=0;i<sizeof(OLED_Init_Cmd)/sizeof(OLED_Init_Cmd[0]);i++)
{
OLED_Write_Cmd(OLED_Init_Cmd[i]); //写入初始化命令
}
}
//OLED屏幕写入数据函数
void OLED_Write_Data(unsigned char dat)
{
unsigned char i;
SCL=0;
for(i=0;i<8;i++)
{
if(dat&0x80)
{
SDA=1;
}
else
{
SDA=0;
}
SCL=1;
SCL=0;
dat<<=1;
}
}
//OLED屏幕写入命令函数
void OLED_Write_Cmd(unsigned char cmd)
{
SDA=0;
SCL=0;
SDA=0;
SCL=1;
OLED_Write_Data(cmd);
SDA=1;
}
//OLED屏幕显示字符串函数
void OLED_Show_String(unsigned char x,unsigned char y,unsigned char *str)
{
unsigned char i=0;
OLED_Write_Cmd(0xB0+y);
OLED_Write_Cmd(((x&0xf0)>>4)|0x10);
OLED_Write_Cmd(x&0x0f);
while(str[i]!='\0')
{
OLED_Write_Data(str[i]);
i++;
}
}
void main()
{
OLED_Init(); //OLED屏幕初始化
OLED_Show_String(0,0,"Hello!"); //在第0行第0列显示Hello!
while(1);
}
```
这个程序可以在51单片机上控制四脚OLED屏幕显示字符串,你可以根据需要修改程序实现其他功能。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)