ImageVerifierCode 换一换
格式:DOCX , 页数:36 ,大小:1.47MB ,
资源ID:12529368      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-12529368.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机实验指导书.docx)为本站会员(b****8)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

单片机实验指导书.docx

1、单片机实验指导书目录实验一 系统认识实验 2实验二 端口I/O输入输出实验 14实验三 外部中断实验 17实验四 定时器实验 21实验五 串行口通信实验 25实验六 串行通信的调试实验 29实验七 数码管静态显示实验 33实验八 数码管动态显示实验 38实验一 系统认识实验一、 实验目的1. 学习Keil C51编译环境的使用;2. 学习STC单片机的下载软件STC-ISP的使用;3. 掌握51单片机输出端口的使用方法。二、 实验内容任选单片机的一组I/O端口,连接LED发光二极管,编写程序实现8个LED按二进制加1点亮。三、 接线方案单片机P10P17/C51单片机 接L0L7/LED显示,

2、如下图:图1-1实验线路四、 实验原理51单片机有4个8位的并行I/O端口:P0、P1、P2、P3,在不扩展存储器、I/O端口,在不使用定时器、中断、串行口时,4个并行端口,32根口线均可用作输入或输出。作为输出时,除P0口要加上拉电阻外,其余端口与一般的并行输出接口用法相同,但作为输入端口时,必须先向该端口写“1”。例如P0接有一个输入设备,从P0口输入数据至累加器A中,程序为: MOV P0, #0FFH MOV A, P0若将P0.0位的数据传送至C中,程序为: SETB P0.0 MOV C, P0.0五、 实验步骤1、 连接串行通信电缆和电源线;2、 根据图1-1实验线路进行电路连接

3、;3、 将C51单片机核心板上的三个开关分别拨到“独立”、“运行”“单片机”;4、 打开实验箱上的电源开关。5、 利用Keil C51创建实验程序,并进行编译生成后缀为.HEX的文件;6、 利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;7、 观察实验现象,并记录。若实验现象有误请重复第5、6步。六、 参考程序ORG 0000H ;程序的开始LJMP MAIN ;转入主程序ORG 0200H ;主程序的开始MAIN: MOV P1,#00H ;P1口做准备M1: INC P1 ;P1口连接输出计数, LCALL DELAY ;转入延时子程序 LJMP M1 ;循环DELAY:

4、 MOV R5,#255 ;延时子程序D1: MOV R6,#255 DJNZ R6,$ DJNZ R5,D1 RETEND ;程序体结束七、 思考题1、 利用其他I/O口实现LED加1点亮功能;2、 利用P1端口实现流水灯(左移或右移)功能;3、 实现LED其他点亮功能。附录:一、 Keil C51编程软件使用说明Keil C51编程软件是众多单片机应用开发的优秀软件之一,它集编辑、编译、仿真于一体,支持汇编、C51语言,界面友好,易学易用。1、启动Keil C51编程软件,出现编辑界面;2、建立一个新工程,单击Project菜单,在弹出的下拉菜单中选中New uVision Project

5、选项。3、然后选择保存路径,输入工程文件名,点击“保存”;4、弹出单片机选择框,选择对应的单片机型号,并点“OK”;5、完成后,屏幕出现编辑环境;6、点击“File”菜单,在下拉菜单中点击“New”选项;7、在“Text1”中编写实验程序,完成后保存文件,要保存在所建的工程文件夹中。在“文件名”栏中输入欲使用的文件名,同时必须输入正确的扩展名。注意:如果使用C语言编写程序,则扩展名为.C;如果用汇编语言编写程序,则扩展名为.ASM;8、回到编辑界面,单击“Target 1”前面“+”号,然后在“Source Group 1”上单击右键,弹出如下菜单;9、单击“Add File to Froup

6、 Source Group 1”选择实验程序“SY1.ASM”,然后单击“Add”,则项目中多出SY1.ASM子项;10、单击“Project”菜单,在下拉菜单中单击“Options for Target Target 1”;11、在“Options for Target Target 1”的选项中选择“Output”选项,并在“Create HEX File”选项前打上“”,然后点击“OK”;12、单击“Project”菜单,在下拉菜单中单击“Build target”选项,若程序无误,编程成功后,则生成后缀为.HEX的文件,该文件是单片机下载文件。二、STC-ISP下载软件的使用说明1、打

7、开“STC-ISP”下载软件,界面如下;2、选择单片机型号,在单片机型号的下拉按钮上单击,选择一致的单片机型号,如:STC89C52RC;3、选择串口,在串口选择时,根据设备所接的串口号进行选择,如:COM1、COM2、USB Serial Port(COM3);4、单击“打开程序文件”,找到所见项目文件夹,选中后缀为.HEX的文件,并单击打开;5、单击“下载/编程”按钮,将.HEX文件下载到单片机的ROM中,注意,在单击“下载/编程”按钮后,需要将单片机进行一次冷启动(即:将实验箱电源关掉,稍等片刻再打开),程序才能下载成功;6、下载成功后,程序则在单片机内运行,观察实验箱上的实验结果。实验

8、二 端口I/O输入输出实验一、 实验目的1. 掌握51单片机输入/输出端口的使用方法;2. 学习蜂鸣器和继电器的控制电路设计3. 掌握51单片机I/O使用的编程方法二、 实验内容选择单片机的某个I/O端口,连接实验设备上的按键、蜂鸣器、继电器,编写程序实现按键控制继电器和蜂鸣器。三、 接线方案单片机P0.0接继电器控制端;单片机P0.1接蜂鸣器控制端;P2.6接按键1(单脉冲输出端1);P2.7接按键2(单脉冲输出端2)。(注:连接蜂鸣器电路不要选用P2和P3口,声音偏小、不响)图2-1实验线路图2-2 继电器电路和蜂鸣器电路四、 实验步骤1、 连接串行通信电缆盒电源线;2、 根据图2-1实验

9、线路进行电路连接;3、 将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;4、 打开实验箱上的电源开关。5、 利用Keil C51创建实验程序,并进行编译生产后缀为.HEX的文件;6、 利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;7、 观察实验现象,并记录。若实验现象有误请重复第5、6步。五、 参考程序 KEY1 EQU P2.7 ;定义按键1 KEY2 EQU P2.6 ;定义按键2 SPK EQU P0.1 ;定义蜂鸣器 JDQ EQU P0.0 ;定义继电器 ORG 0000HLJMP MAINORG 0100HMAIN: JB KEY1,M2M

10、1: SETB JDQ ;按键1按下,继电器吸合 LJMP M3 M2: CLR JDQ ;按键1松开,继电器断开M3: JB KEY2,M4 SETB SPK ;按键2按下,蜂鸣器响 LJMP MAINM4: CLR SPK ;按键2松开,蜂鸣器停LJMP MAIN ;循环扫描按键END六、 思考题1、 利用其他I/O口实现控制功能;2、 利用按键作为实现功能,要求:按键1作为蜂鸣器和继电器的启动按钮;按键2作为蜂鸣器和继电器的停止按钮。蜂鸣器和继电器启动后自动工作,每隔1秒启动一次(延时方式实现)。3、 实现其他创新功能。实验三 外部中断实验一、 实验目的1. 掌握51单片机外部中断的使用

11、方法。二、 实验内容1. 实验电路如图3-1所示,通过用手动逐个向单片机的输入单脉冲,申请中断。每中断一次,使8051单片机的P2口的数值加1。2. 接线方案P2.0P2.7/C51单片机 接 L0L7/LED显示;INT0/C51单片机 接 单脉冲。图3-1 实验线路三、 实验原理当单片机的外部中断口(INT0)有电平变化时,单片机程序会进入中断服务程序,执行中断服务功能,对P2口数值进行加1,实现手动对P2口数值控制。四、 参考程序流程图图3-2程序流程图五、 实验步骤1、 连接串行通信电缆盒电源线;2、 根据图3-1实验线路进行电路连接;3、 将C51单片机核心板上的三个开关分别拨到“独

12、立”、”运行”“单片机”;4、 打开实验箱上的电源开关。5、 利用Keil C51创建实验程序,并进行编译生产后缀为.HEX的文件;6、 利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;7、 观察实验现象,并记录。若实验现象有误请重复第5、6步。六、 参考程序ORG 0000HLJMP MAINORG 0003H ;中断入口LJMP INTORG 0200HMAIN: MOV P2,#00H SETB EA ;首先开启总中断 SETB EX0 ;开启外部中断 0,即P32引脚 SETB IT0 ;设置成 下降沿触发方式M1: SJMP $ ;主程序只等待中断INT: INC

13、P2 ;外部中断 0 中断响应,将P2口内容加1 LCALL DELAY RETI ;中断结束返回DELAY: MOV R5,#255 ;延时子程序D1: MOV R6,#255 DJNZ R6,$ DJNZ R5,D1 RETEND七、 思考题1、 利用外部中断1实现本实验的中断功能;2、 两个外部中断的同时应用(外部中断0实现LED流水灯;外部中断1实现LED加1功能)。实验四 定时器实验一、 实验目的1. 掌握51单片机内部定时器的使用方法。2. 学习单片机控制蜂鸣器电路设计方法。二、 实验内容1. 实验电路如图4-1所示,用51单片机内部定时器T0定时,控制蜂鸣器发声,使之发声1秒钟,

14、停止1秒钟,重复循环。2. 接线方案P1.0/51单片机 接蜂鸣器图4-1 实验线路三、 实验原理当P1.0输出高电平时,三极管导通蜂鸣器发声,P1.0输出低电平时,三极管截止,蜂鸣器不发声。本实验设备的晶振频率为11.0592MHZ,定时方式时,约1us计数器加1,计数初值15536时,经过50ms溢出,溢出20次约1秒钟。四、 参考程序流程图图4-2 程序流程图五、 实验步骤1、 连接串行通信电缆盒电源线;2、 根据图3-1实验线路进行电路连接;3、 将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;4、 打开实验箱上的电源开关。5、 利用Keil C51创建实验程序,

15、并进行编译生产后缀为.HEX的文件;6、 利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;7、 观察实验现象,并记录。若实验现象有误请重复第5、6步。六、 参考程序ORG 0000HAJMP MAINORG 000BH ;定时器0中断服务程序DJNZ R0,EXIT CPL P1.0 ;中断20次到1S,对P1.0取反MOV R0,#20 ;重置中断次数计数器EXIT: MOV DPTR,#15536 ;重置T0计数初值15536 MOV TH0,DPH MOV TL0,DPL RETIMAIN:MOV TMOD,#01H ;设置定时器0,方式1 MOV DPTR,#1553

16、6 ;送T0计数初值15536 MOV TH0,DPH MOV TL0,DPL SETB EA ;开总中断 SETB ET0 ;开定时器0 SETB P1.0 ;蜂鸣器发生 MOV R0,#20 SETB TR0SJMP $七、 思考题1、 利用定时器1实现本实验定时功能,编写程序;使用工作方式2实现本实验定时功能,编写程序。实验五 串行口通信实验一、 实验目的1. 掌握51单片机串行口工作方式的设定及串行通信程序设计。2. 掌握串行通信的典型电路二、 实验内容1. 实验电路如图5-1所示,通信的双方分别定义为甲单片机和乙单片机,甲单片机通过串行口循环发送数据0FFH,乙单片机通过串行口接收并

17、在LED发光二极管上显示出来,实现数据的串行通信。本实验参考程序采用串口工作方式2。2. 接线方案(注:P3.0和P3.1口需下载程序后再连接)P1.0P1.7/51单片机(甲) 接LED发光二极管组;P3.0和P3.1/51单片机(甲) 接RS232模块的TXD、RXD;P1.0P1.7/51单片机(乙) 接LED发光二极管组;P3.0和P3.1/51单片机(乙) 接RS232模块的TXD、RXD;RS232模块用串行通信电缆连接。图5-1 实验线路三、 实验原理两台单片机应用系统在进行通信时,如果距离较近,接口只需三根导线,将它们的串行口直接连接,即可实现双机通信,这种通信距离一般不超过1

18、5m。如果要加大通信距离,需加入电平转换电路,如RS-232、RS-485等。四、 参考程序流程图 a发送程序 b. 接收程序图5-2 程序流程图五、 实验步骤1、 连接串行通信电缆盒电源线;2、 根据图3-1实验线路进行电路连接(先不接P3.0和P3.1);3、 将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;4、 打开实验箱上的电源开关。5、 利用Keil C51创建实验程序,并进行编译生产后缀为.HEX的文件;6、 利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中(下载完成后再连接P3.0和P3.1);7、 观察实验现象,并记录。若实验现象有误请重复

19、第5、6步。六、 参考程序发送程序:ORG 00HMOV SCON,#10000000B ;设置串行口方式2工作 MOV A,#00H START: INC AMOV SBUF,A ;将A中的内容发送WAIT0: JNB TI,WAIT0 ;等待发送完成 CLR TI ;清发送中断标志 MOV P1,A ;送到P1口显示 CALL DELAY ;延时LJMP STARTDELAY: MOV R0,#0 ;延时子程序 MOV R1,#0LP: DJNZ R1,LP DJNZ R0,LP RET END接收程序: ORG 00H MOV SCON,#10010000B ;设置串行口方式2工作 ;M

20、OV A,#00H START: JNB RI,START ;等待接收完成 MOV A,SBUF ;从接收缓冲器读入数据 MOV P1,A ;送到P1口显示 CLR RI ;清接收中断标志 CALL DELAY ;延时 LJMP STARTDELAY: MOV R0,#0 ;延时子程序 MOV R1,#0LP: DJNZ R1,LP DJNZ R0,LP RET END七、 思考题1、 利用串行口其它工作方式1实现通信功能,编写程序;实验六 串行通信的调试实验一、 实验目的掌握单片机串行口调试方法;二、 实验内容1、编写实验程序,实现单片机与PC机的串口通信,实验电路如下图6-1所示,单片机串

21、行口则利用51单片机核心板上的通信接口,PC机侧接COM1或COM2。要求通信波特率为2400,串口工作方式为方式1,即:一个起始位,8个有效数据位和一个停止位。图6-1 实验原理图2、接线方案:无需另外接线(利用串口通信电缆进行数据通信)。三、 实验原理单片机侧利用P3.0和P3.1口和PC机进行串行通信,本实验中,只需要将串行通信电缆连接到51单片机核心板上即可;PC机侧利用STC-ISP下载软件里的串口助手进行串口通信,如下图6-2所示,在串口助手的设置中,需要设置串口、波特率、校验位、停止位,无误后点击打开串口,并在发送缓冲区输入数据,点击发送数据,则可以再接收缓冲区显示所发送的内容。

22、图6-2 STC-ISP串口助手四、 参考程序流程图图6-3 程序流程图五、 实验步骤1、 连接串行通信电缆盒电源线;2、 将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;3、 打开实验箱上的电源开关。4、 利用Keil C51创建实验程序,并进行编译生产后缀为.HEX的文件;5、 利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;6、 打开STC-ISP软件的串口助手,设置串口、波特率、校验位等,打开串口后在发送缓冲区输入数据,点击发送数据,观察接收缓冲区的数据变化;7、 观察实验现象,并记录。若实验现象有误请重复第46步。六、 参考程序:ORG 000

23、0HLJMP MAIN ;主程序的开始ORG 0200HMAIN: MOV TMOD,#20H ;设置定时器1为模式2,为波特率发生器 MOV TL1,#0F4H ;2400波特率初值,板子使用11.0592M晶振 MOV TH1,#0F4H ; SETB TR1 ;启动波特率发生 MOV SCON,#50H ;串口的工作方式,设置为方式1 M1: JNB RI,M1 ;查询是否有数据接收 MOV A,SBUF ;数据暂存于A CLR RI ;允许接收 MOV SBUF,A ;将接收到的数据发送出去M2: JNB TI,M2 ;等待发送完成 CLR TI SJMP M1 ;循环扫描串行通讯接口

24、数据 END七、 思考题1、 理解串口调试的工作原理,可否采用串口方式2实现?2、 修改程序,实现接收数据与发送数据进行个、十位交换(如:发送为12时,接收为21)。实验七 数码管静态显示实验一、 实验目的1、 掌握8051单片机与七段LED数码管连接的设计方法;2、 掌握LED数码管静态显示的编程方法。二、 实验内容1、根据图7-1所示的LED数码管连接电路(电路中U1是74LS244作为段码驱动电路;U5和U4是SN75452,与非门,作为位选信号电路),编写实验程序,实现1位数码管的静态显示,要求:内容为09循环显示。图7-1 LED数码管的连接图2、接线方案:P10P17/51单片机

25、接 a、bdp/数码管;P2.0P2.3/51单片机 接 s1s4/数码管。三、 实验原理LED数码管静态显示的显示程序简单,显示亮度高,但所需的I/O端口较多,并且功耗较大。所以静态显示常用在显示位数较少的系统中。下表为共阴极LED数码管的段码表四、 参考程序流程图图7-2 程序流程图五、 实验步骤1、 连接串行通信电缆盒电源线;2、 将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;3、 打开实验箱上的电源开关。4、 利用Keil C51创建实验程序,并进行编译生产后缀为.HEX的文件;5、 利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;6、 观察实

26、验现象,并记录。若实验现象有误请重复第5、6步。六、 参考程序:SMG_q EQU P2.0 ;定义数码管阳级控制脚,千位SMG_b EQU P2.1 ;定义数码管阳级控制脚,百位SMG_s EQU P2.2 ;定义数码管阳级控制脚,十位SMG_g EQU P2.3 ;定义数码管阳级控制脚,个位 ORG 0100TABLE: DB 3Fh,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;共阴数码管 0-9 ORG 0000H ;程序开始LJMP MAINORG 0100HMAIN: SETB SMG_q ;选择千位数码管,静态显示 CLR SMG_b CLR SMG_

27、s CLR SMG_g ;可选择其它数码管或两位以上M1: MOV R7,#10 ;循环显示0-9MOV DPTR,#TABLEM2: CLR AMOVC A,A+DPTR ;查表输出段值到P1口,显示0-9MOV P1,ALCALL DELAY ;调用两次延时,加长时间LCALL DELAYINC DPTRDJNZ R7,M2LJMP M1DELAY: MOV R5,#255 ;此次延时子程序加长一级D1: MOV R6,#255D2: MOV R4,#255DJNZ R4,$DJNZ R6,$DJNZ R5,D1RETEND七、 思考题1、 理解静态显示的工作原理,此电路可否实现2位显示(

28、不同内容)?2、 修改程序,实现显示内容90循环显示。实验八 数码管动态显示实验一、 实验目的1、 掌握8051单片机与七段LED数码管连接的设计方法;2、 掌握LED数码管动态显示的编程方法。二、 实验内容1、根据图7-1所示的LED数码管连接电路(电路中U1是74LS244作为段码驱动电路;U5和U4是SN75452,与非门,作为位选信号电路),编写实验程序,实现4位数码管的动态显示,要求:内容为1234。图8-1 LED数码管的连接图2、接线方案:P10P17/51单片机 接 a、bdp/数码管;P2.0P2.3/51单片机 接 s1s4/数码管。三、 实验原理LED数码管动态显示是单片

29、机应用系统中最常用的显示方式之一,它是把所有数码管的同名字段连接到相同I/O上,数码管的公共端(COM)作为控制端,实现循环扫描显示。在任意时刻只有一位数码管被点亮,但由于数码管具有余辉效应,而人眼又具有视觉惰性,看起来与全部数码管持续点亮效果一样。下表为共阴极LED数码管的断码表四、 参考程序流程图图8-2 程序流程图五、 实验步骤7、 连接串行通信电缆盒电源线;8、 将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;9、 打开实验箱上的电源开关。10、 利用Keil C51创建实验程序,并进行编译生产后缀为.HEX的文件;11、 利用STC-ISP软件将后缀为.HEX的

30、文件下载到单片机ROM中;12、 观察实验现象,并记录。若实验现象有误请重复第5、6步。六、 参考程序:SMG_q EQU P2.0 ;定义数码管阴级控制脚,千位SMG_b EQU P2.1 ;定义数码管阴级控制脚,百位SMG_s EQU P2.2 ;定义数码管阴级控制脚,十位SMG_g EQU P2.3 ;定义数码管阴级控制脚,个位 ;数据存放ORG 0100TABLE: DB 3fh,06H,5bH,4fH,66H,6dH,7dH,07H,7fH,6fH ;共阴数码管 0-9 ORG 0000HLJMP MAINORG 0200HMAIN: MOV DPTR,#TABLEM1: SETB SMG_q ;选择千位数码管 MOV A,

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2