请登录 免费注册
分享
  • 微信
  • 新浪微博
  • 人人网
  • QQ空间
  • 开心网
  • 豆瓣
会员服务
进取版 标准版 尊贵版
| 设为首页 | 收藏 | 导航 | 帮助
产品 资讯
请输入产品名称
JUKI贴片机 单极霍尔开关 pcb设备 全方位海绵 无感电容 电源供应 MDD72-16N1B-IXYS二极管
关注微信随身推
首页 电子商城 专题报道 资料中心 成功案例
词多 效果好 就选易搜宝!
杭州清达光电技术有限公司
新增产品 | 公司简介
注册时间:2009-06-24
联系人:
电话:
Email:
首页 公司简介 产品目录 公司新闻 技术文章 资料下载 成功案例 人才招聘 荣誉证书 联系我们

产品目录

特色产品
抄表160160液晶系列
适合ARDUION系统显示屏
特小字符/汉字
特大字符/汉字
电力行业专用
带温度补偿
带汉字库液晶屏
320240系列液晶
PDA液晶
超薄型
图形点阵液晶模块
单色字符液晶模组
OLED模块
OLED显示屏
TFT模块
彩屏解决方案
液晶配套产品
代理产品
日韩台代理产品
香港精电液晶
mono图形液晶显示模块
单色字符LCM模块
OLED
定制液晶
彩色液晶
香港精电液晶
日本单色产品
配件
首页 > 技术文章 > 3.5寸240128点阵OLED显示屏HGS2401281参考例程

技术文章

3.5寸240128点阵OLED显示屏HGS2401281参考例程

   3.5寸240128点阵OLED显示屏HGS2401281是清达光电提供的,这款240128宽温OLED屏有黑底黄字和黑底绿字,接口是8080 8位并口,供电电压为3.3v,的,主控IC为SSD1322主控,另外同样尺寸的也有带中文字库SPI接口/UART接口/RS232接口的款式,HGS2401281参考例程如下:

#include<reg51.h>

#include <string.h>

#include <intrins.h>

#include <math.h>

#define uchar unsigned char

#define uint unsigned int

#define DATA  P1

sbit CD  = P3^0;

sbit WR1 = P3^1;

sbit RD1 = P3^2;

sbit CS  = P3^3;

sbit RES = P3^4;

uchar RAM_data[4];

uchar INV=0;

//逐行式  顺向(高位在前)

uchar code table_88[]={};//篇幅限制 省略

uchar code table_816[]={};//篇幅限制 省略

uchar code table_1616[]={};// 篇幅限制 省略

uchar code table_3232[][128]={};//篇幅限制 省略

/******************************************************************

     延时子程序

*****************************************************************/

void uDelay(uchar n)

{

while(n--);

}

void delay(uint z)

{

uint x,y;

for(x=z;x>0;x--)

  for(y=124;y>0;y--);

}

void delay_100us(uchar z)

{

z=z*16;

while(z--);

}

/*********************************************************************

  写入指令和数据

************************************************************************/

void wr_data(uchar b) //写数据  ;

{

RD1=1;

CS=0;

CD=1;

WR1=0;

DATA=b;

//uDelay(1);

WR1=1;

//_nop_();

CS=1;

}

void wr_com(uchar com)  //写命令;

{

RD1=1;

CS=0;

CD=0;

WR1=0;

DATA=com;

WR1=1;

CS=1;

}


/*********************************************************************

  初始化函数;

************************************************************************/

void init(void)

{

     delay(50);

     RES=1;delay(1);

     RES=0;delay(1);

     RES=1;delay(1);

// 准备接受命令;

     wr_com(0xFD);

 wr_data(0x12);       /* 12H接受,16H拒绝 */

//休眠开关;

 wr_com(0xAE);   /* AEH开休眠,AF关休眠 */

// 设置列窗口;

 wr_com(0x15);

 wr_data(0x24);      

 wr_data(0x5f);            /*256列 */

//设置行窗口;

 wr_com(0x75);

 wr_data(0x00);      

 wr_data(0x7f);            /*64行 */

// 设置可逆地图;

 wr_com(0xA0);

 wr_data(0x36);        /* 选高字节在前,COM扫描反向 ,水平地址模式 */

 wr_data(0x01);      /*选双屏模式 */

// 设置起始行;

 wr_com(0xA1);

 wr_data(0x00);        /* 0 */

// 设置显示分支;

 wr_com(0xA2);    

 wr_data(0x00);            /* 无分支 */

// 设置显示模式;

 wr_com(0xA6);        /* A4H全关,A5H全开,A6H正常,A7H反显 */

 wr_com(0xA6);

// 设置反显;

     wr_com(0xA8);

  wr_data(0x00);      

  wr_data(0x7f);

// 设置部分显示;

 wr_com(0xA9);        /* A8H进入部分显示,A9H退出 */

// Vdd来源;

 wr_com(0xAB);

 wr_data(0x01);       /* 00H为外部,01H为内部 */

// 设置P1 P2 ;

 wr_com(0xB1);       /*P1=29,P2=7 */

 wr_data(0xd2);

// 设置D和Fosc;

 wr_com(0xB3);  

 //wr_data(0xe1);           /*F=9,D=1 */

 wr_data(0xf1);

// 设置显示质量和Vsl来源;

 wr_com(0xB4);  

 wr_data(0xA0);       /* A0H为外部Vsl,A2H为内部Vsl */

 wr_data(0xfd);       /*FDH为提高质量,B5H为正常 */

//设置Tp3

     wr_com(0xB6);

 wr_data(0x08);

//设置Vp2;

    wr_com(0xBB);

wr_data(0x1F);

// 设置Vcomh;

    wr_com(0xBE);

wr_data(0x06); /* Vcomh=0.86Vcc  */  

//设置GPIO;

     wr_com(0xB5);

 wr_data(0x0a);  

//设置灰度值;

 wr_com(0xB8);

 wr_data(0x0c);

 wr_data(0x18);

 wr_data(0x24);

 wr_data(0x30);

 wr_data(0x3c);

 wr_data(0x48);

 wr_data(0x54);

 wr_data(0x60);

 wr_data(0x6c);

 wr_data(0x78);

 wr_data(0x84);

 wr_data(0x90);

 wr_data(0x9c);

 wr_data(0xa8);

 wr_data(0x93);//b4  

//使能灰阶;

    wr_com(0x00);

//设置对比度;

    wr_com(0xC1);

wr_data(0x80); /* 共256级选第128级  */  

//设置SEG电流范围;

    wr_com(0xC7);

wr_data(0x0F); /* 满范围  */

//设置显示行;

    wr_com(0xCA);

wr_data(0x7F);  /* 64 */  

//设置显示质量;

    wr_com(0xD1);

wr_data(0xA2);

wr_data(0x20);

all_screen(0X00); //清屏

    wr_com(0xAF); /* 开显示  */  

}

main()

{

uchar i,j=0;

init();

for(i=0;i<8;i++)

{ j=i*16;

 show_1616(2,j,0,13); //清达光电技术有限公司显示模组

}

delay(1000);

fill(0x00); //清屏

show_3232(14,5,0,3);  //OLED

show_3232(2,37,4,10); //240*128

show_1616(10,80,0,9);//清达光电技术有限公司

show_816(6,100,0,23);//www.china-lcdmodules.com

while(1);

}

上一篇:清达光电1602SPI串口液晶屏样例程序
下一篇:EDP接口和LVDS接口区别在哪里
              
若网站内容侵犯到您的权益,请通过网站上的联系方式及时联系我们修改或删除