1、 RS232是负逻辑电平,全双工通信
定义+5~+12V为低电平,而-12~-5V为高电平
重要参数:
波特率
一个起始位
8个数据位
1个校验位(可有可无)
1个停止位
常用的串口电平转换芯片 MAX232 和 ADM3202
电平转换芯片内部都是反相器
在处理器中写串口协议,直接给高低即可,不用考虑协议的负逻辑,比如
处理器 正逻辑“1”即(+0.3V)经过电平变换芯片 变成 (-15V) ,对应负逻辑的“1”
2、 目前笔记本以及很多设备没有rs232的接口 ,要使用串口,可以使用“USB转串口”的转接头。
3、 两个串口对接时,必须“收发交叉,地地相连”,对于DB9的串口,2脚是RX,3脚是TX,5脚是GND,这样的两个串口对接,就是“二三交叉,五五相连”!
4、 调试技巧:
(1) 单一串口,把TX脚和RX脚相连,可以实现自发自收;
(2) FPGA写串口协议,传到上位机时,可以先检测硬件链路(电脑磁盘,串口线,串口调试助手)是否有问题,可以直接在硬件程序中 收发短接 即 assign TXD=RXD ;如果链路没有问题,通过上位机的窗口调试助手发送的数据,又会环回来;
5、 串口通信上位机VC++编程,可以在MFC中使用串口控件,”Microsoft Communication Control version 6.0” ,上位机编程参考《串口通信编程实践(龚建伟)》
注意:vc2008 和vc6.0 使用的函数有变化
pengchengcheng082_593158939 2014-5-3 12:18
残弈悟恩 2014-5-2 10:59
用户1659913 2014-3-22 11:02
用户403664 2014-3-13 16:01