数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 1771|回复: 17

[C51] 12864屏幕测试求助

[复制链接]
发表于 2023-1-18 19:33:14 来自手机浏览器 | 显示全部楼层 |阅读模式
本帖最后由 yingguang 于 2023-1-18 19:34 编辑

前几天在老王家买了几个屏玩玩,本人新手,主要是学习一下,在网上找个程序测试屏幕,运行后屏幕只有一行显示所有信息,一段汉子和一个点阵图,请帮忙看看是什么问题?
源程序:

#include <reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define DelayNOP() {_nop_();_nop_();_nop_();_nop_();}



sbit CS  = P2^0;
sbit RES = P2^1;
sbit A0 = P2^2;
sbit SCLK = P2^3;
sbit SDA= P2^4;




uchar code Q[][32]=
{
/*--  文字:  谢  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x40,0x42,0xCC,0x00,0x00,0xFC,0x56,0x55,0xFC,0x80,0x10,0x10,0xFF,0x10,0x10,0x00,
0x00,0x00,0x3F,0x10,0x2A,0x13,0x4A,0x86,0x7F,0x00,0x43,0x80,0x7F,0x00,0x00,0x00},

/*--  文字:  谢  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x40,0x42,0xCC,0x00,0x00,0xFC,0x56,0x55,0xFC,0x80,0x10,0x10,0xFF,0x10,0x10,0x00,
0x00,0x00,0x3F,0x10,0x2A,0x13,0x4A,0x86,0x7F,0x00,0x43,0x80,0x7F,0x00,0x00,0x00},

/*--  文字:     --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{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},

/*--  文字:  5  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0xF8,0x88,0x88,0x88,0x08,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x19,0x20,0x20,0x20,0x11,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  1  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  黑  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x00,0x3E,0x22,0x2A,0x32,0x22,0xFE,0x22,0x32,0x2A,0x22,0x3E,0x00,0x00,0x00,
0x88,0x68,0x09,0x09,0x29,0xC9,0x09,0x0F,0x29,0xC9,0x09,0x09,0x29,0xC8,0x08,0x00},

/*--  文字:  电  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x00,0xF8,0x88,0x88,0x88,0x88,0xFF,0x88,0x88,0x88,0x88,0xF8,0x00,0x00,0x00,
0x00,0x00,0x1F,0x08,0x08,0x08,0x08,0x7F,0x88,0x88,0x88,0x88,0x9F,0x80,0xF0,0x00},

/*--  文字:  子  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x80,0x82,0x82,0x82,0x82,0x82,0x82,0xE2,0xA2,0x92,0x8A,0x86,0x82,0x80,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  论  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x40,0x40,0x42,0xCC,0x00,0x40,0x20,0x90,0x0C,0x03,0x0C,0x90,0x20,0x40,0x40,0x00,
0x00,0x00,0x00,0x7F,0x20,0x10,0x00,0x3F,0x44,0x42,0x41,0x40,0x40,0x70,0x00,0x00},

/*--  文字:  坛  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x20,0x20,0x20,0xFF,0x20,0x20,0x40,0x44,0x44,0x44,0xC4,0x44,0x44,0x44,0x40,0x00,
0x10,0x30,0x10,0x0F,0x08,0x08,0x20,0x70,0x28,0x26,0x21,0x20,0x28,0x30,0x60,0x00},

/*--  文字:  ,  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x58,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  让  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x40,0x40,0x42,0xCC,0x00,0x00,0x00,0x00,0x00,0xFF,0x40,0x40,0x40,0x40,0x00,0x00,
0x00,0x00,0x00,0x3F,0x50,0x48,0x40,0x40,0x40,0x7F,0x40,0x40,0x40,0x40,0x40,0x00},

/*--  文字:  大  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xFF,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
0x80,0x80,0x40,0x20,0x10,0x0C,0x03,0x00,0x03,0x0C,0x10,0x20,0x40,0x80,0x80,0x00},

/*--  文字:  家  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x10,0x2C,0x24,0x24,0xA4,0xA4,0x65,0xA6,0x24,0x24,0x24,0x24,0xA4,0x34,0x0C,0x00,
0x40,0x49,0x49,0x29,0x24,0x14,0x52,0x89,0x7F,0x04,0x0A,0x11,0x10,0x20,0x20,0x00},

/*--  文字:  有  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x04,0x04,0x04,0x84,0xE4,0x3C,0x27,0x24,0x24,0x24,0x24,0xE4,0x04,0x04,0x04,0x00,
0x04,0x02,0x01,0x00,0xFF,0x09,0x09,0x09,0x09,0x49,0x89,0x7F,0x00,0x00,0x00,0x00},

/*--  文字:  个  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x80,0x80,0x40,0x20,0x10,0x08,0x04,0xC3,0x04,0x08,0x10,0x20,0x40,0x80,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  很  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x10,0x88,0xC4,0x33,0x00,0xFE,0x92,0x92,0x92,0x92,0x92,0xFE,0x00,0x00,0x00,
0x02,0x01,0x00,0xFF,0x00,0x00,0xFF,0x40,0x20,0x03,0x0C,0x14,0x22,0x41,0x40,0x00},

/*--  文字:  好  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x10,0x10,0xF0,0x1F,0x10,0xF0,0x00,0x80,0x82,0x82,0xE2,0x92,0x8A,0x86,0x80,0x00,
0x40,0x22,0x15,0x08,0x16,0x61,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  的  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0xF8,0x0C,0x0B,0x08,0x08,0xF8,0x40,0x30,0x8F,0x08,0x08,0x08,0xF8,0x00,0x00,
0x00,0x7F,0x21,0x21,0x21,0x21,0x7F,0x00,0x00,0x00,0x43,0x80,0x40,0x3F,0x00,0x00},

/*--  文字:  学  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x40,0x30,0x11,0x96,0x90,0x90,0x91,0x96,0x90,0x90,0x98,0x14,0x13,0x50,0x30,0x00,
0x04,0x04,0x04,0x04,0x04,0x44,0x84,0x7E,0x06,0x05,0x04,0x04,0x04,0x04,0x04,0x00},

/*--  文字:  习  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x02,0x02,0x02,0x12,0x22,0xC2,0x02,0x02,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,
0x00,0x08,0x18,0x08,0x04,0x04,0x04,0x02,0x02,0x41,0x81,0x40,0x3F,0x00,0x00,0x00},

/*--  文字:  机  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x10,0x10,0xD0,0xFF,0x90,0x10,0x00,0xFE,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,
0x04,0x03,0x00,0xFF,0x00,0x83,0x60,0x1F,0x00,0x00,0x00,0x3F,0x40,0x40,0x78,0x00},

/*--  文字:  会  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x40,0x40,0x20,0x20,0x50,0x48,0x44,0x43,0x44,0x48,0x50,0x20,0x20,0x40,0x40,0x00,
0x00,0x02,0x42,0xE2,0x52,0x4A,0x46,0x42,0x42,0x42,0x52,0x62,0xC2,0x02,0x00,0x00},

/*--  文字:  ,  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x58,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  第  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x08,0x04,0x93,0x92,0x96,0x9A,0x92,0xFA,0x94,0x93,0x92,0x96,0xFA,0x02,0x02,0x00,
0x40,0x40,0x47,0x24,0x24,0x14,0x0C,0xFF,0x04,0x04,0x24,0x44,0x24,0x1C,0x00,0x00},

/*--  文字:  一  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  个  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x80,0x80,0x40,0x20,0x10,0x08,0x04,0xC3,0x04,0x08,0x10,0x20,0x40,0x80,0x80,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  成  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x00,0xF8,0x88,0x88,0x88,0x88,0x08,0x08,0xFF,0x08,0x09,0x0A,0xC8,0x08,0x00,
0x80,0x60,0x1F,0x00,0x10,0x20,0x1F,0x80,0x40,0x21,0x16,0x18,0x26,0x41,0xF8,0x00},

/*--  文字:  功  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x08,0x08,0x08,0xF8,0x08,0x08,0x08,0x10,0x10,0xFF,0x10,0x10,0x10,0xF0,0x00,0x00,
0x10,0x30,0x10,0x1F,0x08,0x88,0x48,0x30,0x0E,0x01,0x40,0x80,0x40,0x3F,0x00,0x00},

/*--  文字:  了  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x02,0x02,0x02,0x02,0x02,0x02,0xE2,0x22,0x12,0x0A,0x06,0x02,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

/*--  文字:  !  --*/
/*--  宋体12;  此字体下对应的点阵为:宽x高=16x16   --*/
{0x00,0x00,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x33,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},

};

uchar code Clip_BMP[1008]=
{
        /*--  宽度x高度=128x64  --*/
/* 0X22,0X01,0X62,0X00,0X40,0X00, */
/* 0X22,0X01,0X7E,0X00,0X40,0X00, */
0XFF,0XFF,0XFF,0X7B,0XA7,0XCF,0X6B,0X03,0X84,0X87,0X0B,0XCF,0X87,0XFB,0XFF,0XFF,
0XFA,0XFE,0XF2,0XF8,0XE4,0XF8,0XF2,0XFE,0XE6,0XF7,0X77,0X7F,0X6F,0XAF,0X9F,0XDF,
0XDF,0XDF,0X5F,0X7D,0XFB,0X51,0XD4,0X86,0XE8,0XDB,0XBD,0XFD,0X7F,0XFF,0XFF,0XCC,
0X5C,0X5C,0X5C,0XD7,0X77,0X7F,0XEE,0XBE,0X9E,0X7D,0XFD,0XF9,0X00,0X0E,0XFE,0XFE,
0XFE,0XAF,0XBF,0XA7,0X0F,0X13,0X0F,0XA7,0XBF,0XBF,0XFC,0XFC,0XFC,0XFF,0XFF,0XFF,
0X3F,0X5C,0X1C,0X2C,0X1A,0X7A,0X78,0XF2,0XE3,0XC8,0XC9,0XF9,0XBA,0X2A,0X81,0XD2,
0XCE,0XC0,0X46,0X87,0XF8,0XA9,0X3D,0XFD,0XF2,0XD8,0XD8,0XDF,0XDF,0XDF,0XFF,0XFF,
0X9F,0XBF,0XEF,0X7F,0X77,0XFF,0XFF,0XF6,0XF7,0XFF,0XF7,0XE3,0XE3,0XE3,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFB,0XFB,0XFF,0XFF,0XFD,0XF6,0XF7,0XFB,0XFF,0XF5,0XF5,0XF5,
0XE5,0X44,0X6D,0X7D,0XBD,0XD3,0XEA,0XBC,0X96,0XE2,0XFC,0XFE,0XFF,0XFF,0XFE,0XFB,
0XFB,0XED,0X25,0XB7,0XBF,0X5F,0XAC,0XD0,0X60,0XE1,0X1E,0XF0,0XE3,0XCF,0X9F,0X3E,
0X7F,0X7C,0X7E,0XF9,0X3E,0X7C,0X7F,0XC6,0X9F,0X3F,0X7F,0XFF,0XFF,0XFF,0XFE,0XFD,
0X7E,0X3D,0X84,0XFF,0XFE,0X7F,0X7F,0X7F,0X3F,0X9F,0XCF,0XE0,0XFC,0XF9,0XF0,0XC5,
0XAD,0X59,0XF5,0XAF,0X4B,0XEB,0XFE,0XFE,0XDE,0XBC,0X3A,0XFB,0XEB,0XCB,0XDF,0XFF,
0XF7,0XF7,0XCE,0XED,0XFB,0X7B,0XFF,0XFE,0XF6,0XF6,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0X73,0X03,0X33,0XA3,0XAD,0XDC,0X20,0XCC,0XAD,0XB3,0X33,0X23,0X7B,0XFF,0XFD,
0XFD,0XFF,0XF2,0XFB,0XFD,0XFD,0XFB,0XF9,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFE,0XFC,0XF8,0XF0,0XF0,0X00,0X00,0X00,0X01,0X01,0X01,0X01,0X00,0X00,0X01,
0XF0,0XF0,0XF8,0XF8,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,
0XFD,0XFF,0XFF,0XFE,0XFD,0XFF,0XFD,0XF9,0XFD,0XF7,0XEF,0X8F,0XCF,0X4F,0XFB,0XE3,
0X07,0X07,0X3B,0X00,0X1B,0X07,0X27,0XE3,0XFF,0X4F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0X7F,0X3F,0X3F,0X3F,0X3F,0X1F,0X1F,0X1F,0X1F,
0X1E,0X3E,0X3E,0X3D,0X3D,0X38,0X3D,0X3D,0X3E,0X3E,0X3E,0X3F,0X3F,0X3F,0X3F,0X3F,
0X3F,0X3F,0X3F,0X3F,0X3F,0X3F,0X3F,0X3F,0X3F,0X1F,0X1F,0X1F,0X1F,0X1F,0X1F,0X0F,
0X0F,0X07,0X03,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XE0,0XFC,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XEE,0XE2,0XF6,0XE4,0XBE,0X8E,0XC4,0XE0,
0XB0,0X40,0XB8,0XC0,0XC4,0X8E,0XBE,0XE4,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XF7,0XF3,0XF8,0XC0,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,0XC0,0XF0,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0X7F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0XC0,0XC0,
0XC0,0X80,0X80,0X80,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,
0X80,0X80,0X80,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,0XE0,
0XF0,0XF0,0XF8,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0X03,0X01,
0X80,0XC0,0XE0,0X80,0X00,0X00,0XF8,0XFC,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFE,0X00,0X00,0X00,0XC0,0X00,0X00,0X00,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0X03,0X80,0XF0,0XFC,0XFF,0XFF,
0XFF,0XFF,0XFE,0XF8,0XC0,0X03,0X0F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0X00,0X00,0XFC,0XFF,0X00,0X00,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,


};

void DelayMS(uint ms)
{
        uchar i;
        while(ms--)
        {
                 for(i=0;i<120;i++);
        }
}

void Write_Command(uchar c)
{
        uchar i;
        SCLK = 0;
        CS = 0;
        A0 = 0;
        DelayNOP();
        for(i=0;i<8;i++)
        {
                 c<<=1;
                SDA = CY;
                SCLK = 1;
                DelayNOP();
                SCLK = 0;
        }
        DelayNOP();
        CS = 1;
}

void Write_Data(uchar d)
{
        uchar i;
        SCLK = 0;
        CS = 0;
        A0 = 1;
        DelayNOP();
        for(i=0;i<8;i++)
        {
                 d<<=1;
                SDA = CY;
                SCLK = 1;
                DelayNOP();
                SCLK = 0;
        }
        DelayNOP();
        CS = 1;
}

void Init_LCD()
{
        //硬复位
        RES = 0;
        DelayMS(10);
        RES = 1;
        DelayMS(20);
  Write_Command(0xa2);//软复位
  Write_Command(0xaf);//0xaf显示器开
        Write_Command(0x2f);//0x2f升压电路,电压管理电路,
        Write_Command(0x25);        //0x20-0x27为V5电压内部电阻调整设置 ,重要否则黑屏
        Write_Command(0x81);// SET EV 调对比度,测试暂时无效
        Write_Command(0x31);//0x01-0x3f电量寄存器设置模式
        Write_Command(0xa1);//0xa0为Segment正向,0xa1 为Segment反向 ,如果模拟测试下实际不一样调整
        Write_Command(0xc0);//0xc0正向扫描,0xc8反射扫描
        Write_Command(0xa6);//0xa6正向显示,0xa7反向显示  即,黑白屏的意思
        Write_Command(0xa4);//0xa4正常显示,0xa5全屏点亮
       
        Write_Command(0x1b);
        Write_Command(0xf8);//背压比设置
        Write_Command(0x00);//00--10  MSBox10为高位开始 ,  LSB  0x00为从低位开始
        //Write_Command(0x2c);
        //Write_Command(0x2e);
                //         Disp_Off();//清屏
       
       

       
}

void Disp_All()
{
        uchar i,j;
        Write_Command(0x40);
        for(i=0;i<8;i++)
        {
                 Write_Command(0xb0+i);
                Write_Command(0x10);
                Write_Command(0x00);
                for(j=0;j<128;j++)
                {
                         Write_Data(0xff);
                }
        }
}

void Disp_Off()
{
        uchar i,j;
        Write_Command(0x40);
        for(i=0;i<8;i++)
        {
                 Write_Command(0xb0+i);
                Write_Command(0x10);
                Write_Command(0x00);
                for(j=0;j<128;j++)
                {
                         Write_Data(0x00);
                }
        }
}

void Disp_Q()
{
        uchar i,j,k;
        Write_Command(0x40);
        for(i=0;i<1;i++)
        {
          Write_Command(0xb0+i);
                Write_Command(0x10);
                Write_Command(0x00);
        //        Write_Command(0x40+2);
                for(j=0;j<1;j++)
                {
                         for(k=0;k<64;k++){
                               
                                if(k%16==0){
                                        ++i;
                                        Write_Command(0xb0+i);
                                        Write_Command(0x10-2);
                                        //Write_Command(0x00);
                                        //
                                               
                                }
                                if(k%32==0){
                                        --i;
                                       
                                        Write_Command(0xb0+i);

                                }
                        Write_Data(Q[k]);
                               
                DelayMS(50);
                        }
                }
        }
}
       
/**
中文16*16 文字输出
*/

void xianshi()
{

        uchar i,j,k,l;
             k=0;
      Write_Command(0x40);    //Y轴的开始地址行地址start line  Y轴的地址从上到下共 0-63行
         //先计算出数组的长度
     for (j = 0; j <sizeof(Q)/sizeof(Q[0]); j++)
         //for (j = 0; j <11; j++)
        {
               
                    if (j % 8 == 0 &&j>0){
                                                k=k+2;
                                        DelayMS(1000);
                                }
                               
                                l=j%8;  //只要是8个字后,自动从左到右开始计算
                          
            Write_Command(0xb0+k);   //0-8页地址page
            Write_Command(0x10+l);   // X 轴从左到右16位,0-8页即 16*8=128 MBS
                 // Write_Command(0x00); // X 轴从右到左16位,0-8页即 16*8=128 LBS
         for(i=0;i<16;i++)
        {
          Write_Data(Q[j]);
        }
                                Write_Command(0xb0+1+k);
                                Write_Command(0x10+l);
        for(i=0;i<16;i++)
         {      
                                                 Write_Data(Q[j][i+16]);
          }
                                 
                                }
}




void Disp_Clip()
{
        uchar i,j;
        Write_Command(0x40);
        for(i=0;i<8;i++)
        {
                 Write_Command(0xb0+i);
                Write_Command(0x10);
                Write_Command(0x00);
                for(j=0;j<128;j++)
                {
                         Write_Data(Clip_BMP[i*128+j]);
                        //DelayMS(000);
                }
        }       
}



void main()
{
        Init_LCD();
        //DelayMS(5);
        Disp_All();
        DelayMS(200);
       
                        while(1)
        {
          xianshi();
        //Disp_Q();
                DelayMS(20000);       
                Disp_All();
                Disp_Clip();
                DelayMS(50000);
    Disp_All();               
       
               
        }
       
}




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
发表于 2023-1-18 20:13:03 来自手机浏览器 | 显示全部楼层
网上分享的程序,多少会故意改参数 ,造成bug,搜本版块的好用
回复 支持 反对

使用道具 举报

发表于 2023-1-18 20:14:52 | 显示全部楼层
本帖最后由 wangxiangtan2 于 2023-1-18 20:17 编辑

什么是“#define uint unsigned int”
回复 支持 反对

使用道具 举报

发表于 2023-1-18 21:39:43 | 显示全部楼层
zj97czb 发表于 2023-1-18 20:13
网上分享的程序,多少会故意改参数 ,造成bug,搜本版块的好用

一开始学编程时就遇到过这类事,下载的hex好用,但他的源程序自己编译就不行,就是参数修改了两个地方。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-1-19 07:56:31 来自手机浏览器 | 显示全部楼层
求大佬指点
回复 支持 反对

使用道具 举报

发表于 2023-1-19 10:44:48 | 显示全部楼层
先确定屏的驱动芯片型号,再找对应的源程序,你没有把屏的参数拍上,大家不好出力
回复 支持 反对

使用道具 举报

发表于 2023-1-19 10:58:17 | 显示全部楼层

多数是纵横、上下顺序
回复 支持 反对

使用道具 举报

发表于 2023-1-19 11:12:39 | 显示全部楼层
这程序可读性太差了吧,根本不知道怎么改。

1264屏用st7567的非常多,,可以先找找这个的厂家例程试试
回复 支持 反对

使用道具 举报

发表于 2023-1-19 11:16:40 | 显示全部楼层
发个屏幕厂家的例程,你可以试着改一下   st7567

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

发表于 2023-1-19 19:32:23 | 显示全部楼层
这个屏幕有点眼熟
回复 支持 反对

使用道具 举报

发表于 2023-1-20 14:11:13 | 显示全部楼层
因为LCD要求的延时时间是一定的,移植到不同平台主控的话,延时的实参或需修改
回复 支持 反对

使用道具 举报

发表于 2023-1-22 10:35:42 | 显示全部楼层
wangxiangtan2 发表于 2023-1-18 20:14
什么是“#define uint unsigned int”

C的宏定义,有了这个定义后可以用uint来定义其他变量,比如uint dat与unsigned int dat是等效的。
回复 支持 反对

使用道具 举报

发表于 2023-1-22 12:48:28 来自手机浏览器 | 显示全部楼层
慕名而来 发表于 2023-1-22 10:35
C的宏定义,有了这个定义后可以用uint来定义其他变量,比如uint dat与unsigned int dat是等效的。 ...

嗯嗯,原来我一直把他和typedef弄混了
回复 支持 反对

使用道具 举报

发表于 2023-1-24 13:23:05 来自手机浏览器 | 显示全部楼层
wangxiangtan2 发表于 2023-1-22 12:48
嗯嗯,原来我一直把他和typedef弄混了

define 编译时直接替换
typedef 只能重定义数据类型
回复 支持 反对

使用道具 举报

发表于 2023-1-25 21:32:14 来自手机浏览器 | 显示全部楼层
能点屏的都是高手
回复 支持 反对

使用道具 举报

发表于 2023-2-11 15:13:03 | 显示全部楼层
这根本不知道怎么改。
回复 支持 反对

使用道具 举报

发表于 2023-2-11 21:01:31 | 显示全部楼层
我觉得是你的取模问题。
修改一下取模参数看看:我隐约记得是上下方向,倒序取模的方式。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-12 08:58:37 来自手机浏览器 | 显示全部楼层
ahyu99 发表于 2023-2-11 21:01
我觉得是你的取模问题。
修改一下取模参数看看:我隐约记得是上下方向,倒序取模的方式。 ...

谢谢,我再试试
回复 支持 反对

使用道具 举报

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

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-25 08:13 , Processed in 0.234000 second(s), 11 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

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