UC1617是一个单色点阵液晶屏驱动芯片,最大支持128*128分辨率。

芯片手册:https://download.csdn.net/download/qq446252221/11045952

首先要注意的是:这个驱动芯片与其它单色液晶驱动芯片有点不一样,因为它是支持4位灰度显示的!

所以它的一个像素点是2个比特,而不是普通单色屏幕那样一个像素1个比特。

1个字节8比特,对应屏幕上的4个像素点。

这个芯片支持IIC,SPI,8080通信接口,通信时序就不详细说了,看看手册就行了。

对于SPI接口:SCK上升沿时LCD采样数据,SCK下降沿LCD输出数据。

重点关注的是初始化命令,对寄存器的配置。

从手册得知,其命令编码规则是不定长编码,一个字节前面M个比特表示特定命令,剩于N比特表示数据。

M和N的长度每个命令基本都不一样。如下图所示:

验证硬件通信是否成功,应该先测试Get Status这个指令,连续读出3个字节,末尾两个字节可以判断通信是否正常。

正常情况应该是0x1E,0x00,0x74,其中第1个字节与配置有关,后面2个字节是固定值。

需要注意的时,SPI接口有特殊的命令来获取状态:

先要用SPI发送0xFE这个指令,再连续读3个字节,才是状态。

发送0xFE前CS0拉低,CD拉低表示指令,发送完0xFE后,把CD拉高表示数据,连续读3个字节,最后CS0拉高,通信结束。

伪代码如下:

void lcd_get_status(uint8_t state[3])
{lcd_send_cmd(0xfe);state[0] = lcd_recv_data();state[1] = lcd_recv_data();state[2] = lcd_recv_data();
}

手册上没有提到的SPI指令是读显存数据,与SPI读状态类似,读显存的命令字是0xFF。

以下是初始化命令伪代码:

void lcd_chip_setup(void)
{lcd_send_cmd(0xeb); //bias set 1/11lcd_send_cmd(0x24); //set tem compensation -0.15%lcd_send_cmd(0x2a); //set panel loading >40nFlcd_send_cmd(0x2F); //set pump PC[2];internal VLCDlcd_send_cmd(0x81); //set Vop PM[7:0]lcd_send_cmd(0x34); //PM[7:0]=0x34lcd_send_cmd(0x84); //set partial displaylcd_send_cmd(0x8b); //set RAM address control AC[2:0]lcd_send_cmd(0xc0); //set LCD mapping control My Mx LC0,C2lcd_send_cmd(0xa3); //SET line rate  LC[4:3]lcd_send_cmd(0xad); //SET B/W MODE  AND DISPLAy ON  DC[ 3:2 ]//设置显示区域,默认值是就0 - 127,可以不用设置lcd_send_cmd(0xf4); //SET start xlcd_send_cmd(0x00); lcd_send_cmd(0xf5); //SET start ylcd_send_cmd(0x00); lcd_send_cmd(0xf6); //SET end xlcd_send_cmd(0x1f);lcd_send_cmd(0xf7); //SET end ylcd_send_cmd(0x7f);
}

写显存数据:

void lcd_flush_sram(void *data, uint32_t size)
{//写入前先设置起始坐标lcd_send_cmd(0x00); //set page startlcd_send_cmd(0x60); //Row startlcd_send_cmd(0x70); //Row startlcd_send_data(data, size);
}

UC1617点阵屏幕驱动相关推荐

  1. 使用自己开发的app远程控制MAX7219点阵屏幕

    使用自己开发的app远程控制MAX7219点阵屏幕 一.功能介绍: 二.芯片介绍: 三.实现原理: 四.代码部分: 其它资料: 一.功能介绍: 1.可以固定显示想显示的内容 2.点阵屏幕在无指令的时候 ...

  2. 驱动华为_再补齐一个短板,华为正式宣布进军屏幕驱动行业

    作为全球屏幕生产与出口的大国,京东方生产的屏幕远销全球,但用于驱动屏幕的IC芯片,却基本依靠进口.数据显示,仅在2019年京东方生产屏幕用于采购芯片的总金额超过了60亿元,但国产芯片占比却不到5%. ...

  3. 51单片机 IIC OLED屏幕驱动+Proteus仿真+实物验证示例程序

    51单片机 IIC OLED屏幕驱动+Proteus仿真+实物验证示例程序 Proteus仿真效果 注意点击运行仿真后,图像刷新出来比较慢. 示例主程序 #include "REG51.h& ...

  4. TFTLCD 16位并口屏幕驱动

    TFTLCD 16位并口屏幕FSMC驱动 工作中LCD OLED是经常用到的,恰巧手里有个STM32F103ZET6开发板和TFTLCD 2.8寸屏16位并口屏幕,接下来我会通过FSMC接口来驱动这块 ...

  5. GC9A01-TFT屏幕驱动(整理有stm32/51单片机/arduino等驱动代码)

    GC9A01-TFT屏幕驱动 & 整理有stm32/51单片机/arduino等驱动代码 前言 关于GC9A01 stm32驱动 引脚接线 代码移植 文件复制 端口修改 显示函数 中文汉字数组 ...

  6. 基于WT2003H语音芯片在LCD屏幕驱动的应用实例解析

    基于WT2003H语音芯片在LCD屏幕驱动的应用实例解析 随着现代生活节奏的加快,简单快捷的产品越来越受到人们的青睐,产品也越来越注重人机交互和简单明了的用户体验,一款具备LCD屏幕的产品往往更具有竞 ...

  7. Linux LCD屏幕驱动调参实操

    Linux LCD屏幕驱动调参实操 初探 Linux下的 LCD 驱动文中提到过, IMX6ULL的 eLCDIF接口驱动程序已经有半导体厂家NXP编写好了,并且不同分辨率LCD屏的eLCDIF接口驱 ...

  8. android LVDS屏幕驱动移植

    飞思卡尔i.MX 6Quad Android 4.2.2的LVDS屏幕驱动移植 分类: Android2013-09-14 09:13 1263人阅读 评论(0) 收藏 举报 目录(?)[+] 1   ...

  9. ST7735-TFT屏幕驱动(整理有stm32/51单片机/arduino等驱动代码)

    ST7735-TFT屏幕驱动 & 整理有stm32/51单片机/arduino等驱动代码 前言 关于ST7735 stm32驱动 引脚接线 代码移植 文件复制 端口修改 显示函数 中文汉字数组 ...

最新文章

  1. 利用dom4j将实体类转换为对应的xml报文
  2. 天正立面lisp什么意思_合欢花的花语是什么?为什么合欢花叫苦花?
  3. jquery控制只监听数字_JQuery通过一个开关来控制某个元素的监听
  4. c++ requests网络请求库
  5. java io操作_Java IO 操作
  6. [云炬创业学笔记]第二章决定成为创业者测试6
  7. Matlab神经网络十讲(2): Create Configuration Train NeuralNet
  8. Syszuxpin中文输入法移植
  9. robomaster裁判系统服务器,2018裁判系统调试组网完全攻略
  10. Sass笔记(CSS 的预编译语言)
  11. C++语言基础 —— STL —— 容器与迭代器 —— vector
  12. GoF--服务定位器模式
  13. Windows Phone开发(27):隔离存储A 转:http://blog.csdn.net/tcjiaan/article/details/7425212...
  14. C/C++ 实现文件透明加解密
  15. ASCII码表 0-255完整版 附详细注释
  16. Python抖音机器人制作!让你有看不完的小姐姐
  17. 【李宏毅2020 ML/DL】P57 Unsupervised Learning - Linear Methods | PCA Matrix Factorization
  18. 微师电脑客户端 附使用教程
  19. Shapley_Value全解析与公式推导
  20. 微信公众号注册时提示该主体注册数量已超过上限怎么办?

热门文章

  1. uniapp轮播组件之自动轮播
  2. ECH计算机病毒是什么,最后一战 第三章:D1ECH病毒_1000字
  3. citespace:时间线聚类标签显示不完全时
  4. 移植三星的uboot(三)
  5. ❤️ 跟我一起用python追到女朋友!❤️
  6. C中野指针、空指针、万能指针问题
  7. foxmail显示无法登陆到发信服务器,foxmail 无法发信,收信正常。
  8. C#索引器-索引器和属性的区别
  9. Python 简单入门指北(试读版)
  10. 【Linux】进程与服务