位置:51电子网 » 技术资料 » 接口电路

基于C8051F020的通用串口适配器的设计与实现

发布时间:2008/5/27 0:00:00 访问次数:824

        

    

     王晓宁,谭业双,吕洪斌,李菲菲

    

    1 引言

    

    串行通信的广泛应用可使各种传输设备有机地连成一体,能够安全可靠地进行数据交换和信息传递。但是由于各个设备传输信道上的信号不同,所应用的串口也各种各样,要完成众多设备相互之间的通信,就必然要涉及到各个设备之间的串口转换问题。

    

    为了使计算机的rs-232接口与各种不同的串口进行通信,从而测试或控制不同设备的工作状态,本文设计了一种通用串口适配器,适配器有4个对外接口,其中,1口连接控制计算机,2、3、4口连接不同标准串口的通信设备,如图1所示。

    

    

    2 硬件设计

    

    为了实现对适配器的自动控制以及扩展其他接口,采用了c8051f020单片机。适配器选用了c8051f020微处理器、max4534电子模拟开关、max232电平转换器以及rs-485/rs-422信号转换器max491等。

    

    

    整个系统以c8051f020为核心,原理框图如图2所示。通过串口1控制从上位机串口发送的数据的接收、存储和判别,然后通过串口2控制电子模拟开关,使其内部的模拟开关接通相应的串口,最后实现计算机与各个串口的通信。

    

    2.1 与上位机通信电路

    

    c8051f020引脚的信号电平为ttl类型,而pc机串口的异步串行通信基于rs-232标准。两者通信信号的逻辑电平不一致,必须进行信号电平转换。因此,选用maxim公司的max232实现ttl电平与rs-232电平的双向转换。

    

    max232包含两路接收和驱动器,适用于各种eia-232c和v.28/v.24的通信接口。该器件内置一个电源电压转换器,可将5 v电压转换成rs-232c输出电平所需的±10 v电压。所以,采用此器件的串行通信系统只需单一的+5 v电源。

    

    

    串口通信的rs-232通信距离以不超过12 m为宜。接口采用9针串口db9,串口传输数据只要有接收数据引脚和发送引脚就可实现。 2.2 模拟开关控制电路该控制电路主要由max4534(一对四)完成。地址端a0和a1与单片机i/o端口相连,开关1、2、3、4分别与各测试设备的串口相连,max4534的内部连接逻辑如图3所示。

    

    当上位机实现与单片机的握手后,若与rs-422口通信。则需先发送一个检测信号test,该信号经max232电平转换后,送至单片机c8051f020,单片机接收到信号后,通过其i/o端口p6.0和p6.1的输出状态分别控制开关max4534的地址端a0和a1。若a0和a1均为0,则接通开关no1,如表1所示,使检测电路的max491接收端处于导通状态,从而形成通路。此时单片机回发一个通路信号给上位机,当上位机接收到通路信号后,mcu的串口txd端就可自由发送数据,从设备发来的回应信号也可以被mcu正常接收,从而完成整个通信过程。

    

    

    2.3 rs-232(ttl电平)接口电路设计

    

    因为从单片机引脚出来的信号为ttl电平,所以ttl电平的rs-232接口无需进行电平转换,可以直接通过模拟开关max4534与串口相连。

    

    对于五线rs-232接口,由于c8051f020串口只有两根线连接rxd和txd,rts和cts通过其两个i/o口实现。

    

    

    2.4 rs-422接口的转换电路设计

    

    rs-232串行接口属于个人计算机(pc)及电信应用领域中最为成功的串行数据标准;而rs-422串行接口则是工业应用领域中最为成功的串行数据标准。上述这些数据标准并不直接相互兼容。rs-422标准全称为"平衡电压数字接口电路的电气特性",它定义了接口电路的特性,与rs-232不同,rs-422数据信号采用差分传输方式,也称作平衡传输,它使用一对儿双绞线,将其中一条线路定义为a,另一条线路定义为b。通常情况下,发送驱动器a、b之间的正电平为+2 v~+6 v,是一个逻辑状态;负电平为-2 v~-6 v。rs-422的最大传输距离为4000英尺(约1 219 m),最大传输速率为10 mb/s,最多可接10个

        

    

     王晓宁,谭业双,吕洪斌,李菲菲

    

    1 引言

    

    串行通信的广泛应用可使各种传输设备有机地连成一体,能够安全可靠地进行数据交换和信息传递。但是由于各个设备传输信道上的信号不同,所应用的串口也各种各样,要完成众多设备相互之间的通信,就必然要涉及到各个设备之间的串口转换问题。

    

    为了使计算机的rs-232接口与各种不同的串口进行通信,从而测试或控制不同设备的工作状态,本文设计了一种通用串口适配器,适配器有4个对外接口,其中,1口连接控制计算机,2、3、4口连接不同标准串口的通信设备,如图1所示。

    

    

    2 硬件设计

    

    为了实现对适配器的自动控制以及扩展其他接口,采用了c8051f020单片机。适配器选用了c8051f020微处理器、max4534电子模拟开关、max232电平转换器以及rs-485/rs-422信号转换器max491等。

    

    

    整个系统以c8051f020为核心,原理框图如图2所示。通过串口1控制从上位机串口发送的数据的接收、存储和判别,然后通过串口2控制电子模拟开关,使其内部的模拟开关接通相应的串口,最后实现计算机与各个串口的通信。

    

    2.1 与上位机通信电路

    

    c8051f020引脚的信号电平为ttl类型,而pc机串口的异步串行通信基于rs-232标准。两者通信信号的逻辑电平不一致,必须进行信号电平转换。因此,选用maxim公司的max232实现ttl电平与rs-232电平的双向转换。

    

    max232包含两路接收和驱动器,适用于各种eia-232c和v.28/v.24的通信接口。该器件内置一个电源电压转换器,可将5 v电压转换成rs-232c输出电平所需的±10 v电压。所以,采用此器件的串行通信系统只需单一的+5 v电源。

    

    

    串口通信的rs-232通信距离以不超过12 m为宜。接口采用9针串口db9,串口传输数据只要有接收数据引脚和发送引脚就可实现。 2.2 模拟开关控制电路该控制电路主要由max4534(一对四)完成。地址端a0和a1与单片机i/o端口相连,开关1、2、3、4分别与各测试设备的串口相连,max4534的内部连接逻辑如图3所示。

    

    当上位机实现与单片机的握手后,若与rs-422口通信。则需先发送一个检测信号test,该信号经max232电平转换后,送至单片机c8051f020,单片机接收到信号后,通过其i/o端口p6.0和p6.1的输出状态分别控制开关max4534的地址端a0和a1。若a0和a1均为0,则接通开关no1,如表1所示,使检测电路的max491接收端处于导通状态,从而形成通路。此时单片机回发一个通路信号给上位机,当上位机接收到通路信号后,mcu的串口txd端就可自由发送数据,从设备发来的回应信号也可以被mcu正常接收,从而完成整个通信过程。

    

    

    2.3 rs-232(ttl电平)接口电路设计

    

    因为从单片机引脚出来的信号为ttl电平,所以ttl电平的rs-232接口无需进行电平转换,可以直接通过模拟开关max4534与串口相连。

    

    对于五线rs-232接口,由于c8051f020串口只有两根线连接rxd和txd,rts和cts通过其两个i/o口实现。

    

    

    2.4 rs-422接口的转换电路设计

    

    rs-232串行接口属于个人计算机(pc)及电信应用领域中最为成功的串行数据标准;而rs-422串行接口则是工业应用领域中最为成功的串行数据标准。上述这些数据标准并不直接相互兼容。rs-422标准全称为"平衡电压数字接口电路的电气特性",它定义了接口电路的特性,与rs-232不同,rs-422数据信号采用差分传输方式,也称作平衡传输,它使用一对儿双绞线,将其中一条线路定义为a,另一条线路定义为b。通常情况下,发送驱动器a、b之间的正电平为+2 v~+6 v,是一个逻辑状态;负电平为-2 v~-6 v。rs-422的最大传输距离为4000英尺(约1 219 m),最大传输速率为10 mb/s,最多可接10个

相关IC型号

热门点击

 

推荐技术资料

耳机放大器
    为了在听音乐时不影响家人,我萌生了做一台耳机放大器的想... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!