TFT屏幕控制器中文版资料
1、ssd1963是1215k字节帧缓冲显示控制器,支持864 x 480 x 24位图形内容。它也配有不同宽度并行接口总
线来接收图形数据和命令从单片机。它的显示界面,支持常见的内存更少的LCD驱动器, 每—像素的颜色深度
可达24比特。
2、特点
-建于1215k字节帧缓冲。支持864 x 480到24BPP显示
-支持8位串行RGB接口
-0,90,180的硬件旋转,270度
-硬件显示镜像
-硬件窗口
-可编程的亮度,对比度和饱和度控制
-动态背光控制(DBC)通过脉宽调制信号
单片机的连接
-8 / 9 / 16 / 18 / 24位单片机的接口
-撕裂效应信号
I / O的连接
4个GPIO引脚-
内置时钟发生器
深睡眠
3、订购须知,
4、结构图
5、引脚排列
5.1 80 balls TFBGA
5.2 128 pins LQFP
6、引脚描述
关键:
O =输出
IO =双向(输入/输出)
P =电源引脚
Hi - Z =高阻抗
注 (
1) 这些引脚映射使用信号名称通常用于每个面板类型,但是信号名称在各个面板制造商之间可能不同。
7、功能块的描述
7.1 单片机接口
单片机接口连接单片机和ssd1963绘图控制器。单片机接口可配置为6800模式和8080模式通过conf 引脚,拉
动conf引脚vssio,单片机接口将被配置为6800模式接口。如果CONF引脚连接于VDDIO,单片机接口将被配置
在8080模式。
7.1.1 6800模式
6800型单片机的接口包含CS #,D / C #,E,R / W #,D [23时],和TE信号(请参阅8080引脚复用模式表6-1)。
此接口支持固定E和时钟E的模式定义一个读/写周期。如果E信号保持高,作为使能信号,CS #信号作为一个总
线时钟,# CS的上升沿,数据或命令将被锁入系统。如果用户想使用E引脚作为时钟引脚, CS# 引脚需要固定为
逻辑0片选芯片。然后E信号的下降边缘将锁存的数据或命令。有关详细信息,请参阅第时序图13.2.1.
7.1.2 8080模式
8080型单片机的接口包含CS #,D / C #,RD #,WR #,D [23时]和TE信号(请参阅6800引脚复用模式表6-1).
这个接口使用WR #定义一个写周期和RD #定义一个读周期。如果WR#变低时,CS #信号为低,在WR#上升边
缘数据或命令将被锁入系统。同样,读周期将开始在RD#变低和RD#上升沿结束。详细说明将在13.2.2章节
7.1.3寄存器映射
当用户访问寄存器通过并行单片机接口,只有D[7:0]可以用,不管该像素数据的宽度。因此,D[ 8:23 ]将只用于
显示数据的地址。这提供可能性,像素数据格式如表7-1所示可以通过命令0xf0配置。
7.1.4像素数据格式
6800和8080的支持9位,8位,16位,18位和24位的数据总线。根据数据总线的宽度,显示数据封装成不同的
数据总线方式。
7.1.5撕裂效应信号
撕裂效应信号(TE)是一个从LCD控制器到单片机的反馈信号。这个信号指示LCD控制器的显示状态。在
非显示周期内,TE信号为高。因此,本信号使单片机通过观察非显示周期发送数据,以避免撕裂。
图7-1展示了TE信号有助于避免撕裂。如果单片机写的速度慢于显示速度,显示数据更新,应在LCD控制器开
始扫描帧缓存之后。然后,LCD控制器将始终显示旧的存储内容到下一帧。然而,如果单片机比LCD控制器的
速度快,它应该在垂直无显示周期开始更新显示内容,使液晶控制器总是可以获取最新更新的内容。
在ssd1963中,用户可配置的TE信号反映垂直非显示期或反映垂直和水平的非显示期。额外水平非显示期
的信息,单片机可以计算水平线的液晶显示器扫描更准确地控制刷新动作。通常,一个快速的单片机不需要水
平非显示周期。但缓慢的MCU将需要它确保帧缓存更新过程总是滞后于液晶显示控制器。
7.2系统时钟发生器
对于ssd1963系统时钟是由内置的锁相环产生。该PLL的参考时钟可以来自CLK引脚或外部晶体振荡器。
由于CLK引脚和振荡器的输出连接到锁相环的“或”门,未使用的时钟必须接VSS。
PLL由”set_pl”命令OxE0的位1配置为系统时钟,在配置前,系统时钟为参考时钟。这使用户可以发送
“set_pll_mn”命令0xe2配置锁相环频率。当配置好锁相环频率和启用的锁相环由 “set_pll”命令0xE0的0位,用
户仍要等待100ms,待锁相环锁定。然后,锁相环准备好了,可以通过“set_pll”命令0xE0的位1,配置为系统时
钟。
7.3帧缓冲
在ssd1963内有1215k字节d内置SRAM用于帧缓冲。当帧缓冲区读或写时,通过设置帧缓冲区,地址计数器将
增一或减一。
7.4系统时钟和复位管理器
“系统时钟和复位管理器”对整个系统分发复位信号和时钟信号。它控制时钟发生器,并包括打开和关闭每个时
钟功能模块的时钟门控电路。同时,将时钟发生器分出源时钟做为不同模块的操作时钟。
系统时钟和复位管理器也管理的复位信号,以确保系统处于复位状态时,所有模块重置到适当的状态,深度睡
眠状态,睡眠状态和显示状态。
图7-3显示ssd1963四种运行状态的状态图。
7.5 LCD控制器
7.5.1 显示格式
LCD控制器读取帧缓冲区生成显示信号,根据选定的显示面板格式。ssd1963支持常见的内存更少的TFT驱动
使用通用的RGB数据格式。
7.5.2 普通I/O口
GPIO引脚可以工作在2种模式,GPIO方式和多种显示信号模式。当引脚配置为GPIO,这些引脚可以通过
单片机直接控制。因此,用户可以使用这些引脚效仿其他如SPI或I2C接口。如果这些引脚配置为显示信号,他
们会定期根据信号的设置用于显示。他们可以设置切换一次帧,一次线或在任意时间。因此他们可以配置为一
些常见的信号所用的不同的面板用于STH或LP信号。
8. 命令表 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 关闭面板。这个命令将拉低GPIO0。当GPIO0为正常的GPIO或LCD
多种信号,这命令将被忽略。 |
| | 打开面板。这个命令将拉高GPIO0。当GPIO0为正常的GPIO或LCD
多种信号,这命令将被忽略。 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 从主机处理器接口和ssd1963传输图像信息开始在
set_column_address和set_page_address提供的位置 | | | 从ssd1963和主机处理器传输图像信息开始在set_column_address和
set_page_address提供的位置 | | | | | | | | | | | | 在VFP的开始,同步信息从ssd1963送到主机处理器 | | | | | | | | | | | | | | | | | | 从主机处理器接口传输图像信息到ssd1963在最后写入位置 | | | 从ssd1963后继续读取图像数据,在read_memory_continue或
read_memory_start命令后 | | | 同步信息从ssd1963送到主机处理器,当显示面板刷新达到设置扫描
行 | | | | | | | | | | | | | | | | | | | | | | | | 设置垂直消隐间隔在最后扫描行和下一LFRAME脉冲之间 | | | 获取垂直消隐间隔在最后扫描行和下一LFRAME脉冲之间 | | | 设置GPIO的配置。如果GPIO不用于LCD,设置方向。
否则他们作为LCD信号。 | | | | | | | | | | | | | | | | | |
| | |
| | | 设置LCD信号发生器0的触发特性,上升,下降,周期 | | | | | | 设置LCD信号发生器1的触发特性,上升,下降,周期 | | | | | | 设置LCD信号发生器2的触发特性,上升,下降,周期 |
| | | | | 设置LCD信号发生器3的触发特性,上升,下降,周期 | | | | | | 相对于LCD信号发生器,设置GPIO0用于ROP操作。如果GPIO0配置
为通用GPIO,没有影响。 | | | | | | 相对于LCD信号发生器,设置GPIO1用于ROP操作。如果GPIO1配置
为通用GPIO,没有影响。 | | | | | | 相对于LCD信号发生器,设置GPIO2用于ROP操作。如果GPIO2配置
为通用GPIO,没有影响。 | | | | | | 相对于LCD信号发生器,设置GPIO3用于ROP操作。如果GPIO3配置
为通用GPIO,没有影响。 | | | | | | | | | | | | | | | | | | 锁相环启动。启动之前,该系统运行通过晶体振荡器或时钟输入 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
9 命令描述
9.1 nop
命令 0x00
参数 无
描述
空操作
9.2 soft_reset
命令 0x01
参数 无
描述
SSD1963执行软件复位。除了命令0Xe0到0xE5,复位其他所有配置寄存器
注意:
该命令后,主处理器再向 SSD1963 发送新命令前必须等候 5MS
9.3 get_power_mode
命令 0x0A
参数 1
描述
获取当前电源模式
A[6]: 空闲模式开/关(POR = 0)
0 空闲模式关
1 空闲模式开
A[5]: 部分模式开/关(POR = 0)
0 部分模式关
1 部分模式开
A[4]: 睡眠模式开/关(POR = 0)
0 睡眠模式关
1 睡眠模式开
A[3]: 正常显示模式开/关(POR = 0)
0 正常显示模式关
1 正常显示模式开(部分模式和垂直滚动关)
A[2]: 显示开/关(POR = 0)
0 显示关
1 显示开
9.4 get_address_mode
命令 0x0B
参数 1
描述
得到的帧缓冲的显示面板的读取顺序
A[7]: 页地址顺序(POR = 0)
0 从顶部到底部
1 从底部到顶部
A[6]: 列地址顺序(POR = 0)
0 从左到右
1 从右到左
A[5]: 页/列顺序(POR = 0)
0 普通模式
1 反转模式
A[4]: 行地址顺序(POR = 0)
0 LCD 更新从顶部到底部
1 LCD 更新从底部到顶部
A[3]: RGB/BGR 顺序(POR = 0)
0 RGB
1 BGR
A[2]: 显示数据锁存数据(POR = 0)
0 LCD 更新从左到右
1 LCD 更新从右到左
9.5 get_display_mode
命令 0x0D
参数 1
描述
获取显示图像模式的状态
A[7]: 垂直滚动开/关(POR = 0)
0 垂直滚动关
1 垂直滚动开
A[5]: 反转模式开/关(POR = 0)
0 反转模式关
1 反转模式开
A[2:0]: 伽马曲线选择(POR = 011)
000 伽马曲线 0
001 伽马曲线 1
010 伽马曲线2
011 伽马曲线3
100 保留
101 保留
110 保留
111 保留
9.6 get_tear_effect_mode
命令 0x0E
参数 1
描述
获取ssd1963当前的撕裂效果模式
A[7]: 撕裂效果行模式(POR = 0)
0 撕裂效果关
1 撕裂效果开
9.7 enter_sleep_mode
命令 0x10
参数 无
描述
关闭面板。这个命令使ssd1963进入睡眠模式,如果set_gpio_conf(0xb8 B0 = 0)并拉低GPIO[ 0 ]
如果GPIO [ 0 ]为正常的GPIO或LCD混合信号,这命令不会影响GPIO [ 0 ]。
注意:
该命令后,主处理器再向 SSD1963 发送新命令前必须等候 5MS
9.8 exit_sleep_mode
命令 0x11
参数 无
描述
打开面板。这个命令使ssd1963退出睡眠模式,如果set_gpio_conf(0xb8 B0 = 0)并拉高GPIO[ 0 ]
如果GPIO [ 0 ]为正常的GPIO或LCD混合信号,这命令不会影响GPIO [ 0 ]。
注意:
该命令后,主处理器再向 SSD1963 发送新命令前必须等候 5MS
**这个命令将自动触发 set_display_on(0x29)
9.9 enter_partial_mode
命令 0x12
参数 无
描述
一旦enter_partial_mode被触发,部分显示模式窗口由set_partial_area(0x30)描述。
一旦enter_normal_mode(0x13)被触发,局部显示模式将结束。
9.
命令
参数
描述
9.10 enter_normal_mode
命令 0x13
参数 无
描述
这个命令导致ssd1963进入正常模式。正常模式是指部分显示和垂直滚动模式关闭。这意味着整个显示区用于
显示图像
9.11 exit_invertl_mode
命令 0x20
参数 无
描述
这个命令使ssd1963停止反相图像数据在显示面板。帧缓冲区的内容保持不变。
9.12 enter_invertl_mode
命令 0x21
参数 无
描述
这个命令使ssd1963反转图像数据在显示面板。帧缓冲区的内容仍不变的。
9. set_gamma_curve
命令 0x26
参数 1
描述
选择用于显示板的伽马曲线
9.14 set_display_off
命令 0x28
参数 无
描述
清空显示面板。帧缓冲区的内容不变。
9.15 set_display_on
命令 0x29
参数 无
描述
在显示面板上显示的图像
9.16 set_column_address
命令 0x2A
参数 4
描述
设置主机访问帧缓冲区的列地址,相关寄存器read_memory_continue(0x3e)和write_memorty_continue(0x3C)
SC[15:8]:开始列数的高字节(POR = 00000000)
SC[7:0]:开始列数的低字节(POR = 00000000)
EC[15:8]:结束列数的高字节(POR = 00000000)
EC[7:0]:结束列数的低字节(POR = 00000000)
注意:SC[15:0]必须等于或小于EC[15:0]
9.17 set_page_address
命令 0x2B
参数 4
描述
设置主机访问帧缓冲区的页地址,相关寄存器 read_memory_start (0x2C), write_memory_start (0x2E),
read_memory_continue (0x3E) and write_memory_continue (0x3C)..
SP[15:8] : 开始页数(行)高字节(POR = 00000000)
SP[7:0] : 开始页数(行)低字节(POR = 00000000)
EP[15:8] : 结束页数(行)高字节(POR = 00000000)
EP[7:0] : 结束页数(行)低字节(POR = 00000000)
注意:SP15:0]必须等于或小于EP[15:0]
9.18 write_memory_start
命令0x2C 参数无 描述 将图像信息从主机处理器接口传输到SSD1963,从位置提供 set_column _address(0x2A)并设置_page_address(0x2B)。 如果set_address_mdoe(0x36)A [5] = 0: 列和页面地址分别重置为起始列(SC)和起始页(SP)。 像素数据1存储在(SC,SP)的帧缓冲器中。列地址然后递增,像素被写入 帧缓冲区,直到列地址等于结束列(EC)值。列地址然后重置为SC和 页面地址增加。像素被写入帧缓冲区,直到页面地址等于结束页(EP)值 列地址等于EC值,或者主机处理器发送另一个命令。如果像素数量 超过(EC - SC + 1)*(EP - SP + 1),忽略额外的像素。 如果set_address_mode(0x36)A [5] = 1: 列和页面地址分别重置为起始列(SC)和起始页(SP)。 像素数据1存储在(SC,SP)的帧缓冲器中。页面地址然后递增,像素被写入 帧缓冲区,直到页面地址等于结束页(EP)值。页面地址然后重置为SP和列 地址递增。像素被写入帧缓冲区,直到列地址等于结束列(EC)值 并且页面地址等于EP值,或者主机处理器发送另一个命令。如果像素数超过 (EC - SC + 1)*(EP - SP + 1)忽略额外的像素。
9.19 read_memory_start 命令0x2E 参数无
描述 将图像数据从SSD1963传输到主机处理器接口,从位置提供 set_column_address(0x2A)和set_page_address(0x2B)。 如果set_address_mode A [5] = 0: 列和页面地址分别重置为起始列(SC)和起始页(SP)。 从(SC,SP)的帧缓冲器读取像素数据1。列地址然后递增,并从中读取像素 帧缓冲区,直到列地址等于结束列(EC)值。列地址然后重置为SC和 页面地址增加。从帧缓冲区读取像素,直到页面地址等于终止页面(EP)值 列地址等于EC值,或者主机处理器发送另一个命令。 如果set_address_mode(0x36)A [5] = 1: 列和页面地址分别重置为起始列(SC)和起始页(SP)。 从(SC,SP)的帧缓冲器读取像素数据1。然后页面地址递增,并从中读取像素 帧缓冲区,直到页面地址等于结束页(EP)值。页面地址然后重置为SP和列 地址递增。从帧缓冲区读取像素,直到列地址等于结束列(EC) 值和页面地址等于EP值,或者主机处理器发送另一个命令。
9.20 set_partial_area 命令0x30 参数4 描述 此命令定义了部分显示模式的显示区域。 与此命令有两个参数相关联, 第一个定义了开始行(SR),第二个定义了结束行(ER)。 SR和ER是指帧缓冲器线指针。 SR [15:8]:开始显示行号高字节(POR = 00000000) SR [7:0]:开始显示行号低字节(POR = 00000000) ER [15:8]:结束显示行号高字节(POR = 00000000) ER [7:0]:结束显示行号低字节(POR = 00000000) 注意:SR [15:0]和ER [15:0]不能为0000h,也不能超过最后一个垂直行号。
图9-5:使用set_address_mode(0x36)设置部分区域当结束行>开始行时,[4] = 0 图9-6:使用set_address_mode(0x36)设置部分区域当结束行>开始行时,[4] = 1 如果开始行>结束行 图9-7:使用set_address_mode(0x36)设置部分区域当起始行>结束行时,[4] = 0 图9-8:使用set_address_mode(0x36)设置部分区域当开始行>结束行时,[4] = 1 9.21 set_scroll_area 命令0x33 参数6
描述 定义显示区域的垂直滚动和固定区域 TFA [15:8]:来自帧缓冲区顶部的行顶部固定区域编号的高字节(POR = 00000000) TFA [7:0]:来自帧缓冲区顶部的行的顶部固定区域的低字节(POR = 00000000) VSA [15:8]:帧缓冲区行数的垂直滚动区域的高字节(POR = 00000000) VSA [7:0]:帧缓冲区行数的垂直滚动区域的低字节(POR = 00000000) BFA [15:8]:底部固定区域的高字节,从帧缓冲区底部的行数(POR = 00000000) BFA [7:0]:底部固定区域的低字节,从帧缓冲区底部的行数(POR = 00000000) 如果set_address_mode(0x36)A [4] = 0: TFA [15:0]描述了来自帧缓冲区顶部的行数的顶部固定区域。框架的顶部 缓冲区和显示面板的顶部对齐。 VSA [15:0]以垂直方式描述了垂直滚动区域的帧数缓冲区的行数 滚动起始地址。垂直滚动区域的第一行立即在最下面的一行之后开始 顶部固定区域。垂直滚动区域的最后一行立即结束于底部最上面的行 固定区域。 BFA [15:0]描述了从帧缓冲区底部的行数的底部固定区域。的底部 帧缓冲器和显示面板的底部对齐。 TFA,VSA和BFA是指帧缓冲器线指针。
图9-9:使用set_address_mode(0x36)A [4] = 0设置滚动区域 如果set_address_mode(0x36)A [4] = 1: TFA [15:0]描述了帧缓冲区底部行数的顶部固定区域。 底部的 帧缓冲区和显示面板的底部对齐。 VSA [15:0]以垂直方式描述了垂直滚动区域的帧数缓冲区的行数 滚动起始地址。 垂直滚动区域的第一行立即在顶部最顶行之后开始 固定区域。 垂直滚动区域的最后一行立即结束在底部最底行 固定区域。 BFA [15:0]描述了从帧缓冲区顶部开始的行数的底部固定区域。 的顶部 帧缓冲区和显示面板的顶部对齐。 TFA,VSA和BFA是指帧缓冲器线指针。
图9-10:使用set_address_mode(0x36)设置滚动区域A [4] = 1
第一行从内存读取
注意 : 否则,TFA,VSA和BFA的总和必须等于显示面板的水平线数(页数) 滚动模式未定义。 在垂直滚动模式下,set_address_mode(0x36)A [5]应设置为“0” - 这仅影响帧缓冲区写入。
9.22 set_tear_off 命令0x34 参数无
描述 TE信号不会从SSD1963发送到主处理器。
9.23 set_tear_on 命令0x35 参数1 描述 在VFP启动时,TE信号从SSD1963发送到主处理器。 A [0]:撕裂效果线模式(POR = 0) 0撕裂效果输出线仅由V消隐信息组成。 1撕裂效果输出线由V消隐和H消隐信息组成 set_tear_scanline(0x44)。 当显示面板处于休眠模式时,TE信号将为低电平。
9.24 set_address_mode 命令0x36 参数1 描述 通过A [7:5]和A [3]将从主机处理器读取的帧顺序设置为帧缓冲区,并将帧缓冲区从帧缓冲区设置为显示面板 A [2:0]和A [4]。 A [7]:页面地址顺序(POR = 0) 该位控制数据页从主机处理器传输到SSD1963的帧缓冲器的顺序。 0从上到下,从SP(起始页)传送到EP(页面)的页面。 1从底部到页面,从EP(终止页)传送到SP(起始页)的页面。 图9-11:A [7]页面地址顺序
A [6]:列地址顺序(POR = 0) 该位控制数据列从主机处理器传输到SSD1963的帧缓冲器的顺序。 0从左到右,从SC(开始列)传送到EC(结束列)的列。 1从右到左,从EC(结束列)转移到SC(开始列)的列
图9-12:A [6]列地址顺序
A [5]:页/列顺序(POR = 0) 该位控制数据列从主机处理器传输到SSD1963的帧缓冲器的顺序。 0正常模式 1反向模式
图9-13:A [5]页/列地址顺序 A [4]:行地址顺序(POR = 0) 该位控制显示面板的水平线刷新顺序。 显示面板上显示的图像不受影响, 不管位设置如何。 0从顶线到底线的LCD刷新。 1液晶刷新从底线到顶线。 A [3]:RGB / BGR顺序(POR = 0) 该位控制从SSD1963的帧缓冲区传输到显示面板的RGB数据顺序。 0 RGB 1 BGR
图9-14:A [3] RGB顺序
A [2]:显示数据锁存数据(POR = 0) 该位控制显示面板的垂直线数据锁定顺序。 显示面板上显示的图像不受影响, 不管位设置如何。 0从左侧到右侧刷新LCD 1左右从右侧刷新LCD A [1]:水平翻转(POR = 0) 该位从左到右翻转显示屏上显示的图像。 帧缓冲区没有改变。 0正常 1翻转 图9-15:A [1]水平翻转 A [0]:垂直翻转(POR = 0) 该位将显示面板上显示的图像从上到下翻转。 帧缓冲区没有改变。 0正常 1翻转
图9-16:A [0]垂直翻转
9.25 set_scroll_start 命令0x37 参数2 描述 此命令设置帧缓冲区中垂直滚动区域的开始。 垂直滚动区域是完全定义的 当该命令与set_scroll_area(0x33)一起使用时。 VSP [15:8]:写入显示器的帧缓冲区中行号的高字节作为垂直线的第一行 滚动区域(POR = 00000000) VSP [7:0]:写入显示器的帧缓冲区中行号的低字节作为垂直线的第一行 滚动区域(POR = 00000000) 如果set_address_mode(0x36)A [4] = 0: 例: 当顶部固定区域=底部固定区域= 0时,垂直滚动区域= YY和VSP = 3。
图9-17:使用set_address_mode(0x36)设置滚动开始A [4] = 0 如果set_address_mode(0x36)A [4] = 1: 例: 当顶部固定区域=底部固定区域= 0时,垂直滚动区域= YY和VSP = 3。
图9-18:使用set_address_mode(0x36)设置滚动开始A [4] = 1 注意 : 如果set_address_mode,(0x36)A [4] = 0,TFA [15:0] - 1 <VSP [15:0]帧缓冲区中的行数--BFA [15:0] 如果set_address_mode,(0x36)A [4] = 1,BFA [15:0] - 1 <VSP [15:0]帧缓冲器中的行数 - TFA [15:0]
9.26 exit_idle_mode 命令0x38 参数无 描述 此命令使SSD1963退出空闲模式。 全彩色深度用于显示面板。
9.27 enter_idle_mode 命令0x39 参数无 描述 该命令使SSD1963进入空闲模式。 在空闲模式下,颜色深度降低。 使用R,G和B中的每一个的MSB,显示面板上显示颜色 帧缓冲区中的颜色分量。
表9-1输入空闲模式内存与显示颜色
9.28 write_memory_continue 命令0x3C 参数无 描述 从上一个write_memory_continue将图像信息从主机处理器接口传输到SSD1963 (0x3C)或write_memory_start(0x2C)。 如果set_address_mode(0x36)A [5] = 0: 在先前的write_memory_start(0x2C)或者写入范围之后,数据从像素位置继续写入 write_memory_continue(0x3C)。然后将列地址递增,并将像素写入帧缓冲区直到 列地址等于结束列(EC)值。然后将列地址重置为SC,页面地址为 递增。像素被写入帧缓冲区,直到页面地址等于结束页(EP)值和列 地址等于EC值,或者主机处理器发送另一个命令。如果像素数超过(EC - SC +) 1)*(EP - SP + 1)忽略额外的像素。 如果set_address_mode(0x36)A [5] = 1: 在先前的write_memory_start(0x2C)或者写入范围之后,数据从像素位置继续写入 write_memory_continue(0x3C)。页面地址然后递增,像素被写入帧缓冲区直到 页面地址等于结束页面(EP)值。页面地址然后重置为SP,列地址为 递增。像素被写入帧缓冲区,直到列寄存器等于结束列(EC)值 页面地址等于EP值,或者主机处理器发送另一个命令。如果像素数超过(EC - SC + 1)*(EP - SP + 1)忽略额外的像素。
9.29 read_memory_continue 命令0x3E 参数无 描述 在最后一次read_memory_continue(0x3E)之后,将SSD1963中的图像数据读取到主机处理器,或者 read_memory_start(0x2E)。 如果set_address_mode(0x36)A [5] = 0: 在先前的read_memory_start(0x2E)的读取范围之后,从像素位置继续读取像素,或者 read_memory_continue(0x3E)。然后列列地址递增,并从帧缓冲区读取像素直到 列地址等于结束列(EC)值。然后将列地址重置为SC,页面地址为 递增。从帧缓冲区读取像素,直到页面地址等于结束页(EP)值和列 地址等于EC值,或者主机处理器发送另一个命令。 如果set_address_mode(0x36)A [5] = 1: 在先前的read_memory_start(0x2E)的读取范围之后,从像素位置继续读取像素,或者 read_memory_continue(0x3E)。然后页面地址递增,并从帧缓冲区读取像素直到 页面地址等于结束页面(EP)值。页面地址然后重置为SP,列地址为 递增。从帧缓冲区读取像素,直到列地址等于结束列(EC)值 页面地址等于EP值,或者主机处理器发送另一个命令。
9.30 set_tear_scanline 命令0x44 参数2 描述 当显示面板刷新到达所提供的扫描线时,TE信号从SSD1963发送到主处理器, N. N [15:8]:扫描线的高字节(POR = 00000000) N [7:0]:扫描线的低字节(POR = 00000000) 注意 : 设置N = 0的Tear Scanline等于set_tear_on(0x35)A [0] = 0。 此命令对当前帧后的帧起作用。 因此,如果撕裂效应(TE)信号已经存在 ON,TE输出将继续按前一个set_tear_on(0x35)或set_tear_scanline (0x44),直到帧结束。 9.31 get_scanline 命令0x45 参数2 描述 获取当前的扫描线,N. N [15:8]:当前扫描线的高字节(POR = 00000000) N [7:0]:当前扫描线的低字节(POR = 00000000)
9.32 read_ddb 命令0xA1 参数5 描述 阅读SSD1963的DDB(设备描述符块)信息。 SSL [15:8]:所罗门系统的供应商ID高字节,始终为01h(POR = 00000001) SSL [7:0]:所罗门系统的供应商编号低字节,始终为57h(POR = 010101110) PROD [7:0]:产品编号,始终为61h(POR = 01100001) REV [2:0]:修订代码,始终为01h(POR = 001) 退出代码,始终为FFh(POR = 11111111)
9.33 set_lcd_mode 命令0xB0 参数7
描述 设置LCD面板模式和分辨率 A [5]:TFT面板数据宽度(POR = 0) 0 18位 1 24位 A [4]:TFT颜色深度增强使能(POR = 0) 0禁用FRC或抖动 1启用FRC或抖动以进行颜色深度增强 如果面板数据宽度设置为24位,则FRC和抖动功能将自动禁用,无论其值如何 寄存器。 A [3]:TFT FRC使能(POR = 0) 0 TFT抖动使能 1个TFT FRC使能 A [2]:LSHIFT极性(POR = 0) 设置点时钟脉冲极性。 0数据锁存在下降沿 1数据锁存在上升沿 A [1]:LLINE极性(POR = 0) 设置水平同步脉冲极性。 0低电平 1活跃高 A [0]:LFRAME极性(POR = 0) 设置垂直同步脉冲极性。 0低电平 1活跃高 B [6:5]:TFT型(POR = 01) 00,01 TFT模式 10串行RGB模式 11串行RGB +虚拟模式 HDP [10:8]:水平面板大小的高字节(POR = 010) HDP [7:0]:水平面板尺寸的低字节(POR = 01111111) 水平面板尺寸=(HDP + 1)像素 VDP [10:8]:垂直面板大小的高字节(POR = 001) VDP [7:0]:垂直面板尺寸的低字节(POR = 11011111) 垂直面板尺寸=(VDP + 1)线 G [5:3]:串行TFT接口的偶数RGB序列(POR = 000) 000 RGB 001 RBG 010 GRB 011 GBR 100 BRG 101 BGR 11x保留 G [2:0]:串行TFT接口的奇数行RGB序列(POR = 000) 000 RGB 001 RBG 010 GRB 011 GBR 100 BRG 101 BGR 11x保留
9.34 get_lcd_mode 命令0xB1 参数7 描述 获取当前的LCD面板模式和分辨率 A [5]:TFT面板数据宽度(POR = 0) 0 18位 1 24位 A [4]:TFT颜色深度增强使能(POR = 0) 0禁用FRC或抖动 1启用FRC或抖动以进行颜色深度增强 如果面板数据宽度设置为24位,则FRC和抖动功能将自动禁用,无论其值如何 寄存器。 A [3]:TFT FRC使能(POR = 0) 0 TFT抖动使能 1个TFT FRC使能 A [2]:LSHIFT极性(POR = 0) 点时钟脉冲极性。 0数据锁存在下降沿 1数据锁存在上升沿 A [1]:LLINE极性(POR = 0) 水平同步脉冲极性。 0低电平 1活跃高 A [0]:LFRAME极性(POR = 0) 垂直同步脉冲极性。 0低电平 1活跃高 B [6:5]:TFT型(POR = 01) 00,01 TFT模式 10串行RGB模式 11串行RGB +虚拟模式 HDP [10:8]:水平面板大小的高字节(POR = 010) HDP [7:0]:水平面板尺寸的低字节(POR = 01111111) VDP [10:8]:垂直面板尺寸的高字节(POR = 001)SSD1963 Rev 1.1 P 47/93 2010年1月Solomon Systech VDP [7:0]:垂直面板尺寸的低字节(POR = 11011111) G [5:3]:偶数行RGB序列(POR = 000) 000 RGB 001 RBG 010 GRB 011 GBR 100 BRG 101 BGR 11x保留 G [2:0]:奇数行RGB序列(POR = 000) 000 RGB 001 RBG 010 GRB 011 GBR 100 BRG 101 BGR 11x保留
9.35 set_hori_period 命令0xB4 参数8 描述 设置前廊和后廊 HT [10:8]:像素时钟中水平总周期(显示+非显示)的高字节(POR = 010) HT [7:0]:像素时钟中水平总周期的低字节(显示+非显示)(POR = 10101111) 水平总周期=(HT + 1)像素 HPS [10:8]:水平同步(LLINE)信号开始与第一个信号之间的非显示周期的高字节 显示数据。 (POR = 000) HPS [7:0]:水平同步(LLINE)信号开始与第一个信号之间的非显示周期的低字节 显示数据。 (POR = 00100000) 对于TFT:水平同步脉冲起始位置= HPS像素 串行TFT:水平同步脉冲起始位置= HPS像素+ LPSPP子像素 HPW [6:0]:以像素时钟设置水平同步脉冲宽度(LLINE)。 (POR = 0000111) 水平同步脉冲宽度=(HPW + 1)像素Solomon Systech 2010年1月P 48/93修订版1.1 SSD1963 LPS [10:8]:以像素时钟设置水平同步脉冲(LLINE)开始位置。 (POR = 000) LPS [7:0]:在起始时设置水平同步脉冲宽度(LLINE)。 (POR = 00000000) 水平显示周期开始位置= LPS像素 LPSPP [1:0]:设置串行TFT接口的水平同步脉冲子像素起始位置(POR = 00) 时序参见图13-5。
9.36 get_hori_period 命令0xB5 参数8 描述 获取当前的前廊和后廊设置 HT [10:8]:像素时钟的水平总周期(显示+非显示)的高字节(POR = 010) HT [7:0]:像素时钟中水平总周期的低字节(显示+非显示)(POR = 10101111) HPS [10:8]:水平同步(LLINE)信号开始与第一个信号之间的非显示周期的高字节 显示数据。 (POR = 000) HPS [7:0]:水平同步(LLINE)信号开始与第一个信号之间的非显示周期的低字节 显示数据。 (POR = 00100000) HPW [6:0]:像素时钟中的水平同步脉冲宽度(LLINE)。 (POR = 0000111) LPS [10:8]:水平同步脉冲(LLINE)的高字节以像素时钟开始位置。 (POR = 000) LPS [7:0]:起始时水平同步脉冲宽度(LLINE)的低字节。 (POR = 00000000) LPSPP [1:0]:水平同步脉冲子像素开始位置(POR = 00)
9.37 set_vert_period 命令0xB6 参数7 描述 设置最后扫描线与下一个LFRAME脉冲之间的垂直消隐间隔 VT [10:8]:行中垂直总数(显示+非显示)周期的高字节(POR = 001) VT [7:0]:行中的垂直总数(显示+非显示)周期的低字节(POR = 11101111) 垂直总计=(VT + 1)行 VPS [10:8]:高字节,非帧显示周期,以帧为起点和第一个显示数据之间的行。 (POR = 000) VPS [7:0]:帧的开头与第一个显示数据之间的行中的非显示周期。 (POR = 00000100) 垂直同步脉冲起始位置= VPS线 VPW [6:0]:设置垂直同步脉冲宽度(LFRAME)。 (POR = 000001) 垂直同步脉冲宽度=(VPW + 1)线 FPS [10:8]:垂直同步脉冲(LFRAME)的高位字节开始位置。 (POR = 000) FPS [7:0]:垂直同步脉冲(LFRAME)的低字节以行开始位置。 (POR = 00000000) 垂直显示周期开始位置= FPS线 时序参见图13-5。
9.38 get_vert_period 命令0xB7 参数7 描述 获取最后一条扫描线和下一条LFRAME脉冲之间的垂直消隐间隔Soloech 2010年1月P 50/93 Rev 1.1 SSD1963 VT [10:8]:行中垂直总数(显示+非显示)周期的高字节(POR = 001) VT [7:0]:行中的垂直总数(显示+非显示)周期的低字节(POR = 01111111) VPS [10:8]:非显示周期的高字节,以帧为起点和第一个显示数据之间的行进行排列。 (POR = 000) VPS [7:0]:非显示周期的低字节,以帧为起点和第一个显示数据为一行。 (POR = 00000100) VPW [6:0]:行中的垂直同步脉冲宽度(LFRAME)。 (POR = 000001) FPS [10:8]:垂直同步脉冲(LFRAME)的高位字节开始位置。 (POR = 000) FPS [7:0]:垂直同步脉冲(LFRAME)的低字节以行开始位置。 (POR = 00000000)
9.39 set_gpio_conf 命令0xB8 参数2 描述 设置GPIO配置。如果GPIO不用于LCD,请设置方向。否则,它们被切换 LCD信号由0xC0 - 0xCF。 A [7]:GPIO3配置(POR = 0) 0 GPIO3由主机控制 1个GPIO3由LCDC控制 A [6]:GPIO2配置(POR = 0) 0 GPIO2由主机控制 1个GPIO2由LCDC控制 A [5]:GPIO1配置(POR = 0) 0 GPIO1由主机控制 1 GPIO1由LCDC控制 A [4]:GPIO0配置(POR = 0) 0 GPIO0由主机控制 1 GPIO0由LCDC控制 A [3]:GPIO3方向(POR = 0) 0输入GPIO3 1输出GPIO3 A [2]:GPIO3方向(POR = 0) 0输入GPIO2 1输出GPIO2 A [1]:GPIO1方向(POR = 0) 0输入GPIO1 1输出GPIO1 A [0]:GPIO0方向(POR = 0) 0输入GPIO0 1 GPIO0是outputSSD1963 Rev 1.1 P 51/93 2010年1月Solomon Systech B [0]:GPIO0方向(POR = 0) 0 GPIO0用于通过enter_sleep_mode(0x10)或exit_sleep_mode(0x11)控制面板电源。 1 GPIO0用作通用GPIO
9.40 get_gpio_conf 命令0xB9 参数2 描述 获取当前的GPIO配置 A [7]:GPIO3配置(POR = 0) 0 GPIO3由主机控制 1个GPIO3由LCDC控制 A [6]:GPIO2配置(POR = 0) 0 GPIO2由主机控制 1个GPIO2由LCDC控制 A [5]:GPIO1配置(POR = 0) 0 GPIO1由主机控制 1 GPIO1由LCDC控制 A [4]:GPIO0配置(POR = 0) 0 GPIO0由主机控制 1 GPIO0由LCDC控制 A [3]:GPIO3方向(POR = 0) 0输入GPIO3 1输出GPIO3 A [2]:GPIO3方向(POR = 0) 0输入GPIO2 1输出GPIO2 A [1]:GPIO1方向(POR = 0) 0输入GPIO1 1输出GPIO1 A [0]:GPIO0方向(POR = 0) 0输入GPIO0 1输出GPIO0 B [0]:GPIO0方向(POR = 0) 0 GPIO0用于通过enter_sleep_mode(0x10)或exit_sleep_mode(0x11)控制面板电源, 1 GPIO0用作通用GPIO
9.41 set_gpio_value 命令0xBA 参数1 描述 将GPIO配置为输出的GPIO值 A [3]:GPIO3的值(POR = 0) 0 GPIO3输出0 1个GPIO3输出1 A [2]:GPIO2值(POR = 0) 0 GPIO2输出0 1个GPIO2输出1 A [1]:GPIO1值(POR = 0) 0 GPIO1输出0 1个GPIO1输出1 A [0]:GPIO0值(POR = 0) 0 GPIO0输出0 1个GPIO0输出1
9.42 get_gpio_status 命令0xBB 参数1 描述 读取当前的GPIO状态。 如果单个GPIO被配置为输入,则该值是相应的状态 销。 否则,它是编程值。 A [3]:GPIO3值(POR:取决于pad值) 0 GPIO3被拉低 1 GPIO3被拉高 A [2]:GPIO2值(POR:取决于pad值) 0 GPIO2拉低 1 GPIO2被拉高 A [1]:GPIO1值(POR:取决于pad值) 0 GPIO1拉低 1 GPIO1被拉高 A [0]:GPIO0值(POR:取决于pad值) 0 GPIO0被拉低 1 GPIO0被拉高 9.43 set_post_proc 命令0xBC 参数4 描述 设置图像后处理器 A [7:0]:设置对比度值(POR = 01000000) B [7:0]:设置亮度值(POR = 10000000) C [7:0]:设置饱和度值(POR = 01000000) D [0]:后处理器使能(POR = 0) 0禁用后处理器 1启用后处理器
9.44 get_post_proc 命令0xBD 参数4 描述 获取图像后处理器 A [7:0]:获取对比度值(POR = 01000000) B [7:0]:获取亮度值(POR = 10000000) C [7:0]:获取饱和值(POR = 01000000) D [0]:后处理器使能(POR = 0) 0禁用后处理器 1启用后处理器
9.45 set_pwm_conf 命令0xBE 参数6 描述 设置PWM配置 PWMF [7:0]:设置系统时钟的PWM频率(POR = 00000000) PWM信号频率= PLL时钟/(256 * PWMF [7:0])/ 256 PWM [7:0]:设置PWM占空比(POR = 00000000) PWM占空比= PWM [7:0] / 256,DBC禁止(0xD0)A0 = 0 如果DBC使能(0xD0)A0 = 1,这些参数将被忽略 注意:如果PWM [7:0] = 00h,PWM总是为0
C [3]:PWM配置(POR = 0) 0主机控制PWM 1个由DBC控制的PWM C [0]:PWM使能(POR = 0) 0 PWM禁止 1个PWM使能 D [7:0]:DBC手动亮度(POR = 00000000) 设置手动亮度级别。当手动亮度模式(0xD0)A [6]使能时,最后的DBC占空比 输出将乘以此值/ 255。 PWM占空比= DBC输出* D [7:0] / 255 00 Dimmest FF最亮 E [7:0]:DBC最小亮度(POR = 00000000) 设置最小亮度级别。当手动亮度模式(0xD0)A [6]使能时,DBC占空比输出 受此值限制。这将防止背光太暗或不亮。 00 Dimmest FF最亮
F [3:0]:亮度预分频器(POR = 0000) 设置亮度预分频器,以控制手动亮度在不同级别之间的变化。 有 在手动亮度饱和之前,滤波器将经历多次迭代。 此参数有效 转换效果使能(0xD0)A5 = 1 迭代比=系统频率/ Divcode / 32768 F [3:0] Divcode 0000关闭 0001 1 0010 2 0011 3 0100 4 0101 6 0110 8 0111 12 1000 16 1001 24 1010 32 1011 48 1100 64 1101 96 1110 128 1111 192
9.46 get_pwm_conf 命令0xBF 参数7 描述 获取PWM配置 PWMF [7:0]:在系统时钟中获取PWM频率(POR = 00000000) PWM [7:0]:获取PWM占空比(POR = 00000000) C [3]:PWM配置(POR = 0) 0主机控制PWM 1个由DBC控制的PWM C [0]:PWM使能(POR = 0) 0 PWM禁止 1个PWM使能 D [7:0]:DBC手动亮度(POR = 00000000) 获得亮度级别 00 Dimmest FF brightestSolomon Systech 2010年1月P 56/93修订版1.1 SSD1963 E [7:0]:DBC最小亮度(POR = 00000000) 获得最小亮度级别。 00 Dimmest FF最亮 F [3:0]:亮度预分频器(POR = 0000) 获取亮度预分频器 G [7:0]:动态背光占空比:获得由PWM控制的当前PWM占空比(POR = 00000000)
9.47 set_lcd_gen0 命令0xC0 参数7 描述 设置LCD信号发生器0的上升,下降,周期和切换属性 A [7]:每帧启动时复位LCD发生器0 0发生器0不会在帧的起始点复位 1发生器0将在帧的起始点复位 GF0 [10:8]:发生器0的下降位置的最高3位(POR = 000) GF0 [7:0]:发生器0下降位置的低字节(POR = 00000001) GR0 [10:8]:发生器0的上升位置的最高3位(POR = 000) GR0 [7:0]:发生器0的上升位置的低字节(POR = 00000000) F [7]:在非显示期间将发生器0输出强制为0 0发电机0正常 在非显示周期内,1个发生器0的输出被强制为0 F [6:5]:将发生器0的输出强制为0或奇数行 00发生器0在奇数和偶数行均正常 01发生器0输出在奇数行强制为0 10发生器0输出在偶数行中强制为0 11发生器0在奇数和偶数行均正常 F [4:3]:发生器0切换模式 00禁用 01按像素时钟切换(LSHIFT) 10按行切换(LLINE) 11按帧切换(LFRAME) GP0 [10:8]:发生器0周期的最高3位(POR = 100) GP0 [7:0]:发生器0周期的低字节(POR = 00000000)
9.48 get_lcd_gen0 命令0xC1 参数7
描述 获得LCD信号发生器0的上升,下降,周期和切换属性 A [7]:每帧启动时复位LCD发生器0 0发生器0不会在帧的起始点复位 1发生器0将在帧的起始点复位 GF0 [10:8]:发生器0的下降位置的最高3位(POR = 000) GF0 [7:0]:发生器0下降位置的低字节(POR = 00000001) GR0 [10:8]:发生器0的上升位置的最高3位(POR = 000) GR0 [7:0]:发生器0的上升位置的低字节(POR = 00000000) F [7]:在非显示期间将发生器0输出强制为0 0发电机0正常 在非显示周期内,1个发生器0的输出被强制为0 F [6:5]:将发生器0的输出强制为0或奇数行 00发生器0在奇数和偶数行均正常 01发生器0输出在奇数行强制为0 10发生器0输出在偶数行中强制为0 11发生器0在奇数和偶数行均正常 F [4:3]:发生器0切换模式 00禁用 01按像素时钟切换(LSHIFT) 10按行切换(LLINE) 11按帧切换(LFRAME) GP0 [10:8]:发生器0周期的最高3位(POR = 100) GP0 [7:0]:发生器0周期的低字节(POR = 00000000)
9.49 set_lcd_gen1 命令0xC2 参数7
描述 设置LCD信号发生器1的上升,下降,周期和切换属性 A [7]:每帧开始重置LCD发生器1 0发生器1不会在帧的起始点复位 1发生器1将在帧的起始点复位 GF1 [10:8]:发生器1下降位置的最高3位(POR = 000) GF1 [7:0]:发生器1下降位置的低字节(POR = 00000001) GR1 [10:8]:发生器1上升位置的最高3位(POR = 000) GR1 [7:0]:发生器1上升位置的低字节(POR = 00000000) F [7]:在非显示期间将发生器1的输出强制为0 0发电机1正常 在非显示期间,1个发生器1的输出被强制为0 F [6:5]:将发生器1的输出强制为0或奇数行 00发生器1在奇数和偶数行均正常 01发生器1输出在奇数行强制为0 10发生器1输出在偶数行中强制为0 11发生器1在奇数和偶数行均正常 F [4:3]:发生器1切换模式 00禁用 01按像素时钟切换(LSHIFT) 10按行切换(LLINE) 11按帧切换(LFRAME) GP1 [10:8]:发生器1周期的最高3位(POR = 100) GP1 [7:0]:发生器1周期的低字节(POR = 00000000)
9.50 get_lcd_gen1 命令0xC3 参数7
描述 获取LCD信号发生器1的上升,下降,周期和切换属性 A [7]:每帧开始重置LCD发生器1 0发生器1不会在帧的起始点复位 1发生器1将在帧的起始点复位 GF1 [10:8]:发生器1下降位置的最高3位(POR = 000) GF1 [7:0]:发生器1下降位置的低字节(POR = 00000001) GR1 [10:8]:发生器1上升位置的最高3位(POR = 000) GR1 [7:0]:发生器1上升位置的低字节(POR = 00000000) F [7]:在非显示期间将发生器1的输出强制为0 0发电机1正常 在非显示期间,1个发生器1的输出被强制为0 F [6:5]:将发生器1的输出强制为0或奇数行 00发生器1在奇数和偶数行均正常 01发生器1输出在奇数行强制为0 10发生器1输出在偶数行中强制为0 11发生器1在奇数和偶数行均正常 F [4:3]:发生器1切换模式 00禁用 01按像素时钟切换(LSHIFT) 10按行切换(LLINE) 11按帧切换(LFRAME) GP1 [10:8]:发生器1周期的最高3位(POR = 100) GP1 [7:0]:发生器1周期的低字节(POR = 00000000)
9.51 set_lcd_gen2 命令0xC4 参数7
描述 设置LCD信号发生器2的上升,下降,周期和切换属性 A [7]:每帧开始复位LCD发生器2 0发生器2不会在帧的起始点复位 1发生器2将在帧的起始点复位 GF2 [10:8]:发生器2下降位置的最高3位(POR = 000) GF2 [7:0]:发生器2下降位置的低字节(POR = 00000001) GR2 [10:8]:发生器2上升位置的最高3位(POR = 000) GR2 [7:0]:发生器2上升位置的低字节(POR = 00000000) F [7]:在非显示期间将发生器2输出强制为0 0发电机2正常 1个发生器2的输出在非显示期间被强制为0 F [6:5]:将奇偶或偶数行的发生器2输出强制为0 00发生器2在奇数和偶数行均正常 01发生器2输出在奇数行强制为0 10发生器2输出在偶数行中强制为0 11发生器2在奇数和偶数行均正常 F [4:3]:发生器2切换模式 00禁用 01按像素时钟切换(LSHIFT) 10按行切换(LLINE) 11按帧切换(LFRAME) GP2 [10:8]:发生器2周期的最高3位(POR = 100) GP2 [7:0]:发生器2周期的低字节(POR = 00000000)
9.52 get_lcd_gen2 命令0xC5 参数7
描述 获取LCD信号发生器2的上升,下降,周期和切换属性 A [7]:每帧开始复位LCD发生器2 0发生器2不会在帧的起始点复位 1发生器2将在帧的起始点复位 GF2 [10:8]:发生器2下降位置的最高3位(POR = 000) GF2 [7:0]:发生器2下降位置的低字节(POR = 00000001) GR2 [10:8]:发生器2上升位置的最高3位(POR = 000) GR2 [7:0]:发生器2上升位置的低字节(POR = 00000000) F [7]:在非显示期间将发生器2输出强制为0 0发电机2正常 1个发生器2的输出在非显示期间被强制为0 F [6:5]:将奇偶或偶数行的发生器2输出强制为0 00发生器2在奇数和偶数行均正常 01发生器2输出在奇数行强制为0 10发生器2输出在偶数行中强制为0 11发生器2在奇数和偶数行均正常 F [4:3]:发生器2切换模式 00禁用 01按像素时钟切换(LSHIFT) 10按行切换(LLINE) 11按帧切换(LFRAME) GP2 [10:8]:发生器2周期的最高3位(POR = 100) GP2 [7:0]:发生器2周期的低字节(POR = 00000000)
9.53 set_lcd_gen3 命令0xC6 参数7
描述 设置LCD信号发生器3的上升,下降,周期和切换属性 A [7]:每帧开始重置LCD发生器3 0发生器3不会在帧的起始点复位 1发生器3将在帧的起始点复位 GF3 [10:8]:发生器3下降位置的最高3位(POR = 000) GF3 [7:0]:发生器3的下降位置(POR = 00000001) GR3 [10:8]:发生器3上升位置的最高3位(POR = 000) GR3 [7:0]:发生器3的上升位置的低字节(POR = 00000000) F [7]:在非显示期间将发生器3的输出强制为0 0发电机3正常 在非显示期间,1个发生器3的输出被强制为0 F [6:5]:将发生器3的输出强制为0或奇数行 00发生器3在奇数和偶数行中都是正常的 01发生器3输出在奇数行强制为0 10发生器3输出在偶数行中强制为0 11发生器3在奇数和偶数行均正常 F [4:3]:发生器3切换模式 00禁用 01按像素时钟切换(LSHIFT) 10按行切换(LLINE) 11按帧切换(LFRAME) GP3 [10:8]:发生器3周期的最高3位(POR = 100) GP3 [7:0]:发生器3周期的低字节(POR = 00000000)
9.54 get_lcd_gen3 命令0xC7 参数7
描述 获得LCD信号发生器3的上升,下降,周期和切换属性 A [7]:每帧开始重置LCD发生器3 0发生器3不会在帧的起始点复位 1发生器3将在帧的起始点复位 GF3 [10:8]:发生器3下降位置的最高3位(POR = 000) GF3 [7:0]:发生器3的下降位置(POR = 00000001) GR3 [10:8]:发生器3上升位置的最高3位(POR = 000) GR3 [7:0]:发生器3的上升位置的低字节(POR = 00000000) F [7]:在非显示期间将发生器3的输出强制为0 0发电机3正常 在非显示期间,1个发生器3的输出被强制为0 F [6:5]:将发生器3的输出强制为0或奇数行 00发生器3在奇数和偶数行中都是正常的 01发生器3输出在奇数行强制为0 10发生器3输出在偶数行中强制为0 11发生器3在奇数和偶数行均正常 F [4:3]:发生器3切换模式 00禁用 01按像素时钟切换(LSHIFT) 10按行切换(LLINE) 11按帧切换(LFRAME) GP3 [10:8]:发生器3周期的最高3位(POR = 100) GP3 [7:0]:发生器3周期的低字节(POR = 00000000)
9.55 set_gpio0_rop 命令0xC8 参数2
描述 使用ROP操作相对于LCD信号发生器设置GPIO0。 GPIO0配置为无效果 一般GPIO。 A [6:5]:由LCDC控制时GPIO0的源1(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [3:2]:由LCDC控制时GPIO0的源2(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [1:0]:由LCDC控制时GPIO0的源3(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 B [7:0]:对于GPIO0,ROP操作到源1,2和3(POR = 00000000) 请参阅ROP操作的应用笔记
9.56 get_gpio0_rop 命令0xC9 参数2 描述 获取关于LCD信号发生器的GPIO0属性。 A [6:5]:由LCDC控制时GPIO0的源1(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3Solomon Systech 2010年1月P 66/93修订版1.1 SSD1963 A [3:2]:由LCDC控制时GPIO0的源2(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [1:0]:由LCDC控制时GPIO0的源3(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 B [7:0]:对于GPIO0,ROP操作到源1,2和3(POR = 00000000) 请参阅ROP操作的应用笔记
9.57 set_gpio1_rop 命令0xCA 参数2
描述 使用ROP操作设置相对于LCD信号发生器的GPIO1。 GPIO1配置为无效果 一般GPIO。 A [6:5]:由LCDC控制时GPIO1的源1(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [3:2]:由LCDC控制时GPIO1的源2(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [1:0]:由LCDC控制时GPIO1的源3(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 B [7:0]:对于GPIO1,源1,2和3的复用操作(POR = 00000000) 请参阅ROP操作的应用笔记
9.58 get_gpio1_rop 命令0xCB 参数2
描述 获取关于LCD信号发生器的GPIO1属性。 A [6:5]:由LCDC控制时GPIO1的源1(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [3:2]:由LCDC控制时GPIO1的源2(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [1:0]:由LCDC控制时GPIO1的源3(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 B [7:0]:对于GPIO1,源1,2和3的复用操作(POR = 00000000) 请参阅ROP操作的应用笔记
9.59 set_gpio2_rop 命令0xCC 参数2 描述 使用ROP操作相对于LCD信号发生器设置GPIO2。 GPIO2配置为无效果 一般GPIO。 A [6:5]:由LCDC控制时GPIO2的源1(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3Solomon Systech 2010年1月P 68/93修订版1.1 SSD1963 A [3:2]:由LCDC控制时GPIO2的源2(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [1:0]:由LCDC控制时GPIO2的源3(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 B [7:0]:对于GPIO2,源1,2和3的复用操作(POR = 00000000) 请参阅ROP操作的应用笔记 9.60 get_gpio2_rop 命令0xCD 参数2 描述 获取关于LCD信号发生器的GPIO2属性。 A [6:5]:由LCDC控制时GPIO2的源1(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [3:2]:由LCDC控制时GPIO2的源2(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [1:0]:由LCDC控制时GPIO2的源3(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 B [7:0]:对于GPIO2,源1,2和3的复用操作(POR = 00000000) 请参阅ROP操作的应用笔记
9.61 set_gpio3_rop 命令0xCE 参数2
描述 使用ROP操作相对于LCD信号发生器设置GPIO3。 如果将GPIO3配置为,则不起作用 一般GPIO。 A [6:5]:由LCDC控制时GPIO3的源1(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [3:2]:由LCDC控制时GPIO3的源2(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [1:0]:由LCDC控制时GPIO3的源3(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 B [7:0]:对于GPIO3,源1,2和3的ROP操作复用(POR = 00000000) 请参阅ROP操作的应用笔记
9.62 get_gpio3_rop 命令0xCF 参数2 描述 获取关于LCD信号发生器的GPIO3属性。 A [6:5]:由LCDC控制时GPIO3的源1(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3Solomon Systech 2010年1月P 70/93修订版1.1 SSD1963 A [3:2]:由LCDC控制时GPIO3的源2(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 A [1:0]:由LCDC控制时GPIO3的源3(POR = 00) 00发电机0 01发电机1 10发电机2 11发电机3 B [7:0]:对于GPIO3,源1,2和3的ROP操作复用(POR = 00000000) 请参阅ROP操作的应用笔记
9.63 set_dbc_conf 命令0xD0 参数1 描述 设置动态背光控制配置。 A [6]:DBC手动亮度使能(POR = 1) 0启用 1禁用 A [5]:转换效应(POR = 0) 0转换效果禁用 1转换效果使能 过渡效果用于去除可见光背光闪烁。 如果需要快速亮度更改,建议使用 启用这一点。 A [3:2]:DBC的节能选择(POR = 00) 00 DBC被禁用 01保守模式 10正常模式 11进取模式 A [0]:DBC的主使能(POR = 0) 0 DBC禁用 1 DBC启用
硬件引脚PWM是从SSD1963到系统背光驱动器的输出信号。 所以应该配置PWM 模块启用DBC之前。 WRITE COMMAND“0xBE” 写数据“0x0E”(设置PWM频率) 写数据“0xFF”(如果使用DBC,则为虚拟值) 写数据“0x09”(使能由DBC控制的PWM) 写数据“0xFF” 写入数据“0x00” 写入数据“0x00” 写命令“0xD4”(定义阈值) 写数据... .. 写命令“0xD0” 写入数据“0x0D”(启用DBC激进模式)
9.64 get_dbc_conf 命令0xD1 参数1
描述 获取当前的动态背光配置。 A [6]:DBC手动亮度使能(POR = 1) 0启用 1禁用 A [5]:转换效应(POR = 0) 0转换效果禁用 1转换效果使能 A [3:2]:DBC的节能选择(POR = 00) 00 DBC被禁用 01保守模式 10正常模式 11进取模式 A [0]:主机使能DBC(POR = 0) 0 DBC禁用 1 DBC启用
9.65 set_dbc_th 命令0xD4 参数9 描述 设置每个省电级别的阈值。 DBC_TH1 [16]:DBC保守模式的阈值设置的高字节。 (POR = 0) DBC_TH1 [15:8]:DBC保守模式的阈值设置的第二个字节。 (POR = 00000000) DBC_TH1 [7:0]:DBC的保守模式的阈值设置的低字节。 (POR = 00000000) TH1 =显示宽度*显示高度* 3 * 0.1 / 16 DBC_TH2 [16]:DBC的正常模式的阈值设置的高字节。 (POR = 0) DBC_TH2 [15:8]:DBC的正常模式的阈值设置的第二个字节。 (POR = 00000000) DBC_TH2 [7:0]:DBC的正常模式的阈值设置的低字节。 (POR = 00000000) TH2 =显示宽度*显示高度* 3 * 0.25 / 16 DBC_TH3 [16]:DBC的进取模式的阈值设置的高字节。 (POR = 0) DBC_TH3 [15:8]:DBC的进取模式的阈值设置的第二个字节。 (POR = 00000000) DBC_TH3 [7:0]:DBC的进取模式的阈值设置的低字节。 (POR = 00000000) TH3 =显示宽度*显示高度* 3 * 0.6 / 16
9.66 get_dbc_th 命令0xD5 参数9 描述 获得每个省电级别的阈值。 DBC_TH1 [16]:DBC保守模式的阈值设置的高字节。 (POR = 0) DBC_TH1 [15:8]:DBC保守模式的阈值设置的第二个字节。 (POR = 00000000) DBC_TH1 [7:0]:DBC的保守模式的阈值设置的低字节。 (POR = 00000000) DBC_TH2 [16]:DBC的正常模式的阈值设置的高字节。 (POR = 0) DBC_TH2 [15:8]:DBC的正常模式的阈值设置的第二个字节。 (POR = 00000000) DBC_TH2 [7:0]:DBC的正常模式的阈值设置的低字节。 (POR = 00000000) DBC_TH3 [16]:DBC的进取模式的阈值设置的高字节。 (POR = 0) DBC_TH3 [15:8]:DBC的进取模式的阈值设置的第二个字节。 (POR = 00000000) DBC_TH3 [7:0]:DBC的进取模式的阈值设置的低字节。 (POR = 00000000)
9.67 set_pll 命令0xE0 参数1 描述 启动PLL。开始之前,系统使用晶体振荡器或时钟输入。 A [1]:锁定PLL(POR = 0) PLL使能100us后,可以开始锁定PLL 0使用参考时钟作为系统时钟 1使用PLL输出作为系统时钟 A [0]:使能PLL(POR = 0) 0禁用PLL 1启用PLLSolomon Systech 2010年1月P 74/93修订版1.1 SSD1963 在启用PLL之前,必须首先配置PLL设置(“0xE2”)。 PLL使能100us后,可以开始 锁定PLL。在PLL锁定后,SSD1963需要切换到PLL输出作为系统时钟。以下是程序 序列。 写命令“0xE0” 写入数据“0x01” 等待100us使PLL稳定 写命令“0xE0” 写数据“0x03” 写命令“0x01” *注意:SSD1963在PLL锁定之前在参考时钟下运行,寄存器不能设置为快于一半 参考时钟频率。例如,不允许对具有10MHz参考时钟的SSD1963进行编程 高于5M字/秒。
9.68 set_pll_mn 命令0xE2 参数3 描述 设置PLL的MN M [7:0]:PLL的乘数(M)。 (POR = 00101101) N [3:0]:PLL的分频器(N)。 (POR = 0011) C [2]:影响MN值(POR = 0) 0忽略乘数(N)和分频(N)值 1实现乘数和分频值 VCO =参考输入时钟x(M + 1) PLL频率= VCO /(N + 1) *注:250MHz <VCO <800MHz 对于10MHz参考时钟来获得100MHz PLL频率,用户无法编程M = 19和N = 1 这种情况是设置M = 29和N = 2,其中10×30/3 = 100MHz。 WRITE COMMAND“0xE2” 写数据“0x1D”(M = 29) 写数据“0x02”(N = 2) 写数据“0x54”(虚拟字节)
9.69 get_pll_mn 命令0xE3 参数3 描述 获取PLL的MN设置 M [7:0]:PLL的乘数(M)。 (POR = 00101101) N [3:0]:PLL的分频器(N)。 (POR = 0011) C [2]:影响MN值(POR = 0) 0忽略乘数(M)和除数(N)值。 1实现乘数和分频值
9.70 get_pll_status 命令0xE4 参数1 描述 获取PLL状态 A [2]:PLL锁定 0未锁定 1锁定
9.71 set_deep_sleep 命令0xE5 参数无 描述 设置深度睡眠模式。 PLL将被停止。 它需要发出2个哑读取以退出深度睡眠模式。
9.72 set_lshift_freq 命令0xE6 参数3 描述 设置LSHIFT(像素时钟)频率 LCDC_FPR [19:16]:像素时钟频率设置的最高4位。 (POR = 0111) LCDC_FPR [15:8]:像素时钟频率设置的高字节。 (POR = 11111111) LCDC_FPR [7:0]:用于像素时钟频率设置的低字节。 (POR = 11111111) 用于并行LCD接口: 将像素时钟配置为PLL频率x((LCDC_FPR + 1)/ 220) 为了在PLL频率= 100MHz时获得PCLK = 5.3MHz, 5.3MHz = 100MHz *(LCDC_FPR + 1)/ 220 LCDC_FPR = 55574 WRITE COMMAND“0xE6” 写入数据“0x00”(LCDC_FPR = 55574) 写数据“0xD9” 写入数据“0x16” 对于串行LCD接口: 将像素时钟配置为PLL频率x((LCDC_FPR + 1)/ 220)* 4 为了在PLL频率= 100MHz时获得PCLK = 5.3MHz, 5.3MHz = 100MHz *((LCDC_FPR + 1)/ 220)* 4 LCDC_FPR = 13892 WRITE COMMAND“0xE6” 写数据“0x00”(LCDC_FPR = 13892) 写数据“0x36” 写入数据“0x44”
9.73 get_lshift_freq 命令0xE7 参数3 描述 获取当前的LSHIFT(像素时钟)频率设置SD1963 Rev 1.1 P 77/93 Jan 2010 Solomon Systech LCDC_FPR [19:16]:像素时钟频率设置的最高4位。 (POR = 0111) LCDC_FPR [15:8]:像素时钟频率设置的高字节。 (POR = 11111111) LCDC_FPR [7:0]:用于像素时钟频率设置的低字节。 (POR = 11111111)
9.74 set_pixel_data_interface 命令0xF0 参数1 描述 将并行主机处理器中的像素数据格式设置为8位/ 9位/ 12位/ 16位/ 16位(565)/ 18位/ 24位 接口。 此命令仅用于显示数据,命令格式始终为8位。 A [2:0]:像素数据接口格式(POR = 101) 000 8位 001 12位 010 16位打包 011 16位(565格式) 100 18位 101 24位 110 9位 其他保留 *注意:未使用的数据总线将由SSD1963驱动到地,因此不要将未使用的数据总线连接到 MCU。
9.75 get_pixel_data_interface 命令0xF1 参数1 描述 获取并行主机处理器接口中的当前像素数据格式设置。 A [2:0]:像素数据接口格式(POR = 101) 000 8位 001 12位 010 16位打包 011 16位(565格式) 100 18位 101 24位 110 9位 其他保留
10最大评分 表10-1:最大额定值(电压参考VSS)
最大额定值是超出设备可能发生的损坏的值。 功能操作应限于 电气特性表或引脚说明部分的限制 该器件包含用于保护输入免受高静态电压或电场损坏的电路; 但是,建议 应采取正常的预防措施,以避免将任何高于最大额定电压的电压施加到该高阻抗 电路。 为了正常工作,建议将VIN和VOUT限制在VSS <(VIN或VOUT)<VDDIO范围内。 可靠性 如果未使用的输入连接到适当的逻辑电压电平(例如,VSS或VDDIO),则可以提高工作效率。 未使用的输出 必须保持开放 该设备可能是光敏感的。 应注意避免将本设备暴露于任何光源 正常运行时。 该设备不受辐射防护。
11建议的操作条件 表11-1:推荐工作条件 11.1加电顺序 图11-1:上电序列
注意 时钟参考仅适用于使用CLK时。
12直流特性 条件: 电压参考VSS VDDD,VDDPLL = 1.2V VDDIO,VDDLCD = 3.3V TA = 25°C 表12-1:直流特性
13交流特性 条件: 电压参考VSS VDDD,VDDPLL = 1.2V VDDIO,VDDLCD = 3.3V TA = 25°C CL = 50pF(总线/ CPU接口) CL = 0pF(LCD面板接口)
13.1时钟时序 表13-1:CLK(PLL旁路)的时钟输入要求
表13-2:CLK的时钟输入要求
表13-3:晶体振荡器XTAL的时钟输入要求
13.2 MCU接口时序 13.2.1并行6800系列接口时序 表13-4:并行6800系列接口时序特性(使用CS#作为时钟) *系统时钟表示外部输入时钟(PLL旁路)或内部生成时钟(PLL使能)
图13-1:并行6800系列接口时序图(使用CS#作为时钟)
表13-5:并行6800系列接口时序特性(使用E作为时钟)
图13-2:并行6800系列接口时序图(使用E作为时钟)
13.2.2并行8080系列接口时序 表13-6:并行8080系列接口时序特性 *系统时钟表示外部输入时钟(PLL旁路)或内部生成时钟(PLL使能)
图13-3:并行8080系列接口时序图(写周期)
图13-4:并行8080系列接口时序图(读周期)
13.3并联LCD接口时序 图13-5:通用TFT面板时序 LDEN HPS HDP LPS HT(= 1线) VT(= 1帧)
图13-7:串行RGB接口时序(带哑模式)
14应用实例 图14-1:SSD1963应用电路(带直接时钟输入) 略》
完整的Word格式文档51黑下载地址:
|