APP下载

计算机单片机通信系统软硬件结构设计

2020-03-03董国钢

关键词:下位串口单片机

董国钢

(长治职业技术学院,山西 长治 046000)

我国现代工业的不断进步,使通信系统的结构变得愈发精密,通信数据的处理规模不断扩大。由于单片机通信系统在数据处理能力上存在限制,难以满足系统控制要求,因此人们将目光逐渐转移至分布式系统。分布式系统在收集通信数据过程中,主要是利用下位机来实现的,而上位机则可用于对收集数据的分析与处理。考虑到单片机的成本较低,能够提高通信系统的可靠性,因此单片机被广泛应用于工业生产与控制中,在分布式控制系统中,其下位机的核心便是单片机。不过,因计算机在数据处理能力方面非常突出,而且可进行良好的人机交互,因此在分布式控制系统中经常将计算机作为上位机。在计算机单片机通信系统中,其采用串口通信方式来实现计算机与单片机之间的数据通信,为了使通信数据更加直观、形象,在计算机中还要安装Labview软件来对数据流进行图形化编程,这样能够最大限度地提高计算机单片机通信系统的人机交互功能。鉴于此,以下便对计算机单片机通信系统的软硬件结构设计进行深入的探讨。

一、计算机单片机通信系统硬件结构设计

在计算机单片机通信系统中,其硬件结构主要包括上位机与下位机两个部分,其中上位机采用计算机,其主要用于对数据进行发送和接收,以此实现人与通信系统之间的交互。而在下位机中则以单片机为核心,下位机可利用通信串口来对数据进行传输。计算机单片机的最小系统主要由单片机、电容、晶振和电阻所组成,对于最小系统来说,其以MXA232芯片来引出DB9串行端口,以便于单片机能够通过DB9串行端口将通信数据发送给TXD与计算机,同时单片机还能利用DB9串行端口接收RXD的连接请求,单片机通过DB89串口对计算机与RXD的串口连接进行接收,并利用I/O引脚将计算机与RXD进行连接。

二、计算机单片机通信系统软件结构设计

(一)通信协议

在计算机单片机通信系统中,其主控机中的核心便是计算机,通过主控机可以对下位机中的单片机进行控制,可以说,主控机是整个通信系统中的通信核心,利用主控机可对下位机发送的通信数据进行高效的存储与处理。计算机单片机通信系统中主控机与下位机之间的通信程序则需要通过Labview来编写。在该通信系统中的下位机则是通过单片机来对工业现场中的各类监控对象进行实时检测与控制的,以此确保各类监控对象的正常运行,而对于这些监控对象的实时检测与控制程序则需要利用相应的汇编语言来编写。为了使计算机单片机通信系统在运行过程中具有更高的可靠性,需要通信系统中的上位机与下位机在通信过程中能够按照相应的协议来进行,该协议也是上位机与下位机所必须遵守的。例如,在通信协议中需要规定出通信数据在传输过程中应采用的格式、波特率、在校验数据时应采用的格式等。在该通信系统中,其在传输通信数据时所采用的格式是11bit,并通过RS-232来进行异步通信。

(二)单片机中的程序

在计算机单片机通信系统中,其主函数程序的实施流程主要包括四个步骤,第一步是初始化液晶,第二步是初始化串口,第三步是液晶清屏,第四步是空循环。而其通信串口的中断函数实施程序流程则包括七个步骤,第一步是关闭总中断,第二步是判断数据是否起始与终止标志,第三步是数据存入数据组,第四步是判断是否为终止标志位;第五步是判断网数据标号是否为零复位显示标志,如果是,则进行第六步,即显示程序显示数组字串清零显示标志位,第七步是开启总中断。在主函数程序与中断函数程序的实施步骤中,其参数设置均按照上位机中的参数进行设置,例如波特率、奇偶校验等参数,然后判断语句来去除标识位,以此实现对上位机数据的全方位解析,在解析数据后便可通过串口缓存区将其写入寄存器。为了使通信数据能够在液晶显示屏中进行显示,还要在设计液晶驱动时设置其写指令、数据等时序,然后将液晶显示时序与串口通信进行匹配。由于液晶在显示数据时会存在一定的滞后,而串口通信在收发数据方面的速度较快,因此在液晶显示屏中难以对数据中的某个字节进行接收与处理,因此在接收数据过程中,需要利用中断方式来将该数据在另外数组中进行展现。

(三)Labview

在计算机单片机通信系统中,其串行通信节点共有五个,这些串行通信节点分别具有不同的功能,其功能主要体现在设置串口、检测串口缓存、串口写、串口读以及中断等,这些串行通信节点都可设置在功能模板中的I/O子模板内。在对这些串口通信节点进行使用时,其过程较为简单,而且理解起来也较为容易,为此,本文便对这些串行通信节点的具体使用、功能以及相关定义进行介绍。首先,在初始化方面,串行通信节点需要设计停止位、数据位、厅偶校验位以及波特率等,通信系统可利用计算机来使用串口仪器设备,在对串口通信节点进行使用之前,还要配置串口,这样才能使计算机单片机通信系统得以正常通信。其次,在串口写方面,串行通信节点主要负责将通信数据传输至串口的输出缓存之中。再次,在对串口中通信数据的缓存字节数进行检测时,需要利用串行通信节点对串口输入缓存内的现有字节数进行检测,然后对serial port read节点进行制定,利用串口输入缓存来读取字节数,进而确保通信系统能够读取所有的缓存数据。在串口读方面,串行通信节点可利用串口缓存来对各个端口的读取数据长度进行制定。最后,在串行通信设计上,主要包括以下步骤:首先计算机与单片机分别需要对端口进行初始化设置,然后由计算机进行串口写,然后进行串口读,在串口写过程中,需要利用单片机对串口的输入缓存字节数进行监测,然后由单片机进行串口读,并获得串口信息反馈信息,串口信息反馈信息共同由计算机进行串口读,最后结束。

三、计算机单片机通信系统的通信程序分析

在计算机单片机通信系统中,其开发环境需要采用Labview来实现,由Labview对开发环境中的通信程序进行编写,在设计时主要包括三个方面,分别是程序板、框图程序以及程序调试。通过对前面板进行设计,可使通信系统生成良好的人机交互界面,以便于用户通过操作控件来进行各种功能的操作,同时也有助于设计各类输入参数,进而使输入量指示器得到合理的设计,使通信数据能够顺利在通信系统中进行显示。在对框图程序进行设计时,其目的在于更好的设计通信系统中的数据节点、连线以及端口的程序。以下便对计算机单片机通信系统的通信程序进行分析。

(一)前面板

结合计算机单片机通信系统的设计要求,在设计前面板时,需要采用DDS信号源扫频模式,使前面板能够在窗口中对控件板数值进行添加,以便于利用控件来进行输入、按钮、开关等控制操作,通过DDS信号源扫频模式可对扫描步进、频率截止、起始扫描以及扫描周期等的数值进行精确设置,从而使通信系统能够完成对通信数据的控制。通信系统可调整按钮形状、控制量精度、位置及名称等,并利用控件选板将资源名称控件添加至I/O口中,进而使通信系统中的主要串口通信设备得以正确安装。依据信号种类的不同,在该通信系统的前面板设计中可以采取多种工作模式,如跳频工作模式、单频工作模式等,这样可使计算机单片机通信系统在操作上变得更加便捷。

(二)框图程序

在对计算机单片机通信系统中的框图程序进行设计时,需要将能够满足框图要求的节点图标添加至框图的窗口面板之中,然后利用端口将节点图标和端子进行相互连接,此时便需要通过单片机来控制AD芯片的寄存幅度、驻留时间、频率、步埋等,以此确保单片机能够将字信息发送至寄存器中进行寄存。利用Labview对计算机单片机通信系统进行设计时,需要利用前面板对DDS信号源扫频模式中的扫频步进、扫频周期、起始频率以及截止频率等通过运算转换,使其从原有的十进制数据转化为对应的十六进制数值,然后便可通过VISA写入函数的调用,使缓冲区中寄存的十六进制数据利用设备或接口写入到VISA资源名称之中,最后将其发送至单片机之中。

四、计算机单片机通信系统的软件实现

(一)功能模块

对于计算机单片机通信系统来说,其软硬件结构中的功能模块开发需要通过VB、VC等语言来编写。考虑到利用VB、VC等语言来对功能模块中的程序进行开发时,需要涉及API函数编程,而API函数的编程是非常繁琐的,并且在采用文本语言进行编写时也往往比较复杂,需要花费很长的时间才能使程序得以开发完成。因此,在对计算机单片机通信系统中功能模块的程序进行编写时,以此顺利完成其串口通信程序的开发,就必须要通过Labview来对各个功能模块的串口通信程序进行图形化编程,Labview作为图形化编程中的重要工具,其可以在图形功能模块中实现对高级语言函数的封装,并通过对各个图标进行连接,从而使各个功能模块能够实现串口通信程序的相互传递,这样既可简化编程环节,而且也能够进行直接使用,不需进行繁琐而复杂的API函数编程,能够节约大量的开发时间。

(二)通信步骤

在计算机单片机通信系统中,在调用VIS时,需要对串口参数进行设置,这些串口参数主要包括以下内容:首先要对通信串口的数据传输比特率及位数进行设置,此外还要对串口号进行设置。在对通信数据进行设置时,需要对其位数、停止位、奇偶检验以及数据流量控制进行设置。在利用VIS对通信串口进行调用,以此实现通信系统的数据传输功能时,需要检查通信串口在初始化过程中是否有问题,如果通信串口能够顺利进行初始化,便可利用该通信串口来对数据进行接收与发送。当不需要利用通信串口来接收与发送通信数据时,便可调用VIS来中断该通信串口的对话。在对VIS进行调用时,具体流程主要包括四个步骤:第一步是将仪器资源打开;第二步是对仪器进行写操作;第三步是对仪器缓存进行读操作;第四步是关闭仪器资源。

五、计算机单片机通信系统的运行调试

计算机单片机通信系统的软硬件结构设计需要通过Labview来对系统中的串口通信进行设计,可以说,Labview是计算机单片机通信系统中通信功能能否得以顺利实现的关键所在。通过对计算机单片机通信系统的运行情况进行调试,在调试过程中利用上位机将数据发送给单片机,并由单片机将接收到的数据返回至上位机中,通过液晶显示屏来显示该数据,从而确保计算机单片机通信系统的稳定运行。

六、结语

总而言之,对于计算机单片机通信系统来说,要想实现其通信功能,需要利用Labview来进行串口通信开发,通过Labview来进行图形化编程,使虚拟仪器程序的开发程序大大提高。同时,借助于计算机中的网络功能还可提高通信系统的开发速度。通过对计算机单片机通信系统的软硬件结构进行调试,可使计算机单片机通信系统实现其实时通信功能,同时还可使系统通信变得更加精准。

猜你喜欢

下位串口单片机
浅谈AB PLC串口跟RFID传感器的通讯应用
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
发射机房监控系统之下位机
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索