lemonHe

主要关注FPGA信号处理和数字图像处理技术,欢迎交流 邮箱:heliminlemon@163.com

串口线制作兼max3223使用

0
阅读(3279)

    串口通信使用起来非常方便,在主机与FPGA的通信上用的非常广泛,但普通DB-9接口尺寸太大,占用电路板很大面积,而使用自定义接口,将会大大减小占用面积,并且使用起来也很方便。

    在设计中,我定义了一个8pin的接口,使用JST连接器,预留有专用时钟输出,通用IO口,另外,还有一组RS-232串口。

clip_image002

    我需要从8根线中接出3根用作串口,那么串口线应该怎么做呢?

    先来点基础知识,我用的串口转USB线如下图所示,DB9M(公头)接口,当然,也有USB转DB9F(母头)接口,下面针对USB—DB9M串口线来说。

clip_image004

    上张管脚顺序图

clip_image006

    DB9串口连接器管脚定义如下

针脚

定义

符号

1

载波检测

DCD

2

接收数据

RXD

3

发送数据

TXD

4

数据终端准备好

DTR

5

信号地

SG

6

数据准备好

DSR

7

请求发送

RTS

8

清除发送

CTS

9

振铃提示

RI

    接下来说说max3223串口通信芯片,这个芯片是一个2通道串口通信芯片,可实现TTL和RS-232电平的转换,下面这张图很清楚地说明了该芯片的使用方法,我就不多哆嗦了。

clip_image008

    对于RS-232通信,做串口线时只需连3根线即可。

        pin2 RXD 对应电脑数据接收端,连到max3223的232输出T1OUT或者T2OUT

        pin3 TXD 对应电脑数据发送端,连到max3223的232输入R1IN或者R2IN

        pin5 SG 对应信号地

    做了一根串口通信线,一端为DB9F接口,另一端连到自己定义的8pin JST连接器上。

clip_image010

    最后就是实验测试了,115200 baud,COM4,2位停止位。发送20个字节,接收20个字节,ok,调试完成!!

clip_image012

    FPGA部分的代码前面博文中有过说明,可在逻辑中编写verilog来实现,也可以在nios中使用uart核来做。