当前位置:文档之家› 基于51单片机的学习开发板的设计

基于51单片机的学习开发板的设计

编号:0790********

本科毕业论文

题目:基于51单片机的学习/开发板的设计

学院:物理与电子信息学院

专业:电子信息科学与技术

年级:07级(1)班

姓名:刘志强

指导教师:周昆鹏

完成日期:2011年5月23日

摘要 (1)

Abstract (2)

引言 (3)

一设计方案 (3)

1.1系统功能分析 (3)

1.2芯片选型 (4)

二硬件设计 (8)

2.1 单片机最小系统电路的设计 (8)

2.2 输入部分的设计 (9)

2.3 显示部分的设计 (11)

2.4AD和DA设计 (13)

2.5串口的设计 (14)

2.6其它电路设计 (15)

三开发板功能验证 (20)

3.1矩阵键盘+数码管显示数字和字符 (20)

3.2TLC2543+数码管显示0-5V可调直流电压 (21)

3.3DAC0832+数码管控制发光二极管的亮暗显示 (22)

3.41602显示字符 (23)

3.5AT24C04+LCD显示单片机向外接ROM存取数据的过程 (24)

3.6DS1302+1602显示实时时钟 (24)

3.7串口实验 (25)

结语 (27)

参考文献 (28)

致谢 (29)

作者简介 (30)

为了让单片机使用者有更好的学习、应用和开发单片机系统的条件,在参考了许多单片机开发板设计的基础上,本文提出了一款资源丰富,使用简便,附带程序源代码的51单片机学习/开发板的详细设计方案。

本设计是基于51单片机的学习/开发板,主要分为硬件系统的设计和软件功能验证两个部分。硬件部分涵盖了单片机学习及应用过程中使用到的大部分硬件资源,如LCD显示器、AD和DA转换器、数码管显示器、键盘输入等。并具有一定的扩展性;软件附有各模块的C程序实例,可与硬件资源实现联调。为单片机的学习和开发提供软硬件资源平台。

关键词:单片机;学习/开发板;硬件资源;C程序

In order to let single-chip microcomputer users are better learning, application and development of single-chip microcomputer system conditions, in reference to the many MCU development based on board design, this paper puts forward a paragraph is rich in resources, easy to use, the source code 51 single-chip microcomputer incidental learning/development board detailed design proposal.

This design is based on 51 MCU learning/development board, mainly divides into hardware system design and software design. Hardware covers the microcontroller learning and application process in use of the most hardware resources, such as LCD monitor, the AD and DA converter, digital tube display, etc., and has certain expandability; Software with each module with C program examples, hardware resources to achieve the alignment. The learning and development for microcontroller provides software and hardware resource platform.

Keywords: MCU;learning/development board;hardware;C program

随着电子技术的发展,单片机在电讯技术、工业控制、汽车自动化、家用电器等领域得到了广泛的应用,而51单片机由于其实用性好、可靠性高、便于扩展等特点得到了广泛的应用。为了更好的学习和应用单片机,可以将经常应用到的单片机外围电路集成到一个学习/开发板上以供使用者方便使用。同时应提供常用的移植性较好的模块代码(本设计选用C作为源代码的编写工具)。市场上现存的单片机开发板很多,因此,要求设计尽量能够达到资源丰富、易用性好、设计美观等特点。

本系统是基于51单片机的学习/开发板,集成了单片机应用过程中常用到的硬件资源,如键盘(独立键盘、矩阵键盘)、数码管、LCD显示器、模数和数模转换电路,外接存储等。为学习和开发单片机产品提供平台。

一设计方案

1.1系统功能分析

1.1.1硬件功能

1输入功能

系统需要有输入数据的功能,如按键输入。按键分为独立按键和矩阵按键,独立按键的特点是操作简便,矩阵按键有占用I/O口少的特点,考虑到实际应用中这两种按键会经常用到,因此都要设计。

2显示功能

系统选用三种显示方法,分别为LED显示、段数码管显示、LCD液晶显示器显示。以达到监控单片机工作状态和显示输出结果的目的。

(1)LED

选择8个红色发光二极管,采用共阳接法(即单片机输出0时二极管亮,输出1时二极管灭),用P0口输出数据,来显示端口的电平状态。

(2)数码管

选择8位8段数码管作为单片机的数字和字符输出(可显示数字“0-9”,字符“a-f”)。数码管显示的特点是快速直观。

(3)LCD液晶

选择字符型液晶显示器1602作为单片机输出字符的显示。

3模数和数模转换电路

单片机在控制过程中经常要在外部采集到模拟信号,经模数转换转为单片机能够识别的数字信号处理后再转为模拟信号输出,控制外设的正常运行。

模数和数模转换的通信方式有串行和并行两种,为了达到学习的目的,要求模数转换用串行的通信方式,数模转换用并行的通信方式。

4串口及其他外围电路

(1)串口

串口是单片机应用过程中最常用到的部件之一,它具有通信简单,通信用线少,可级联多个外设的特点,能够实现单片机与其他外设的通信。要求开发板实现串口的功能。

(2)其它功能

外接存储电路、实时时钟电路,报警电路等都应该具备。

1.1.2软件功能

单片机系统是由硬件资源和软件代码联合起来工作的。因此,作为一个完整的学习/开发板,还要求有必要的源代码,C语言既具有高级语言的特点,又具有汇编语言的特点,最重要的是,它具有很好的移植性,因此,它的应用范围非常广泛,所以系统的所有实例代码都用C编写。

为了使开发板学习和使用更加方便,设计中分模块编写源代码,比如将LCD 液晶显示器和AT24C04的硬件功能联合起来编写一个验证代码。这样可以使使用者直观的把硬件和软件联合起来。

1.2芯片选型

1.2.1单片机的选择

单片机是将CPU、存储器、总线、I/O接口电路集成在一片超大规模集成电路芯片上。单片机具有体积小、功能全、价格低廉等突出优点。与其对应的软件也非常丰富。

AT89S52单片机是以MCS-51核心技术为其内核,采用高性能、低功耗、非易失性存储器技术的8位微控制器。其具有8KB可在线ISP编程的Flash存储器,32个可编程I/O接口,3个可编程16位定时器/计数器,具有8个中断源、6个中断矢量、2级优先权的中断系统,全双工UART串行通信口,1000次擦写周期等特点。

AT89S52的引脚排列图如图1-1所示。

图1-1 A T89S52单片机引脚图

Figure 1-1 AT89S52 microcontroller pin diagram

设计选用ATMEL公司的AT89S52单片机做为控制芯片。

1.2.2锁存器的选择

锁存器可以在特定输入脉冲电平作用下改变状态。锁存,就是把信号暂存以维持某种电平状态。锁存器的最主要作用是缓存,其次完成高速的控制其与慢速的外设的不同步问题,最后是解决一个I/O口既能输出也能输入的问题。

为了控制不同外设的不同步工作,需要加锁存器以控制在不同时刻单片机可以控制不同的外设工作。本设计选用八位输入输出的锁存器74HC573。

表1-174HC573真值表。

Table 1-1 74HC573 truth table

输出使能锁存使能D(输入)Q(输出)

L H H H

L H L L

L L X不变

H X X Z

当输出使能为低电平,锁存使能为1时,输出端数据等于输入端数据;

当输出使能为低电平,锁存使能为0时,输出端保持不变;

当输出使能为高电平,无论锁存使能和D为何值输出端为高阻态。

74HC573芯片引脚图如图1-2所示。

OE VCC

D0 Q0

D1 Q1

D2 Q2

D3 Q3

D4 Q4

D5 Q5

D6 Q6

D7 Q7

GND LE

图1-2 74HC573引脚图

Figure 1-2 74HC573 pin diagram

1.2.3串口电平转换芯片的选择

MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5V单电源供电。MAX232专门解决单片机与PC机通信时电平不匹配的问题。TTL/COMS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/COMS数据后从R1OUT、R2OUT输出。

MAX232芯片管脚排列如图1-3所示。

图1-3 MAX232芯片引脚图

Figure 1-3 MAX232 chip pin diagram

1.2.4AD芯片的选择

模数转换(ADC)亦称模拟-数字转换。是将连续的模拟量(如电压、电流等)

通过取样转换成离散的数字量,以供单片机处理。常用的有为积分型、逐次比较型等。

TLC2543是德州仪器公司生产的8/12位逐次逼近型模数转换器它有四个控制输入端采用简单的4线串行接口即可方便的与控制部件连接。四个控制端为CS(片选)、输入输出时钟(I/O CLOCK)串行数据输出端(DATA OUT)以及串行数据输入端(DATA INPUT)。片内的14通道多路器可以选择11个输入中的任何一个或三个内部自测试电压中的一个,采样-保持是自动的。转换结束EOC 输出变高。TLC2543的最大转换时间为10uS。

TLC2543引脚图如图1-4所示。

图1-4 TLC2543引脚图

Figure 1-4 TLC2543 pin diagram

1.2.5DA芯片的选择

随着数字电子技术的发展,用数字电路来处理模拟信号的方式更加普遍。将输入的每一位二进制代码按其权值大小转换成相应的模拟量然后将代表各位的模拟量相加,即得到与数字量成正比的模拟量,这样,便实现了从数字量到模拟量的转变。

DAC0832是一个先进的COMS 8位多用DAC。根据对DAC0832的数据锁存器和DAC寄存器的不同控制方式,DAC0832有三种工作方式:直通方式、单缓冲数据方式、双缓冲数据方式。

一个8位DA转换器有8个输入端,有一个模拟量输出。输入可有256个不同的二进制组态。输出为256个不同的电压之一,即输出电压不是整个电压范围内的任意值,而只能是256个可能值。

DAC0832引脚图如图1-5所示。

图1-5 DAC0832引脚图

Figure 1-5 DAC0832 Pin

二硬件设计

2.1单片机最小系统电路的设计

最小系统指可以维持单片机正常运行的有最少器件的单片机系统,包括CPU、时钟电路、复位电路。

2.1.1时钟电路

时钟电路维持了单片机工作所需要的时序,因此,它是组成单片机最小系统必备的电路之一。基本电路由晶振和电容组成,本设计选用51单片机常用的12MHz晶振,电容选30pF瓷片电容。

时钟电路电路图如图2-1所示。

图2-1 晶振电路

Figure 2-1 Crystal Oscillator Circuit

2.1.2复位电路

当单片机上电以后,程序须从第一条开始执行,即单片机会选择片内ROM 的第一字节空间开始执行。因此,单片机上电后必须复位,以使单片机指向开始指令;当系统受到外界干扰而使程序“跑飞”时,须手动复位系统,以使系统重新正常运行。因此,本系统设计手动复位电路。当按下复位按键S0时,系统复位从第一条指令重新开始执行。

复位电路如图2-2所示。

图2-2 复位电路

Figure 2-2 Reset Circuit

2.1.3扩展电路

考虑到开发板的可扩展性,在单片机I/O口输出端增加P0、P1、P2、P3扩展口,采用双排接口,实际应用中用跳线帽短接,扩展时将跳线帽拔掉,这样单片机端口就不会受到其它电路的影响。

2.2输入部分的设计

2.2.1按键的设计

按键是单片机系统中常用的输入部件,本系统设计一个验证中断实验的按键S17,三个未定义功能的独立按键S18、S19、S20由使用者设定其功能。各按键的功能需由软件设置,即在编写源代码的过程中自行定义这三个独立按键分别对应的功能。

图2-3显示了具有外部中断功能的独立按键设计方案,设计中加入了一个1K

的上拉电阻,它有屏蔽外部干扰的作用,没有按键按下时独立按键对应的I/O口接+5V电源为高电平,有按键按下时独立按键对应的I/O口接地为低电平。同时它也可以作为一个普通的独立按键使用,因此,其它独立按键的设计与具有中断功能的独立按键的设计相同。图2-3仅给出了具有外部中断功能的独立按键的设计,其他独立按键的设计只需改变软件的编写即可。

独立按键图如图2-3所示。

图2-3 独立按键电路

Figure 2-3 independent key circuit

2.2.2矩阵键盘的设计

独立按键的设计虽然简单,但缺点是当需要较多的按键时,独立按键占用的I/O口较多(一个独立按键对应一个I/O口)。因此,在需要按键数量较多时,为了减少I/O口的占用,通常使用矩阵键盘,即将按键排列成矩阵形式,M+N个I/O 端口即可设计出M*N个键盘。本设计采用P1口设置4*4矩阵键盘。按键的标号为第一行第一列记为“0”键,第一行第二列为“1”键,依此类推,16个按键分别对应数字“0-9”,字符“a-f”。

键盘的识键和译键有硬件和软件两种方法,硬件译键的方法需要专门的芯片支持,因此设计成本较高。软件法实现简单,成本较低,所以采用行扫描法进行键盘的识别。

行扫描法的工作过程简单介绍为:首先给P1口赋值0xfe,这时P1口除了

P1.0以外其余都为高电平,此时如与P1.0口相接的按键有按下,则P1口高四位读出的数据有变化(如与P1.0相接的列线中有低电平输出,则对应的按键按下,如与P1.0相接的列线中无低电平输出,则说明无按键按下),延时一段时间以确认从P1口高四位读回的数据是否由于干扰引起的,确定有按键按下后,根据读

出的P1口的值即可确定是哪一列的按键按下。以此类推,可将16个按键依次识别。即为行扫描法识键。

矩阵键盘电路图如图2-4所示。

图2-4 矩阵键盘

Figure 2-4 Matrix Keyboard

2.3显示部分的设计

2.3.1发光二极管LED的设计

LED灯可直观的显示数据的高低电平,实验中可用来观察单片机的工作状态和输入输出状态。系统采用8个红色LED,用一片74HC573控制LED灯的使用与否,用P0口作为数据输出,P2.3口作为控制74HC573是否选通的片选信号。

LED电路图如图2-5所示。

图2-5 LED电路

Figure 2-5 LED circuit

2.3.2数码管的设计

数码管是一种半导体发光器件,按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将按一定规则排列的所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,控制设备控制每一段发光二极管的阴

极电平状态控制每一段二极管的显示与否。共阳数码管在应用时应将公共极COM接到+5V。本设计选用两个四位共阳极八段数码管。软件采用动态扫描法实现。

数码管显示电路如如图2-6所示。

图2-6数码管显示电路

Figure 2-6 LED display circuit

使用两片四位八段数码管构成8位显示,用两片74HC573分别控制数码管的段选和位选。显示驱动程序用动态扫面法实现数码管的显示。

2.3.3液晶显示器的设计

液晶显示器,或称LCD(Liquid Crystal Display),为平面超薄的显示设备,它由一定数量的彩色或黑白像素组成。液晶显示器功耗很低,因此倍受使用者的青睐,适用于使用电池的电子设备。

LCD1602液晶显示器为字符、数字型显示器,为了丰富开发板的学习资源,本设计预留了字符型LCD 1602的外接接口,可供使用者扩展使用。

表2-1 LCD1602控制端引脚功能表。

Table2-1 LCD1602 control terminals pins menu

控制端VSS VCC VEE RS R/W E

功能描述电源地电源正极液晶显示

偏压数据/命

令选择

读/写选

使能信号

LCD1602扩展电路图如图2-7所示。

图2-7 LCD1602扩展电路

Figure 2-7 LCD1602 expansion circuit

2.4AD和DA设计

2.4.1模数转换器

本设计选用8/12位输出的串行AD TLC2543,输入端口0外接+5V电源,可通过电位器Rt1调压。时钟信号由P3.4口提供,芯片的数据输入口用P3.5口控制,芯片的数据输出至P3.6口。

AD转换电路如图2-8所示。

图2-8 AD转换电路

Figure 2-8 AD conversion circuit

2.4.2数模转换器

数模转换就是将离散的数字量转换为连续变化的模拟量,通常用来控制需要模拟量工作的单片机外设。本设计选用8位并行输入的DAC0832,输出可接一

个发光二极管,通过发光二极管显示的暗亮变化观察模拟量输出的连续变化。

DA转换电路图如图2-9所示。

图2-9 DA转换电路

Figure 2-9 DA conversion circuit

2.5串口的设计

2.5.1串口简介

串行接口简称串口,也称串行通信接口(通常指COM接口),是采用串行通信方式的扩展接口,其特点是通信线路简单,只要一对传输线就可以实现双向通信,串行通讯可以进一步分为单工、半双工和全双工三种。

2.5.2 RS-232标准

也称标准串口,最常用的一种串行通讯接口。使用9芯D型插座(DB9),RS-232采取不平衡传输方式,即所谓单端通讯。由于其双绞线上的分布电容,其传送距离最大为约15米,最高速率为20kb/s。RS-232是为点对点(即只用一对收、发设备)通讯而设计的,其驱动器负载为3kΩ~7kΩ。所以RS-232适合本地设备之间的通信。

2.5.3串口电路

系统占用AT89S52单片机的串口P3.0(RXD)和P3.1(TXD),波特率由定时器T1生成。电平转换芯片采用MAX232芯片,可实现单片机与PC机、单片机与单片机之间的通信。

串口电路图如图2-10所示。

图2-10串口电路

Figure 2-10 Serial circuit

2.6其它电路设计

2.6.1时钟电路

为了保证系统每次上电都有同步的时间显示,设计外接一片实时时钟芯片DS1302,芯片外接32768Hz的晶振提供工作时钟,+3.6V纽扣电池维持芯片正常工作的电压。DS1302的时钟信号由单片机P2.2口提供,数据口由P2.1提供。

时钟电路图如图2-11所示。

图2-11 实时时钟电路

Figure 2-11 Real-time clock circuit

2.6.2 EEPROM电路的设计

单片机开发过程中经常要将一些重要的数据或处理结果保存起来,以供进一

步的处理,因此,系统外接一片串行EEPROM芯片AT24C04。AT24C04支持IIC 总线协议。数据线SDA由单片机P1.4口提供,串行信号SCL由P1.3提供。

外接ROM电路图如图2-12所示。

图2-12 外接ROM电路

Figure 2-12 External ROM circuit

2.6.3电源电路

系统采用外接+5V直流电源或USB电源供电,用一个拨码开关S21实现电源的选择。并给每一种外接电源附加一个LED,用来显示正在使用的电源状态。

电源电路图如图2-13所示。

图2-13 电源电路

Figure 2-13 Power Supply Circuit

2.6.4 下载接口的设计

1 ISP简介

ISP(In System Programming)在系统可编程,指电路板上的空白器件可以编

程写入最终用户代码,而不需要从电路板上取下器件,已经编程的器件也可以用ISP方式擦除或再编程。

2下载接口设计

51单片机提供有ISP功能,分别为MOSI(P1.5)、MISO(P1.6)、SCK(P1.7)和RSE四个引脚,将这四根引线外接至四针插头,当需要下载代码到单片机时,只需将连接线接好即可。

ISP下载电路图如图2-14所示。

图2-14 ISP下载电路

Figure 2-14 ISP download circuit

2.6.5蜂鸣器电路

蜂鸣器是一种一体化结构的电子讯响器,广泛应用于单片机系统中,用来做发声器件或报警装置。由于蜂鸣器的工作电流一般比较大,以致于单片机的I/O 口是无法直接驱动的,所以要利用放大电路来驱动,一般使用三极管来放大电流就可以了。设计采用一只NPN型三极管9013作为驱动蜂鸣器的放大电路,控制端B极由P3.3提供,试验过程中可改变J3的短路帽改变蜂鸣器的开通/断开。

蜂鸣器电路图如图2-15所示。

图2-15 蜂鸣器电路

Figure 2-15 buzzer circuit

图2-16开发板原理图

Figure 2-16 Development Board Schematic

相关主题
文本预览
相关文档 最新文档