单片机实验伟福仿真指导书

上传人:碎****木 文档编号:231259518 上传时间:2023-08-31 格式:DOCX 页数:24 大小:380.41KB
收藏 版权申诉 举报 下载
单片机实验伟福仿真指导书_第1页
第1页 / 共24页
单片机实验伟福仿真指导书_第2页
第2页 / 共24页
单片机实验伟福仿真指导书_第3页
第3页 / 共24页
资源描述:

《单片机实验伟福仿真指导书》由会员分享,可在线阅读,更多相关《单片机实验伟福仿真指导书(24页珍藏版)》请在装配图网上搜索。

1、第一章生疏 51 系列单片机存储空间计算机的应用是一个系统,这个系统应由两局部组成硬件和软件。硬件是指具体的元器件、电路等,软件则是指程序和数据。假设説硬件是计算机应用系统的根底的话,那么软件则是计算机应 用系统的灵魂。计算机原理告知我们程序和数据是被“装载”在计算机存储器中的,从某种意义上讲, 生疏一个计算机的存储器系统是开发软件所必需的。为了全面生疏 51 系列单片机的存储空间,本章列出四个实训单元。在进展完本章列出的四个实训单元后,要求读者应全面了解 51 系列单片机的程序存储器ROM、片内随机存储器片内 RAM和片外随机存储器片外RAM空间的范围、用途和使用方法等。1.1 生疏 51

2、系列单片机的程序存储器ROM一、目的要求第一局部 教学要求1. 生疏 51 系列单片机的程序存储器ROM的空间范围;2. 生疏汇编指令编码在ROM 中存储形式;3. 把握指令编码和指令编码所在地址的概念;4. 了解 51 系列单片机的程序存储器ROM固定地址的用途。二、实训平台1. PC 机,台/人;123工程教师讲授阅读教材学生实训时间安排0.5 课时0.5 课时1 课时教学方式重点讲授ROM 空间范围与仿真软件使用技巧 自学、查资料、仿真软件使用、相互争论学生实训、教师指导2. 伟福V3.2 版仿真软件或其它 51 系列单片机仿真软件三、 教学节奏与方式四、成绩评定工程形式成绩评定151

3、系列单片机ROM 存储空间描述书面251 系列单片机ROM 空间使用状况观看填表3总成绩教师签名注:成绩评定等级:优良、及格、不及格其次局部 教学内容一、预备学问1. ROM 存储器ROM(Real Only Memory)即只读存储器之意,其特点是在计算机正常运行的状况下CPU 对ROM存储器只能进展读操作且断电后信息不会丧失,通常用来存储固定不变的程序和数据,如引导程序、根本输入输出系统程序等。ROM 按其性能可分为以下几类:(1) 掩模工艺ROM它是由芯片制造厂依据 ROM 要求存储的信息,制造成固定的半导体掩模版生产的。一旦制出成品后,其存储的信息只能读出,不能转变。这种 ROM 适用

4、于存储固定不变的程序和数据,批量生产时, 本钱较低。(2) 可一次编程PROM允许用户对ROM 进展一次编程。(3)可擦除的EPROM允许用户对ROM 进展屡次编程,即可擦除。按擦除的方法不同,可分为紫外线擦除的可擦除可编程序只读存储器EPROM(Erasable Programmable Read Only Memory)和电擦除的电可擦除编程序只读存储器EEPROM(Electrically Erasable Programmable Read Only Memory)。(4)Flash 存储器Flash 存储器是在 20 世纪 80 年月末渐渐进展起来的一种型不挥发性半导体存储器,它结合

5、了以往 EPROM 构造简洁、密度高和 EEPROM 在系统的电可擦除性的一些优点,实现了高密度、低本钱和高牢靠性。Flash 存储器和传统存储器的最大区分在于它是按块(Sector)擦除,按位编程,从而实现了快闪擦除的高速度。目前它广泛应用于PCBIOS、数字蜂窝 、汽车领域和微掌握器等很多领域。EPROM、EEPROM、Flash 存储器需通过专用的编程器将程序和数据写入其中。2. 51 系列单片机ROM 空间由于 5l 系列单片机的程序计数器PC 是 16 位的,所以能寻址 64KB 的程序存储器地址范围。允许用户程序调用或转向 64KB 的任何存储单元。在 5l 系列单片机中依据不同的

6、型号,其程序存储器的形式也有所不同。例如:8051 单片机在芯片内部设置了 4 KB 掩模版的 ROM, 8751 单片机在芯片内部设置了 4 KB 的 EPROM,89C52 单片机在芯片内部设置了 8 KB 的 Flash 存储器,而 8031 单片机在芯片内部没有设置程序存储器,需要在单片机外部配置EPROM。51 系列单片机的 EA 引脚为访问内部或外部程序存储器的选择端。接高电寻常,CPU 将首先访问内部存储器,当指令地址超过内部存储器的最大地址时,自动转向片外ROM 去取指令。当 EA 引脚接低电寻常(接地),CPU 只能访问外部程序存储器。对于 8031 单片机,由于其内部无程序

7、存储器,故只能承受这种接法。:51 系列单片机程序存储器的地址从 0000H 开头编址。程序存储器低端的一些地址被固定地用作特定程序的入口地址:0000H0000H:单片机复位后的程序入口地址;0001H0003H:外部中断 0 的中断效劳程序入口地址;000BH:定时器 0 的中断效劳程序入口地址;:0013H:外部中断l 的中断效劳程序入口地址;:001BH:定时器 1 的中断效劳程序入口地址;0023H:串行端口的中断效劳程序入口地址;002BH:定时器 2 的中断效劳程序入口地址。FFFFH图 1.1 ROM 空间示意编程时,通常在这些入口地址开头的 2、3 个单元中,放入一条转移指令

8、,以使相应的效劳与实际安排的程序存储器区域中的程序段相对应(仅在中断效劳程序较短时,才可以将中断效劳程序直接 放在相应的入口地址开头的几个单元中)。3. 源程序汇编与程序定位伪指令将汇编语言源程序转换为计算机能执行的机器码形式的目标程序的过程叫汇编。汇编常用的方法有两种:一是手工汇编,二是利用计算机汇编。手工汇编时,把程序用助记符指令写出后,通过手工方式查指令编码表,逐个把助记符指令翻译成机器码,然后把得到的机器码程序(以十六进制形式)键入到单片机开发机中,并进展调试。由于手 工汇编是按确定地址进展定位的,所以,对于偏移量的计算和程序的修改有诸多不便。通常只有程序较小或条件所限时才使用。机器汇

9、编是在常用的个人计算机上,使用穿插汇编程序将汇编语言源程序转换为计算机能执行的 机器码形式的目标程序。汇编工作由计算机自动完成。生成的目标程序由PC 机传到开发机上,经调试无误后,再固化到程序存储器ROM 中。机器汇编与手工汇编相比具有极大的优势,是汇编工作的首选。本教材选用的伟福仿真软件就可进展机器汇编。伪指令不是单片机执行的指令,没有对应的机器码,仅是用来对汇编过程进展某种掌握。常用的伪指令有:1定位伪指令ORG格式:标号: ORG l6 位地址功能:规定程序块或数据块存放的起始地址。如:ORG 8000H START:MOVA,#30H该语句规定第一条指令从地址 8000H 单元开头存放

10、。标号START 的值为 8000H。通常,在一段汇编语言源程序的开头,都要设置一条 ORG 伪指令来指定该程序在存储器中存放的起始位置。假设省略ORG 伪指令,则该程序段从 0000H 单元开头存放。在一个源程序中,可以屡次使用ORG 伪指令,以规定不同程序段或数据段存放的起始地址,但要求16 位地址值由小到大依序排列,不允许空间重叠。(2) 汇编完毕伪指令 END格式:标号: END 表达式功能:完毕汇编。汇编程序遇到END 伪指令后即完毕汇编。处于END 之后的程序,汇编程序不予处理。(3) 字节数据定义伪指令 DB格式:标号: DB 8 位字节数据表功能:从标号指定的地址单元开头,在程

11、序存储器中定义字节数据。字节数据表可以是一个或多个字节数据、字符串或表达式。该伪指令将字节数据表中的数据按从左到右的挨次依次存放在指定的存储 单元中。一个数据占一个存储单元。4. 伟福 V3.2 版仿真软件使用见附录X二、实训用程序ORG 0000HAJMP BEGIN ;转初始化程序段ORG 0003HLJMP PINT0;转外部中断 0 的中断效劳程序ORG 0100HBIGIN: SETB EA;初始化程序段SETB EX0SETB PX0 SETB IT0 MOV R0, #03HMOV A, #0A8HMOV R0, A MOV R1, #20H MOV R2, #31H MOV R

12、0, #00H MOV A, R1 MOVX R0, A MOV R0, #03H MOV A, #01H MOVX R0, A CLR AMOVX R0, A LOOP: SJMP $ORG 2023HPINT0: MOV R0, #00H;外部中断 0 的中断效劳程序INC R1MOV A, R1 MOVX R0, A MOV R0, #02H MOV A, #01H MOVX R0, A CLR AMOVX R0, A DJNZ R2, NEXT CLR EX0SJMP DONE NEXT: SETB EX0 DONE: RETIEND三、实训将以上实训用程序通过伟福V3.2 版仿真软件

13、或其它 51 系列单片机仿真软件输入到计算机中, 并以*.ASM 文件名保存,然后进展汇编。汇编成功后,通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)CODE”菜单观看程序存储器ROM中的内容,理解“地址”、“指令代码”的概念,并了解 51 系列单片机程序存储器ROM空间的分布特点。注:本节实训不要求读者具体读懂上述程序的具体功能。具体步骤如下:(1) 翻开伟福V3.2 版仿真软件,选择伟福软件模拟器。见图 1图 1 伟福 V3.2 版仿真软件启动画面(2) 选择“文件(F)建文件(N)”,输入实训用程序。见图 2图 2 建立一个文件(3) 程序输完后,选择“文件(F)另存为(A)”

14、,在弹出的对话框中输入带有.ASM 后缀文件名。按“保存”按钮后,程序就会以带有.ASM 后缀的文件形式存储磁盘上。留意此时程序中字符会依据伟福仿真软件的设置变色。见图 3图 3 在伟福V3.2 版仿真软件中保存一个文件(4) 选择“工程(P)编译(M)”对源程序进展汇编见图 4。假设无错,则会在模拟的程序存储器中形成机器指令代码。图 4 在伟福V3.2 版仿真软件中进展编译(5) 选择“窗口(W)数据窗口(D)CODE”,观看程序存储器ROM中的内容。见图 5图 5 在伟福V3.2 版仿真软件如何观看程序代码指令所在的地址指令代码图 6 是在模拟的程序存储器中形成的机器指令代码。蓝字局部为地

15、址,黑字局部为指令代码。拖动右侧的滚动条可观看整个程序存储器空间的内容。图 6 伟福仿真软件的数据显示区(6) 依据图 6 窗口数据,填写以下表格。指令编码起始地址0000H0003H指令编码20H,00H02H,20H,00H指令助记符AJMP 0100H LJPM 2023H1.2 生疏 51 系列单片机的片内随机存储器片内RAM一、目的要求第一局部 教学要求1. 生疏 51 系列单片机片内随机存储器片内RAM的空间范围;2. 生疏 51 系列单片机片内随机存储器的区域划分;3. 把握字节地址和位地址的概念;4. 了解R0R7 存放器与字节地址的关系。二、实训平台1. PC 机,台/人;2

16、. 伟福V3.2 版仿真软件或其它 51 系列单片机仿真软件。三、 教学节奏与方式工程时间安排教学方式1教师讲授1 课时重点讲授片内随机存储器的区域划分2阅读教材0.5 课时自学、查资料、仿真软件使用、相互争论3学生实训0.5 课时学生实训、教师指导四、成绩评定工程形式成绩评定1字节地址和位地址的概念描述书面2单片机片内随机存储器的空间使用状况观看填表3总成绩教师签名注:成绩评定等级:优良、及格、不及格其次局部 教学内容一、预备学问1. RAM 存储器RAM (Random Access Memory)即随机访问存储器之意,RAM 存储器是一种既可读又可写的易失性存储器,其特点是断电后所存储的

17、信息将全部丧失,通常用来暂存运行的程序和数据。但在单片机应用系统中RAM 存储器仅被用来暂存运行的数据。2. 51 系列单片机片内随机存储器的区域划分51 系列单片机片内随机存储器依据型号的不同,其存储容量为128B 或 256B。典型芯片的容量为 128B,被划分为工作存放器区、位寻址区和通用RAM 区等三个区域。如图 1.2.1 所示。其中单片机片内RAM 中,最低的 32 个字节又被分成 4 个工作存放器组,每组占 8 个字节。即: 存放器 0 组:地址 00H 一 07H;存放器 1 组:地址 08H 一 0FH; 存放器 2 组:地址 10H 一 17H; 存放器 3 组:地址 18

18、H 1FH。每个工作存放器组都有 8 个存放器,分别称为:R0,R1,R7。程序运行时,只能有一个工作存放器组作为当前工作存放器组。当前工作存放器组的选择是由特别功能存放器中的程序状态字存放器PSW 的 RSl、RS0 两位打算的。可以对这两位进展编程,以选择不同的工作存放器组。工作存放器组与RSl、RS0 的关系及地址如表 2l 所示。图 1.2.151 系列单片机片内RAM 区域划分表 218051 单片机工作存放器地址表组号RS1RS0R0R1R2R3R4R5R6R700000H01H02H03H04H05H06H07H10108H09H0AH0BH0CH0DH0EH0FH21010H1

19、1H12H13H14H15H16H17H31118H19H1AH1BH1CH1DH1EH1FH在工作存放器区之后的 20H2FH 的 16 个字节为位寻址区,共有128 位。每位都有相应的位地址,范围是00H7FH。利用位寻址,可以对被寻址的位进展位操作。在实际应用中常把各种程序状态标志、位掌握变量设在位寻址区内。对于该区未用到的单元也可以作为通用RAM 使用。位寻址区之后的 30H7FH 共 80 个字节为通用 RAM 区数据缓冲器、堆栈区。这些单元有两种用途:其一可以作为数据缓冲器使用;其二设置堆栈区。51 系列单片机的堆栈一般设在 30H 7FH 的范围内。栈顶的位置由 SP 存放器指示

20、。系统复位时 SP 的初值为 07H,在系统初始化时可以重设置。3. 寻址方式与汇编指令马上数寻址:例 MOV 30H, #20H ;将数据 20H马上数送入 30H 单元中; 直接寻址: 例 MOV 30H, 20H;将 20H 单元中的数据送入 30H 单元中;间接寻址: 例 MOV R0, 30H ;将 30H 单元中的数据送入以 R0 存放器中的内容为地址的存储单元中;存放器寻址:例 MOV R0, #20H ;将数据 20H 送入R0 存放器中; 位寻址:例 SETB 00H;将位地址为 00H 的位置 1。二、实训用程序ORG 0000H AJMP BEGINORG 0030HBE

21、GIN: MOVR0, #00H ; 0=R0 MOVR1, #11H ; 11H=R1 MOVR6, #66H ; 66H=R6 MOVR7, #77H ; 77H=R7MOVR0, 01H; 将 01 单元中的数据=R0MOVR6, 07H; 将 07 单元中的数据=R6SETBRS0; 设置存放器组为第一组,RS1,RS0=01 MOVR0, 00H ; 将 00 单元中的数据=存放器第一组中的R0 MOVR1, 01H ; 将 01 单元中的数据=存放器第一组中的R1 MOVR7, 07H ; 将 07 单元中的数据=存放器第一组中的R7 SETBRS1; 设置存放器组为第三组,RS1

22、,RS0=11 MOVR6, 00H ; 将 00 单元中的数据=存放器第三组中的R6 MOVR7, 17H ; 将 17 单元中的数据=存放器第三组中的R7 MOV20H , #00H ; 0=20H 单元MOV2FH, #0FFH ; FFH=2FH 单元SETB00H; 位地址 00H 置“1” SETB07H; 位地址 07H 置“1” CLR78H; 位地址 78H 清“0”CLR7FH; 位地址 7FH 清“0” MOV31H , #31H;31H=31H 单元 MOV32H , #32H;32H=32H 单元CLRRS0;CLRRS1; 将 RS0、RS1 置 0,即设置存放器组

23、为第 0 组,RS1,RS0=00 PUSH00H; 将 00 单元中的数据入栈MOVSP , #30H; 重设置栈地址为 30H马上 30 设为堆栈指针PUSH00H; 将 00 单元中的数据入栈PUSH01H; 将 01 单元中的数据入栈 POP00H; 弹出栈顶数据至 00 单元 POP01H; 弹出栈顶数据至 01 单元AJMP$;三、实训1. 阅读以上程序,正确理解每一条指令功能。2. 将以上实训用程序通过伟福V3.2 版仿真软件或其它 51 系列单片机仿真软件输入到计算机中, 并以*.ASM 文件名保存,然后进展汇编。3. 汇编成功后,分别将光标移至标记所在行,通过伟福 V3.2

24、版仿真软件的“执行(R)设置/ 取消断点(B)”菜单对标记所在行设置断点。如图1.2.2 所示。设置调试暂停点4. 选择伟福V3.2 版仿真软件的“执行(R)复位(E)” 菜单。使程序从第一条指令开头执行。起点断点图 1.2.2 设置调试暂停点5. 通过伟福V3.2 版仿真软件的“执行(R)全速执行(R)”菜单, 执行到第一个断点处暂停。6. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。如图 1.2.3 和图 1.2.4 所示。图 1.2.3 翻开观看数据的窗口地址数据图 1.2.4 伟福仿真软件的数据显示区7. 填写下表。体会第 0 组存放器组与

25、片内RAM 地址的关系。在程序的前4 行执行的结果存放器名R0 R1 R6R7存放器的地址存放器中数据8. 通过伟福V3.2 版仿真软件的“执行(R)全速执行(R)”菜单, 执行到其次个断点处暂停。9. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。10. 填写下表。体会存放器与存放器之间的数据传递。存放器名R0 R6存放器的地址存放器中数据11. 通过伟福V3.2 版仿真软件的“执行(R)全速执行(R)”菜单, 执行到第三个断点处暂停。12. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。13. 填写下表

26、。体会第一组存放器组与片内RAM 地址的关系。存放器名R0 R1R7存放器的地址存放器中数据14. 通过伟福V3.2 版仿真软件的“执行(R)全速执行(R)”菜单, 执行到第四个断点处暂停。15. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。16. 填写下表。体会第三组存放器组与片内RAM 地址的关系。存放器名R6 R7存放器的地址存放器中数据17. 通过伟福V3.2 版仿真软件的“执行(R)全速执行(R)”菜单, 执行到第五个断点处暂停。18. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。19. 填写

27、下表。体会位寻址空间。RAM 字节地址 字节地址中数据20H2FH20. 通过伟福V3.2 版仿真软件的“执行(R)全速执行(R)”菜单, 执行到第六个断点处暂停。21. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。22. 填写下表。体会位地址与字节地址的关系。RAM 字节地址 字节地址中数据20H2FH23. 通过伟福V3.2 版仿真软件的“执行(R)全速执行(R)”菜单, 执行到第七个断点处暂停。24. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。25. 填写下表。RAM 字节地址 字节地址中数据3

28、1H32H26. 通过伟福V3.2 版仿真软件的“执行(R)全速执行(R)”菜单, 执行到第八个断点处暂停。27. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。28. 填写下表。体会初始栈区的位置栈顶地址栈顶中的数据29. 通过伟福V3.2 版仿真软件的“执行(R)全速执行(R)”菜单, 执行到第九个断点处暂停。30. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。31. 填写下表。体会修改后栈区的位置栈顶地址栈顶中的数据00H 单元中的数据 01H 单元中的数据32. 通过伟福V3.2 版仿真软件的“执

29、行(R)全速执行(R)”菜单, 执行到第十个断点处暂停。33. 通过伟福V3.2 版仿真软件的“窗口(W)数据窗口(D)DATA”菜单,观看指令运行结果。34. 填写下表。体会利用堆栈进展数据传递00H 单元中的数据01H 单元中的数据1.3 生疏 51 系列单片机的片内特别功能存放器第一局部 教学要求一、目的要求1. 生疏 51 系列单片机片内特别功能存放器的地址空间范围;2. 把握 51 系列单片机片内特别功能存放器的字节地址;3. 了解 51 系列单片机片内特别功能存放器的用途;4. 把握 51 系列单片机片内特别功能存放器的位地址。二、实训平台1. PC 机,台/人;2. 伟福V3.2

30、 版仿真软件或其它 51 系列单片机仿真软件。三、 学节奏与方式工程时间安排教学方式1教师讲授1 课时重点讲授片内随机存储器的区域划分2阅读教材0.5 课时自学、查资料、仿真软件使用、相互争论3学生实训0.5 课时学生实训、教师指导四、成绩评定工程形式成绩评定1常用单片机特别功能存放器的功能描述书面2单片机片内随机存储器的空间使用状况观看填表3总成绩教师签名注:成绩评定等级:优良、及格、不及格一、预备学问其次局部 教学内容151 系列单片机片内特别功能存放器SFR的地址空间是与片内随机存储器统一编址的,其地址空间范围是 80HFFH。如图 1.3.1 所示。 图 1.3.12. 51 系列单片

31、机依据芯片型号的不同,其片内特别功能存放器的数量有所不同。以典型芯片8031为例,片内特别功能存放器有 21 个。它们离散地分布在 80HFFH 地址字节地址空间上。3. 值得留意的是:那些分布在字节地址能被8 整除的即16 进制的地址码尾数为 0 或 8 的单元的特别功能存放器不但有字节地址而且还具有位地址,其位地址的空间范围也是 80HFFH,但不连续编址。编址的原则是具有位地址的特别功能存放器,其字节地址亦是特别功能存放器第 0 位的位地址。例如:作为特别功能存放器之一的累加器A,字节地址为 E0H,则累加器 A 第 0 位的位地址也是 E0H, 累加器 A 第 0 位至第 7 位的位地

32、址是E0HE7H。 见表 1.3.1。4. 51 系列单片机片内的特别功能存放器有着特别的地位。从某种意义上讲使用 51 系列单片机就是使用单片机片内的特别功能存放器,因此,正确地理解和使用 51 系列单片机片内的特别功能存放器对使用 51 系列单片机而言是具有打算性作用的。5. 51 系列单片机片内的特别功能存放器几乎包括了在微型计算机原理中表达的全部根本功能单元。这些根本功能单元是:计算、寻址、计算机及程序状态、并行和串行I/O 操作、定时/计数器操作和中断掌握等。简洁排列如下:累加器A,8 位。它是8051 单片机中最繁忙的存放器,用于向ALU 供给操作数,很多运算的结果也存放在累加器中

33、。B 存放器,8 位。主要用于乘、除法运算。也可以作为RAM 的一个单元使用。PSW 是程序状态字存放器,8 位。起标志存放器的作用。其中CY 是进位、借位标志,有进位、借位时 CY=1,否则CY=0;AC 是关心进位、借位标志(高四位与低四位间的进位、借位),有关心进位、借位时 AC=1,否则 AC=0;FO 是用户标志位,由用户自己定义;RSl、RS0 为工作存放器组选择位;OV 为溢出标志位,有溢出时 OV=l,否则 OV=0;P 是奇偶标志位,运算结果中有奇数个“1”时 P=l,否则 P=0。SP 栈指针存放器,8 位。用于指示当前栈顶地址。栈操作遵循“后进先出”的原则。入栈操作时,

34、SP 先加 1,数据再压人 SP 指向的单元。出栈操作时,先将 SP 指向的单元的数据弹出,然后,SP 再减 1, 这时 SP 指向的单元是的栈顶。DPTR 是 16 位的数据指针存放器。它由两个 8 位的存放器 DPH 和 DPL 组成,用来存放 16 位的地址,承受间接寻址或变址寻址方式可对片外的RAM 或 ROM 作 64KB 范围的数据进展操作。P0、P1、P2、P3 是 4 个并行IO 端口存放器。通过对这几个存放器的读写,可以实现数据从相应端口的并行输入输出。SBUF 是串行端口数据缓冲器,通过SBUF 可以实现全双工串行数据通信。SCON 是串行端口掌握存放器,用于掌握和设置串行

35、数据通信。PCON 是串行通信波特率倍增存放器,用于设置串行数据通信的波特率。THO、TL0 是定时计数器TO 的两个 8 位计数初值存放器,可以构成16 位的计数器,其中,TH0 存放高 8 位,TL0 存放低 8 位。TH1、TL1 是定时计数器T1 的两个 8 位计数初值存放器,可以构成16 位的计数器,其中,TH1 存放高 8 位,TL1 存放低 8 位。TMOD 是定时计数器的工作模式存放器,用于设置定时计数器的工作模式TCON 是定时计数器的掌握存放器,用于掌握定时计数器和中断的操作。IE 是中断允许掌握存放器, 用于允许/屏蔽中断源的中断恳求。IP 是中断优先级掌握存放器,用于设

36、置中断源的中断优先级。表 1.3.1 片内特别存放器地址空间分布二、实训用程序ORG 0000H AJMP BEGINORG 0030HBEGIN: MOVA, #0FH; 0F=AE0HE7H MOV0E0H, #0F0H; F0H=E0H 单元SETB0E0H; 将位地址E0H 置 1CLR0E7H; 将位地址E7H 清零CLRC; 清进位位ADDA, #0FFH;(A)+FFH=AADDCA, #00H;(A)+00H+CY=A带进位位相加SETB0EAH;将位地址EAH 置 1MOVP1, #0FH;0FH=P1SETBP1.7;将位地址 97H 置 1P1 口:90H97HCLRP1

37、.0;将位地址 90H 清零MOVDPL, #00H;数据指针低位=00HMOVDPH, #20H;数据指针高位=20H;即DPTR=2023HMOVTL0, #00H;定时器/计数器指针低位=00HMOVTH0, #10H;定时器/计数器指针高位=10H;即TH0TL0=1000HAJMP$三、实训1. 阅读以上程序,正确理解每一条指令功能。2. 将以上实训用程序通过伟福V3.2 版仿真软件或其它 51 系列单片机仿真软件输入到计算机中, 并以*.ASM 文件名保存,然后进展汇编。3. 选择伟福V3.2 版仿真软件的“执行(R)复位(E) 菜单。使程序从第一条指令开头执行。4. 选择伟福V3

38、.2 版仿真软件的“执行(R)单步(S) 菜单或按F8 键,如图1.3.2 所示。单步执行实训用程序。图 1.3.2存放器名图 1.3.35. 选择伟福V3.2 版仿真软件的“窗口(W)CPU 窗口”菜单,如图 1.3.3 所示。并依据表 1.3.1,填表以下表格。指令填写内容需把握的要点MOVA, #0FHMOV 0E0H, 0F0HSETB0E0HA 中的值CLR0E7HA 中的值留意累加器A 的值的变化和累加器A的位地址留意累加器A 的值的变化和累加器A的位地址CLRCPSW 中的值留意进位位的位地址ADDA, #0FFHA 中的值,PSW 中的值验证(A)+FFH=A,并留意 PSW

39、中的值的变化缘由ADDCA, #00HA 中的值留意累加器A 的值的变化SETB0EAH位地址EAH 所在的字节地址了解位地址EAH 被置 1 的意义MOVDPL, #00HDPL 的字节地址 ,DPL 中的值MOVDPH, #20HDPL 中的值,DPTR 中的值把握 DPTR 的形成MOVTL0, #00HTL0 的字节地址, TL0 中的值MOVTH0, #10HTH0 中的值,T0 中的值把握 T0 的形成表 1.3.2A 的地址指令编码:,A 中的值留意累加器A 的值的变化并与下一条指令比较A 中的值指令编码:累加器A 在特别功能存放器区中的字节地址。MOVP1, #0FHP1 的字

40、节地址,P1 中的值通过 P1 的并行输出操作SETBP1.7P1.7 的位地址 P1 中的值了解 P1.7 与 P1 的关系,常用的位控输出方式CLRP1.0P1.0 的位地址P1 中的值了解 P1.0 与 P1 的关系,常用的位控输出方式1.4 生疏 51 系列单片机的片外数据存储器片外 RAM及全部存储空间访问第一局部 教学要求一、目的要求1. 生疏 51 系列单片机的片外数据存储器片外RAM的地址空间范围;2. 生疏 51 系列单片机的片外数据存储器的用途;3. 把握 51 系列单片机全部存储空间ROM、片外 RAM 和片内 RAM的访问方法。二、实训平台1. PC 机,台/人;2.

41、伟福V3.2 版仿真软件或其它 51 系列单片机仿真软件三、教学节奏与方式工程时间安排教学方式1教师讲授1 课时重点讲授片内随机存储器的区域划分2阅读教材0.5 课时自学、查资料、仿真软件使用、相互争论3学生实训0.5 课时学生实训、教师指导四、成绩评定1工程51 系列单片机全部存储空间描述形式书面成绩评定2单片机三类存储器空间的使用状况观看填表3总成绩教师签名注:成绩评定等级:优良、及格、不及格其次局部 教学内容一、预备学问1. 片外RAM 存储器由于 51 系列单片机片外的地址总线为 16 位,所以能寻址的片外RAM 空间为 64K。与片内的RAM 存储器一样,片外RAM 存储器也是一种既

42、可读又可写的易失性存储器,故片外RAM 存储器通常被用来暂存程序运行时所采集的数据。2. 51 系列单片机三类存储器空间51 系列单片机的存储器空间按访问途径分,可分为三类ROM、片内 RAM 和片外RAM。如图 1.4.1 所示。这三类存储器空间在使用上有着明确地分工,ROM 用来存储程序和数据表,由于ROM 存储器需使用专用的编程器进展写入,并且是非易失性的,所以人们形象地称写入 ROM 中的程序和数据为固化。片内RAM 存储器的使用最为丰富,除了有格外重要的特别功能存放器外,还有工作存放器组、堆栈、位地址和用户数据缓存等用途。片外RAM 存储器的用途最为单一,仅被用作暂存程序运行时所采集

43、的数据,通常I/O 接口会占用一些片外 RAM 存储器的地址这局部内容将在后面的章节介绍。图 1.4.13. 51 系列单片机三类存储器空间的访问存/取从图 1.4.1 上我们可以看到三类存储器空间的地址都是从0 开头编址的,这就意味着这三类存储器的地址空间是重叠的ROM 与片外 RAM 完全重叠,片内 RAM 存储器与片外 RAM 存储器和ROM 的低端重叠。从微机原理上讲,地址是 CPU 用来选择访问对象的每一个地址即为一个对象,并且在任一时刻 CPU 的访问对象必需是唯一的。由于三类存储器的地址空间是重叠的,单靠地址无法唯一选择访问对象。所以在 51 系列单片机中了承受地址掌握信号的方法

44、来选择访问对象,具体做法是:对三类存储器地址空间的访问分别用三种不同的掌握信号地址进展,这样即使地址编码一样,但由于掌握信号的不同,所以CPU 也能唯一选择访问对象。4. 掌握信号与指令微机原理告知我们,掌握信号的产生是指令被译码的结果,那么不同的掌握信号就是不同的指 令被译码的结果。在 51 系列单片机中,读 ROM 是PSEN 信号有效、读片外 RAM 是RD 信号有效, 而写片外RAM 则是 WR 信号有效。访问三类存储器空间地址的指令举例及单片机引脚信号见表 1.4.1。访问对象指令PSENRDWR表 1.4.1读 ROMMOVC A, A+DPTR011读片外RAMMOVX A, D

45、PTR101写片外RAMMOVX DPTR, A110读片内RAMMOV A, direct111写片内RAMMOV direct, A111二、实训用程序ORG 0000H AJMP BEGINORG 0030HBEGIN: MOVDPTR, #0100H; 100H=DPTR CLR A;0=AMOVC A, A+ DPTR; (A+DPTR)=A MOVX DPTR, A;A=(DPTR) ADD A, #05H;A+5=A MOVC A, A+ DPTR; (A+DPTR)=AMOVX DPTR, A;A=(DPTR)INC DPTR;DPTR+1=DPTRCLR A;0=AMOVC

46、A, A+ DPTR; (A+DPTR)=A MOVX DPTR, A;A=(DPTR) INC DPL;DPL+1=DPLMOV A, #00H;0=AMOVC A, A+ DPTR; (A+DPTR)=A MOVX DPTR, A;A=(DPTR) AJMP$ORG 0100HDB 01H, 02H, 03H, 04H, 05H, 06H, 07H, 08H, 09H三、实训1. 阅读以上程序,正确理解每一条指令功能。2. 将以上实训用程序通过伟福V3.2 版仿真软件或其它 51 系列单片机仿真软件输入到计算机中, 并以*.ASM 文件名保存,然后进展汇编。6. 编成功后,选择“窗口(W)

47、数据窗口(D)CODE”,观看程序存储器ROM中的内容指令编码,特别留意ROM 中 0030H 单元后以及 0100H 单元后的内容,具体步骤见本章第一节。7. 察片外RAM 中的内容指令的执行结果,选择“窗口(W)数据窗口(D)XDATA”菜单,如图 1.4.2所示。地址数据图 1.4.25. 选择伟福V3.2 版仿真软件的“执行(R)复位(E) 菜单。使程序从第一条指令开头执行。6. 选择伟福V3.2 版仿真软件的“执行(R)单步(S) 菜单或按F8 键,如图1.3.2 所示。单步执行实训用程序。7. 选择“窗口(W)数据窗口(D)CODE”,观看程序存储器ROM中的内容,填写下表。比较指

48、令编码与指令的执行结果在“窗口(W)数据窗口(D)CPU”中观看。指令指令编码指令执行结果MOV DPTR, #0100HPDH=DPL=DPTR=INC DPTRPDH=DPL=DPTR=INC DPLPDH=DPL=DPTR=CLR AMOV A, #00HA=A=ROM 地址0100H0101H0102H0103H0104H0105H0106H0107H0108H0109H地址中的数据8. 选择“窗口(W)数据窗口(D)CODE”,观看程序存储器ROM中的内容,填写下表。体会伪指令的DB 的作用。片外RAM 地址 片外RAM 地址中的数据0100H0101H0102H0103H0104H0105H0106H0107H0108H0109H9. 选择“窗口(W)数据窗口(D)XDATA”菜单,观看片外RAM 中的内容,填写下表。体会实训程序的功能。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!