导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→串行通信的电路设计和程序设计

* 14351: 串行通信的电路设计和程序设计

   小赛跑跑 
小赛跑跑发表的帖子 

 串行通信的电路设计和程序设计
单片机与PC机串行通信,又称为下位机与上位机的串行通信。采用这种通信方式,可以解决工况条件差对工作人员带来的危害,又可以实现实时在线远距离集中监控,对工作现场分散的单片机采用控制平台管理,既可以改善工作条件,又可以提高工作效率。本文针对串行通信的电路设计和程序设计做出了具体的阐述。

  1 电路设计

  通信接口标准有RS232、RS423A、RS422A、RS485等,常用的接口标准有RS232和RS485。RS232在微机串行通信接口中广泛采用,在加装了调制解调器(modem)的情况下,这种通信可以通过电话线传输数据,并且可以传输几千公里远的距离,如果没有modem可以传输十几米远。本课题采用的是RS-232直连无modem方式和DB-9连接器,单片机采用 AT89S52,使单片机的串行输入端(RXD)和串行输出端(TXD)与PC机的COM口相连接。

  RS232是用正负电压来表示逻辑状态,与TTL高低电平表示逻辑状态的规定不同。因此,为了能够同计算机接口相连或TTL器件相连,必须在RS232与 TTL之间进行电平和逻辑关系的变换。实现这种变换的方法可以用单立元件,也可以用集成芯片,本文采用MAX232来完成TTL-EIA(美国电子工业联合会)双向电平转换。MAX232内部有电压倍增电路和转换电路,仅需+5 V电源便可工作,使用十分方便,其与AT89S52连接时可以采用最简单的方式连接(见图1),MAX232的T1 IN引脚与89S52的串行输入口线P3.1TXD相连,R1 OUT引脚与89S52的串行输入口线P3.0RXD相连,MAX232的T1 OUT、R1 IN分别于与RS232的2、3引脚相连。MAX232泵电源引脚必须接0.1μf电容,如图中的C26、C27、C28、C29。

按此在新窗口浏览图片


  因为电路中采用了电平转换芯片,只需把单片机所用到的连接器和PC机串口所用的连接器的2、3、5管脚对应连接起来,2、3管脚不需交叉连接(如图2所示);如果是PC机之间或同一个PC机的两个COM口相连,则两个连接器的2、3管脚需交叉相连。
[IMG]

[/IMG]


  2 程序设计

  主程序的设计是:AT89S52单片机采用定时器1,工作于方式2,11.059 MHz的晶振,波特率为9 600 Hz,时间常数是FDH,由单片机先向PC机发送十六进制的联络信号“aaH”,PC机接收正确时回答BBH,以数组adr[]的和作为校验和,测试正常时发送数组tri[]。完整程序代码如下:
[IMG]

[/IMG]


  上下位机间通信是否正常可以通过上位机安装的串口调试软件实现,上述程序经过调试软件调试后运行正常。

本文来自赛微电子网,转载请注明出处: 


发表时间:2011年2月15日14:11:42

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:[求助] 公司MP3汉字显示遇国标门遭禁售,求助。公司以前做了多款MP3,带歌名中文显示的
[下一篇帖子]:【请做过项目的工程师朋友留步】用10万元投资S3C6410,做类平板电脑产品的可行性分析 /P P