基于上位机控制自动接线的单片机实验系统研究
0 引言
对单片机实验系统的基本需求是:在有限的IO 接口上可以进行多个项目的实验。为了实现这个基本需求,在进行多个不同项目实验时,要对单片机各个IO口进行现场重接线。传统的单片机实验装置现场重接线方法有2类:
一类是现场手工插拔自锁紧接插件;
另一类是现场手工插拔积木式实验模块。
这两类接线方式的实质都属于机械式金属接触。单片机实验系统经过较长时间的使用,都难免会发生金属接触件之间的接触不良现象。特别是自锁紧接插件,问题更为严重:即使线芯开路了,从表面也难以通过肉眼发觉。导致实验成功率低下,占用学生甚至指导老师的排故时间,严重影响了实验效果。现代单片机实验或单片机开发都离不开上位机对软件的编译和程序的下载。在实验现场进行手工重接线时上位机处于空闲状态。利用上位机控制对实验现场进行自动重接线,是该研发项目研究的重要内容。
1 项目研发思路概述
项目的研发思路见图1 所示的流程图。首先从底层做起,经过深入调研,对自己要研制的项目进行定位,根据各个学校提出的具体要求进行筛选,制定出总共需要多少个实验项目,并为各个实验项目设计出对应的实验电路图,这些实验电路图作为项目研发的基础理论依据。根据这实验电路图研制实验系统硬件装置,各个实验项目对应的元器件(包含单片机)布置在电路板的顶层,控制现场自动重接线的电子式交叉开关电路所用到的元器件( 包含FPGA 和专用模拟开关阵列ADG1161)布置在电路板的底层。
上位机和实验系统通信采用USB连接,共要传输两类数据,实验项目编号和单片机实验的目标程序。上位机应用软件程序采用Visual C++编制,应用程序将各个实验电路图与实验编号一一对应。当要做某个实验项目时,可以启动该实验编号,自动调出实验电路图,将实验编号通过接口电路传送给实验系统的控制部分,实验系统控制部分获得该实验编号后,由FPGA内的51核,根据项目编号对应出电子式交叉开关的接通与断开,实现现场自动重接线,使实验系统满足实验电路图接线要求。
此时便可以在上位机上做编程实验,由专门的编译系统(如Keil uV4或IAR)编译实验程序,产生目标代码(*.bin 或*.hex),再由上位机通过所编制的应用程序将该目标代码传送给实验系统的单片机内ROM中保存。单片机复位后便开始运行该目标程序,实现用户实验目的。
2 实验系统中的电子式交叉开关及其控制电路设计
项目研发的关键是具有能按照不同的实验电路指导现场自动重接线的装置。即实验系统的控制器按照上位机下达的实验项目号对应出实验电路,控制交叉开关进行现场自动接线。实现该控制功能所需的主要控制器件为2种:一种是超大规模现场可编程的FPGA芯片;另一种是高性能的模拟开关阵列。通过对这两种器件的有机组合,得到控制器电路结构框图如图2所示。
评论