ST7567支持8bits并行接口和spi 4线串口 该教程为串口驱动 并口可做参考
ST7567内置一个65X132位容量的RAM,用于存储显示数据。显示数据存储器(DDRAM)存储液晶显示器的点数据。它是一个具有132列、65行(8页8位和1页1位)的可寻址数组
引脚定义:
GND //电源地
VCC //电源 一般为3.3v
CS //片选(不需要片选可以直接接地)
RST //硬复位(可以不接 使用命令软复位 省一个io)
DC //数据命令切换 1为数据 2为命令(有些版本叫A0)
SCK //spi时钟
SDA // spi数据线 传输时高位在前
BL //背光 可以控制背光开关 也可以通过pwm调节背光亮度
st7567命令
命令:
1 显示开关 0xae为关 0xaf为开
2 显示初始行 一共6位 对应64行
3 设置页地址 一共有8页 从0xb0到0xb7 (每八行称为一页 读写时是对页直接
进行读写 不会按行进行读写)
4 设置列地址 通过两个命令 各4位构成一个八位数据 对起始列进行控制
5 读取ic状态
6 写数据
7 从芯片ram读取数据 不常用
8 设定列扫描方向 0xa0为常规方向 由左至右 0xa1为反转方向 由右向左
9 反显 0xa6为常规 0xa7为反显
10 显示全部点阵 0xa4为常规 0xa5为显示全部点阵
11 设置偏压比 此款屏幕为 0xa3 或者 0xa2
12 列地址增量
13 end
14 软复位 0xe2
15 行方向 0xc0为普通扫描 0xc8为反转扫描 从上到下
16 电源控制3位 写0x2f一次打开内部升压 调整 跟随 也可以分步打开
17 内部电阻比例 (粗调对比度)范围0x20 到0x27
18对比度设置 双命令 先写0x81 再写 0x00到0x3f
19 升压控制 双命令 先写0xf8 后 0x01代表5倍 0x00代表4倍
20 省电
21空
22 测试 勿用
代码:
//代码为8051 stc8h系列 其他芯片自行比较修改
void Delay1us() //@40MHz 延时函数
{
unsigned char i;
i = 11;
while (--i);
}
void spi_wirte(unsigned char COMDADA_4SPI) //spi写函数
{
unsigned char bit8;
for ( bit8 = 0; bit8<8; bit8++)
{
sck=0;
Delay1us();
sda=(COMDADA_4SPI<<bit8)&0x80;
sck=1;
Delay1us();
}
}
void spi_wirte_command(unsigned char COMDADA_4SPI ) //写命令 直接调用
{
//unsigned char bit8;
dc=0;
spi_wirte(COMDADA_4SPI);
}
void spi_wirte_data(unsigned char data1) //写数据 直接调用
{
dc=1;
spi_wirte(data1);
}
void lcd12864_init()
{
spi_wirte_command(0xe2);//软复位
spi_wirte_command(0xa6);//列扫描方向常规
spi_wirte_command(0xa4);//点阵常规显示
spi_wirte_command(0xa3);//偏压比设定 1/9
spi_wirte_command(0xc0);//行方向为普通扫描
spi_wirte_command(0x2d);
spi_wirte_command(0x2e);
spi_wirte_command(0x2f);//分步打开内部升压 调整 跟随
spi_wirte_command(0x22);//设置电阻 粗调对比度
spi_wirte_command(0x81);
spi_wirte_command(0x37);//细调对比度
spi_wirte_command(0xf8);
spi_wirte_command(0x00);//升压控制 五倍
spi_wirte_command(0xaf);//打开显示器
}
void Lcd12864_ClearScreen()//清屏函数
{
unsigned char i, j;
for(i=0; i<8; i++)
{
spi_wirte_command(0x10);
spi_wirte_command(0x00);
spi_wirte_command(0xb0+i);
for(j=0; j<128; j++)
{
spi_wirte_data(0x00);
}
}
}
主函数
void main()
{
lcd12864_init();
lcd12864_ClearScreen();
while(1);
}
/
主函数完成清屏
*/
spi写 可以在sck间加3
到此这篇st7735s驱动芯片中文手册(st7567驱动程序)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/jszy-qdgl/81898.html