打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
【新提醒】学习并行(Parallel)通信的两种协议,并实践点亮一个LCD(多图慎入)
userphoto

2022.09.30 河南

关注
 本帖最后由 jf201006 于 2022-9-27 15:13 编辑

常用通信方式
嵌入式电子产品要交换其信息,它们必须共享公共通信协议。已经定义了上百种的通信协议来实现这种数据交换,主要的方式可以分为两类:并行或串行。
主要内容:
一、什么是并行通信
二、两种常用(简单)的总线协议:68协议和80协议
三、两种总线的时序
四、并行通信的实践
(一)手持式POS
(二)LCDPIN
(三)使用并口点亮LCD
五、题外话,三种方式点亮LCD的对比

*********************************************************************
、什么是并行通信
并行是指多比特数据同时通过并行线进行传送,这样数据传送速度大大提高。
但并行传送的线路长度受到限制,因为长度增加,干扰就会增加,数据也就容易出错。
并行接口同时传输多个位。主控处理器的数据总线宽度决定了并行接口的宽度,它们通常需要数据总线(4位、8位、16位、32位或更多),以1和0的波形传输数据。
借用网上的图:使用9线的并行通信,由时钟控制的8位数据总线,每个时钟脉冲发送一个字节
并行同行主要特点:
1.各数据位同时传输,传输速度快、效率高,多用在实时、快速的场合。
2.并行通信不能长距离通信,抗干扰能力差。
*********************************************************************
二、两种常用(简单)的总线
8080总线(接口),又叫Intel总线、80总线;
6800总线(接口),又叫moto总线、68总线。
1、8080起源
1974年,英特尔推出了 第二款8位的处理器Intel 8080,它是Intel 8008的后继产品,但是8080 还在其指令集中添加了一些 16 位操作,可以使用16位地址总线,使其能够访问64KB的内存,它的指令集比 8008 增强了不少。
由于8080的成功,为后面的处理器兼容性/扩展存储奠定了基础,也影响到了32/64位的X86架构处理器。
2、8080接口线
虽然8080微处理器已经被时代逐渐淘汰,但是由于8080的并行总线协议,在扩展方面及数据传输方面的优越性被保留了下来。很多追求高速,近距离的接口和传输方式依然使8080总线,比如CPU扩展外部的RAM和ROM,LCD、打印机等广泛使用。
CS(CE): 片选信号——(如果有多片可接译码器,通过地址进行访问)
3、8080接口线
WR(WE):写入数据控制信号——(连接MCU的RD或IOR)
RD(RE): 读取数据控制信号——(连接MCU的WR或IOW)
D[7:0]:8 位双向数据线——(连接MCU数据总线)
RST(RES):复位线——(连接系统总线RESET)
D/I(DC):命令/数据标志(0,读写命令;1,读写数据)
要注意的是WR和RD是低电平有效,就是说在平时是高电平,而且任何时刻不会同时为低。
8080方式下读数据操作的时候,我们有时候(例如读显存的时候)需要一个假读命 (Dummy Read),以使得微控制器的操作频率和显存的操作频率相匹配。在读取真正的数据之 前,由一个的假读的过程。这里的假读,其实就是第一个读到的字节丢弃不要,从第二个开始,才是我们真正要读的数据。
4、6800起源
M6800是摩托罗拉于1974年3月设计发布并首次制造的8 位微处理器,于当年年底全面投产。MC6800 微处理器是 M6800 微机系统的一部分,该系统还包括串行和并行接口IC、RAM、ROM和一些其他支持。一个重要的设计特点是,当大多数其他微处理器需要三个电压时,M6800 系列 IC 只需要一个 5V电源。
5、6800接口线
Reset(RES):复位线
CS: 片选信号
RS(D/I) :命令/数据标志
E:使能信号
R/W读写控制(1:读, 0:M写)
DB0~78 位双向数据线
RES、DB0~7、D/I、CS信号线与8080都一样,6800将WR、RD管脚变为了,E:允许信号(多片组合时,可有多条允许信号线),R/W读写控制(1:读,0:写)
6、8080和6800接口的区别
8080 是通过“读使能(RE)”“写使能(WE)”两条控制线进行读写操作;
6800 是通过“总使能(E)”“读写选择(W/R)”两条控制线进行读写操作。
以上是最明显的差异,当然还有一些小的差异等更多细节在配置的时候才会清楚。
*********************************************************************
三、两种总线的时序
1、8080时序是在写入(WR)和读取(RD)信号的后沿(低电平有效时就是上升沿)处对数据信号进行采集的。
2、6800时序是在使能(E)信号的后沿(高电平有效就是下降沿)处对数据信号进行采集的。
3、两种协议的比较
很简单,关键是确定什么时候将数据放到总线上,什么时候读取数据。不同的芯片稍有差异,可查手册参考。
*********************************************************************
四、并行通信的实践-点亮一个LCD
找到一个什么老的手持式POS机,型号是TANDEM-EM
(一)拆之
先三观:前后顶


使用锂电池供电

拆开,看到主板

拿下主板,后面是射频读卡部分和红外收发


射频卡读写使用mfrc531芯片

主板背面

元件比较多
非本帖的探讨内容,元件的PDF资料奉上,请小心避坑!!
主要元件的PDF资料.rar(2.33 MB, 下载次数: 0)

主板正面有屏的接口,30PIN的。背光使用冷光

正面元件比较少
使用了INTEL的闪存和MOTOMCU

各种显示界面

LCD主要分为两两个区,上面一条是状态区,下面是12864的显示区。

(二)LCDPIN
1、从电路中确定LCD各脚功能
比较痛苦的跑电路,得到如下对应关系(有点小错误的)
由此可见是使用了并口通信,正好实践一下并口协议。
那么,这个LCD使用的80协议还是68协议?
按理说MCU使用的是MOTOMC68系列,应该使用6800协议。确认下吧。
先看一下FLASH的控制脚
信号组合功能
一切表明使用的是8080协议。TE28F160给出的写时序是
并且还强调地址和数据在WE#CE#脉冲的上升沿锁存,以先发生者为准。
还是抓数据分析吧,反正点亮这个屏也要分析数据的。
找到板上的关键信号点位
用以前的废板引出并口8位数据线的控制线
由于是分析并口数据,板子上出来12根线,8通道的逻辑分析仪就不行了
使用16通道的
100M采样5秒的数据,CS为触发信号
大概看一下,有写操作是在CS为高电平时发生的,因为LCD是挂总线上的,
在不对LCD操作时也会有数据,正常
这里,对LCD操作,但WR为高电平,应该是OE为低电平所至
准备解码,由于MCU使用了MC6800,先用6800协议试试
WR作为6800R/WCS作为6800E,如下图
可以看到,有竞争冒险的情况发生。
OE作为6800E,如下图
读写动作发生时,CS为高电平,LCD没有选中。
8080协议试试
可以看到,在CS为低电平(LCD被选中)期间,OE为高电平(不允许读出)WE有写的动作(下降沿),而且数据稳定。
数据与LCD常用指令对比
应该是ST7565的主控。
LCDPIN定义为:
2、数据分析
对于数据的采集采用的是分段导出的,因为LCD挂在总线上,只能是CSWR同时有效才是对LCD的操作。
有以下两种情况不能作为对LCD的操作:
一是LCD被选中(CS为低电平),但没有写动作(WR一直为高),这时使用WR后(上升)沿采数据。
二是WR有写动作,但LCD没有选中(CS一直为高),这时使用CS后(上升)沿采数据。
经过…………最终采集到的数据,并且根据A0信号区分出命令(蓝色)和数据(红色)。
根据ST7565的规律,整理一下数据
(三)使用并口点亮LCD
程序中端口使用情况
LCD初始化
利用原来飞线的接口顺利点亮
这个在拍照时,“页”不是很明显
参考串行通信之SPI协议、IIC协议实践,点亮两个12864液晶屏/U盾”中有一张照片,很明显可以看到LCD页寻址的情况。
可能是使用并口速度快一些?
挂分析仪
“写”频率大概20kHz
原来设备的“写”频率达到了1MHz
*********************************************************************
五、题外话,三种方式点亮LCD的对比
结合前面的帖子,分别使用了三种协议点亮三个LCD,简单对比一下:
三个LCD都是ST7565的主控,使用ARDUINO写程序,只有点亮LCD的语句,其中IICSPI使用了相应的库。
手机连拍,选变化的连续6张作动图。
IIC画面变化情况
SPI画面变化情况
并口画面变化情况
逻辑分析仪中表现在出来的情况
IIC接口时,写入1页所用时长
SPI接口时,写入1页所用时长
并口时,写入1页所用时长
这就能解释为什么有时拍照片时能拍到LCD按页寻址是画面了。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
总线的通信协议
串口基本知识
1602LCD中文资料
用CPLD实现单片机与ISA总线并行通信
干货 | 了解UART总线工作原理看这一篇就够了!
嵌入式底层通信协议原理(SPI,UART,I2C)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服