① 基于C8051F020单片机的RS485串行通信设计
基于C8051F020单片机的RS485串行通信设计在计算机网络和工业控制系统中广泛应用。RS485通信采用差分方式,有效消除噪声,对共模干扰抑制能力强,广泛应用于工业控制等领域。
实现单片机与计算机之间的RS485通信有多种方法,一般分为两种:一种是采用RS232与RS485电平转换装置,硬件装置安装简便,软件编程相对简单,但通信速率被限制在20 kb/s以内。另一种方法是采用RS485通信卡,通信距离较远,速率可达10 Mb/s,但需要安装通讯卡和驱动程序,并进行必要的设置。本文将详细介绍采用RS485通信卡进行RS485串行数据通信的方法。
系统采用C8051F020单片机对测控系统进行数据采集,该单片机性价比高,具有与8051指令集兼容的CIP-51内核,有助于提高开发效率。测控计算机采用研华的IPC-610工控机,并选用PCL一846B通信卡进行RS485串行数据通信。为了实现单片机与工控机之间的RS485串行通信,需要对单片机的UART输出电平进行转换。选用MAX485接口芯片,该芯片结构简单,能将UART输出电平转换为RS485电平。
设计中,理论上可以实现一台工控机(安装1块RS485通信卡)对128台单片机进行Rs485串行通信。硬件设计包括C8051F020单片机、MAX485芯片和RS485通信卡。C8051F020单片机具有增强型全双工UART、SPI总线和SMBus/IC,可以向CIP-51内核产生中断,硬件实现串行总线,不共享定时器、中断或I/O端口等资源。MAX485芯片用于将UART输出电平转换为RS485电平,PCL-846B通信卡具有较强的抗干扰能力和通信速率,支持RS422和RS485两种串行通信接口标准。
电路设计采用UART串行总线进行通信,C8051F020单片机与MAX485芯片连接时,使用单片机的一个引脚来控制RE和DE这两个引脚。PCL-846B通信卡连接单片机进行通信,并通过交叉开关配置寄存器选择通信通道。在使用RS485通信卡进行通信时,需要在通信线路的两端各连接一个终端匹配电阻,以保证阻抗匹配,防止信号反射问题。
软件设计包括通信方式选择、波特率设置和软件流程编写。C8051F020单片机的UART0提供4种工作方式,选择方式1进行多机通信。波特率根据数据传输速率的实际需要确定,并通过定时器计算出定时器2的重装载寄存器的初始值。软件流程利用C语言编写,通过中断服务程序实现串口通信。
实验分析结果显示,设计的系统在多台单片机与多台上位机进行远距离通信时,RS485通信均正常可靠,达到设计要求。通过上位机上的串口调试助手可以简便地对串口进行调试,实时发送和接收串行数据,动态观察各通信节点的数据收发情况。
② 单片机不同串口同时工作有什么好处
传输线少,长距离传送时成本低,每个串口独立工作,不定时和我的板子通信,可以提高单片机的工作效率。
单片机的数据通信有两种方式:并行通信和串行通信.并行通信指数据字节的各位同时发送或接收;而串行通信是数据字长距离传输数据节一位一位按顺序发送或接收.并行通信传输线多,适用于短距离,快速度的通信;而串行通信仅需单线传输信息,适用于长距离传输数据,由于每次传送一位,所以传输速度比较慢.串行通信又分异步和同步两种方式,其中异步串行通信是最常用的方式。异步通信传输的数据格式一般由1个起始位、7 个或8 个数据位、1 到2 个停止位和一个校验位组成。它用一个起始位表示字符的开始,用停止位表示字符的结束。
在异步通讯中,通信双方采用独立的时钟,起始位触发双方同步时钟。在异步通信中CPU 与外设之间必须有几项约定,即每一帧位数,字符格式和波特率。字符格式的规定是双方能够在对同一种0 和1 的数据串理解成同一种意义。原则上字符格式可以由通讯的双方自由制定,但从通用、方便的角度出发,一般还是使用一些标准为好,如采用ASCII 标准。
③ PC与单片机串行通信控制背景和意义
单片机串行通信的实际作用:一般用于和外部设备交换数据的
举例来说:一、比如和PC的串口机通信,单片机可以采集一些模拟量(温度,湿度,气体浓度等),将这些模拟量转换成数字量后通过串行通信接口传输个PC机,PC机上还得编写一个简单的应用软件,可以显示这些模拟量(温度,湿度,气体浓度等)的值,这个简单的应用软件应具有串口设置,数据显示,绘制曲线等功能。还可以通过PC机串口发送数据给单片机,用来控制单片机的工作状态等等。和PC机通信应该是应用最广泛的。
二、和其他串口设备通信:单片机一般充当控制器的角色,通过串口发送一定格式的数据来控制与之相连设备的动作,同时设备也会反馈回来一些自己的状态信息给单片机,供单片机进行判断,做出相应的控制。
④ 单片机串行通讯与并行通讯区别
单片机串行通讯与并行通讯区别
一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯。串行通讯的特点是:数据位传送,传按位顺序进行,最少只需一根传输线即可完成,成本低但送速度慢。串行通讯的距离可以从几米到几千米。 根据信息的传送方向,串行通讯可以进一步分为单工、半双工和全双工三种。信息只能单向传送为单工;信息能双向传送但不能同时双向传送称为半双工;信息能够同时双向传送则称为全双工。 串行通讯又分为异步通讯和同步通讯两种方式。在单片机中,主要使用异步通讯方式。
串行通讯中,两个设备之间通过一对信号线进行通讯,其中一根为信号线,另外一根为信号地线,信号电流通过信号线到达目标设备,再经过信号地线返回,构成一个信号回路。
初级读者会产生疑问:为何不让信号电流从电源地线返回?答案:公共地线上存在各种杂乱的电流,可以轻而易举地把信号淹没。因此所有的信号线都使用信号地线而不是电源地线,以避免干扰。
这一对信号线每次只传送1bit(比特)的信号,比如1Byte(字节)的信号需要8次才能发完。传输的信号可以是数据、指令或者控制信号,这取决于采用的是何种通讯协议以及传输状态。串行信号本身也可以带有时钟信息,并且可以通过算法校正时钟。因此不需要额外的时钟信号进行控制。
并行通讯中,基本原理与串行通讯没有区别。只不过使用了成倍的信号线路,从而一次可以传送更多bit的信号。
并行通讯通常可以一次传送8bit、16bit、32bit甚至更高的位数,相应地就需要8根、16根、32根信号线,同时需要加入更多的信号地线。比如传统的PATA线路有40根线,其中有16根信号线和7根信号地线,其他为各种控制线,一次可以传送2Byte的数据。并行通讯中,数据信号中无法携带时钟信息,为了保证各对信号线上的信号时序一致,并行设备需要严格同步时钟信号,或者采用额外的时钟信号线。
通过串行通讯与并行通讯的对比,可以看出:串行通讯很简单,但是相对速度低;并行通讯比较复杂,但是相对速度高。更重要的是,串行线路仅使用一对信号线,线路成本低并且抗干扰能力强,因此可以用在长距离通讯上;而并行线路使用多对信号线(还不包括额外的控制线路),线路成本高并且抗干扰能力差,因此对通讯距离有非常严格的限制。
⑤ 单片机的数据通信有哪两种
单片机的数据通信主要有两种方式:并行通信和串行通信。
并行通信是一种同时进行数据传输的方式,多个数据位可以在同一时刻从发送端传输到接收端。这种方式通常用于单片机之间的近距离通信,例如在同一台计算机上的多个单片机。
另一方面,串行通信是一种逐位传输数据的方式,即一位接着一位地传输数据。这种方式通常用于单片机与计算机或其他设备的远程通信,例如通过USB或串口进行数据传输。这种通信方式通常使用数据线,需要较少的物理空间,因此在便携式设备中得到广泛应用。
在实际应用中,这两种通信方式各有优缺点。并行通信的传输速度较快,但需要更多的物理连接线;而串行通信的物理连接线较少,但传输速度较慢。因此,选择哪种通信方式取决于具体的应用场景和需求。