微机原理及接口技术实验指导书-单片机2016版
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《微机原理及接口技术》实验指导书
(Ver 2016.4)
编写 Xxxxx XXXX
电气与自动化工程学院电工电子实验中心
微机原理与接口技术实验室
2016年4月
目录
实验一数据传送指令 (1)
实验二二进制数运算及程序结构编程设计 (2)
实验三程序结构编程实验 (3)
实验四外部中断及定时/计数器应用实验 (5)
实验五串行通信实验 (7)
实验六键盘扫描显示实验 (8)
实验七A-D/D-A转换实验 (9)
实验八 IIC串行总线实验 (12)
实验九利用MCS-51单片机控制交通灯(综合实验) (13)
实验十电脑时钟(综合实验) (14)
附录1 SDUST-CEE-UC单片机实验箱介绍 (15)
附录2 Keil C51编译错误信息 (30)
实验一数据传送指令
(2学时)
1.1 实验目的
通过实验熟悉DAIS软件仿真环境和MCS-51系列单片机指令系统。掌握简单的程序编制、调试方法。加深对MCS-51系列单片机硬件结构的认识。
1.2 实验内容
1、把R1中内容传送至R0中。
2、把内部数据存储器20H单元中的内容传送至内部数据存储器30H单元中。
3、把外部数据存储器20H单元中的内容传送至内部数据存储器20H单元中。
4、把外部数据存储器2000H单元中的内容传送至内部数据存储器20H单元中。
5、把外部程序存储器2000H单元中的内容传送至内部数据存储器20H单元中。
6、把外部数据存储器2050H单元、2060H单元中的内容相互交换。
*7、执行以下程序后,问SP=?,(71H)=?,(72H)=?
MOV SP, #70H
MOV A,#7CH
MOV B,#0F0H
PUSH ACC
PUSH B
POP B
POP ACC
*8、应用MOVC A,@A+PC指令求累加器A的平方值Y(设Y<=255),并把结果送至R7中保存。
*9、应用MOVC A,@A+DPTR指令求累加器A的立方值(设立方表的每个元素用两个字节表示),并把结果送至R2、R3保存。
说明:以上*表示选作内容,其余为必作内容,以下实验同。
实验二二进制数运算及程序结构编程设计
(2学时)
2.1实验目的
掌握并熟悉MCS-51指令系统,熟练掌握单字节及多字节二进制无符号数的运算方法。
2.2实验内容
1、下列程序执行后累加器A和PSW中的内容是什么?
(1)MOV A,#7EH
ADD A,#82H
(2)MOV A,#82H
ADD A,#84H
2、将(R2R3)和(R4R5)中的双字节无符号数相加,结果存放在40H和41H 单元中。
3、将(R2R3)和(R4R5)中的双字节无符号数相减,结果存放在42H和43H 单元中。
4、试编出能完成以下操作的程序
(1)使20H单元中的数的高两位变为0,其余位不变。
(2)使20H单元中的数的高两位变为1,其余位不变。
(3)使20H单元中的数的高两位取反,其余位不变。
(4)使20H单元中的数据的所有位变反。
实验三程序结构编程实验
(4学时)
2.1实验目的
1、熟悉并掌握分支结构程序的编程方法和技巧。
2、熟悉并掌握循环结构程序的编程方法和技巧。
3、熟悉并掌握子程序的编程方法和技巧。
2.2 实验预习
1、汇编语言的程序结构构成;
2、汇编语言顺序结构、分支结构、循环结构、子程序结构设计方法;
3、提前根据实验内容将程序编写完。
2.3实验内容
●分支结构程序的设计
1、在内部数据存储器BLOCK为首地址的缓冲区中存放有一组带符号数,数的个数已在LEN单元中,请编程实现:统计其中的正数和负数的个数并存入NUM 和NUM+1单元中。
2、设自变量X为一无符号数,存放在内部数据存储器的V AX单元,函数Y 存放在FUNC单元,请编写满足如下关系的程序:
当x>=50时y=x;
当50>x>=20时y=5x;
当x<20时y=2x。
●3循环结构程序设计
3、在外部数据存储器从2000H到2020H地址单元中存放有一数据块,请将它们分别传送至2100H单元到2120H单元中(注意循环次数)。
4、在内部数据存储器以BLOCK为始址的130个单元中,找出其最小值并把它送入MIN单元。
5*、在内部数据存储器以BLOCK开始的存储区中有10个单字节十进制数(每个字节有两个BCD数),请编程求BCD数的和(和为三位的BCD数),并把和存放在SUM和SUM+1单元(SUM为低字节)。
●子程序程序设计
6、将8051片内的数据存储器20H单元、21H单元中存放的单字节二进制数,转化为ASCII码,存放在30H~33H单元中,(要求将ASCII码转换部分设计为子
程序)。
7*、设8051单片机外部数据存储器从1000H单元开始存放有10个无符号8位二进制数,要求编一子程序将他们从大到小依次存入片内数据存储器从10H开始的存储区。
实验四外部中断及定时/计数器应用实验
(2学时)
4.1 实验目的
1. 熟悉SDUST-CEE-UC单片机实验系统。
2. 熟悉并掌握外部中断的编程方法和技巧,并加深对MCS-51系列单片机中断系统硬件结构的认识。
3. 熟悉定时器/计数器的工作原理并掌握其编程方法和技巧,加深对定时/计数中断的理解及运用。
4.2实验预习
1、熟悉51单片机中断系统硬件结构以及中断系统的工作原理。
2、熟悉中断源的选择、中断标志的设置、中断请求的控制、中断优先级的控制等。
3、掌握中断系统的初始化。
4、掌握51单片机定时/计数器硬件结构与工作原理。
5、掌握定时/计数工作在方式1、2时工作模式设置、计数初值的计算等。
6、掌握51单片机的定时/计时器各工作模式的编程应用。
7、掌握用查询和中断两种方法处理定时/计数的问题。
4.3实验内容
4.3.1 外部中断实验
采用下降沿触发的中断方式设计一个事故检测装置。
要求在设备正常工作时,绿色指示灯亮,红色指示灯灭;设备出现故障时,绿色指示灯灭,红色指示灯亮。
实验说明:中断信号由单脉冲按钮AN产生。
硬件联线:根据选择的输出引脚,用排线连接到选择的指示灯插针(J27或J28);
4.3.2定时器/计数器实验
1、利用定时器T0的方式1编制一段程序。在某一I/O输出引脚(如P1.0)输出一个方波控制一个红色指示灯。
①输出周期为40ms的方波,观察指示灯的变化,并采用示波器观察输出波形。
②输出周期为200ms的方波,观察指示灯的变化,并采用示波器观察输出波