当前位置:文档之家› 单片机实验指导

单片机实验指导

(内部教材)单片机实验指导书周小波编阜阳师范学院物理与电子科学学院电子信息科学与技术教研室第一章系统概述一、系统简介MCS-51单片机实验板是物理与电子科学学院自主研发设计的单片机实验系统。

板载一片51内核STC89C52单片机,整个实验系统由17个独立模块组成,各模块相互独立,给学生提供了更大的发挥空间。

利用目前流行的Keil c51软件,进行软、硬件仿真开发调试。

二、各模块电路(1)单片机最小系统模块最小系统电路主要由STC89C52单片机、时钟电路、复位电路等构成,所有的IO口均引出。

(2)串口电平转换模块串口电平转换电路主要由MAX232芯片以及相关外围电路构成,可以用来下载程序,以及作串口通信实验。

(3)数码管驱动模块8位共阳极数码管采用8550(PNP)三极管驱动,模块预留位选端口和段选端口两排插针,根据需要可自行连接。

(4)LED发光二极管模块板载8个发光二极管,J1为接线端口,可根据需要自行连接到单片机的IO 口或者其他外设上,PZ2为排阻,起限流作用。

(5)键盘模块键盘电路由4各独立按键和4*4矩阵键盘构成,Pk2接口为独立键盘的接线端子,Pk1端口为矩阵键盘的接线端子。

(6)DA转换模块DA转换电路采用8位DA芯片DAC0832,PDA端口为8位数据的输入端,11脚为DAC0832输出端,发光二极管用于指示DA转换的结果。

(7)AD转换模块AD转换电路由8位AD转换芯片ADC0804构成,通过调节VR1电位器可以改变AD输入端的模拟电压。

(8)电机驱动模块采用L298N模块作为电机驱动,可以驱动2个直流电机或1个步进电机,J5为信号输入端,输出端J6接直流电机或者步进电机。

(9)总线扩展模块采用82C55芯片作为总线的扩展,采用一片锁存器74HC573,使P0口可以作为地址和数据总线的复用端口。

J9为82C55的控制总线接线端子,J10为82C55的地址和数据接线端子,PA、PB、PC为82C55的输出端口,可以外接其他外设完成相应的实验。

(10)液晶显示模块液晶显示模块采用字符液晶1602,J0为接线端子,包括数据总线、地址总线以及相关控制总线。

(11)点阵模块点阵模块采用2片串入并出的74HC595芯片驱动一个8*8点阵,J3和J4为2片74HC595的控制端口。

(12)时钟模块采用DS1302作为时钟芯片,作为实时时钟的实验。

1203in端口为DS1302的接线端子,可以连接到单片机相应的IO口上,编写驱动程序可以读取DS1302芯片内部的时钟信息。

(13)继电器驱动模块采用8550 PNP三极管驱动继电器工作,继电器的常开端连接一个发光二极管,用于演示继电器的特点。

(14)EEPROM模块EEPROM模块采用AT24C02芯片作为存储器,用于演示非易失型存储器的特点,SDA、SCL为AT24C02的时钟线和数据线,需要连接到单片机的相应管脚。

(15)蜂鸣器驱动模块蜂鸣器驱动模块采用8550三极管驱动,J2接线端子分别为蜂鸣器、温度传感器DS18B20以及继电器的接线端。

(16)温度传感器模块采用数字型 DS18B20作为温度传感器,该传感器为单总线结构,总线上需要接一个上拉电阻。

(17)电源接口模块为了便于学生接线以及更好的完成相关实验项目,电路板上扩展了8路+5V 电源。

三、总体电路图四、PCB图第二章实验指导实验一熟悉开发环境1、实验目的:(l)学习使用Keil软件新建工程的方法;(2)学习如何编译程序;(3)学习如何下载程序。

2、实验内容:学习Keil软件建立工程以及编译工程,利用STC-ISP软件通过串口将编译生成的HEX文件下载到单片机中。

3、实验步骤:(1)新建一个工程在桌面上或者相应磁盘上新建一个文件夹,取名为Text(可任意取名),打开Keil软件,点击菜单栏的Project—New Project,弹出对话框,将工程保存到Text文件夹,工程名也取为Text(可以是其他名称),点击保存按钮,保存工程,如下图所示。

保存工程后,弹出一个对话框,如下图所示,选择其中的Atmel项,找到Atmel 公司的AT89C52单片机并选中后点击确定,此时会弹出一个对话框,选择“是”或者“否”都可以。

此时工程虽然成功创建了,但是工程中是空的,需要向工程里面添加相应的文件,点击菜单栏File—New,可以新建一个文件,保存为Text.c(可以为其他名称,如果用C语言写程序,后缀必须为.c,用汇编写程序后缀为.asm),如下图所示。

虽然新建了一个文件(C文件或者汇编文件),但是该文件还没有添加到工程中,添加文件到工程的方法如下图所示,右击Project Workspace 中的Source Group1,选择 Add Files to Group Source Group 1 弹出对话框,找到工程的保存目录即Text文件夹,选择以前新建的Text文件,点击Add即可将文件添加到工程中,工程新建完毕。

(2)程序的编译下面以C语言写程序为例演示工程编译的过程,点击Text.c文件,程序需要写在该文件中,如下图所示。

点击工具栏中的Option for Target,选择Output选项卡,将Create HEX File选项的复选框勾上后,点击确定。

这样编译后就可以生成单片机可执行的HEX文件了。

点击工具栏上的编译按钮即可对工程的所有文件进行编译,如下图所示。

(3)程序的下载打开位于桌面的STC-ISP.exe可执行软件,如下图所示。

首先选择MCU的型号,需要将MCU的型号选择为STC89C52,如下图所示。

选择打开程序文件按钮,找到以前编译的HEX文件,点击打开。

以Text工程为例,HEX文件与工程保存在同一个目录,如下图所示。

将实验板的通过串口线与PC即连接,下载程序前需要设置串口的端口号。

首先查看PC机串口的端口号,右击“我的电脑”—属性—硬件—设备管理器—端口—通讯端口,可以看出下图所示的串口端口号为COM1。

设置STC-ISP软件的COM端口号,如下图所示。

将实验板断电,点击STC-ISP软件的“Download/下载“按钮,再给实验板上电,程序即可下载到单片机中。

如下图所示。

4、思考:(1)为什么在编译之前需要将Create HEX File复选框选上。

(2)下载程序需要设置哪些选项。

5、实验报告要求:(1)整理新建工程的步骤,将它们按正确的格式详细书写在实验报告纸上。

(2)写出编译程序的步骤。

(3)写出思考题的答案。

实验二 I/0口输入输出实验1、实验目的:(l)学习51单片机IO口的使用方法;(2)学习延时子程序的编写。

2、实验内容:(1)学习IO口的位操作方法,分别选择P0、P1、P2、P3端口中的某一位,该位作为输出使用,连接一只发光二极管,控制器闪烁。

(2)P0、P1、P2、P3口作为输出口,连接八只发光二极管,编写程序,使发光二极管从左至右循环点亮。

(3)将P1口的某一位作为输入使用,连接一个按键,当按键按下时使发光二极管亮,否则发光二极管熄灭。

3、实验电路图:发光二级管电路,PZ2为限流电阻,J1为接线端子。

按键电路,本实验可以选择独立按键来完成,独立按键的接口为Pk2。

本实验需要用到的模块标注如下图所示。

4、实验步骤:(1)将P0.x(P0口的任意一位)连接到一只发光二极管上(J1接口的任意一个插针),编写程序使发光二级管闪烁,将P1.x、P2.x、P3.x依次接到一只发光二极管上,重复上述过程。

(2)将P0口连接到8只发光二极管上(J1接口),编写程序使发光二极管从左至右循环点亮,将P1、P2、P3口依次接到J1接口,重复上述过程。

(3)将P1.0口连接到一只发光二极管上(J1接口的任意一个插针),P1.1连接到Pk2独立键盘端口的某一插针,编写程序当按键按下时,发光二级管亮,放开按键时,发光二极管熄灭。

5、思考:(1)改变延时常数,使发光二极管闪亮时间改变。

(2)修改程序,使发光二极管闪亮移位方向改变。

6、实验报告要求:(1)整理本实验涉及的程序,将它们按正确的格式详细书写在实验报告纸上。

(2)写出实验结果、实验收获与对本实验改进的意见。

(3)写出思考题的答案。

实验三数码管显示实验1、实验目的:(l)学习数码管的静态显示;(2)学习数码管的动态显示。

2、实验内容:(1)编写程序让8只数码管同时显示0;(2)编写程序让8只数码管初始显示0,每隔大约1s加1显示(可以用延时函数实现),到数码管显示9后,再从0开始显示,如此循环反复。

(3)编写程序学习数码管的动态显示,让8只数码管从从左往右显示1、2、3……8。

3、实验电路图:低电平选中相应的位。

4、实验步骤:(1)将P0.x(P0口的任意一位)连接到一只发光二极管上(J1接口的任意一个插针),编写程序使发光二级管闪烁,将P1.x、P2.x、P3.x依次接到一只发光二极管上,重复上述过程。

(2)将P0口连接到8只发光二极管上(J1接口),编写程序使发光二极管从左至右循环点亮,将P1、P2、P3口依次接到J1接口,重复上述过程。

(3)将P1.0口连接到一只发光二极管上(J1接口的任意一个插针),P1.1连接到Pk2独立键盘端口的某一插针,编写程序当按键按下时,发光二级管亮,放开按键时,发光二极管熄灭。

5、思考:(1)改变延时常数,使发光二极管闪亮时间改变。

(2)修改程序,使发光二极管闪亮移位方向改变。

6、实验报告要求:(1)整理本实验涉及的程序,将它们按正确的格式详细书写在实验报告纸上。

(2)写出实验结果、实验收获与对本实验改进的意见。

(3)写出思考题的答案。

实验四外部中断实验1、实验目的:(l)掌握中断的特点;(2)掌握外部中断的两种触发方式;(3)掌握中断嵌套的特点。

2、实验内容:(1)编写程序学习外部中断的电平触发方式。

无中断时发光让发光二极管从左到右依次点亮,有外部中断请求时,4位数码管从0000开始加1显示(加到9999后复位为0000),同时蜂鸣器报警。

(2)设置中断优先级寄存器,当有外部中断0请求中断时,中断程序执行发光二极管程序,在此过程中,外部中断1也有中断请求,外部中断0的中断程序将被中断去执行外部中断1的中断程序(数码管加1显示程序)。

3、实验电路图:蜂鸣器驱动电路如下图所示,其他电路见IO口实验和数码管实验电路。

蜂鸣器采用PNP三极管驱动,低电平有效。

实验板上数码管为4位一体的共阳极数码管,采用8550 PNP三极管驱动,低电平选中相应的位。

4、实验步骤:(1)将P3.2或者P3.3(外部中断0和外部中断1引脚)连接到一个独立按键,发光二极管和数码管接口连接到单片机的相关IO口,设置外部中断的触发方式ITx(x=0,1),使其为电平触发方式,主程序中实现发光二极管的流水灯功能,中断程序中实现数码管显示程序。

相关主题