电工技术基础_电工基础知识_电工之家-电工学习网

欢迎来到电工学习网!

PC机与单片机多机的彼此通讯

2017-03-23 23:13分类:PLC基础知识 阅读:

 

  这篇文章提出了一种实在可行的办法,通过实习电路树立和调试,完毕了PC机与单片机多机的彼此通讯,抵达了预订的政策,使该体系具有如下功用:

  (1)PC机能够对悉数100多个单片机进行操控,依据需求,发送纷歧样操控字抵达每个单片机;

  (2)PC机对单片机的状况批改是随机的、没有规矩的;

  (3)悉数单片机将本身的一些状况信息依照次第回传至PC机。

  1 互通讯的几种完毕办法

  PC 机至多个单片机的播送比照简略,难度较大的是多个单片机发送数据至PC机。由于100多个单片机均挂在一个数据总线上,体系计划的难点就在于数据总线操控权的传递,必定不能呈现有2个或许2个以上设备一同向总线上发送数据。体系计划之初,思考了两种总线操控办法有接力式和点名式:

  (1)接力式总线操控办法

  这种操控办法的底子思路是:初始化后,悉数单片机在接纳完PC机数据后,处于串行接纳状况,不占用总线操控权。PC机宣告回送开端指令,第1个单片机照应当指令,并当即占有总线操控权,向总线上的PC机发送数据,数据发送完毕后,紧接着第1个单片机发送操控指令,告诉第2个单片机,一同第1个单片机退出总线操控权,处于接纳状况;第2个单片机接纳到第1个单片机的开端指令后,和前面第1个单片机相同,开端向总线上发送数据,并在完毕传送往后告诉第3个单片机,如此这般,不断接力传输,轮番操控总线,直至终究一个单片机完毕数据传送。在单片机操控总线,进行回传的进程中,假定要通过PC机向某个或许某些单片机传送数据时,PC机软件会主动将这些数据存储下来,比及终究一个单片机接纳向PC机送数据往后,PC机再占用数据总线,开端向单片机传送数据。

  (2)点名式总线操控办法

  该操控办法与接力式操控办法大体相同,纷歧样的是这种操控办法需求等候PC 机点名指令。体系初始化后,单片机接纳PC机指令、数据往后,PC机发送点名指令,让第1个单片机开端传送数据,第1个单片机接纳该指令后,当即占用总线,开端传送数据,传送完毕后,发送完毕指令至PC 机,PC 机在接纳该完毕指令后,当即占用总线,再发送点名指令,让第2个单片机开端传送数据,如此不断动作,直至终究一个单片机完毕传送。

  在单片机传送数据时,假定PC 机要送数据至单片机,能够在接纳完某个单片机数据往后,暂停发送点名指令,直接发送数据至某个或许某些单片机。待数据发送完毕后,持续接上原先的接连的点名次第号,持续向后点名、传送数据。归纳思考这两种总线操控办法,不难发现,由于没有来回传递点名的指令时刻开支,接力式的传输功率会略高于点名式,所以,一开端仍是选用了接力式的操控办法。

  可是在进行大的体系联调时,疑问呈现了。由于接力式脱离PC机的进程干涉,一旦呈现某个单片机程序跑飞、死机时,悉数程序就无法进行下去,一向处于等候状况,悉数体系就瘫痪了。调试进程中呈现过好几回死机的状况。终究,不得不回头批改全体计划,选用点名式的操控办法。假定基地某个单片机呈现反常,没有依照预订的程序回传数据,则PC机就能够差异该单片机死机,在阅历过一段等候时刻后,自行越过该单片机,点名下一个单片机,持续后续的回传和程序。假定该缺陷单片机还在占用总线,影响下一个单片机的作业,则对单片机共用的复位端发送一个全体复位信号,让悉数单片机复位。通过从头调整计划后,通过长时刻作业,均没有呈现整机死机的状况,全体作业状况杰出。别的,这种操控办法还有别的两种操控办法所不具有的优势:

  能够随时打断回传,简直实时发送新的指令到某个或许某些单片机上,该功用对错常有用的。

  2 体系的硬件构成

  依据体系的全体恳求,构建了如图1所示的硬件路径。

  

  悉数体系选用RS 485 总线构造,RS 485 为差分平衡数字通讯办法,具有较强的抗搅扰才华,广泛运用于远间隔数字通讯。RS 485和RS 422A总线最大的差异是RS 485 能够单工双向传输,而RS 422A 只能单向传输数据,在本体系由于存在许多单片机,假定运用RS 422A,电缆会添加一倍。别的,由于规范的RS 485链路只能够联接32个设备,故每个改换器上要添加驱动器。如今PC 机上现已很难找到串口了,故PC 机与RS 485 总线之间选用PL2303 芯片进行桥接。PL2303为Prolific 公司商品,能够很便本地将USB 接口改换成规范RS 232 电平,用户底子不必关怀凌乱的USB 协议和规范,在PC端的软件编程中,只需像规范com口相同运用USB口,由于Prolific公司供应的驱动中,现已将该USB 口模仿成了一个规范的com 口了。该芯片最高速度能够抵达115 200 b/s,极大地便当了通常串行通讯与PC机的连通。复位监督与读写改换电路也是一个单片机,不过该单片机只完毕两个功用。一个是便是接纳RS 485 总线前的PC 机TXD(RS 232 端的TXD)宣告信号,一旦呈现PC机宣告的大局复位串行代码后,当即发作一个大局复位信号,将悉数单片机进行复位。该功用便是为了避免某个单片机呈现缺陷,一向意外占用总线,致使悉数体系瘫痪。

  为了完毕RS 485 的半双工通讯,有必要有一个方向切换操控信号,如图2所示。在单片机端,这个操控信号很简略取得,引出一个I/O脚,即可在单片机程序中操控该信号的切换;可是PC机端的RS 485的切换就比照照照费事,这也是复位监督与读写改换电路完毕的别的一个首要功用:读写改换。假定PC机要占用RS 485总线,则发送一个特定的串行码,该专用单片机接纳并照应当串行码,切换RS 485操控器,开端占用485总线并发送数据,假定PC机完毕发送数据,则要一同发送一个特定的串行码,告诉该专用单片机,进行相应的RS 485切换。单片机及其隶属电路构成了有关的功用电路。

  

  主单片机选用了Silicon公司的8051F020型增强型单片机。该单片机最大的优势是内部集成的模仿电路功用较为健壮、单片机作业速度快、程序编写-烧写-仿真较为便当。

  3 体系的软件构成

  软件分为3个有些:PC机上位机程序、单片机通用程序和专用单片机程序。专用单片机的程序作业在复位监督与读写改换电路中,该程序较为简略,便是在上电后,一向依照约好的波特率和数据格局接纳PC机送出的串行数据,若得到的数据契合约好的复位格局,则送出复位信号;若接纳到的数据契合总线切换的格局,则送出相应的切换信号。PC 机上位机程序比照凌乱,能够依据用户的实习需求,编写有关的运用程序。在这篇文章中,选用Delphi编写了运用程序,完毕了对单片机群的参数设置、状况调整、信息反响和体系操控。

  单片机通用程序别离作业在100多个单片机上,是完毕体系功用的根底。图3为单片机程序流程图。

  

  单片机初始化后,接纳PC机送来的初始指令,然后开端作业主程序,实施单片机的主功用。一同翻开串行接纳接连,一旦接纳到PC机发来的指令,就进行比照差异,假定是PC 机对自个的点名,则照应PC 机的回送指令,开端占用总线,向PC机传送数据,完毕后向PC机发送完毕状况字,完毕占用总线,回到主程序,一对等候接纳串行数据。

  4 结语

  通过许多实验,课题组运用点名式总线操控办法,成功处理了PC机与许多单片机的双向互通疑问,完毕了100 多个单片机与主控PC 机之间的互通讯,抵达了计划恳求。电路通过长时刻作业,实习状况标明,该体系作业安稳、操控活络、牢靠性高,选用的点名式总线操控办法具有极好的有用价值。

上一篇:单片机内部的存储器构造

下一篇:应对单片机破解的几点主张

相关推荐

电工推荐

    电工技术基础_电工基础知识_电工之家-电工学习网
返回顶部