38度发烧友论坛--38Hot Volt-Nuts 仪表 基准 工具 电子爱好者专业论坛

搜索
查看: 10305|回复: 69

[台式] HP3457A液晶屏(5181-2813)通信协议分析

  [复制链接]
发表于 2015-6-9 12:43:26 | 显示全部楼层 |阅读模式
本帖最后由 edward 于 2015-6-9 13:48 编辑


(是的,没有铺垫,直接进入正题)

HP3457A的液晶屏的HP编号是5181-2813,我的是Rev C的牛屎版。HP以前不少仪器用的都是这个或者类似的LCD,比如说HP3478A,虽然屏幕不完全一样,但是估计协议应该是差不多的。5181-2813液晶外观如下图:
005.JPG 010.JPG
屏幕全部点亮时如下图,共有12位14段数码显示,每位还有一个冒号/小数点、一个逗号和一个三角形箭头。这样一个屏幕就能显示绝大部分ASCII码内容了。十四段是可以区分显示字母的大小写的,HP定义的字母只有大写(后来知道是由于信号位数不够),这样M、m不分不是很爽啊。
015.png
屏幕采用脚距2.54mm双排16Pin坑爹插头,经查,引脚定义如下图:

020.png
分析参考手册中的电路,Pin32经1kΩ电阻上拉至+5V,应该与Pin24一起是供电的;Pin26接470pF电容到GND,未知用途;Pin18、20、22接了一些普通电阻和热敏电阻,应该是用来根据温度自动补偿对比度的;余下与数据有关的就应该是PW0、01、02、INA、SYNC和ISA了。

分析通信协议嘛,自然就要用到逻辑分析仪了,我只有这种淘宝上只要30多块钱的逻分,标称最高采样24Msps,实际达到12M都费劲,4M的时候比较稳定,不过对付3457的屏幕这个足够了。
025.JPG 030.JPG
当然,这个分析嘛,肯定是有一大堆数据的,为了省事本贴就以下面这个比较典型的屏显内容来说明:
035.png
上述内容对应的ASCII码如下,不包含逗号和箭头:
038.png
此时,一次完整的通信是这样的,为了方便叙述,按SYNC脉冲进行编号:
040.png
总共有6根传输线,看样子应该是串行通信。PW0在整个通信过程中都保持高电平,那么PW0应该就是使能信号。那么其他的呢?01和02是一模一样的,只不过02的信号比01滞后了大概一个脉冲的时间,其余信号线都是和01对齐的。SYNC从名字和实际上看是同步(控制)用的,当然根据电路图,SYNC也是蜂鸣器的信号线。哔声总是在PW0为低电平的时候响起。下图就是开机的时候bi~:
045.png
分析通信协议我没啥经验,研究了一阵还没有什么头绪。所以我决定再深度搜索一下。通过使用百度、必应和谷歌反复搜索,终于在数码之家找到一个帖子:http://bbs.mydigit.cn/read.php?tid=499485

帖子作者分析出了HP6632A的液晶屏通信协议。我一看,这不是和3457的一样吗,赶紧拜读:
050.png
作者的描述,验证了我的猜想,也提供了思路,不过可惜的是作者并没有说明具体协议。剩下的还要靠自己。现在已知的是:PW0是使能,SYNC是同步(控制),ISA是识别码,INA是数据。把数据最集中的⑥、⑦两段放大看一下,就是下图(图片做了拼接):
055.png
转化为二进制数如下图(太长我搞成两行了,后面多余的0都省略了,下同):
060.png
哎……还是没什么头绪,这个数据和ASCII码也对不上啊。反复看那个帖子,这段话引起了我的注意:
065.png
以老惠普的性格,像液晶屏这种惠普自己研发出来的东西,肯定会留下些资料,HP3457A的参考手册中没有,那就说明不够老,第一个使用这种LCD的仪器肯定会有介绍。所以我就找啊找,第一个使用类似LCD的仪器可能是HP3478A,反正DMM是第一个,去看看手册里面,果然有说明,不过也就只是一点说明而已:
070.png
根据这段叙述补充并验证了之前所有的猜测:
Pin26接的电容是产生LCD内部时钟用的;
PW0是使能信号;
01和02是时钟;
SYNC是控制,高电平表示发送指令,低电平表示发送数据;
ISA是指令;
INA是数据;

这些只是硬件上的,协议上并没有任何描述。我还是觉得HP不可能不对这样一种具有划时代意义的显示器件进行具体描述,而且HP明显有将器件系列化和通用化的习惯。那么HP的第一个LCD肯定会提供一些信息。所以我决定找一找HP第一款使用LCD的设备,不管是什么。这个我只能在《HP Journal》中找了,从上百期中找特定一期还是挺费劲的,不过最终还是找到了:1980年第3期,HP发布了HP-41C计算器,这是HP第一次使用LCD屏幕,而且和3457的很像。HP-41C的手册我也找了,但只有使用方法,没有具体硬件的内容,估计是因为这毕竟不是一台仪器吧。这期HP Journal详细介绍了HP-41C的硬件、软件设计,其中就包括了HP的第一块液晶显示器的方方面面,我关注的是通信协议,这个也是有了较为详细的介绍。
080.jpg 085.jpg
090.jpg
第8页里面有关于屏幕通信的描述:
095.png
翻译一下:每位字符信息是以9bit字符串存储的,7bit存储字符的ASCII码,相当于只能译码并显示80个字符,2bit用于存储标点符号字段。每一位有单独的1bit存储“箭头”。CPU可以以9bit、8bit或4bit(对于数字)的形式按从左侧或者从右侧开始的顺序发送单字符或多字符数据。显示也可以每次向左移或右移一位。(余下的无关就不翻译了)

呀,豁然开朗啊。如此说来,看起来⑥、⑦应该就是字符数据了,④很有可能是“箭头”。验证一下,④放大如下:
100.png
转化为二进制:
105.png
再和之前的图对比一下:
原来是从从右向左发送的!那字符是怎么表达的呢?经过大量对比,我找到了答案。
110.png
之前提到,这个屏幕可以接收多种长度的字符数据,很明显HP3457A采用的是8bit。字符按照从右向左的顺序发送,LSB First,先传4bit×12LSB,再传4bit×12 MSB。每次传输的前2bit丢弃不用,后面多余的0也丢弃。4bit LSB和4bit MSB组成8bit数据,其中2bit MSB表示可以独立显示的标点符号,对应为:
115.png
余下6bit表示字符(包括数字、大写字母和部分标点符号),换算方法如下图:
120.png
先将8bit LSBFirst数值转为MSB First,将8bit数据中的2bit MSB置零(也就是留下6bit数据),判断若值≥0x20,则为ASCII码,可直接转换为字符;若<0x20,则+0x40后为ASCII码,即可转换为字符。

我只分析出了Annunciator和4bit LSB和4bit MSB的指令,别的指令我没太关注,但是还是有不同的,比如开机上电时候发送的指令和平时通信就有些不同,具体什么指令什么作用等需要的时候在仔细研究吧。

我分析这个协议其实是刚开始的时候对HP3457A的屏幕有些想法。不过研究了一段时间后,我觉得还是加背光比较好。可以考虑替换的屏幕类型有VFD、OLED、LCD、LED等等。因为3457的变压器功率很小,上VFD的话,估计变压器就挺不住了。3457这种屏幕的长宽比很大,露出来的部分尺寸为122×18mm,VFD也没有尺寸合适、信息完全的。而尺寸合适的OLED很贵很贵,换了不划算。LCD无论是单色带背光的还是TFT都没有合适尺寸的,而且如果是单色LCD的话估计还不如原来的好看。OLED和LCD如果想多个拼接的话接缝太大。LED嘛,需要笔段完全对应的才行,目前还没有找到完全对应的,最接近的缺冒号。所以最终我还是选择了加背光,目前处于半完成状态,屏幕改完了,供电是临时凑合的。
125.JPG
这个协议只是HP3457A的,其他仪表可能会有所不同,如果有想改装其他仪表的,请一定自己分析一下协议,看一下具体是否一样。

最后要感谢lilith在我购买HP3457A和分析协议期间的全程帮助!
Edward  
2015年6月

评分

参与人数 5威望 +6 金钱 +17 贡献值 +1 收起 理由
zhaocz + 3 很给力!花了好些时间吧!
桃之夭夭 + 2 + 3 很给力!
garfield + 2 + 5 赞一个!
laoa + 2 赞一个!
wbxms + 2 + 4 + 1 不错。

查看全部评分

回复

使用道具 举报

发表于 2015-6-9 12:47:06 | 显示全部楼层
高手,赞一个
回复 支持 反对

使用道具 举报

发表于 2015-6-9 12:52:35 | 显示全部楼层
太厉害了
回复 支持 反对

使用道具 举报

发表于 2015-6-9 13:34:29 | 显示全部楼层
崇拜中。。。。。有当科学家的潜质。。。。。
回复 支持 反对

使用道具 举报

发表于 2015-6-9 13:39:12 | 显示全部楼层
搞技术就是应该像你这样,把一个问题想透彻,想明白,举一反三。
这当中耗费了你不少的时间吧?

点评

确实花了挺长时间……  发表于 2015-6-9 19:30
回复 支持 反对

使用道具 举报

发表于 2015-6-9 13:41:58 | 显示全部楼层
因为你搞出了这个,lilith打算对他手上所有的液晶设备下毒手,分析这些屏幕数据的任务自然落在了我头上.
回复 支持 反对

使用道具 举报

发表于 2015-6-9 13:48:04 | 显示全部楼层
高手,进来学习一下!
回复 支持 反对

使用道具 举报

发表于 2015-6-9 13:55:42 | 显示全部楼层
HP里这么老的资料都可以翻出来 厉害
回复 支持 反对

使用道具 举报

发表于 2015-6-9 13:59:39 38hot手机频道 | 显示全部楼层
帮顶。
回复 支持 反对

使用道具 举报

发表于 2015-6-9 14:07:22 | 显示全部楼层
学习了,期待已久!
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|Archiver|手机版|38度发烧友 ( 粤ICP备14041877号-2 )

Powered by Discuz! X3.3 © 2001-2012 Comsenz Inc. Designed by 999test.cn

声明:论坛所有内容均由网友个人自主发表,并不代表本站立场。相关内容仅供参考,由此造成的人身伤害或财产损失均需自行承担。

  

GMT+8, 2019-5-24 06:10 , Processed in 0.157017 second(s), 31 queries , Gzip On.

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