首页 » 技术文章 » 基于串口的通用的单片机在系统编程设计及实现

基于串口的通用的单片机在系统编程设计及实现

作者:  时间:2011-07-11 21:38  来源:EDN

  22 通信接口电路

  鉴于篇幅,这里只给出串口通信中PC端硬件接口部分。

  首先由一块MAX232芯片把PC机串行口的RS 232电平转换为TTL电平,然后通过6N137的光电隔离模块进行隔离,再通过MAX 487芯片完成RS 232协议到RS 422协议的转换。其实也就是一个电平被转换为两个压差电平的过程,如图2所示。

  23 通信软件设计

  单片机(下位机)软件开发采用PLM语言。主要由更新程序和通信程序组成,通信程序又包括通信主程序、接收、发送和定时中断程序等。其中通信主程序是不断循环执行的,如果上位机发送了数据则进入接收中断处理程序,并同时在定时中断中设置一个在接收中断中被清零的计数器,当定时器溢出某个时间范围时,说明接收完毕。这时触发发送中断,上发接收到的整个文件内容用于校验。这里仅给出部分更新程序代码。

  固化中断服务程序,并通过在PLM语句中嵌入汇编语句完成程序的跳转。下载完成后,将程序复制到AT29C256后运行新程序,DS1230Y仍用作数据存储器。

  PC(上位机)操作界面应用Delphi 60开发。在Delphi 60开发环境下实现串行通信有多种方法,如:调用MSCOMMOCX控件、在Windows下使用Win-dows API、应用嵌入式汇编语言、直接构造Delphi中的通信控件、利用动态链接库(DLL)等。考虑到该系统的通信情况比较简单,所以直接使用MSComm组件编写串口通信软件,主要包括三个方面的设计内容:

  (1)收发数据,指的是在PC机的串口与80C196KC的串口UART之间能收发字符串,二进制串(16进制显示)

  (2)收发文件,指的是在PC机的串口与80C196KC的串口UART之间能收发字符型文件,16进制文件(Hex文件)

  (3)差错校验及系统可靠性设计。通信的成功与否最后还要看校验的结果,即接收端是否能正确无误的接收到发送端发送的内容。差错控制流程图如图3所示,核心代码如下:

  最终开发出的操作界面如图4所示,包括下载进程显示条,串口初始化设置框,收发数据文本框,选择打开发送文件按钮,发送文件大小显示框,校验按钮,文本与16进制类型选择框以及通信状态显示项。

  3

  提出了基于串口通信的通用的单片机ISP方法并针对80C196KC实现了PC机上已编译程序的在线下载。通过回声法校验,返回的接收文件与发送文件完全一致,系统可靠性高,设计简单,实现容易,具有一定的理论研究意义和应用前景。为国家杂交水稻工程技术研究中心人工气候室智能控制系统的系统程序更新,升级和远程维护提供了方便。

相关推荐

基于串口的通用的单片机在系统编程设计及实现

ISP  串口  2011-09-13

Intersil推出鱼眼镜头图像修正技术

Intersil  ISP  2011-08-10

基于串口的通用的单片机在系统编程设计及实现

ISP  串口  2011-07-11

基于STC单片机学习平台的硬件电路设计

串行接口  STC  ISP  2011-04-20

基于μcosII的嵌入式文件系统的设计与实现

MB86H20B  嵌入式  ISP  FAT32  2010-05-28

ARM7串口9位方式多机通信的编程技术

ARM  多机通信  串口  2010-04-08
在线研讨会
焦点