北京化工大学单片机原理实验指导书.docx
《北京化工大学单片机原理实验指导书.docx》由会员分享,可在线阅读,更多相关《北京化工大学单片机原理实验指导书.docx(26页珍藏版)》请在冰豆网上搜索。
北京化工大学单片机原理实验指导书
单片机原理及应用
实验指导书
马静韩建国郭青编
林伟国修订
北京化工大学信息科学与技术学院
2007年6
目录
实验规则140
安全须知140
第一章AEDK5196ET实验系统简介141
一、工作方式141
二、地址空间分配141
三、开关和插座说明142
四、系统快速入门143
第二章MCS51系列单片机实验145
实验一认识实验145
实验二P1口输入、输出实验145
实验三P3口输出控制继电器实验147
实验四简单I/O实验(交通灯控制)148
实验五定时器实验150
实验六计数器实验151
实验七外部中断实验(急救车与交通灯)152
实验八扩展存储器读写实验154
实验九A/D转换实验155
实验十D/A转换实验156
实验十一8255扫描键盘,显示实验157
实验十二智能控制器的研制与调试-设计性实验
(一)159
实验十三网络型智能仪表基础部件研制-设计性实验
(二)160
实验十四可显示与对话的数字仪表基础部件研制-综合型实验(三)161
实验十五基于单片机系统的闭环控制器的研制-设计性实验(四)162
实验规则
1、实验前要对实验进行充分的理论知识、技术要求、操作规则、实验条件与环境、内容与基本过程、安全条款、可能出现的问题等方面的思考与准备;
2、实验中要认真、严肃、积极、主动,联系课堂知识来分析、解决实验中的问题;
3、师生共同在实验室中保持一个安静、卫生、整齐有序、祥和而又活跃的学习与科研的气氛;
4、节省用料、爱护工具、注意环境是否正常、警惕以外事故的发生,以主人翁姿态操作实验并关心全室工作的进行;
5、按时参加实验,不得拖延结束时间,在结束前提前清点实验物品;课前已由教师交代清楚的问题,不得在课上再以此打扰教师;
6、按教师要求认真作好实验报告并按时上交。
安全须知
1、使用任何一件工具、设备、元器件时,要注意务必使电源极性、功率范围、电源电压与电流的极性与量值、元件接查方向符合设计标准;
2、对各种未曾在以往课程中学过的仪器、设备、器件、元件,必须首先认真学习、研究其技术说明,经主讲教师或实验指导教师检查认可,方可独立使用;
3、随时注意所使用的物品和环境有无异常温升、亮光与气味;
4、当连接及修改实验线路时,应先关闭实验机电源。
在实验机电源打开的情况下,不能插拔元件和连线。
5、离开工作台5分钟以上者必须关闭实验系统的电源;
6、发生事故或发现异常迹象时,应首先关闭电源并立即报告实验室负责人。
第一章AEDK5196ET实验系统简介
一、工作方式
AEDK5196ET可以工作在两种模式下,串行模式和独立运行模式。
(一)串行模式
1、用户根据实验要求,进行MCS51单片机实验时(8032芯片已插在D3插座上),K9的短路套插向51端。
进行MCS96单片机实验时,将CPU96S/CPU96F卡插入J5插座,K9的短路套插向96端。
2、用实验机配套的串行通讯电缆,将9芯电缆的一端与实验机上的J9(9芯插座)相连,另一端与PC机的串行口相连。
3、AEDK5196ET实验机电源插座J3与工作电源相连,注意插入方向(如图2.1所示)。
4、将电源开关K13拨到左端(ON),AEDL5196ET机上将显示:
AEDK.U51(MCS-51状态)
AEDK.U96(MCS-96状态)
5、在PC机上运行调试程序,具体操作参见有关说明。
(二)AEDK6196ET实验系统工作在独立运行模式
1、用户根据实验要求,进行MCS51单片机实验时(8032芯片已插在D3插座上),K9的短路套插向51端。
进行MCS96单片机实验时,将CPU96S/CPU96F卡插入J5插座,K9的短路套插向96端。
2、AEDK5196ET实验机电源插座J3与工作电源相连,注意插入方向(如图2.1所示)。
3、将电源开关K13拨向左端(ON),AEDK5196ET机上将显示:
AEDK.U51(MCS-51状态)
AEDK.U96(MCS-96状态)
4、独立模式下,单片机可以不依赖于PC机独立运行调试程序,具体操作略。
实验时,系统运行在串行模式下,无须改变开关状态和工作方式。
二、地址空间分配
AEDK5196实验系统地址空间状态分I状态和O状态。
可以通过监控命令选择当前地址空间状态。
I状态时程序存储器和数据存储器由本系统的RAM区提供,RAM最大可用空间为31.75K。
O状态时程序和数据存储器由用户系统提供。
1、I状态
0000H~3FFFH:
实验机上RAM区,可做程序区或数据区,分写保护和不写保护。
4000H~7F3FH:
实验机上RAM区,可做程序区或数据区。
7F40H~7FFFH:
实验机上RAM区,由监控占用,用户不得使用。
8000H~BFFFH:
可供寻址的程序、数据空间。
用户可以用此空间在扩展板上扩展器件,或用作在用户系统中扩展器件。
另外,也可使用实验机上的资源。
C000H~FDFFH:
监控程序用。
FE00H~FFFFH:
实验机上固定地址的I/O。
FF80~FF82为8279状态和数据口地址。
当本系统运行于键盘监控方式时将用作键盘输入和显示,串行方式(即通过PC机串口与实验机通讯)时用户可以无条件使用;FFA0、FFA2为8251状态和数据口地址,串行方式时用作PC机通讯,键盘监控方式时用户可以无条件使用。
2、O状态
0000H~7FFFH:
仿真用户系统提供的程序区、数据区。
8000H~BFFFH:
同I状态。
C000H~FDFFH:
同I状态。
FE00H~FFFFH:
同I状态。
实验时,系统地址空间为I状态。
三、开关和插座说明
AEDK5196ET实验系统主板由二十多个硬件模块组成,其开关和插座说明如下:
XC1:
香蕉插座,可用作外设备的接地。
XS1:
提供过压保护。
插入5.6V稳压管后,当+5V电源电压过高或极性接反后,在大多数情况下该稳压管将被击穿成短路,从而保护了实验板上的集成电路不至于损坏。
碰到这种情况应先检查电源,然后更换稳压管,再开机实验。
J3:
外部电源插座。
J4:
联接打印机。
J5:
CPU96S/CPU96F卡插座。
J6:
仿真电缆插座。
J7:
维修总线接口插座。
J9:
AEDK5196ET实验机与PC机串行接口的标准9芯插座。
J10:
25芯插座,联结机电实验平台专用插座。
J11:
喇叭接口。
K1-8:
拨动开关。
拨至上端(H)输出孔为“1”;拨至下端(L)输出孔为“0”。
K9:
装有两只短路套,如用于MCS51单片机工作时,应把短路套靠上插。
如用于MCS96单片机工作时,短路套应靠下插(此时,J5上插CPU96S卡)。
K10:
短路套全部套向右边,由8279来控制键盘、显示器;短路套全部套向左边,则由8255控制键盘。
K11:
蜂鸣器与8279相连。
K12:
波特率选择开关。
POWER:
电源开关。
K14:
左端接继电器中点,右端接+5V电压。
套上短路套,则实验机的+5V电源接通继电器中点。
K15:
左端接+5V电压,右端接J6仿真电缆插座第40脚。
套上短路套,则实验机的+5V电源通过仿真电缆插座J6引出到用户系统。
K16:
步进电机驱动电压输出跳线。
套上短路套,则实验机上的步进电机驱动电压VB输出到J10机电实验平台专用插座的22脚上。
W1:
1K电位器,它的左端已接地,右端已接+VREF,其中心端已连到测试维修总线接口插座上,供测试用。
可用硬导线接到A/D转换器的输入端上,作为A/D转换的模拟输入。
W2:
4.7K电位器,它的左端已接地,中心端与右端均为悬空。
W3、W4:
用来调整实验板的基准电位–VREF=-5V,+VREF=+5V。
以下为实验系统中各开关的初始状态:
K9:
短路套向上插,实验机处于MCS51状态。
K10:
短路套向右插,键盘由8279控制。
K11:
短路套向上插,与蜂鸣器相连。
K12:
K12-2为ON,其余为OFF(设置波特率为9600)
Power:
拨向右边OFF端,切断外部电源。
K14:
短路套插上,继电器中点接+5V电源。
K15:
短路套插上,Vcc电压接至J6第40脚。
K16:
短路套插上,VB电压接至J10第22脚。
四、系统快速入门
用户使用本系统进行实验时,一般包括以下步骤:
启动运行环境->编辑源文件->编译->调试实验程序->进行实验
1、启动运行环境
正确连接实验系统,确认各个开关处于正确位置,打开实验机电源。
运行LCAET软件,进入调试环境。
选取主菜单的Options菜单进行通讯设置(串行口、波特率的设置)和模式设置(CPU类型、实验机状态),与实验机建立通信联系。
2、编辑源文件
选取文件菜单中的新建或打开即可进入编辑系统,编辑自己的源文件。
3、编译
用户编辑好自己的源程序后,选择编译菜单下的编译当前文件对源程序文件进行编译。
如程序有错,将给出警告或出错提示。
用户根据提示修改源文件。
4、调试
打开源语句调试窗口并将目标码加载到实验机。
然后用户就可以运用本系统提供的各种工具和方法进行调试。
主要是观察程序的运行是否正常、有无走飞、各主要参数中间值是否与设计吻合。
5、进行实验
根据实验有关说明和用户编制的程序,完成连线(最好先关闭实验机电源,再进行)。
通过调试软件加载、运行程序,观察实验有关现象。
若现象与设计不符,则返回第二步,重新进行。
第二章MCS51系列单片机实验
实验一认识实验
一、实验要求
编程在MCS51内部数据存储器的40H~4FH单元分别写入数据00H~0FH。
二、实验目的
1、学习MCS51内部数据存储器的编程方法
2、学习AEDK5196ET实验系统的使用方法
3、学习调试软件LCAET的使用方法
三、实验步骤
1、正确连接实验系统,确认各个开关处于正确位置,打开实验机电源。
2、运行LCAET软件,进入调试环境。
选取主菜单的Options菜单进行通讯设置(串行口、波特率的设置)和模式设置(CPU类型、实验机状态),与实验机建立通讯联系。
3、打开编辑窗口,编写源程序文件,并汇编生成.lst及.obj文件。
4、打开源程序调试窗口,将目标文件加载到实验机进行调试。
在调试过程中,学习使用单步运行、断点运行等运行命令,学习利用各种调试窗口观察实验现象和实验结果。
5、运行实验程序,观察实验结果。
如结果与要求不符,返回第三步,重新进行。
四、实验报告要求
1、画程序流程图并编程。
2、写出在调试过程中使用的各种命令,叙述调试过程中出现的问题及解决方法。
3、写出并分析实验现象。
实验二P1口输入、输出实验
一、实验要求
1、P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
2、P1口做输入口,接八个纽子开关,以实验机上74LS273做输出口,编写程序读取开关状态,将此状态,在发光二极管上显示出来。
二、实验目的
1、学习P1口的使用方法。
2、学习延时子程序的编写和使用。
三、实验电路及连线
实验电路连接图如图1所示。
图1I/O口输入/输出电路连接图
实验一时,P1.0~P1.7接DL1~DL8。
实验二时,P1.0~P1.7接K1~K8,P0.0~P0.7接DL1~DL8。
CS/接8300H。
四、实验说明
1、P1口是准双向口。
它作为输出口时与一般的双向口使用方法相同。
作为输入口时,必须对它置1使MOS管截止,否则读入的数据将产生错误。
2、延时子程序的延时时间计算
程序DELAY:
MOVR0,#00H
DELAY1:
MOVR1,#0B3H
WAIT:
DJNZR1,WAIT
DJNZR0,DELAY1
查指令表可知MOV,DJNZ指令均需用两个机器周期,一个机器周期时间为12/11.0592MHZ,所以该段程序执行时间为:
((0B3+1)×256+1)×2×12÷11059200=100.002mS
五、实验报告要求
1、写出源程序
2、在调试过程中,注意观察实验现象。
如出现与实验结果不符,分析原因,并写出对8051并行口进行输入、输出编程的要点。
实验三P3口输出控制继电器实验
一、实验要求
利用P3.5输出高低电平,控制继电器的开合,实现对外部装置的控制。
二、实验目的
掌握继电器控制的基本方法和经验。
三、实验电路及连线
电路连接图如图2所示。
图2P3口输出电路连接图
四、实验说明
现代自动控制设备中,都存在一个电子电路与电气电路的互相连接问题,一方面要使电子电路的控制信号能够控制电气电路的执行元件(电动机,电磁铁,电灯等),另一方面又要为电子线路的电气电路提供良好的电隔离,以保护电子电路和人身的安全。
电子继电器便能完成这一桥梁作用。
本实验采用的继电器的型号是HG4098。
其控制电压是6V。
继电器电路中一般都要在继电器的线圈两头加一个二极管以吸收继电器线圈断电时产生的反电势,防止干扰。
本电路的控制端为JD,当JD为高电平时,继电器不工作,当JD为低电平时,继电器工作,常开触点吸合,连触点的LED灯被点亮。
执行时,对应的LED将随继电器的开关而亮灭。
五、实验报告要求
1、写出源程序
2、总结并行口作为输出口使用,以及继电器控制特点。
实验四简单I/O实验(交通灯控制)
一、实验要求
以74LS273作为输出口,控制4个双色LED灯(可发红、绿、黄光),模拟交通灯管理。
二、实验目的
1、学习单片机系统中扩展简单I/O接口的方法。
2、学习数据输出程序的设计方法。
3、学习用定时器定时实现模拟交通灯控制的方法。
4、学习双色灯的使用。
三、实验电路及连线
电路连接图如图3所示。
图3交通灯控制电路连接图
P0.0-P0.3接DG1-DG3,P0.4-P0.7接DR1-DR4,CS/接8300H
四、实验说明
1、交通灯变化规律:
假设一个十字路口为东西南北走向。
初始状态0为东西红灯,南北绿灯。
然后转状态1南北绿灯通车,东西红灯。
过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍是红灯。
再转状态3,东西绿灯通车,南北红灯。
过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍是红灯。
最后循环至状态1。
2、双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。
当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。
五.实验报告要求
1.写出源程序;
2.写出74LS273和25LS240的使用要点;
分析实验现象;
实验五定时器实验
一、实验要求
由8031内部定时器1,按方式1工作,即作为16位定时器使用,每0.05秒T1溢出中断一次。
P1口的P1.0~P1.7分别接八个发光二极管。
要求编写程序模拟一时序控制装置。
开机后,第一秒钟L1,L3亮,第二秒钟L2,L4亮,第三秒钟L5,L7亮,第四秒钟L6,L8亮,第五秒L1,L3,L5,L7亮,第六秒L2,L4,L6,L8亮,第七秒八个二极管全亮,第八秒全灭,以后又从头开始,L1,L3亮,L2,L4亮……一直循环。
二、实验目的
1、学习8031内部定时/计数器的使用和编程方法。
2、掌握中断处理程序的编程方法。
三、实验线路及连线
电路连接如图4所示。
图4定时器电路连接图
P1.0-P1.7接DL1-DL8
四、实验说明
1、本实验使用的是MCS51定时/计数器的定时器功能,实验系统的晶振为11.0592MHz,所以定时常数的设置可按以下方法计算:
机器周期=12÷11.0592MHz=1.0857μS
2、在中断服务程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。
五、实验报告要求
1、写出实验程序。
2、写出并分析实验结果。
3、如实验中出现问题,分析并总结原因及解决方法。
实验六计数器实验
一、实验要求
8031内部定时计数器,按计数器模式和方式1工作,对P3.4(T0)引脚进行计数。
使用8031的T1作定时器,50ms中断一次,看T0在50ms内计数了多少个脉冲,将其数值按二进制数在74LS273驱动LED灯上显示出来,5秒钟后再次测试。
二、实验目的
1、学习8031内部定时/计数器使用方法。
2、进一步掌握中断处理编程方法。
三、实验电路及连线
电路连接如图5所示。
图5计数器电路连接图
P3.4接Q13-Q16其中的一个。
PO0-PO7接DL1-DL8,CS/接8300H。
四、实验说明
实验时P3.4(T0)对应的连线分别接频率发生器对应的Q13~Q16,不同频率对应的值会在LED上显示出来。
五、实验报告要求
1、写出实验程序。
2、写出并分析实验结果。
3、如实验中出现问题,分析并总结原因及解决方法。
实验七外部中断实验(急救车与交通灯)
一、实验要求
在实验四内容的基础上增加允许急救车优先通过的要求。
有急救车到达时,两向交通信号为全红,以便让急救车通过。
假定急救车通过路口时间为10秒,急救车通过后,交通灯恢复中断前状态。
本实验以按键为中断申请,表示有急救车通过。
二、实验目的
1、学习用定时器实现定时的方法
2、学习用外部中断技术实现外部紧急事件的响应方法。
3、学习定时中断和外部中断处理程序的编程方法。
三、实验电路及连线
电路连接如图6所示。
图6外部中断电路连接图
P0.0-P0.3接DG1-DG3,P0.4-P0.7接DR1-DR4
K8接P3.2,CS/接8300H
四、实验说明
中断服务程序的关键是:
1)保护进入中断时的状态,并在退出中断之前恢复进入时的状态。
2)必须在中断程序中设定是否允许中断,即设置EX0(本实验使用的是INT0)。
实验开始时,K8应在H(高电平)端,当K8拨向L(低电平)端,再马上拨回H端,则产生一次中断(可设置下降沿有效)。
五、实验报告要求
1、写出实验程序。
2、写出并分析实验结果。
3、如实验中出现问题,分析并总结原因及解决方法。
实验八扩展存储器读写实验
一、实验要求
使用62256,作为数据空间0~7FFFH,对其进行读写(分别使用监控命令及程序)。
二、实验目的
1、学习片外存储器扩展方法。
2、学习数据存储器不同的读写方法。
三、实验电路及连线
电路连接如图7所示。
图7扩展存储器电路连接图
P1.0接DL1
四、实验说明
1、使用监控命令读写RAM,进入实验机调试工具TalkwithAEDK,使用读写外部RAM命令。
在I状态下执行SX4100,55(55H写入4100H单元),再执行SX4100(显示4100H单元内容),屏幕上应显示55;执行SX4100,AA,SX4100,屏幕上应显示AA。
以上过程执行效果与通过编程执行效果相同。
注:
SX是实验机对外部数据空间读写命令。
2、用程序将数据55和AA轮番写入外部RAM,再读出比较在LED显示。
采用这两个数据的读写操作就可查出数据总线的短路、断路等,在实际调试电路时非常有效。
实验九A/D转换实验
一、实验要求
利用实验板上的ADC0809做A/D转换器,由实验板上的电位器提供模拟量输入,编制程序,将模拟量转换成二进制数字量,用发光二极管显示。
二、实验目的
1、掌握A/D转换与单片机的接口方法。
2、掌握用定时器实现定时采样的编程方法。
3、了解A/D芯片ADC0809转换性能及编程。
4、通过实验了解单片机如何进行数据采集。
三、实验电路及连线
电路连接如图8所示。
图8A/D转换电路连接图
PO0-PO7接DL1-DL8,W1接IN0,EOC接P3.2。
74LS273的CS/接8300H,ADC0809接CS/接8100H。
四、实验步骤
1、根据接口电路编写A/D转换程序(分别采用查询和中断方式),编译并生成可执行程序。
2、根据实验电路连线。
3、执行程序。
4、在程序执行过程中,改变电位器电阻值,观察并记录实验结果。
5、如程序执行中出现问题,应修改程序。
重复3、4步骤。
实验十D/A转换实验
一、实验要求
利用DAC0832,编制程序产生锯齿波、三角波。
两种波轮流显示,用示波器观看。
二、实验目的
1、了解D/A转换的基本原理。
2、了解D/A转换芯片0832的性能及编程方法。
3、了解单片机系统中扩展D/A转换器的方法。
实验电路及连线
电路连接如图9所示。
图9D/A转换电路连接图
CS/接8000H
用示波器探头接VOUT,观察显示波形。
四、实验说明
1、波形的产生可采用查表的方式。
建立产生锯齿波和三角波的表格,表格可由数字量的增减来控制。
2、注意采样点的个数,采样点越多,精度越高。
实验中采样点取256点/周期。
五.实验报告要求
1、写出源程序;
2、写出并分析实验结果;
3、如果遇到问题,分析其原因并写出解决方法;
4、概述D/A转换器的使用方法。
实验十一8255扫描键盘,显示实验
一、实验要求
利用8255可编程并行口做一个扫描键盘实验,将按键输入的键码,显示在由8279控制的七段数码管上。
8255PA口做键盘输入线,PB口做扫描线。
二、实验目的
1、学习、掌握8255编程方法。
2、学习、掌握扫描键盘和显示的扩展及编程方法。
3、定时或软件延时实现键盘扫描的编程及键值确定方法。
4、熟悉8031小型系统的软件设计方法。
三、实验电路及连线
电路连接如图10所示。
图108255输入/输出电路连接图
8255的CS/接138的8400H,
PA0-PA7(PA口)接DL1-DL7(LED)
PB0-PB7(PB口)接K1-K8(开关量)
四、实验说明
可编程通用接口芯片8255A有三个八位的并行I/O口,它有三种工作方式,本实验采用的是方式0:
PA、PC口输出,PB口输入。
五.实验报告要求
1.写出源程序;
2.写出并分析实验结果;
3.如果遇到问题,分析其原因并给出解决方法;
概述8255A芯片的使用方法。
从本实验起,将进行课题性实验的学习与训练。
课题性实验的含义是:
引导学生进行类似于毕业环节或科技实践中的产品技术开发工作的独立工作过程。
即:
按照给定的一个较完整的、与生产或科技需要有关的课题,进行独立的学习、研究、调研、构思、设计(包括软、硬件)、组装、调试,分析、描述、总结、报告、答辩。
从而完成一次典型的而又简化的技术开发全过程。
实验十二智能控制器的研制与调试
--设计性实验
(一)
一、实验目的
完成一台智能型工业用过程控制调节器的研制。
二、内容与要求
在教师指导下,通过查阅参考文献及上网查询等手段获得相关技术知识、信息及元器件技术参数,从软、硬件两个方面进行设计、组装及调试。
要求按照所学有关控制与调节器的基本理论及智能仪表的基本知识,综合单片机系统的A/D与D/A转换、串行通信、终端服务等功能,使仪表具备开环定位于闭环调