zoukankan      html  css  js  c++  java
  • RS232串口通信详解

    RS232串口通信详解:串口是计算机上一种非常通用的通信协议

           

    9芯 信号方向来自 缩写 描述
    1 调制解调器 CD 载波检测
    2 调制解调器 RXD 接收数据
    3 PC TXD 发送数据
    4 PC DTR 数据终端准备好
    5   GND 信号地
    6 调制解调器 DSR 通讯设备准备好
    7 PC RTS 请求发送
    8 调制解调器 CTS 允许发送
    9 调制解调器 RI 响铃指示器

      两个串口连接时,接收数据针脚与发送数据针脚相连,彼此交叉,信号地对应相接即可.

      串口的电气特性
     1)RS-232串口通信最远距离是50英尺=15m
     2)RS232可做到双向传输,全双工通讯,最高传输速率20kbps
     3)RS-232C上传送的数字量采用负逻辑,且与地对称
     逻辑1:-3 ~-15V  
     逻辑0:+3~+15V 
     所以与单片机连接时常常需要加入电平转换芯片:

                     

    串口通信参数
    a)波特率:RS-232-C标准规定的数据传输速率为每秒50、75、 100、150、300、600、1200、2400、4800、9600、19200波特。
    b)数据位:标准的值是5、7和8位,如何设置取决于你想传送的信息。比如,标准的ASCII码是0~127(7位);扩展的ASCII码是0~255(8位)。
    c)停止位:用于表示单个包的最后一位,典型的值为1,1.5和2位。由于数是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。
    d)奇偶校验位:在串口通信中一种简单的检错方式。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,校验位位1,这样就有3个逻辑高位。

    ---------------------------------
    串口通的传输格式
    串行通信中,线路空闲时,线路的TTL电平总是高,经反向RS232的电平总是低。一个数据的开始RS232线路为高电平,结束时Rs232为低电平。数据总是从低位向高位一位一位的传输。示波器读数时,左边是数据的高位。

    例如,对于16进制数据55aaH,当采用8位数据位、1位停止位传输时,它在信号线上的波形如图1(TTL电平)和图2(RS-232电平)所示。
    55H=01010101B,取反后10101010B,加入一个起始位1,一个停止位0,55H的数据格式为

    0101010101,55H
    aaH=10101010B,取反后01010101B,加入一个起始位1,一个停止位0,55H的数据格式为

    0010101011,aaH

                  

  • 相关阅读:
    我的知识库(4) java获取页面编码(Z)
    知识库(3)JAVA 正则表达式 (超详细)
    The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filter. Struts
    某人总结的《英语听力的技巧 》,挺搞的
    我的知识库(5)java单例模式详解
    构建可扩展程序
    SerialPort (RS232 Serial COM Port) in C# .NET
    Python学习笔记——String、Sequences
    UI题目我的答案
    jQuery学习系列学会操纵Form表单元素(1)
  • 原文地址:https://www.cnblogs.com/2390624885a/p/6519615.html
Copyright © 2011-2022 走看看