第1章 基于单片机开发板的控制应用
目前,在许多单片机应用系统中,上、下位机分工明确,作为下位机核心器件的单片机往往只负责数据的采集和通信,而上位机(一般为个人计算机,简称PC)通常以基于图形界面的Windows系统为操作平台。为便于查询和保存数据,还需要数据库的支持。这种应用的核心是数据通信,它包括单片机和上位机之间,客户端和服务器之间,以及客户端和客户端之间的通信,而单片机和上位机之间的数据通信则是整个系统的基础。
单片机和PC的通信是通过单片机的串口和PC串口之间的硬件连接实现的。
1.1 系统设计说明
1.1.1 设计任务
分别利用Keil C51、汇编语言编写程序实现单片机数据采集与控制;分别利用LabVIEW和LabWindows/CVI编写程序实现PC与单片机自动化控制。任务要求如下。
1.模拟电压输入
单片机开发板接收变化的模拟电压(范围:0~5V)并在数码管上显示(保留1位小数);PC接收单片机发送的电压值(十六进制,1个字节),转换成十进制形式,以数字、曲线的方式显示。
2.模拟电压输出
在PC程序界面中输入一个数值(范围:0~10),发送到单片机开发板,在数码管上显示(保留1位小数),并通过模拟电压输出端口输出同样大小的电压值。
3.数字量输入
将单片机开发板数字量输入端口与地短接或断开,产生数字信号0或1送到单片机数码管上显示,单片机再将数字信号发送到PC显示。
4.数字量输出
PC发出开关指令(0或1)传送给单片机开发板,驱动相应的继电器动作。
单片机与PC通信,在程序设计上涉及两个部分的内容:一是单片机的C51数据采集和控制程序;二是PC的串口通信程序和各种功能程序。
1.1.2 硬件系统
1.线路连接
基于单片机开发板的数据采集与控制系统结构如图1-1所示。
工作过程为:作为下位机的单片机实时采集测量到的电压值,并将采集的电压数据显示在数码管上,同时采集的电压值通过串口传送到上位PC。上位机收到下位机传送来的电压数据,在显示屏上显示。上位PC设置电压值,通过串口发送到单片机系统,单片机数码管显示该电压,并通过模拟电压输出端口输出。上位PC发出开关指令传送给单片机系统,驱动继电器动作。电气开关产生开关信号,发送到PC显示。
图1-1 PC与单片机组成的数据采集与控制系统框图
如图1-2所示,单片机开发板与PC数据通信采用3线制,将单片机开发板B的串口与PC串口的3个引脚(RXD、TXD、GND)分别连在一起,即将PC和单片机的发送数据线TXD与接收数据RXD交叉连接,两者的地线GND直接相连。
图1-2 PC与单片机开发板B组成数据采集与控制系统
由于单片机的TTL逻辑电平和RS-232C的电气特性完全不同,RS-232C的逻辑0电平规定在+3~+15V之间,逻辑1电平在-3~-15V之间,因此,在将PC和单片机的RXD和TXD交叉连接时必须进行电平转换,单片机开发板B使用的是MAX232电平转换芯片。
模拟电压输入:直接采用单片机的5V电压输出(40和20引脚)。将电位器两端与STC89C51RC单片机的40和20引脚相连,电位器的中间端点(输出电压0~5V)与单片机开发板B的模拟量输入口AI0相连。
模拟电压输出:不需连线。使用万用表直接测量单片机开发板B的AO0,AO1,AO2,AO3端口与GND端口之间的输出电压。
数字量输入:使用杜邦线将单片机开发板B的DI0,DI1,DI2,DI3端口与DGND端口连接或断开即可。
数字量输出:不需连线,直接使用单片机开发板B的继电器和指示灯。
2.单片机开发板B简介
单片机开发板B是电子开发网专为单片机初学者设计并开发的一种实验兼开发板,开发这个产品的目的就是为了帮助单片机初学者快速学会单片机技术。在自学单片机的过程中,通过做一系列的实验,从而比较容易地领会单片机那些枯燥、难懂的专业术语,而且这款实验开发板弥补了市场上常见的单片机实验板的一些不足,有针对性地面向最终的实用控制功能,包括模拟量输入与输出接口、数字量输入与输出接口,增加了实用的继电器接口,可以使实验板能够直接用于控制各种负载,成为一个实用化的嵌入式控制系统。
图1-3是单片机开发板B的实物图。
图1-3 单片机开发板B实物图
单片机开发板B可以做很多实验,如:模拟电压输入与输出、开关量输入与输出、红外线遥控器编码分析仪、通用频率计、温度测控等。
有关单片机开发板B的详细信息请查询电子开发网http://www.dzkfw.com。