STC51 单片机+1.3“ IIC SH1106基本图形功能显示示例
Posted perseverance52
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STC51 单片机+1.3“ IIC SH1106基本图形功能显示示例相关的知识,希望对你有一定的参考价值。
STC51单片机 +1.3“ IIC SH1106基本图形功能显示示例
- ✨显示界面
🌿基于51单片机,在OLED原厂家提供的驱动程序中添加上基本的画点和画线的绘图函数,方便工程可移植性和扩展性。其他复杂图形的开发可以在此基础上完成。由于51单片机容量的局限,让工程尽可能多的兼容能在小容量单片机当中运行,没有往工程里面补充更多的绘图函数,如有需求在硬件资源允许的条件下,可以自行在里面根据基本的点、线进行构建。
📌1.3寸OLEDSH1106驱动资料包
链接:https://pan.baidu.com/s/1FNGHM0u5MQ2li3QOrTkTuA
提取码:8888
📝图形功能显示相关函数
void OLED_ShowChar(u8 x,u8 y,u8 chr,u8 sizey);//单字符显示
void OLED_ShowNum(u8 x,u8 y,u32 num,u8 len,u8 sizey);//u32整型数字显示
void OLED_ShowString(u8 x,u8 y,u8 *chr,u8 sizey);//英文字符串显示
void OLED_ShowChinese(u8 x,u8 y,u8 no,u8 sizey);//汉字取模显示
void OLED_DrawBMP(u8 x,u8 y,u8 sizex, u8 sizey,u8 BMP[]);//图片显示
void DrawPixel(unsigned char x0,unsigned char y0);//描点
void Draw_Hline(u8 x0,u8 x,u8 y0);//绘制水平线
void Draw_Vline(u8 y0,u8 y,u8 x0);//绘制垂直线
void Drawline(int x1,int y1,int x2,int y2);//画任意线
📍工程编译后的容量信息
不包含图片取模内容
- 汉字取模方式和软件
pctolcd2002
📑主程序代码
//
//本程序只供学习使用,未经作者许可,不得用于其它任何用途
//中景园电子
//店铺地址:http://shop73023976.taobao.com/?spm=2013.1.0.0.M4PqC2
//
// 文 件 名 : main.c
// 版 本 号 : v2.0
// 作 者 : HuangKai
// 生成日期 : 2014-0101
// 最近修改 :
// 功能描述 : OLED 4接口演示例程(51系列)
// 说明:
// ----------------------------------------------------------------
// GND 电源地
// VCC 接5V或3.3v电源
// SCL P10(SCL)
// SDA P11(SDA)
// RES P12 注:SPI接口显示屏改成IIC接口时需要接RES引脚
// IIC接口显示屏用户请忽略
// ----------------------------------------------------------------
// 修改历史 :
// 日 期 :
// 作 者 : HuangKai
// 修改内容 : 创建文件
//版权所有,盗版必究。
//Copyright(C) 中景园电子2014/3/16
//All rights reserved
//******************************************************************************/
#include "REG51.h"
#include "oled.h"
#include "bmp.h"
int main(void)
// u8 t=' ';
OLED_Init();//初始化OLED
OLED_ColorTurn(0);//0正常显示,1 反色显示
OLED_DisplayTurn(0);//0正常显示 1 屏幕翻转显示
DrawPixel(15,32);//画点
DrawPixel(22,45);
// Draw_Hline(0,128,63);//水平线
Draw_Hline(0,128,60);//水平线
// Draw_Hline(0,127,55);//水平线
Draw_Vline(20,63,5);//垂直线
Drawline(36,30,85,45);//任意线
OLED_ShowChinese(0,0,0,16);//单
OLED_ShowChinese(18,0,1,16);//片
OLED_ShowChinese(36,0,2,16);//机
OLED_ShowChinese(54,0,3,16);//嵌
OLED_ShowChinese(72,0,4,16);//入
OLED_ShowChinese(90,0,5,16);//式
while(1)
// OLED_DrawBMP(0,0,128,64,BMP1);
// delay_ms(500);
// OLED_Clear();
// OLED_ShowString(8,2,"ZHONGJINGYUAN",16);
// OLED_ShowString(20,4,"2014/05/01",16);
// OLED_ShowString(0,6,"ASCII:",16);
// OLED_ShowString(63,6,"CODE:",16);
// OLED_ShowChar(48,6,t,16);
// t++;
// if(t>'~')t=' ';
// OLED_ShowNum(103,6,t,3,16);
// delay_ms(500);
// OLED_Clear();
🎯代码工程
链接:[百度网盘](https://pan.baidu.com/s/1ie0PxbBoVZtqOIes-ekPlw)
提取码:v1y9
以上是关于STC51 单片机+1.3“ IIC SH1106基本图形功能显示示例的主要内容,如果未能解决你的问题,请参考以下文章
教程如何优雅地使用vs code代替keil开发51单片机/STC单片机
教程如何优雅地使用vs code代替keil开发51单片机/STC单片机