基于P89V51RB2单片机实验箱设计与开发
扫描二维码
随时随地手机看文章
引言
单片机,是嵌入式处理器的一大类(另外还有DSP、FPGA等),具有高度集成、体积小、功耗低、降低成本等诸多优点。随着单片机技术的不断发展,单片机在微机控制领域占据着重要地位,由于其具有体积小、可靠性好、易扩展、控制功能强、使用方便等优点,在智能仪表、工业测控、计算机网络与通信设备、日常生活及家用电器等方面都得到了广泛的应用[1~2].单片机已广泛应用于工业控制、智能家用电器、通讯、医疗和军事等众多领域,社会对掌握单片机技术的应用型人才的需求越来越大[3].
本设计的实验箱采用了数字逻辑,单片机原理,电路基础,动态数码管扫描等各个方面的理论依据。单片机原理是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,单片机依靠程序运行,并且可以修改。单片机通过编写的程序可以实现高智能,高效率,以及高可靠性。
1 设计概述及目的
本设计是制作一个实验箱,并对其进行实验和软件程序设计。实验箱中包括MCU、基础外设和扩展外设。
从国内同行业情况来看,单片机实验箱没有高精度集成,但是本次设计的实验箱基本做到了高集成、高效率,以及可靠性等。系统的设计过程,首先要了解实验箱各部分基本逻辑、原理,用Protel99SE进行原理图和PCB绘制,再用腐蚀板制作成板,最后用汇编语言进行软件调试和程序设计。
2 系统MCU及基本外设
2.1 P89V51 RB2单片机最小系统
如图1所示,为P89V51RB2单片机的最小系统电路原理图。所谓最小系统是指能够使单片机工作起来的最基本的电路形式。单片机与简单的接口电路相结合即可构成单片机最小系统,是单片机的基础应用,并且具有强大的扩展优势,被人们广泛应用[4].一个实际的应用电路都是以最小系统为基础建立起来的。
2.2 5V直流电源模块
为了提高系统的稳定和实验效果,电源模块直接通过USB输入5V的直流电源电压,为单片机系统提供正常的工作电压。为了能给输出电源足够的滤波效果,本系统采用470?F和100nF的并联电路作为滤波电容。
2.3 RS-232转UART
UART是通用异步串行口的意思,通用异步接收/发送装置,具有可编程性和高度兼容性,在数字通信及控制系统等各种嵌入式领域中得到了广泛的应用[5].RS232是个人计算机的通讯接口之一,也是UART的一种,它采用232电平。RS232只是一种电平信号,只需要用FPGA做一个异步串行口。当信号从FPGA出来后通过TTL到232.
如图3所示,其中的C1,C2,C3起滤波的作用,不同颜色的LED灯两端导通压降不同,因此需要不同的电阻分压。
3 主要外设扩展
3.1 74HC00与非门扩展
如图4所示,74HC00由4个2输入与非门构成。这2个部分均是由与门逻辑和非门逻辑组合而成的“与非门”逻辑电路。
3.2 数据移位电路
本电路完成数据移位的功能。由施密特反相器74HC14,8位串行输入移位寄存器74HC164,三态门74HC125组成。施密特反相器74HC14提供非逻辑并有效的保证了电平采集的可靠性。
3.3 振荡分频与8位二进制计数器
74HC4060是专门的多通道不同频率脉冲信号产生芯片。MR高电平复位。因此如图6所示,接了GND之后芯片可以一直工作。为使其芯片工作,必须要一个外部振荡源,Y1提供32768Hz的晶体振荡源,并分别与COUT管脚和CIN接通。
4 软件设计及其实验
4.1 LED灯及开关模块
如图7所示,发光二极管LED是一类特殊的二极管,除了符合普通的二极管的基本特性,还因为自身正向导通压降较高,因此在正向导通时会发出红,黄,绿,蓝等光。对于不同颜色的发光管它的导通电压为1.5V,绿色为1.8V,发光管的亮度取决于流过它的电流的大小。电路上的电阻起着限流的作用。以免过流损坏。本设计要做的是通过各种方式实现LED 灯发光。
4.2 软件控制八个LED闪烁
首先连接硬件电路。确定电源模块供电正常,最小系统模块,RS-232转UART模块供电。将实验系统的LED模块和最小系统中的P1口链接起来。经过74HC04的一个非门后链接到发光二极管的负极。假如单片机的P1.0口输出高电平1,那么经过反相器转变为低电平0后,即可驱动LED发光。通过调用DELAY使单片机P1.0口的输出信号维持“停顿”状态。通过编写程序,对不同的I/O口控制,进行一定规律的点亮和熄灭。
4.3 开关控制LED灯发光
首先连接硬件电路。确定电源模块供电正常,最小系统模块,RS-232转UART模块供电。将单片机P1口和LED相连接,作为输出。将单片机P0口和开关相连接。由于I/O口会读入和写出数据。从而通过编程完成开关控制LED指示灯的功能。
4.4 数据移位模块系统测试
在计算机系统中为了高效地实现计算机系统之间的远距离通信,且要使通信电路简单、可靠,则采用串行输入、并行输出的方式,移位寄存器的作用就是实现并行输入、串行输出或串行输入、并行输出。这里采用的是串行输入、并行输出。
此电路可以存储串行8位数据的输入。由于加在输入端上的数据可以移位读入,因此称之为移位寄存器。因为在CP的上升沿进行移位,因此也使该CP成为移位脉冲。
实验中将并行输出端和LED连接。通过按键输入串行的逻辑“1”、“0”并在LED上观察并行的输出结果。
4.5 振荡分频器和8位二进制计数器实验
振荡分频器,采用了一个三向晶振提供基础时钟振荡。通过4060对时钟信号进行了整理和分频。这里可以通过跳线选择2kHz~2Hz之间的9种频率。然后将振荡信号送入8位二进制计数器。
计数器是计算机系统最常用的时序电路之一,除了可以对时钟脉冲计数外,也可以用于分频、定时及产生各种时序信号。393将串行输入的时钟信号作累加,并将结果以并行八位输出的模式输出。用输出端控制8盏LED灯,可以很好地看出其在不同频率下累加的效果。
总结
本设计是制作一个P89V51RB2实验箱,并对其进行实验和软件程序设计。与传统的实验箱相比,使用方便,读数准确,所包含的实验电路全面且实用。为了满足目前高等学院的需求,还在现有的实验箱的基础上加入其他的功能如汇编语言等。