实验1、实验2熟悉软件开发环境及51单片机编程(学生版).docx
《实验1、实验2熟悉软件开发环境及51单片机编程(学生版).docx》由会员分享,可在线阅读,更多相关《实验1、实验2熟悉软件开发环境及51单片机编程(学生版).docx(30页珍藏版)》请在三一文库上搜索。
1、实验一、熟悉软件开发环境及51单片机资源认识I/O 口的应用与编程计算机的应用是一个系统,这个系统应由两部分组成一一硬件和软件。硬件是指具体的元器件、电路等,软件则是指程序和数据。如果脱硬件是计算机应用系统的基础的话,那么软件则是计算机应用系统的灵魂。计算机原理告诉我们程序和数据是被“装载”在计算机存储器中的,从某种意义上讲,认识一个计算机的存储器系统是开发软件所必须的。为了全面认识51系列单片机的存储空间,实验一与实验二列出四个实训单元。在进行完四个实训单元后,要求学生应全面了解51系列单片机的程序存储器(ROM)、片内随机存储器(片内RAM )和片外随机存储器(片外 RAM )空间的范围、
2、用途和使用方法等。1.1认识51系列单片机的程序存储器(ROM)第一部分教学要求一、实验目的:1 .认识51系列单片机的程序存储器(ROM)的空间范围;2 .认识汇编指令编码在 ROM中存储形式;3 .掌握指令编码和指令编码所在地址的概念;4 . 了解51系列单片机的程序存储器(ROM )固定地址的用途。二、实训平台1 . PC机,台/人;2 .伟福V3.2版仿真软件或其它 51系列单片机仿真软件、实验报告内容:项目形式成绩评定151系列单片机ROMl:储空间描述书面251系列单片机RO时间使用情况观察填表3总成绩教师签名(注:成绩评定等级:优、良、中、及格、不及格)第二部分教学内容一、预备知
3、识1. ROM存储器ROM(Read Only Memory)即只读存储器之意,其特点是在计算机正常运行的情况下CPU对ROM存储器只能进行读操作且断电后信息不会丢失,通常用来存储固定不变的程序和数据,如引导程序、基本输入输出系统程序等。RO啾其性能可分为以下几类:(1)掩模工艺ROM它是由芯片制造厂根据ROM要求存储的信息,制造成固定的半导体掩模版生产的。一旦制出成品后,其存储的信息只能读出,不能改变。这种ROMg用于存储固定不变的程序和 数据,批量生产时,成本较低。(2)可一次编程PROM 允许用户对 ROMS行一次编程。可擦除的EPROM允许用户对ROMS行多次编程,即可擦除。按擦除的方
4、法不同, 可分为紫外线擦除的可擦除可编程序只读存储器EPROM(Erasable Programmable Read Only Memory) 和电擦除的电可擦 除编程序只读存储器 EEPROM(Electrically Erasable Programmable Read Only Memory)。(4)Flash存储器Flash存储器是在20世纪80年代末逐渐发展起来的一种新型不挥发性半导体存储器, 它结合了以往EPRO变构简单、密度高和 EEPROME系统的电可擦除性的一些优点,实现了 高密度、低成本和高可靠性。Flash存储器和传统存储器的最大区别在于它是按块(Sector)擦除,按位
5、编程,从而实现了快闪擦除的高速度。目前它广泛应用于PCBIOS数字蜂窝电话、汽车领域和微控制器等许多领域。EPROM EEPROM Flash存储器需通过专用的编程器将程序和数据写入其中。2. 51系列单片机ROMg间由于5l系列单片机的程序计数器 PC是16位的,所以能寻址64KB的程序存储器地址范 围。允许用户程序调用或转向64KB的任何存储单元。在 5l系列单片机中根据不同的型号,其程序存储器的形式也有所不同。例如:8051单片机在芯片内部设置了4 KB掩模版的ROM8751单片机在芯片内部设置了4 KB的EPROM89C52单片机在芯片内部设置了 8 KB的Flash存储器,而8031
6、单片机在芯片内部没有设置程序存储器,需要在单片机外部配置EPROM51系列单片机的EA引脚为访问内部或外部程序存储器的选择端。当EA引脚接高电平时,CPU各首先访问内部存储器,当指令地址超过内部存储器的最大地址时,自动转向片外 ROMfe取指令。当EA引脚接低电平时(接地),CPU只能访问外部程序存储器。对于8031单片机,由于其内部无程序存储器,故只能采用这种接法。51系列单片机程序存储器的地址从0000H开始编址。程序存储器低端的一些地址被固定地用作特定程序的入口地址:0000H0000H:单片机复位后的程序入口地址;0001H0003H:外部中断0的中断服务程序入口地址;000BH定日器
7、0的中断服务程序入口地址;:0013H:外部中断l的中断服务程序入口地址;:001BH定日器1的中断服务程序入口地址;0023H:串行端口的中断服务程序入口地址;002BH定日器2的中断服务程序入口地址。FFFFH编程时,通常在这些入口地址开始的二三个单元中,放人一条转移指令,以使相应的服务与实际分配的程序存储器区域中的程序段相对应(仅在中断服务程序较短时,才可以将中断服务程序直接放在相应的人口地址开始的几个单元中)。3. 源程序汇编与程序定位伪指令将汇编语言源程序转换为计算机能执行的机器码形式的目标程序的过程叫汇编。汇编常用的方法有两种:一是手工汇编,二是利用计算机汇编。手工汇编时,把程序用
8、助记符指令写出后,通过手工方式查指令编码表, 逐个把助记符 指令翻译成机器码,然后把得到的机器码程序(以十六进制形式)键入到单片机开发机中, 并进行调试。由于手工汇编是按绝对地址进行定位的,所以,对于偏移量的计算和程序的修改有诸多不便。通常只有程序较小或条件所限时才使用。机器汇编是在常用的个人计算机上,使用交叉汇编程序将汇编语言源程序转换为计算机能执行的机器码形式的目标程序。汇编工作由计算机自动完成。生成的目标程序由PC机传到开发机上,经调试无误后,再固化到程序存储器 ROMK 机器汇编与手工汇编相比具有极 大的优势,是汇编工作的首选。本教材选用的伟福仿真软件就可进行机器汇编。伪指令不是单片机
9、执行的指令, 没有对应的机器码,仅是用来对汇编过程进行某种控制。常用的伪指令有:(1)定位伪指令ORG 格式: 标号: ORG l6 位地址功能:规定程序块或数据块存放的起始地址。如:ORG 8000HSTART: MOV A, #30H该语句规定第一条指令从地址8000H单元开始存放。标号 STAR硒值为8000H。通常,在一段汇编语言源程序的开始,都要设置一条OR砌指令来指定该程序在存储器中存放的起 始位置。若省略ORGB指令,则该程序段从 0000H单元开始存放。在一个源程序中,可以多 次使用OR砌指令,以规定不同程序段或数据段存放的起始地址,但要求16位地址值由小到大依序排列,不允许空
10、间重叠。(2) 汇编结束伪指令 END格式: 标号: END 表达式 功能:结束汇编。汇编程序遇到END伪指令后即结束汇编。处于EN3后的程序,汇编程序不予处理。(3) 字节数据定义伪指令 DB格式: 标号: DB 8 位字节数据表功能: 从标号指定的地址单元开始, 在程序存储器中定义字节数据。 字节数据表可以是一个或多个字节数据、 字符串或表达式。 该伪指令将字节数据表中的数据按从左到右的顺序依次 存放在指定的存储单元中。一个数据占一个存储单元。(4) 伟福 V3.2 版仿真软件使用 见后续实验讲义。二、实训程序ORG 0000H* AJMP BEGIN ; 转初始化程序段ORG 0003H
11、LJMP PINT0; 转外部中断0 的中断服务程序ORG 0100HBEGIN: SETB EA;初始化程序段SETB EX0SETB PX0SETB IT0MOV R0, #03HMOV A, #0A8H MOV R0, A MOV R1, #20H MOV R2, #31H MOV R0, #00H MOV A, R1 MOVX R0, A MOV R0, #03H MOV A, #01H MOVX R0, A CLR A MOVX R0, A *LOOP: SJMP $ORG 2000HPINT0: MOV R0, #00H;外部中断 0 的中断服务程序INC R1MOV A, R1
12、MOVX R0, A MOV R0, #02H MOV A, #01H MOVX R0, A CLR AMOVX R0, A* DJNZ R2, NEXT CLR EX0SJMP DONENEXT: SETB EX0 DONE: RETIEND三、实训将以上实训程序通过伟福 V3.2版仿真软件(或其它51系列单片机仿真软件) 输入到计 算机中,并以*.ASM 文件名保存,然后进行汇编。汇编成功后,通过伟福V3.2版仿真软件的“窗口(W)一数据窗口(D) 一CODE菜单观察程序存储器(ROM)中的内容,理解“地址”、“指令代码”的概念,并了解51系列单片机程序存储器(ROM)空间的分布特点。注:
13、本节实训不要求学生具体读懂上述程序的具体功能。具体步骤如下:伟福 V3.20 :翦件模拟器(9031) C:ttAVE3mVntitled(1)打开伟福V3.2版仿真软件,选择伟福软件模拟器。如图 1.1.2所示_|a|x|文件。编辑区)搜索 项目9 执柠豆 外设 窗丽).万真翳(0) 帮助其|PC: 0000M DFTR CIOOOH OOH |PSW: OOM |SP: OTH|执行时图 1.1.2(2)选择“文件(F) 一新建文件(N)”,输入实训程序。如图1.1.3所示图 1.1.3(3)程序输完后,选择“文件(F) 一另存为(A) ”,在弹出的对话框中输入带有.ASM后缀新文 件名。
14、按“保存”按钮后,程序就会以带有 .ASM后缀的文件形式存储 D或E磁盘上。(注意 此时程序中字符会根据伟福仿真软件的设置变色。)如图1.1.4所示图 1.1.4(4)选择“项目(P) 一编译(M)”对源程序进行汇编,如图 1.1.5所示。若无错,则会在模拟 的程序存储器中形成机器指令代码。图 1.1.5(5)选择“窗口(W)一数据窗口(D)-CODE,观察程序存储器(ROM)中的内容。如图1.1.6 所示图 1.1.6图1.1.7是在模拟的程序存储器中形成的机器指令代码。蓝字部分为地址,黑字部分为指令代码。拖动右侧的滚动条可观察整个程序存储器空间的内容。图 1.1.7(6)根据图1.1.7窗
15、口数据,填写下列表格。(在实验过程中注意*号指令的指令编码形成)指令编码起始地址指令编码指令助记符0000H21H,00HAJMP 0100H0003H02H,20H,00HLJPM 2000H1.2认识51系列单片机的片内随机存储器(片内 RAM)第一部分教学要求一、实验目的1、认识51系列单片机片内随机存储器(片内 RAM)的空间范围;2、认识51系列单片机片内随机存储器的区域划分;3、掌握字节地址和位地址的概念;4、了解R0R7寄存器与字节地址的关系。二、实训平台1、PC机,台/人;2、伟福V3.2版仿真软件或其它 51系列单片机仿真软件、实验报告内容项目形式成绩评定1字节地址和位地址的
16、概念描述书面2单片机片内随机存储器的空间使用情况观察填表3总成绩教师签名(注:成绩评定等级:优、良、中、及格、不及格)第二部分教学内容一、预备知识1. RAM存储器RAM (Random Access Memory)即随机访问存储器之意,RAM存储器是一种既可读又可写的易失性存储器,其特点是断电后所存储的信息将全部丢失,通常用来暂存运行 的程序和数据。但在单片机应用系统中RAM存储器仅被用来暂存运行的数据。2. 51系列单片机片内随机存储器的区域划分51系列单片机片内随机存储器根据型号的不同,其存储容量为128B或256B。典型芯片的容量为128B,被划分为工作寄存器区、位寻址区和通用 RAM
17、区等三个区域。如 图1.2.1所示。其中单片机片内 RAM中,最低的32个字节又被分成4个工作寄存器组,每组占 8个字节。即:寄存器0组:地址寄存器1组:地址寄存器2组:地址寄存器3组:地址 每个工作寄存器组都有00H 07H;08H 0FH;10H 一17H;18H 1FH。8个寄存器,分别称为:R0, R1 , , , R7。程序运行时,只能有一个工作寄存器组作为当前工作寄存器组。当前工作寄存器组的选择是由特殊功能寄存器中的程序状态字寄存器PSW的RSl、RS0两位决定的。可以对这两位进行编程,以选择不同的工作寄存器组。工作寄存器组与RSl、RS0的关系及地址如表 2 1所示。位地址 7F
18、H2FHTF TE TBrc 7B 7A 13 732EHH但丁574211ZXI 2DH6F 6E6D6C 6E &A 68 682CH666 656463 62 SI EU5F 5E 5C5D 5B 5A 59 5S2AH57 5f1555d 53 52 51 5。29H4F 4E 4D4C 4B 4k 49 482EH47 46 4544 43 42 41 4027H3F 3E 3D3C 3B 5k 39 妁瓯3T 36 3584 8S 32 31 3025H2F 2E 初2FH24H27 26 2524 23122 21 2023KIF IE 1DIC IB 1A H 1622H1 7
19、 16 1514 Hu hidOF QE CD0C 0B M 09 oe2QHor oe 0504 03 02 01 002 OH通用KAM区植地址区寄存劈鼻阻 寄存雅2组 寄存券1组 寄存静0组K7r恒豆Rf kT07H Q6K 05H 04H 03H 02H01H (JOH图1.2.1 51系列单片机片内 RAM区域划分表2 1 8051单片机工作寄存器地址表组号RS1RS0R0R1R2R3R4R5R6R700000H01H02H03H04H05H06H07H10108H09H0AH0BH0CH0DH0EH0FH21010H11H12H13H14H15H16H17H31118H19H1AH
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 熟悉 软件 开发 环境 51 单片机 编程 学生
链接地址:https://www.31doc.com/p-10671987.html