串行通信控制器85C30及其应用

发布者:数字驿站最新更新时间:2014-08-19 来源: 21ic关键字:串行通信控制器  85C30  异步通信 手机看文章 扫描二维码
随时随地手机看文章
1 概述 85C30是AMD公司生产的双通道、全双工、支持多种通信协议的通信控制芯片,该芯片自身带有串并、并串转换功能,可广泛应用于微控制器组成的多串口串行通信应用系统中。其内部集成了波特率生成器、数字锁相环和晶体振荡器等可编程器件,因而可大大减少对外围电路的需要,提高了系统的可靠性,更适用于高速通信应用领域。

85C30的主要特性如下: ● 具有两个可全双工工作的通信通道; ● 可异步、同步串行通讯; ● 符合面向字符的同步协议,如IBM BISYNC(二进制同步通信协议); ● 符合面向比特的同步协议,如同步数据链路控制协议HDLC和高级数据链路控制协议SDLC;


● 最高数据传输率为4M bit/s(同步模式); ● 内含波特率生成器、锁相环和晶体振荡器; ● 具有奇偶校验、字符插入或删除、CRC(循环冗余码)生成和校验等多种自动纠错功能。

2 内部结构和引脚功能

2.1 内部结构

图1所示为85C30的内部结构框图。85C30可用于各种微控制器系统中,并具有查询、中断和DMA工作方式。 2.2 引脚功能 85C30具有40-PDIP和44-PLCC两种封装形式图2为其44-PLCC封装的引脚排列图。85C30的主要引脚功能如下: D0~D7:数据线引脚; RD、WR:读、写控制端低电平有效;另外,若两个引脚同时为低,可使芯片复位; A/ B:通道A/通道B选择; D/C :数据/命令选择; CE:片选信号; +5V,GND:电源接入端; PCLK:系统时钟输入端; INT:中断请求; INTACK:中断响应; IEI,IEO:分别为中断使能输入、输出端口; RxDA,TxDA:分别为通道A的串行输入、输出; RxDB,TxDB:分别为通道B的串行输入、输出; TRxCA,RtxCA:分别为通道A的时钟控制端; TRxCB,RtxCB:通道B的时钟控制端; SYNCA、W/REQA、DRT/REQA、RTSA、CTSA、DC-DA:通道A的同步通讯控制端; SYNCB、W/REQB、DRT/REQB、RTSB、CTSB、DCDB:通道B的同步通讯控制端。


3 85C30中的寄存器

在数据通信过程中,系统是否能准确地按照规定的协议完成通信任务,主要取决于初始化及系统运行期间程序对85C30的读写寄存器的合理运用。使用时,对片上每个通道的设置都应包括16个写寄存器和11个读寄存器。在这16个写寄存器中,有10个写寄存器用于通用控制,2个用于同步字符的生成控制,2个用于片上波特率设置。此外,还有两个双通道共享的写寄存器,一个用于中断向量控制,另一个用于芯片总中断开关控制。在11个读寄存器中,有9个读寄存器用于存储通信状态和数据。

4 应用电路

85C30的接口电路如图3所示,利用该电路可实现双通道的全双工异步通信,波特率为115.2kbps。电路中采用无响应中断模式,即在85C30有中断申请且没有进行中断服务时,将85C30 的INT引脚拉低有效,以向MCU申请中断,而MCU不用向85C30输出INTACK中断响应信号,从而简化了电路。判定接收发送不同中断源的中断优先级可由程序实现。该电路主要由电平转换电路、译码电路和MCU电路组成。 电平转换电路的主要作用是提高板间通信的可靠性,由于板间通信采用的是485电平标准,因此,可利用MAX490全双工通信转换芯片将TTL电平信号转换为485电平标准的差分信号。而对于译码电路,由于85C30中有两个通道,每个通道又有各自的命令口和数据口,而且每个口都需要有相应的硬件地址。因此,该译码电路由MCU的高8位地址线、低2位地址线及GAL和地址锁存器573组成。 MCU电路主要由80C196KC组成,与MCU的连线有数据线D0~D7、RD、WR控制线和INT线,其中INT连至MCU的外部中断EXINT引脚,这样,一旦85C30有中断申请,MCU可将其作为一个外部中断申请来自动生成相应的中断向量,从而执行相应的中断服务程序。中断服务程序入口地址为0X203E。另外,PCLK外接11.05926M的晶振可用于为系统提供时钟。 图4 接收、发送中断服务程序

5 应用程序

5.1 初始化

图4给出了85C30一个通道的初始化流程图,由于芯片的两个通道所采用的通信协议完全相同,因此初始化过程也相同。每个通道的初始化可分为三个步骤:第一是进行各协议设置(如异步、校验、波特率、字符长度等);第二是对各种功能的使能(包括波特率生成器,接收中断,发送中断);第三为开中断。

5.2 接收发送中断服务程序

MCU在收到85C30的INT有效信号后将进入外部中断服务程序。图4给出了该中断服务的流程图。用该程序的一定顺序查询芯片的RR2即可实现芯片间和芯片内的中断优先处理任务,对85C30各中断事件的优先级设定如表1所列。 表1 85C30各中断事件的优先级 通道A接收中断通道A发送中断 RR2=6 RR2=4 HIGH ↓ LOW 通道B接收中断通道B发送中断 RR2=2 RR2=0 85C30中的读寄存器RR2能实时反映出芯片内申请中断的各个中断源优先级最高的中断源,当芯片没有中断申请时,RR2的默认值为3。程序执行时,系统将首先判断U4是否有中断申请,若有,则处理相应任务。另外,在MCU处理了一个85C30的中断源后,再次读取RR2,则可再次得知当前申请中断的优先级最高的中断源。这样,就可以通过一次硬件中断申请来完成多个中断源的任务,从而大大节省了频繁进出中断的现象,从而节约了中断处理时间,提高了系统的可靠性和灵活性。

6 结束语

 85C30具有两个通道,可支持多种通信协议,并可方便地扩展系统串口,提高系统通信的灵活性和可靠性。当系统中各子通道通信速度不一样时,仅需修改各自通道中的波特率寄存器的设置即可。实验证明:在异步模式下,该系统可实现双通道115.2kbps的通信速度,且其错误率为0%。

关键字:串行通信控制器  85C30  异步通信 引用地址:串行通信控制器85C30及其应用

上一篇:与PC机间串行通信的实现
下一篇:多站远程无线控制信号系统通信软件的开发

推荐阅读最新更新时间:2024-05-02 23:07

基于智能通信控制器串行通信系统的抗干扰设计
电力系统运行的安全与否与系统当时的运行状态有密切的关系,对于电力调度部门来说,如果能实时地全面掌握电力系统各部分的运行状态,进行远程监测,对保证系统的安全、稳定、经济运行无疑具有十分重要的意义。电力远程监测一般采用串行方式进行通信,保证数据的可靠传输是其最重要的技术指标之一。由于工业现场的恶劣环境以及配电系统的远距离传输,干扰是产生偶然性错误和影响整个系统可靠运行的主要原因。提高系统的抗干扰能力是电力远程监控的一个重要的研究方向。 系统概述 本系统是一个上下位机形式的工业配电测控系统,根据功能需要,下位机选用了控制功能比较强大的研华IPC-610工业控制计算机(IPC: Industrial Personal Computer
[单片机]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved