找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6688|回复: 9
打印 上一主题 下一主题
收起左侧

驱动老王家的st7567 LCD12832屏

  [复制链接]
跳转到指定楼层
#
ID:836182 发表于 2020-11-25 17:10 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
到老王家买了几块12832屏,型号是sc12832010,是华之晶出的,找原厂要了产品说明,共享一下。

驱动芯片是st7567,但是是并口的,电压为3.3V。

WXT-SC12832010-V01-A3.pdf

62.97 KB, 下载次数: 52, 下载积分: 黑币 -5

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏8 分享淘帖 顶 踩
回复

使用道具 举报

9#
ID:97932 发表于 2023-7-4 15:17 | 只看该作者
我的屏 只有WR WD CS RST A0    和数据D0~D7   咋弄
回复

使用道具 举报

8#
ID:973741 发表于 2023-6-21 09:02 来自手机 | 只看该作者
写应该是rw先为0,数据赋值,rw为1写入,你去控制cs,我搞不懂怎么可能点亮,除非你rw和cs搞反了
回复

使用道具 举报

7#
ID:1085243 发表于 2023-6-20 20:56 | 只看该作者
请问en接哪个,是6pin E吗?我试了一下你的程序,无法点亮。不知道什么原因。
回复

使用道具 举报

6#
ID:278457 发表于 2021-12-16 02:50 | 只看该作者
小伙子,你的代码有点错误,第一没有延时函数,(不知道是不是你特意隐藏了),所以会闪屏.
回复

使用道具 举报

5#
ID:216379 发表于 2021-8-6 07:02 | 只看该作者
这个能否改成串品用?
回复

使用道具 举报

地板
ID:151348 发表于 2020-12-26 12:45 | 只看该作者
生命在于折腾。
这个群这样的帖子不多见啊,关注的人少,一乐、矿石倒是不错
回复

使用道具 举报

板凳
ID:229641 发表于 2020-12-15 08:52 来自手机 | 只看该作者
并口屏…蛋疼了…那个etc的不知道被谁一口闷了…
回复

使用道具 举报

沙发
ID:836182 发表于 2020-11-27 21:52 | 只看该作者
贴个代码,能用,但是会出现闪屏,不知道是什么原因,高手协助帮忙分析一下。
#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char

sbit rs=P1^2;  //A0
sbit rw=P1^1;
sbit en=P1^0;
sbit res=P1^3;

unsigned char code hz0[128]={

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0x78,0x08,0x00,0x00,0x00,0x00,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0xE0,0xF0,0x70,0x60,0x00,0x00,0x00,
0x00,0x02,0x02,0x02,0x02,0xE2,0xFF,0xFF,0x0F,0x02,0x02,0xF2,0xFF,0xFF,0x06,0x00,
0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0xFE,0x03,0x01,0x00,0x00,0x80,0x80,0x00,0x00,
0x00,0x00,0x00,0x20,0x3C,0x3F,0x67,0x40,0xC0,0xE0,0xFE,0xFF,0x8F,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0xFF,0xFF,0xFF,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,
0x00,0x40,0x40,0x60,0x30,0x18,0x0C,0x0E,0x07,0x03,0x01,0x03,0x07,0x0F,0x0E,0x00,
0x10,0x10,0x30,0x30,0x70,0x7F,0x3F,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"好",0*/

};

unsigned char code hz1[128]={

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0x78,0x08,0x00,0x00,0x00,0x00,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0xE0,0xF0,0x70,0x60,0x00,0x00,0x00,
0x00,0x02,0x02,0x02,0x02,0xE2,0xFF,0xFF,0x0F,0x02,0x02,0xF2,0xFF,0xFF,0x06,0x00,
0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0xFE,0x03,0x01,0x00,0x00,0x80,0x80,0x00,0x00,
0x00,0x00,0x00,0x20,0x3C,0x3F,0x67,0x40,0xC0,0xE0,0xFE,0xFF,0x8F,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0xFF,0xFF,0xFF,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,
0x00,0x40,0x40,0x60,0x30,0x18,0x0C,0x0E,0x07,0x03,0x01,0x03,0x07,0x0F,0x0E,0x00,
0x10,0x10,0x30,0x30,0x70,0x7F,0x3F,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"好",1*/

};

unsigned char code hz2[128]={

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x78,0xF0,0xE0,0xC0,0x00,0x04,0x3C,0xF8,
0xF0,0xE0,0x00,0x00,0x00,0xC0,0xF0,0x7C,0x3C,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x60,0x7C,0x7C,0x3C,0x84,0x84,0x85,0x85,0x85,0x84,0x84,0x84,0x85,
0x85,0x84,0x84,0x84,0x87,0xC7,0xC5,0xC4,0x84,0x24,0x34,0x1E,0x1E,0x0E,0x04,0x00,
0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xFC,
0xFC,0xFC,0x24,0x26,0x23,0x21,0x21,0x20,0x20,0x20,0x30,0x38,0x38,0x30,0x20,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x30,0x70,0x7F,
0x3F,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"学",2*/

};

unsigned char code hz3[128]={

0x00,0x00,0x00,0x00,0x20,0x60,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xE0,0xF0,0xF0,0x20,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x06,0x0C,0x1C,0x78,0x78,
0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x80,0x80,0x80,0x80,0xC0,0xC0,0xC0,0xE0,0x60,0x30,0x30,0x10,0x18,
0x08,0x0C,0x04,0x06,0x02,0x02,0x02,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x01,0x03,0x03,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x04,0x0C,0x08,0x08,0x18,0x38,0x38,0x3F,0x1F,0x07,0x00,0x00,0x00,0x00,0x00,/*"习",3*/

};

unsigned char code bmp[]={

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x80,0x80,0x80,0x80,0x80,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,
0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,
0xC0,0xC0,0xE8,0xB0,0x90,0x88,0x8C,0x84,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x80,0x80,0xC0,0xC0,0x40,0x40,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,
0x60,0x60,0x70,0x70,0xF0,0xB8,0x98,0xB8,0x3C,0x3C,0xB4,0x36,0x36,0x3E,0x27,0x27,
0x23,0x23,0x23,0x23,0x21,0x21,0x21,0x21,0x21,0x21,0x20,0x20,0x20,0x20,0x20,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xFF,0x2E,0x20,0x20,0x21,0x21,0x21,
0x21,0x21,0x21,0x23,0x22,0x2B,0x27,0x25,0xA5,0xAF,0xAB,0xEB,0x7A,0x76,0x46,0x26,
0x0C,0x0C,0x1C,0x18,0x78,0x78,0x70,0x70,0x70,0x60,0xE0,0x40,0xC0,0x80,0x80,0x80,
0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x58,0x00,0x78,0xF8,0xC8,0x8C,0x06,0x07,0x07,
0x05,0x13,0xE3,0xF1,0xF8,0xFC,0x1C,0xEE,0x1E,0x1E,0x0E,0x0E,0xCE,0xEE,0xCE,0x2E,
0x5E,0x1E,0xBE,0xEC,0x3C,0xFC,0xF8,0xF5,0xC9,0x03,0x02,0x0C,0xB8,0xF0,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xFF,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0xF0,0xB8,0x8C,0x06,0x03,0x81,0xE1,0xF8,0xF8,0xFC,0xDC,0xFE,0x1E,0x1E,
0x0E,0x4E,0xEE,0xEE,0x4E,0x0E,0x1E,0x1E,0xFE,0xDC,0xFD,0xF9,0xFB,0xE3,0x87,0x87,
0x87,0x83,0xC6,0xC4,0x7C,0x38,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x05,0x05,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x03,0x07,0x07,0x0E,0x0F,0x0F,0x0E,0x1E,0x1E,0x1E,0x1E,0x0E,
0x0E,0x0F,0x0F,0x0E,0x07,0x07,0x03,0x01,0x03,0x03,0x03,0x03,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x03,0x03,0x07,0x07,0x0F,0x0D,0x0E,
0x0E,0x1E,0x1E,0x1E,0x1E,0x0E,0x0E,0x0D,0x0F,0x07,0x07,0x03,0x03,0x01,0x01,0x01,
0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
} ;

void delay(int m)          //延时约0.5ms
{
        unsigned char h,l;
        for(l=0;l<=m;l++)
        for(h=249;h>0;h--);
}
               
void write_com(uchar com) //写命令
{
        rs=0;
        rw=0;
        en=0;
        P2=com;
        delay(1);
        en=1;
        delay(1);
        en=0;
}

void write_data(uchar indata) //写数据
{
        rs=1;
        rw=0;
        en=0;
        P2=indata;
        delay(1);
        en=1;
        delay(1);
        en=0;
}

void led_set_pos(uchar x, uchar y)
{
  write_com(0xb0|y); //页地址0,12832总共4页(0~3)
  write_com(((x&0xf0)>>4)|0x10); //列地址高4位0x1?
  write_com((x&0x0f)|0x01); //列地址低4位0x0?
}  

void led_clear(uchar dispdata)
{
        uchar  x,y;       
        for(y=0;y<4;y++)
        {
                write_com(0xb0|y);
                write_com(0x01);
                write_com(0x10);
                for(x=0;x<128;x++)
                        write_data(dispdata);
        }
}

void led_init()
{
        res=0; //低电平复位
        delay(100);
        res=1; //复位完毕
        delay(100);
        write_com(0xe2); //软复位
        delay(5);
        write_com(0xae); //开显示
        write_com(0x2f); //升压
        delay(5);
        write_com(0x23); //粗调对比度,可设置范围0x20~0x27
        write_com(0x81); //微调对比度
        write_com(0x20); //微调对比度的值,可设置范围0x00~0x3f
        write_com(0xa2); //1/9 偏压比(bias)
        write_com(0xc8); //行扫描顺序:从上到下
        write_com(0xa0); //列扫描顺序:从左到右
        write_com(0x40); //起始行:第一行开始
        write_com(0xaf); //开显示
        led_clear(0x00);               
}

//显示32*32汉字,x取值0,32,64,96 y只能取值0
void led_show32hz(uchar x,uchar y,uchar *hz)
{
        uchar i,j;
        for(i=0;i<4;i++)
        {
                led_set_pos(x,y+i);
                for (j=0;j<32;j++)
                {
                        write_data(*hz);
                        hz++;
                }
        }
}

//画图
void led_draw(uchar x,uchar y,uchar *bmp)
{
        int i,j;
        for(i=0;i<4;i++)
        {
                led_set_pos(x,y+i);
                for(j=0;j<128;j++)
                {
                        write_data(*bmp);
                        bmp++;
                }
        }
}

void main()
{
led_init();
led_show32hz(0,0,hz0);
led_show32hz(32,0,hz1);
led_show32hz(64,0,hz2);
led_show32hz(96,0,hz3);
delay(2000);
//led_draw(0,0,bmp);
//delay(2000);
}


回复

使用道具 举报

楼主
ID:836182 发表于 2020-11-26 15:12 | 只看该作者
把网上的st7567串行驱动稍微修改了一下,改成并行的。屏幕能起来,经常会出现闪屏,不知道啥问题。以后有空在查。
贴下代码,请高手闲的时候也帮忙看下:


#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char

sbit rs=P1^2;  //A0
sbit rw=P1^1;
sbit en=P1^0;
sbit res=P1^3;

unsigned char code hz0[128]={

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0x78,0x08,0x00,0x00,0x00,0x00,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0xE0,0xF0,0x70,0x60,0x00,0x00,0x00,
0x00,0x02,0x02,0x02,0x02,0xE2,0xFF,0xFF,0x0F,0x02,0x02,0xF2,0xFF,0xFF,0x06,0x00,
0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0xFE,0x03,0x01,0x00,0x00,0x80,0x80,0x00,0x00,
0x00,0x00,0x00,0x20,0x3C,0x3F,0x67,0x40,0xC0,0xE0,0xFE,0xFF,0x8F,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0xFF,0xFF,0xFF,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,
0x00,0x40,0x40,0x60,0x30,0x18,0x0C,0x0E,0x07,0x03,0x01,0x03,0x07,0x0F,0x0E,0x00,
0x10,0x10,0x30,0x30,0x70,0x7F,0x3F,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"好",0*/

};

unsigned char code hz1[128]={

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0x78,0x08,0x00,0x00,0x00,0x00,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0xE0,0xF0,0x70,0x60,0x00,0x00,0x00,
0x00,0x02,0x02,0x02,0x02,0xE2,0xFF,0xFF,0x0F,0x02,0x02,0xF2,0xFF,0xFF,0x06,0x00,
0x00,0x00,0x00,0x00,0x00,0xFC,0xFC,0xFE,0x03,0x01,0x00,0x00,0x80,0x80,0x00,0x00,
0x00,0x00,0x00,0x20,0x3C,0x3F,0x67,0x40,0xC0,0xE0,0xFE,0xFF,0x8F,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0xFF,0xFF,0xFF,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,
0x00,0x40,0x40,0x60,0x30,0x18,0x0C,0x0E,0x07,0x03,0x01,0x03,0x07,0x0F,0x0E,0x00,
0x10,0x10,0x30,0x30,0x70,0x7F,0x3F,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"好",1*/

};

unsigned char code hz2[128]={

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x78,0xF0,0xE0,0xC0,0x00,0x04,0x3C,0xF8,
0xF0,0xE0,0x00,0x00,0x00,0xC0,0xF0,0x7C,0x3C,0x18,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x60,0x7C,0x7C,0x3C,0x84,0x84,0x85,0x85,0x85,0x84,0x84,0x84,0x85,
0x85,0x84,0x84,0x84,0x87,0xC7,0xC5,0xC4,0x84,0x24,0x34,0x1E,0x1E,0x0E,0x04,0x00,
0x00,0x00,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xFC,
0xFC,0xFC,0x24,0x26,0x23,0x21,0x21,0x20,0x20,0x20,0x30,0x38,0x38,0x30,0x20,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x10,0x30,0x70,0x7F,
0x3F,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"学",2*/

};

unsigned char code hz3[128]={

0x00,0x00,0x00,0x00,0x20,0x60,0x60,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xE0,0xF0,0xF0,0x20,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x06,0x0C,0x1C,0x78,0x78,
0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x80,0x80,0x80,0x80,0xC0,0xC0,0xC0,0xE0,0x60,0x30,0x30,0x10,0x18,
0x08,0x0C,0x04,0x06,0x02,0x02,0x02,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x01,0x03,0x03,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x04,0x0C,0x08,0x08,0x18,0x38,0x38,0x3F,0x1F,0x07,0x00,0x00,0x00,0x00,0x00,/*"习",3*/

};

unsigned char code bmp[]={

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x80,0x80,0x80,0x80,0x80,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,
0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,
0xC0,0xC0,0xE8,0xB0,0x90,0x88,0x8C,0x84,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x80,0x80,0xC0,0xC0,0x40,0x40,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,0x60,
0x60,0x60,0x70,0x70,0xF0,0xB8,0x98,0xB8,0x3C,0x3C,0xB4,0x36,0x36,0x3E,0x27,0x27,
0x23,0x23,0x23,0x23,0x21,0x21,0x21,0x21,0x21,0x21,0x20,0x20,0x20,0x20,0x20,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xFF,0x2E,0x20,0x20,0x21,0x21,0x21,
0x21,0x21,0x21,0x23,0x22,0x2B,0x27,0x25,0xA5,0xAF,0xAB,0xEB,0x7A,0x76,0x46,0x26,
0x0C,0x0C,0x1C,0x18,0x78,0x78,0x70,0x70,0x70,0x60,0xE0,0x40,0xC0,0x80,0x80,0x80,
0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x58,0x00,0x78,0xF8,0xC8,0x8C,0x06,0x07,0x07,
0x05,0x13,0xE3,0xF1,0xF8,0xFC,0x1C,0xEE,0x1E,0x1E,0x0E,0x0E,0xCE,0xEE,0xCE,0x2E,
0x5E,0x1E,0xBE,0xEC,0x3C,0xFC,0xF8,0xF5,0xC9,0x03,0x02,0x0C,0xB8,0xF0,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0xFF,0x80,0x80,0x80,0x80,0x80,0x80,
0x80,0x80,0xF0,0xB8,0x8C,0x06,0x03,0x81,0xE1,0xF8,0xF8,0xFC,0xDC,0xFE,0x1E,0x1E,
0x0E,0x4E,0xEE,0xEE,0x4E,0x0E,0x1E,0x1E,0xFE,0xDC,0xFD,0xF9,0xFB,0xE3,0x87,0x87,
0x87,0x83,0xC6,0xC4,0x7C,0x38,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x05,0x05,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x03,0x07,0x07,0x0E,0x0F,0x0F,0x0E,0x1E,0x1E,0x1E,0x1E,0x0E,
0x0E,0x0F,0x0F,0x0E,0x07,0x07,0x03,0x01,0x03,0x03,0x03,0x03,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x03,0x03,0x07,0x07,0x0F,0x0D,0x0E,
0x0E,0x1E,0x1E,0x1E,0x1E,0x0E,0x0E,0x0D,0x0F,0x07,0x07,0x03,0x03,0x01,0x01,0x01,
0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
} ;

void delay(int m)          //延时约0.5ms
{
        unsigned char h,l;
        for(l=0;l<=m;l++)
        for(h=249;h>0;h--);
}
               
void write_com(uchar com) //写命令
{
        rs=0;
        rw=0;
        en=0;
        P2=com;
        delay(1);
        en=1;
        delay(1);
        en=0;
}

void write_data(uchar indata) //写数据
{
        rs=1;
        rw=0;
        en=0;
        P2=indata;
        delay(1);
        en=1;
        delay(1);
        en=0;
}

void led_set_pos(uchar x, uchar y)
{
  write_com(0xb0|y); //页地址0,12832总共4页(0~3)
  write_com(((x&0xf0)>>4)|0x10); //列地址高4位0x1?
  write_com((x&0x0f)|0x01); //列地址低4位0x0?
}  

void led_clear(uchar dispdata)
{
        uchar  x,y;       
        for(y=0;y<4;y++)
        {
                write_com(0xb0|y);
                write_com(0x01);
                write_com(0x10);
                for(x=0;x<128;x++)
                        write_data(dispdata);
        }
}

void led_init()
{
        res=0; //低电平复位
        delay(100);
        res=1; //复位完毕
        delay(100);
        write_com(0xe2); //软复位
        delay(5);
        write_com(0xae); //开显示
        write_com(0x2f); //升压
        delay(5);
        write_com(0x23); //粗调对比度,可设置范围0x20~0x27
        write_com(0x81); //微调对比度
        write_com(0x20); //微调对比度的值,可设置范围0x00~0x3f
        write_com(0xa2); //1/9 偏压比(bias)
        write_com(0xc8); //行扫描顺序:从上到下
        write_com(0xa0); //列扫描顺序:从左到右
        write_com(0x40); //起始行:第一行开始
        write_com(0xaf); //开显示
        led_clear(0x00);               
}

//显示32*32汉字,x取值0,32,64,96 y只能取值0
void led_show32hz(uchar x,uchar y,uchar *hz)
{
        uchar i,j;
        for(i=0;i<4;i++)
        {
                led_set_pos(x,y+i);
                for (j=0;j<32;j++)
                {
                        write_data(*hz);
                        hz++;
                }
        }
}

//画图
void led_draw(uchar x,uchar y,uchar *bmp)
{
        int i,j;
        for(i=0;i<4;i++)
        {
                led_set_pos(x,y+i);
                for(j=0;j<128;j++)
                {
                        write_data(*bmp);
                        bmp++;
                }
        }
}

void main()
{
led_init();
led_show32hz(0,0,hz0);
led_show32hz(32,0,hz1);
led_show32hz(64,0,hz2);
led_show32hz(96,0,hz3);
delay(2000);
//led_draw(0,0,bmp);
//delay(2000);
}


12832test.rar

1.73 KB, 下载次数: 28, 下载积分: 黑币 -5

评分

参与人数 1黑币 +40 收起 理由
admin + 40 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表