再排版071008单片机实验指导书.docx
- 文档编号:3865543
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:49
- 大小:576.33KB
再排版071008单片机实验指导书.docx
《再排版071008单片机实验指导书.docx》由会员分享,可在线阅读,更多相关《再排版071008单片机实验指导书.docx(49页珍藏版)》请在冰豆网上搜索。
再排版071008单片机实验指导书
单片机原理与应用实验指导书
电子信息工程系
苏州市职业大学
第一章伟福仿真器系统概述
本仿真器系统由仿真主机+仿真头、MULT_51C自制实验板、仿真器专用电源等组成。
本系统的特点是:
一、主机+仿真头的组合
通过更换不同型号的仿真头即可对各种不同类型的单片机进行仿真,是一种灵活的多CPU仿真系统。
采用主机+POD组合的方式,更换POD,可以对各种CPU进行仿真。
本仿真器主机型号为E51/S,仿真头型号为POD8X5X(可仿真51系列8X5X单片机)。
二、双平台,DOS版本和WINDOWS版本。
WINDOWS版本功能强大,中/英文界面任选,用户源程序的大小不再有任何限制,支持ASM,c,PLM语言混合编程,具有项目管理功能,为用户的资源共享、课题重组提供强有力的手段。
支持点屏显示,用鼠标左键点一下源程序中的某一变量,即可显示该变量的数值。
有丰富的窗口显示方式,多方位,动态地显示仿真的各种过程,使用极为便利。
三、双工作模式
1.软件模拟仿真(不用仿真器也可模拟仿真)。
2.硬件仿真。
四、双CPU结构,100%不占用户资源。
全空间硬件断点,不受任何条件限制,支持地址、数据、外部信号、事件断点、支持实时断点计数、软件运行时间统计。
五、双集成环境
编辑、编译、下载、调试全部集中在一个环境下。
多种仿真器,多类CPU仿真全部集成在一个环境下。
可仿真51系列,196系列,PIC系列,飞利蒲公司的552、LPC764、DALLAS320,华邦438等51增强型CPU。
伟福WINDOWS调试软件提供了一个全集成环境,统一的界面,包含一个项目管理器,一个功能强大的编辑器,汇编Make、Build和调试工具。
六、强大的逻辑分析仪综合调试功能
逻辑分析仪由交互式软件菜单窗口对系统硬件的逻辑或时序进行同步实时采样,并实时在线调试分析,采集深度32K(E2000/L),最高时基采样频率达20MHz,40路波形,可精确实时反映用户程序运行时的历史时间。
系统在使用逻辑分析仪时,除普通的单步运行、键盘断点运行、全速硬件断点运行外,还可实现各种条件组合断点如:
数据、地址、外部控制信号、CPU内部控制信号、程序区间断点等。
由于逻辑仪可以直接对程序的执行结果进行分析,因此极大地便利于程序的调试。
随着科学技术的发展,单片机通信方面的运用越来越多。
在通信功能的调试时,如果通信不正常,查找原因是非常耗时和低效的。
有了逻辑仪,情况则完全不同了,用它可以分别或者同时对发送方、接收方的输入或者输出波形进行记录、存储、对比、测量等各种直观的分析,可以将实际输出通信报文的波形与源程序相比较,可立即发现问题所在,从而极大地方便了调试。
七、强大的追踪器功能
追踪功能以总线周期为单位,实时记录仿真过程中CPU发生的总线事件,其触发条件方式同逻辑分析仪。
追踪窗口在仿真停止时可收集显示追踪的CPU指令记忆信息,可以以总线反汇编码模式、源程序模式对应显示追踪结果。
屏幕窗口显示波形图最多追踪记忆指令32K并通过仿真器的断点、单步、全速运行或各种条件组合断点来完成追踪功能。
总线跟踪可以跟踪程序的运行轨迹,可以统计软件运行时间。
第二章开发环境简介
双击桌面上的WAVE图标或从开始/程序/WAVEFORWINDOWS/WAVE进入本开发环境,其界面及主要功能如图2-1中所注。
图2-1WAVE界面
一、仿真器设置窗口
如图2-2所示,在实验开始时要先根据需要设置好仿真器类型、仿真头类型以及CPU类型,并注意是否“使用伟福软件模拟器”,若使用硬件仿真,请注意去掉“使用伟福软件模拟器”前的选择。
图2-2仿真器设置窗口
二、文件窗口
如图2-3,可在此窗口下进行包括新建、打开、保存等文件操作。
图2-3文件窗口
三、编译文件窗口
如图2-4,在此窗口下可将源文件编译成目标文件。
图2-4编译文件窗口
四、执行窗口
如图2-5,在此窗口下,可用全速、跟踪、断点等各种方式运行程序
图2-5执行窗口
五、“窗口”窗口
如图2-6-1,在此窗口下,可以观察各种窗口信息,其中最常用到的是CPU窗口和数据窗口。
图2-6-1窗口
1.CPU窗口
通过CPU窗口可以看到你编译正确的机器码及反汇编程序,可以让你更清楚地了解程序执行过程。
CPU窗口中还有SFR窗口和位窗口,让你了解程序执行过程中寄存器内容的变化。
图2-6-2CPU窗口
2.数据窗口
对51系列CPU,数据窗口有:
DATA—内部数据窗口;CODE—程序数据窗口;XDATA—外部数据窗口;PDATA—外部数据窗口(页方式)
图2-6-3数据窗口
图2-6-4DATA(内部数据窗口)
图2-6-5CODE(程序数据窗口)
图2-6-6XDATA(外部数据窗口)
图2-6-7PDATA(页方式外部数据窗口)
第三章MCS51系列单片机实验
软件实验一存储器块清零
一、实验目的
1.掌握存储器读写方法。
2.了解存储器的块操作方法。
二、实验内容
1.指定内部RAM中某块的起始地址和长度,要求能将其内容清零。
2.指定外部RAM中某块的起始地址和长度,要求能将其内容清零。
3.指定外部RAM中某块的起始地址和长度,要求能将其内容置为某固定值(如0FFH)。
三、实验说明
通过本实验,学生可以了解单片机的存储器结构及读写存储器的方法,同时也可以了解单片机编程、调试方法。
四、实验仪器和设备
PC机、WAVE软件。
五、参考程序框图
否
是
存储器块清零参考程序框图
软件实验二二进制到BCD转换
一、实验目的
1.掌握简单的数值转换算法。
2.基本了解数值的各种表达方法。
二、实验内容
1.将给定的一个单字节二进制数,转换成非压缩的二—十进制(BCD)码。
2.将给定的一个单字节二进制数,转换成压缩的二—十进制(BCD)码。
三、实验说明
计算机中的数值有各种表达方式,这是计算机的基础。
掌握各种数制之间的转换是一种基本功。
有兴趣的同学可以试试将BCD转换成二进制码。
四、实验仪器和设备
PC机、WAVE软件。
五、参考程序框图
单字节二进制数转换成非压缩BCD码框图
软件实验三十进制到ASCII码转换
一、实验目的
1.了解BCD值和ASCII值的区别。
2.了解如何将BCD值转换成ASCII值。
3.了解如何查表进行数值转换及快速计算。
二、实验内容
给出一个压缩BCD数,分别用查表法和逻辑运算方法将其转换成ASCII值。
三、实验说明
此实验主要让学生了解数值的BCD码和ASCII码的区别,学会用查表法快速地进行数值转换并进一步了解数值的各种表达方式。
四、实验仪器和设备
PC机、WAVE软件。
五、参考程序框图(查表法)
十进制到ASCII码转换(查表法)参考程序框图
软件实验四存储块移动
一、实验目的
1.了解内存的移动方法。
2.加深对存储器读写的认识。
二、实验内容
将指定源地址和长度的存储块移到指定目标位置。
三、实验说明
块移动是计算机常用操作之一,多用于大量的数据复制和图象操作。
本程序是给出起始地址,用地址加一方法移动块,请思考:
给出块结束地址,用地址减一方法移动块的算法。
四、实验仪器和设备
PC机、WAVE软件。
五、参考程序框图
否
是
存储块移动参考程序框图
软件实验五多分支程序
一、实验目的
1.了解程序的多分支结构。
2.了解多分支结构程序的编程方法。
二、实验内容
在多分支结构的程序中,能够按调用号执行相应的功能。
三、实验说明
多分支结构是程序中常见的结构,若给出调用号来调用子程序,一般用查表方法,查到子程序的地址,转到相应子程序,完成指定操作。
四、实验仪器和设备
PC机、WAVE软件。
五、参考程序框图
多分支参考程序框图
软件实验六数据排序
一、实验目的
1.了解数据排序的简单算法。
2.了解数列的有序和无序概念。
二、实验内容
给出一组随机数,将此组数据排序,使之成为有序数列。
三、实验说明
有序的数列更有利于查找。
本程序用的是“冒泡排序”法,算法是:
将一个数与后面的数相比较,如果比后面的数大,则交换。
按此方法,将所有的数比较一遍后,最大的数就会在数列的最后面,再进行下一轮比较,找出第二大数,直到全部数据有序。
四、实验仪器和设备
PC机、WAVE软件。
五、参考程序框图
是否
否
是否
是
数据排序参考程序框图
硬件实验一P0口输出实验一---跑马灯
一、实验目的
1.学习P0口的使用方法。
2.学习延时子程序的编写和使用。
二、实验内容
P0口做输出口,接八只发光二极管。
编写程序,使发光二极管循环点亮。
三、实验说明:
延时子程序的延时计算问题
对于程序DELAY:
MOVR7,#200
DEL1:
MOVR6,#123
NOP
DEL2:
DJNZR6,DEL2
DJNZR7,DEL1
RET
通过查找指令表可知,执行MOV指令需用1个机器周期,DJNZ指令需用2个机器周期,在12MHz晶振时,一个机器周期时间长度为1μs,所以该段程序执行时间为:
[1+(1+1+2×123+2)×200+2]×1μs≈50ms
四、实验仪器和设备
PC机、WAVE软件、E51/S仿真器+POD8X5X仿真头、MULT_51C实验板、仿真器专用电源等。
五、实验电路图
六、参考程序
COUNTEQU30H
ORG0000H
MOVSP,#5FH
MOVA,#7FH
LOOP:
MOVP0,A
MOVCOUNT,#10
LCALLDELN10ms
RRA
AJMPLOOP
;*******************************************
;
(1)
(2)(3)(4)(5)(6)(7)
;t=1T+(1T+(1T+1T+2T)×25+2T)×100+2T=10303T=10303us
;=10.3ms
;*******************************************
DELAY10ms:
MOVR7,#100;1T
(1)
DEl0:
MOVR6,#25;1T
(2)
DEL1:
NOP;1T(3)
NOP;1T(4)
DJNZR6,DEL1;2T(5)
DJNZR7,DEL0;2T(6)
RET;2T(7)
;入口参数:
COUNT,t=COUNT×10ms
DELN10ms:
DELN:
LCALLDELAY10ms
DJNZCOUNT,DELN
RET
END
硬件实验二P0口输出实验二---4位LED数码管动态显示
一、实验目的
1.学习8D锁存器74573的使用方法。
2.学习多位LED数码管动态显示程序的编写方法。
二、实验内容
P0口作输出口,外接两片8D锁存器74573,一片74573用于控制LED数码管的字段,另一片74573用于控制LED数码管的字位。
编写程序,使得内存单元DISP1~DISP4中的内容在4位LED数码管上显示出来。
三、实验仪器和设备
PC机、WAVE软件、E51/S仿真器+POD8X5X仿真头、MULT_51C实验板、仿真器专用电源等。
四、实验电路图
五、参考程序
SEL0EQUP3.5
SEL1EQUP3.7
DISP1EQU30H
DISP2EQU31H
DISP3EQU32H
DISP4EQU33H
COUNTEQU34H
SCANEQU20H
SCAN1EQU20H.0
SCAN2EQU20H.1
SCAN3EQU20H.2
SCAN4EQU20H.3
ORG0000H
LJMPMAIN
ORG001BH
AJMPDISPLAY
MAIN:
MOVTMOD,#00010000B
MOVTH1,#0ECH
MOVTL1,#78H
SETBET1
SETBPT1
SETBEA
SETBTR1
MOVCOUNT,#0
CLRSEL0
CLRSEL1
MOVDISP1,#2
MOVDISP2,#0
MOVDISP3,#0
MOVDISP4,#6
WAIT:
AJMPWAIT
DISOUT1:
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP0,A
SETBSEL1
CLRSEL1
RET
DISOUT0:
MOVA,SCAN
MOVP0,A
SETBSEL0
NOP
CLRSEL0
RET
DISPLAY:
MOVTH1,#0ECH
MOVTL1,#78H
PUSHACC
PUSHPSW
INCCOUNT
MOVA,COUNT
CJNEA,#1,NO_DIS1
CLRSCAN1
SETBSCAN2
SETBSCAN3
SETBSCAN4
LCALLDISOUT0
MOVA,DISP1
LCALLDISOUT1
AJMPT1_END
NO_DIS1:
CJNEA,#2,NO_DIS2
SETBSCAN1
CLRSCAN2
SETBSCAN3
SETBSCAN4
LCALLDISOUT0
MOVA,DISP2
LCALLDISOUT1
AJMPT1_END
NO_DIS2:
CJNEA,#3,NO_DIS3
SETBSCAN2
CLRSCAN3
SETBSCAN2
SETBSCAN4
LCALLDISOUT0
MOVA,DISP3
LCALLDISOUT1
AJMPT1_END
NO_DIS3:
MOVCOUNT,#0
SETBSCAN1
SETBSCAN2
SETBSCAN3
CLRSCAN4
LCALLDISOUT0
MOVA,DISP4
LCALLDISOUT1
T1_END:
POPPSW
POPACC
RETI
TAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
硬件实验三P0口输出、P2口输入实验一---静态按键、显示实验
一、实验目的
1.学习8D锁存器74573的使用方法。
2.学习静态按键、显示程序的编写方法。
二、实验内容
P0口作输出口,外接两片8D锁存器74573,一片74573用于控制LED数码管的字段,另一片74573用于控制LED数码管的字位,P2口作输入口,用于读入键盘的状态。
编写程序,使得每个按键显示一组不同的数据。
三、实验仪器和设备
PC机、WAVE软件、E51/S仿真器+POD8X5X仿真头、MULT_51C实验板、仿真器专用电源等。
四、实验电路图
五、参考程序
SEL0EQUP3.5
SEL1EQUP3.7
DISP1EQU30H
DISP2EQU31H
DISP3EQU32H
DISP4EQU33H
COUNTEQU34H
SCANEQU20H
SCAN1EQU20H.0
SCAN2EQU20H.1
SCAN3EQU20H.2
SCAN4EQU20H.3
SCAN5EQU20H.4
SCAN6EQU20H.5
SCAN7EQU20H.6
ORG0000H
LJMPMAIN
ORG001BH
AJMPDISPLAY
MAIN:
MOVTMOD,#00010000B
MOVTH1,#0ECH
MOVTL1,#78H
SETBET1
SETBPT1
SETBEA
SETBTR1
MOVCOUNT,#0
CLRSEL0
CLRSEL1
MOVDISP1,#2
MOVDISP2,#0
MOVDISP3,#0
MOVDISP4,#6
WAIT:
LCALLKEY_SCAN
JZPRO_END
CJNEA,#1,NO_1
MOVDISP1,#1
MOVDISP2,#1
MOVDISP3,#1
MOVDISP4,#1
AJMPPRO_END
NO_1:
CJNEA,#2,NO_2
MOVDISP1,#2
MOVDISP2,#2
MOVDISP3,#2
MOVDISP4,#2
AJMPPRO_END
NO_2:
CJNEA,#3,NO_3
MOVDISP1,#3
MOVDISP2,#3
MOVDISP3,#3
MOVDISP4,#3
AJMPPRO_END
NO_3:
CJNEA,#4,NO_4
MOVDISP1,#4
MOVDISP2,#4
MOVDISP3,#4
MOVDISP4,#4
NO_4:
AJMPWAIT
DISOUT1:
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP0,A
SETBSEL1
NOP
CLRSEL1
RET
DISOUT0:
MOVA,SCAN
MOVP0,A
SETBSEL0
NOP
CLRSEL0
RET
KEY_SCAN:
CLRSCAN5
SETBSCAN6
SETBSCAN7
LCALLDISOUT0
MOVA,P2
ANLA,#00001111B
CJNEA,#0FH,MAY_KEY
AJMPNO_KEY
MAY_KEY:
LCALLDELAY10ms
MOVA,P2
ANLA,#0FH
CJNEA,#0FH,YES_KEY
AJMPNO_KEY
YES_KEY:
CJNEA,#0EH,NO_KEY1
MOVA,#1
AJMPKEY_END
NO_KEY1:
CJNEA,#0DH,NO_KEY2
MOVA,#2
AJMPKEY_END
NO_KEY2:
CJNEA,#0BH,NO_KEY3
MOVA,#3
AJMPKEY_END
NO_KEY3:
MOVA,#4
AJMPKEY_END
NO_KEY:
MOVA,#0
AJMPKEY_END
KEY_END:
RET
DELAY10ms:
MOVR6,#250
DEL:
MOVR7,#10
DJNZR7,$
DJNZR6,DEL
RET
DISPLAY:
MOVTH1,#0ECH
MOVTL1,#78H
PUSHACC
PUSHPSW
INCCOUNT
MOVA,COUNT
CJNEA,#1,NO_DIS1
CLRSCAN1
SETBSCAN2
SETBSCAN3
SETBSCAN4
LCALLDISOUT0
MOVA,DISP1
LCALLDISOUT1
AJMPT1_END
NO_DIS1:
CJNEA,#2,NO_DIS2
SETBSCAN1
CLRSCAN2
SETBSCAN3
SETBSCAN4
LCALLDISOUT0
MOVA,DISP2
LCALLDISOUT1
AJMPT1_END
NO_DIS2:
CJNEA,#3,NO_DIS3
SETBSCAN2
CLRSCAN3
SETBSCAN2
SETBSCAN4
LCALLDISOUT0
MOVA,DISP3
LCALLDISOUT1
AJMPT1_END
NO_DIS3:
MOVCOUNT,#0
SETBSCAN1
SETBSCAN2
SETBSCAN3
CLRSCAN4
LCALLDISOUT0
MOVA,DISP4
LCALLDISOUT1
T1_END:
POPPSW
POPACC
RETI
TAB:
DB0C0H,0F9H,0A4H,0B0H,99H
DB92H,82H,0F8H,80H,90H
END
硬件实验四I2C总线实验---AT24C02串行E2PROM实验
一、实验目的
1.学习I2C总线工作原理。
2.学习用AT24C02实现对串行E2PROM进行读/写操作的编程方法。
二、实验内容
将2个不同的数据(如55H,AAH)写入到AT24C02中,然后再读出来。
三、实验仪器和设备
PC机、WAVE软件、E51/S仿真器+POD8X5X仿真头、MULT_51C实验板、仿真器专用电源等。
四、实验说明
I2C总线为二线制串行扩展总线。
它采用总线寻址方式查询外围接口器件,不需要片选地址,接口电路简单,可以在总线上挂接多个外围接口器件。
I2C总线的硬件接口电路虽然简单,但由于要将按字节(Byte)传送数据改变为按位(Bit)传送数据,因此,编程的工作量会增加许多。
AT24C02是带I2C总线接口的E2PROM存储器,具有掉电记忆功能,可像普通RAM一样用程序改写。
AT24C02的容量为256B,有A2,A1,A0三位地址,其寻址字节为1010A2A1A0R/W。
五、实验电路图
六、参考程序
SCLEQUP1.5
SDAEQUP1.6
ORG0000H
MAIN:
MOVR0,#00H
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 排版 071008 单片机 实验 指导书
![提示](https://static.bdocx.com/images/bang_tan.gif)