module ZephRay;

今朝有鱼今朝摸

Category

  • 摄影
  • 玩机
  • 硬件坑
  • 翻译
  • 软件坑
  • 随记

Tags

  • LCD
  • 点屏
  • 单片机
  • 计算器
  • 事
  • FPGA
  • STM32
  • 摄影
  • 古董
  • 测评
  • Verilog
  • 笔记本
  • 改造
  • 移植
  • Linux
  • ARM
  • 树莓派
  • 教程
  • nspire
  • 小动物
  • GameBoy
  • EPD
  • 项目
  • LED
  • 景
  • SDL
  • ThinkPad
  • HP
  • IBM
  • 晒机
  • 3DS
  • Minecraft
  • 82ES
  • Kindle
  • Assembly
  • 手办
  • 花
  • Chiptune
  • 仙剑奇侠传
  • Nikon
  • 贴图
  • 演讲
  • NDSL

Recent replies

  • 城市猎人 发表于「IBM ThinkPad 560E (Type 2640) 简单展示」
  • Khiemmy 发表于「On the way to overclock the TI nspire CX II calculator」
  • critor 发表于「On the way to overclock the TI nspire CX II calculator」
  • ZephRay 发表于「On the way to overclock the TI nspire CX II calculator」
  • critor 发表于「On the way to overclock the TI nspire CX II calculator」
  • imbushuo 发表于「About Me」
  • 070 发表于「古董电脑选型」
  • Thermit 发表于「About Me」
  • 盛崖鱼 发表于「About Me」
  • Wenting Zhang 发表于「About Me」

My

RSS (中文优先)
RSS (English preferred)

坑 / Projects
关于我 / About
简历 / CV
破烂采购计划 / Craplist
古董电脑选型
SM83(GB CPU)指令编码
Linux PI 1M位跑分
Coremark跑分
音质参考

淘宝杂货铺
Bilibili空间
GitHub

Links

cnVintage古董电子论坛
cnCalc计算器论坛

Keshuai Xu
家骅的锦绣谷
>Lithia's Core
ntzyz's space
丘丘塔台
tonoko.moe
kasora's blog
447f.Misaka
paizhang.info
spinmry实验室
Hikari Calyx Tech.
春上冰月的博客
初音没有来
FindHao
Test2g
Shell Bin
LEAFER x LAB
标签:LCD

日常点屏[26]: GameBoy Pocket LCD

2019 年 9 月 22 日分类:硬件坑#点屏#LCD

因为最近新坑(RP)的原因终于是有机会来点了点这个屏幕。讲一讲这个屏幕和其它之前遇到过的屏幕不一样的地方。首先屏幕是FSTN但是却是负高压。这两者本身并不冲突,只是通常而言FSTN的屏幕出现晚于STN,倾向于使用正高压而非负高压。其次是这个屏幕的扫描和行锁存分别有两个信号控制,一个为S,另外一个为CPL,目前并不清楚区别。再次是这个屏幕有一个叫CPG的信号,每一行会脉冲四次,第二次脉冲紧接着第一次,而第三次和第四次则是相隔较远。经测试该信号与PWM灰度有关,如调节第三次脉冲的位置即可调节较浅一级灰度的深度。向前会变淡,而向后会变浓。第四次脉冲则是控制较深灰度的深度。如果两个脉冲的位置不变而行长度增长,同样也会使两个灰度变淡。

刷新方法的话,这里采用MCU软件刷新。软件刷新目前的代码可以达到约153Hz的刷新率,那么为了节约电力大约有以下三种方案:

  • 基准:MCU持续刷新
  • 场待机:MCU刷完每一场后WFI待机,保持垂直刷新率85Hz。这种做法的问题在于MCU刷完待机期间屏幕也不显示内容,相当于占空比增加,为了达到同样亮度需要提高驱动电压,可能会带来额外的功耗开销。
  • 行待机:MCU刷完每一行后WFI待机,保持水平刷新率13.6kHz,垂直刷新率85Hz。

在当前的硬件下测试结果如下:

  • 基准:125mW
  • 场待机:117mW
  • 行待机:106mW

基本信息

  • 类型:单色点阵STN
  • 模式:FSTN Reflective
  • 分辨率:320x320
  • 灰度:2bpp
  • 驱动器:不详
  • 尺寸:2.6"
  • 背光:无

1569201522584-DSC_5023_s.jpg

MORE

MIPI-DSI 点屏笔记

2019 年 4 月 30 日分类:硬件坑#LCD

前言

MIPI-DSI接口因为需要更少的IO数量,能够提供连接器体积和布线难度上的一些优势,而被广泛应用于手机和手表屏幕上。显然作为一个点屏爱好者我也不可能忽略这种常见的屏幕接口,只是之前一直没有机会亲自研究一番,这次借着VerilogBoy的机会也算是大致了解了一下。考虑到MIPI为私有接口,对于其具体的描述在网上并不多,这里就具体介绍一下我对MIPI DSI的了解。需要注意的是,文中所有内容均基于互联网上可以找到的文档编写,并不可能完整描述MIPI DSI标准,甚至可能存在偏差或错误。本文仅供需要调试MIPI屏幕的工程师或业余爱好者入门参考。

基本概念

需要知道的是,MIPI DSI仍然只是一种用于连接屏幕的接口,而不是连接显示器的接口。前者常见的例子如DBI(包括8/16位并口和SPI)、DPI(也称为TTL,RGB和PixelBus等)和LVDS(也称为FlatLink),而后者常见的例子如VGA、DVI、HDMI和DP。前者的特点就是,通常驱动是和屏幕具体参数相关的,不同的屏幕需要不同的驱动程序。而后者的特点是,通常驱动是通用的,显示器可以通过DDC/CI或其它方式将相关的参数(如EDID)传输给驱动,驱动根据得到的信息产生需要的信号。通常来说,前者多用于嵌入式场景。不过现在后者中也出现了eDP专用于嵌入式,也许在以后能代替掉一部分现有的DSI使用场景。本文还是只讨论DSI。既然这么分类了,也就很明确,DSI也是一种不同屏幕不同驱动的接口,“DSI”其实大部分只是对于物理层和传输层的定义,具体的屏幕操作其实更往上还是以前DBI和DPI那一套。不如说,DSI其实就是把DBI和DPI打了一个包,让他们能共享几对差分线一起传输。以下所有讨论的内容仅考虑从主机到屏幕的单向传输。

低功耗模式与高速模式

DSI的物理层传输有两种模式,一种是1.2V CMOS电平的低功耗单端(LP)模式,另外一种是高速差分(HS)模式。在单端模式下,时钟线并不被使用,D0+和D0-用于传输数据和时钟,最大速度为10Mbps,其它的数据线不被使用。在差分模式下,时钟线用于传输差分时钟,最多可以有四对数据线用于传输数据,最大速度为每对数据线1Gbps。

屏幕上电后默认情况下数据线和时钟线都处于LP模式下(CLK+/CLK-均为高电平)。在LP模式下时钟线可以使用如下的系列进入HS模式:

MORE

CSTroN – Monitor powered by an ancient CSTN screen

2019 年 3 月 21 日分类:硬件坑#LCD#FPGA
Hint: this post is also available in Chinese.

Introduction

Back in the last century, when the CRT was still the most common technology for computer monitors. It was quite common to see such an argument: the LCD will probably evolve and produce better images, but it is never going to replace the CRTs. CRTs are just objectively way superior in terms of image quality, and LCDs are only suitable for applications requires absolute low profile and low power consumption[1]. Several decades later, we all know what happened in the end. I think it was be fun to take a look at the LCDs at that time, are they really that bad? What it would be like to use that kind of screen in 2019?

LCDs in the last century

There were several different types of display being used on portable PCs last century. The very first portable PC in the last century usually comes with CRT displays, like Compaq Portable (1983) or IBM 5155 (1984). Of course, it is clear that CRTs just too heavy to be used on these portable devices. Later they switch to TN LCDs, like on IBM 5140 (1986) and Toshiba T1000 (1987). These TN displays has very low contrast and very poor viewing angles.

Later some companies experimented other technologies like Gas Plasma screens on Toshiba T3200 (1987) or IBM PS/2 P70 (1991). Gas Plasma screens provides perfect contrast, but the color was limited to different shades of orange, and was very expensive to produce.

Finally, in the early 90s, the industry switched to the STN LCD screens. These STN screens provided not too bad contrast (typically 1:5 to 1:50), and few shades of gray. Given these laptops are mainly for business uses, STN screens was good enough. But what if one want color display? There were two choices, CSTN and Color TFT. The first laptop with a color TFT screen was the NEC PC9801NC, came out in 1990. The TFT screen provided much higher contrast ratio and much lower response time, with one drawback: it was expensive to manufacture. CSTN, on the other hand, was basically a STN screen plus a color filter. Cheap to manufacture but the performance was limited. As a result, STN and CSTN continues to dominate the market, and being used widely on low-end laptops. Today we can still see CSTN screens being used on New York subway trains.

MORE

日常点屏[25]: AML-B16C15012Q

2018 年 11 月 22 日分类:硬件坑#LCD#点屏#单片机#FPGA

这个屏幕是给VerilogBoy实体机使用的屏幕,MIPI DSI接口,因为以前从来没有点过MIPI的屏幕,这里记录下过程方便以后参考。

基本信息

  • 型号:AML-B16C15012Q
  • 类型:RGB IPS TFT-LCD
  • 模式:Normal Black
  • 分辨率:320x320
  • 灰度:接口支持8bpc,内部显存为6bpc,实际输出可能为6bpc
  • 控制器:ST7796S
  • 尺寸:1.54"
  • 接口:MIPI 1-lane
  • 背光:3并,VF=3.2V

接口定义

  1. LEDA
  2. LEDK
  3. VCC 2.8
  4. RESET
  5. NC
  6. NC
  7. NC
  8. VCCIO 1.8
  9. GND
  10. DATA0_P
  11. TE
  12. DATA0_N
  13. NC
  14. GND
  15. GND
  16. CLK_P
  17. NC
  18. CLK_N
  19. NC
  20. GND
MORE

日常点屏[24]: SX21V001

2018 年 8 月 31 日分类:硬件坑#LCD#点屏#FPGA#Verilog

纵观之前的23期日常点屏加上4期非日常点屏,点过的屏幕类型已经涵盖了正负性STN、正负性FSTN、彩色TFT、Eink、彩色CRT、双色LED点阵和微型LED字符屏。不过显然也有更多其它的屏幕类型是没有涉猎过的,比如等离子、EL、PNLC等等。今天这次点的就是一种十分常见,但是之前却从来没有尝试过的屏幕类型:CSTN。

CSTN屏幕简单来说,无非就是单色STN加上彩色滤色片。那直接用之前单色屏的方案就好了咯?并不是那么简单。目前主流的处理器早已没有了对STN/CSTN接口的原生支持,想要直接接上LCDC玩不太现实,除非找一个古董MPU,比如2410一类的,确实是一个方案。我之前一直都是采用STM32 + bitbang来驱动STN液晶。这个方法对付STN还行,对付CSTN就麻烦了,最大的问题就是各方面速度都不够快。如果从USB输入图像数据,最高也就1-2fps的速度,就算是从SD卡,也就大约10fps的速度(无压缩)。而输出就更惨了,刷新率可能只有30Hz不到,别说抖动灰度,估计连稳定显示都做不到了。

所以解决方案也很直接,上FPGA。于是就有了这个项目了咯。VGA输入,DDR2缓冲,FRC抖动到32级灰度(32K色),最后输出到CSTN。

具体效果可以参考演示视频:https://www.bilibili.com/video/av30767980/

基本信息

  • 型号:SX21V001
  • 类型:彩色被动双扫描图形点阵
  • 模式:CSTN Negative
  • 分辨率:640x480
  • 灰度:无(依靠驱动器进行FRC)
  • 控制器:无
  • 尺寸:8.2"
MORE
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • …
  • 8
  • »
Copyright © 2009-2019 Wenting Zhang. All rights reserved.
Unless otherwise noted, content on this blog is licensed under CC BY-SA 4.0.