ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:890.54KB ,
资源ID:23209152      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23209152.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机原理与接口技术实验指导书内容.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机原理与接口技术实验指导书内容.docx

1、单片机原理与接口技术实验指导书内容目录1. 序 言 12. Keil简介及安装 32.1 Keil简介 32.2 Keil安装 33. Keil的使用 53.1 Vision2集成开发工具 53.2 创建Keil应用程序的一般步骤 51、一个工程项目文件; 52、选择目标器件(例如选择ATMEL公司的AT89C51) 53、为工程项目设置软硬件调试环境; 54、创建源程序文件并输入程序代码; 65、保存创建的源程序项目文件 66、把源程序文件添加到项目中。 64、实验一:KEIL 51集成开发环境的仿真与调试 75、实验二:单片机I/O口控制实验 156、实验三:中断实验 177、实验四:串行

2、通信实验 188、实验五:LED静态显示实验 199、实验六:并行D/A转换实验 20 1. 序 言单片机以其高可靠性、高性价比、低电压、低功耗等一系列优点,近几年得到迅猛发展和大范围推广,并且已经深入到工业生产的各个环节以及人民生活的各层次中,广泛应用于工业控制系统,数据采集系统、智能化仪器仪表,及通讯设备、日常消费类产品、玩具等,无不含有CPU控制器,即单片机。MCS-51的开发环境要求较低,软件资源十分丰富,介绍其功能特性书籍和开发软件随处可取,只需配备一台PC(对电脑的配置基本上无要求),一台仿真编程器即可实现产品开发。早期的开发软件多使用DOS版本,随着Windows视窗软件的普及,

3、现在几乎都使用Windows版本,并且软件种类繁多,琳琅满目。在众多的单片机开发软件中,KEIL软件的环境资源是最丰富的,这给用户带来极大的便利,并且也有大量的工程师在使用该软件。为着眼于培养单片机人才、单片机工程师,我们在总结近年来教师的教学经验和近几届学生的学习效果的基础上,结合KEIL软件的使用方法,编写了针对培养学习者应用能力的单片机原理与接口技术实验指导书,以配合单片机课程教学的需要,并通过实验来带动学生学习能力和兴趣的提高。众所周知,单片机是一门实践性很强的学科,即便考试得了100分,如果没有大量的实战训练,终究可能还是个“门外汉”,没有办法登堂入室成为一名真正的单片机应用开发工程

4、师,这是成千上万开发人员多年来积累的经验教训。在学习的过程中,千万不能偷懒,要一行一行地、老老实实得将程序敲进去,只有这样才有可能慢慢地、细心地体会程序设计的思想。纵然万事开头难,但是切记:良好的开端等于成功的一半!所以不要在学习方法上失败,要认真迈好第一步。2. Keil简介及安装2.1 Keil简介 Keil C51 Vision2集成开发环境是Keil Software, Inc/Keil Elektronik GmbH开发的基于80C51内核的微处理器软件开发平台,内嵌多种符合当前工业标准的开发工具,可以完成从工程建立到管理、编译、连接、目标代码的生成、软件仿真、硬件仿真等完整的开发流

5、程。尤其C编译工具在产生代码的准确性和效率方面达到了较高的水平,而且可以附加灵活的控制选项,在开发大型项目时非常理想。Keil C51集成开发环境的主要功能有以下儿点: Vision2 for Windows:是一个集成开发环境,它将项目管理、源代码编辑和程序调试等组合在一个功能强大的环境中; C51国际标准化C交叉编译器:从C源代码产生可重定位的目标模块; A51宏汇编器:从80C51汇编源代码产生可供定位的目标模块; BL51连接/定位器:组合由C51和A51产生的可重定位的目标模块,生成绝对目标模块; LIB51库管理器:从目标模块生成链接器可以使用的库文件; OH51目标文件至HEX格

6、式的转换器:从绝对目标模块生成Intel HEX文件; RTX - 51实时操作系统:简化了复杂的实时应用软件项目的设计。这个工具套件是为专业软件开发人员设计的,但任何层次的编程人员都可以使用,并获得80C51微控制器的绝大部分应用。用户可以在Keil uVision2环境下学习编写、调试单片机程序,通过学习,用户可以掌握运用单片机进行项目开发的过程、步骤和方法,积累一定的调试方法、技巧。2.2 Keil安装在up51v720setup目录下,双击setup.exe图标,开始进行KEIL 的安装。这时会出现如图2.1所示的安装初始化界面,随后出现安装询问对话框,提示用户是安装完全版还是评估版,

7、此处我们选择Full Version,如图2.2所示。图2.1 安装初始化界面图2.2 安装询问对话框在此后弹出几个确认对话框中单击Next按钮,直到要输入相应的序列号,如图2.3所示。请参考up51v720文件夹内的安装说明.TXT内的序列号进行安装,并在Last Name处填写自己的名字,接着按Next按钮进入下一步,就出现了如图2.4所示的安装进度指示画面。图2.3 安装序列号对话框图2.4 安装进度指示画面接下来就是等待安装,安装完毕后单击Finish按钮加以确认,此时就可以在桌面上看到Keil Vision2软件的快捷图标,如图2.5所示,双击它就可以进入Keil Vision2集成

8、开发环境。图2.5 Vision2的快捷图标3. Keil的使用3.1 Vision2集成开发工具 Vision2支持所有的Keil 80C51的工具软件,包括C51编译器、宏汇编器、链接器/定位器和目标文件至Hex格式转换器,Vision2可以自动完成编译、汇编、链接程序等操作。 (1) C51编译器和A51汇编器 由Vision2 IDE创建的源文件,可以被C51编译器或A51汇编器处理,生成可重定位的object文件。Keil C51编译器遵照ANSI C语言标准,支持C语言的所有标准特性。另外,还增加了几个可以直接支持80C51结构的特性。Keil A51宏汇编器支持80C51及其派生

9、系列的所有指令集。 (2) LIB51库管理器 LIB51库管理器可以从由汇编器和编译器创建的目标文件建立目标库。这些库是按规定格式排列的目标模块,可在以后被链接器所使用。当链接器处理一个库时,仅仅使用了库中程序使用了的目标模块而不是全部加以引用。 (3) BL51链接器/定位器 BL51链接器使用从库中提取出来的目标模块和由编译器、汇编器生成的目标模块,创建一个绝对地址目标模块。绝对地址目标文件或模块包括不可重定位的代码和数据。所有的代码和数据都被固定在具体的存储器单元中。 (4) Vision2软件调试器 Vision2软件调试器能十分理想地进行快速、可靠的程序调试。调试器包括一个高速模拟

10、器,您可以使用它模拟整个80C51系统,包括片上外围器件和外部硬件。当您从器件数据库选择器件时,这个器件的属性会被自动配置。 (5) Vision2硬件调试器 Vision2调试器向您提供了几种在实际目标硬件上测试程序的方法。安装MON51目标监控器到目标系统,并通过Monitor-51接口下载程序;使用高级GDI接日,将Vision2调试器同类似于D P-51 PRO单片机综合仿真实验仪或者TKS系列仿真器的硬件系统相连接,通过Vision2的人机交互环境指挥连接的硬件完成仿真操作。 (6) RTX51实时操作系统 RTX51实时操作系统是针对80C51微控制器系列的一个多任务内核。RTX5

11、1实时内核简化了需要对实时事件进行反应的复杂应用的系统设计、编程和调试。这个内核完全集成在C51编译器中,使用非常简单。任务描述表和操作系统的一致性由BL51链接器/定位器自动进行控制。 此外Vision2还具有极其强大的软件环境、友好的操作界面和简单快捷的操作方法,其主要表现在以下几点: 丰富的菜单栏; 可以快速选择命令按钮的工具栏; 一些源代码文件窗口; 对话框窗口; 直观明了的信息显示窗口。3.2 创建Keil应用程序的一般步骤在Keil集成开发环境下使用工程的方法来管理文件,而不是单一文件的模式,所有的文件包括源程序(包括C程序、汇编程序)、头文件等都可以放在工程项目文件里统一管理。对

12、于刚刚使用Keil的用户,一般可以按照下面的步骤来创建一个自己的应用程序,即:1、一个工程项目文件;2、选择目标器件(例如选择ATMEL公司的AT89C51)3、为工程项目设置软硬件调试环境;4、创建源程序文件并输入程序代码;5、保存创建的源程序项目文件6、把源程序文件添加到项目中。具体的过程我们将通过实验一来详细说明如何建立一个应用程序并进行仿真调试。4、实验一:KEIL 51集成开发环境的仿真与调试一、实验目的和要求:1、熟悉KEIL 51集成开发环境的使用方法2、熟练掌握KEIL 51集成开发环境的工程建立、编辑与编译功能。3、通过编写简单单片机程序学习仿真调试功能。二、实验内容:1、建

13、立一个新的工程2、编写一个新的ASM汇编语言程序3、调试并仿真三、实验步骤1、建立一个项目双击桌面快捷图标即可进入如图4.1所示的集成开发环境编辑操作界面,主要包括三个窗口:工程项目窗口、编辑窗口和输出窗口。图4.1 Vision2编辑操作界面单击 Project 菜单,在弹出的下拉菜单中选中 New Project 选项,新建一个项目,如图4.2所示。图4.2 Project界面然后选择你要保存的路径,输入工程文件的名字(比如保存到uv目录里,工程文件的名字为shiyan1),如下图4.3所示,然后点击保存。图4.3 Project保存设置界面这时会弹出一个对话框,要求你选择单片机的型号。可

14、以根据你使用的单片机来选择,keil几乎支持所有的51核的单片机,这里以Atmel的89C51来说明,如下图4.4所示。首先选择Atmel公司,然后点击左边的+号选择AT89C51之后,右边栏是对这个单片机的基本的说明,然后点击确定,在随后弹出的对话框选择“否”。图4.4 器件选择完成以上步骤后,屏幕如下图4.5所示。图4.5 初始化编辑界面首先进行选项设置,将鼠标指向“Target 1”并单击右键, 再从弹出的右键菜单中单击“Options for Target”选项,如图4.6所示。图4.6 “Options for Target”选项从弹出的“Options”窗口中选择“Output”标

15、签栏,并如图4.7所示设置其中各项:图4.7 “Output”标签栏 首先选择“Select Folder for Objects”按钮,为后面生成*.hex文件选择一个存放目录,然后在后面的空格里面为将要生成的hex文件命名一个文件名,再将下面的“Create HEX File”前的选项前打:“”,最后确认即可。此处的存放目录和文件名要记清,后面将要用到该hex文件并要将其烧录到单片机内部。2、建立一个新的ASM汇编语言程序并编译到现在为止,我们还没有编写一句程序,下面开始编写我们的第一个程序。(1)在菜单栏中,单击“File”菜单,再在下拉菜单中单击“New”选项,或者直接点击工具栏的快捷

16、图标来建立一个新的编辑窗口,此时光标在编辑窗口里闪烁,这时可以键入用户的应用程序了。此处建议首先保存该空白的文件,单击菜单上的“File”,在下拉菜单中选中“Save As”选项单击,屏幕如下图所示,在“文件名”栏右侧的编辑框中,键入欲使用的文件名,同时,必须键入正确的扩展名,如此处键入Text1.asm, 然后,单击“保存”按钮,如图4.8所示。注意:如果用语言编写程序,则扩展名为(.c);如果用汇编语言编写程序,则扩展名为(.asm) ,且必须添加扩展文件名。图4.8 保存源程序(2)回到编辑界面后,单击“Target 1”前面的“”号,然后在“Source Group 1”上单击右键,弹

17、出如下图4.9所示菜单。图4.9 弹出菜单栏然后单击“Add Files to Group Source Group 1” 屏幕如下图4.10所示,在文件类型处默认为C Source file(*.c),因为前面我们保存的是汇编语言的文件,故需要下拉选择Asm Source file(*.s*;*.src;*.a*),这样在上面就可以看到刚才保存的汇编语言文件Text1.asm,双击该文件则自动添加至项目,点击Close关闭对话框。图4.10 添加文件对话框对比图4.11和图4.9,可以看出二者的不同点:在添加了汇编语言文件后,在Source Group 1 文件夹左出现了一个+号(图4.11

18、左图),点击+号展开就看到了刚才添加的Text1.asm文件(图4.11右图)。 图4.11 添加文件前后工程栏的变化(3)然后就可以在右侧的编辑区进行汇编源程序的输入了。在输入指令时,读者可以看到事先保存待编辑文件的好处:Keil会自动识别关键字,并以不同的颜色提示用户加以注意,这样会使用户少犯错误,有利于提高编程效率。程序输入完毕后别忘了再次保存,最后如下图4.12所示。图4.12 程序输入完毕后状态(4)程序文件编辑完毕后,单击“Project”菜单,再在菜单中单击“Built Target”选项(或者使用快捷键 F7),或者点击工具栏的快捷图标来进行编译,如图4.13所示。图4.13

19、编译菜单(5)如果有错误,则在最后的输出窗口会出现所有错误所在的位置和错误的原因,并有“Target not created”的提示。通过双击该处的错误提示,则在上面的编辑区错误指令处左面就有蓝色箭头提示,然后对当前的错误指令进行修改,如图4.14所示。图4.14 错误提示(6)将所有提示过的错误进行修改,然后再次重复(4)的操作进行编译,直至出现“shiyan1 - 0 Error(s), 0 Warning(s)”,说明编译完全通过,如图4.15所示。图4.15 编译通过提示3、调试并仿真编译成功后,就可以进行调试并仿真了。单击“Project”菜单,在下拉菜单中单击“Start/Stop

20、 Debug Session”(或者使用快捷键 Ctrl+F5),或者点击工具栏的快捷图标就可以进入调试界面,如下图4.16所示图4.16 调试界面左面的工程项目窗口给出了常用的寄存器R0-R7以及a、b、sp、dptr、pc、psw等特殊功能寄存器的值。在执行程序的过程中可以看到,这些值会随着程序的执行发生相应的变化。在存储器窗口的地址栏处输入C:0000H后回车,可以观看所有单片机片内程序存储器的内容,如下图4.17所示。如果没有出现存储器窗口,则可以通过菜单栏ViewMemory Window将存储器窗口调出查看。下图4.17用横线画出来的部分就是已经编辑的源程序转化成的机器语言的十六进

21、制数(或者说是对应的机器码)。如果在存储器窗口的地址栏处输入D:00H后回车,则可以观看所有单片机片内数据存储器的内容,如图4.18所示。图4.17 程序存储器窗口图4.18 数据存储器窗口在联机调试状态下可以启动程序全速运行、单步运行、设置断点等,单击“Debug菜单/Go”选项,启动用户程序全速运行。 下面介绍几种常用的调试命令及方法。(1)复位CPU用Debug菜单或工具栏的Reset CPU命令可以复位CPU。在不改变程序的情况下,若想使程序重新开始运行,执行此命令即可。执行此命令后程序指针返回到0000H地址单元。另外,一些内部特殊功能寄存器在复位期间也将重新赋值。例如,A将变为00

22、H,DPTR变为0000H,SP变为07H,I/O口变为0FFH。(2)全速运行(F5) 用Debug工具栏的Go快捷命令Run命令按钮即可实现全速运行程序。当然若程序中已经设置断点,程序将执行到断点处,并等待调试指令;若程序中没有设置任何断点,在Vision2处于全速运行期间, Vision2不允许任何资源的查看,也不接受其他命令。(3)单步跟踪(F11)用Debug工具栏的Step或快捷命令StepInto命令按钮可以单步跟踪程序。每执行一次此命令,程序将运行一条指令(以指令为基本执行单元)。当前的指令用黄色箭头标出,每执行一步箭头都会移动,已执行过的语言呈绿色。在汇编语言调试下,可以跟踪

23、到每一个汇编指令的执行。Vision2处于全速运行期间, Vision2不允许任何资源的查看,也不接受其他命令。(4)单步运行(F10)用Debug工具栏的Step Over或快捷命令Step Over按钮,即可实现单步运行程序,此时单步运行命令将把函数和函数调用当作一个实体来看待,因此单步运行是以语句(该语句不管是单一命令行还是函数调用)为基本执行单元。(5)执行返回(Ctrl+F11) 在用单步跟踪命令跟踪到子函数或子程序内部时,可以使用Debug菜单栏中的Step Out of Current Function 或快捷命令按钮Step Out,即可实现程序的PC指针返回到调用此子程序或函

24、数的下一条语句。(6)停止调试(Ctrl+F5)由于Led_Light程序使用了系统资源P1口,为了更好地观察这些资源的变化,用户可以打开它们的观察窗口。选择PeripheralsI/O-PortsPort1命令,即可打开并行I/O口P1的观察窗口。4、参考程序 参考教材P84页第6题,在KEIL下进行仿真调试,并在存储器区窗口观察程序执行后的结果。5、实验二:单片机I/O口控制实验一、实验目的和要求:1、掌握单片机I/O口的工作原理2、利用单片机I/O口进行数据输出3、掌握子程序调用指令的使用方法4、掌握DELAY延时子程序的编程和使用方法二、实验内容:1、要求利用P1口做输出口,接八只发光

25、二极管。编写程序,使发光二极管循环点亮,或者产生有一定规律的花样。2、编写程序,调试运行,观察运行结果。三、实验步骤 1、编写程序利用实验一的过程进行程序的编写、编译操作,然后进行调试。注意子程序的编写方法和子程序调用的方法。2、仿真调试在本次实验中由于要用到P1口,所以要将P1口调出来,方法是:菜单栏PeripheralsI/O-PortsPort 1,如下图5.1所示。图5.1 P1口调用 则弹出P1口如下图5.2所示。从高到低依次为.P1.7-P1.0,高电平用表示,低电平则不显示。图5.2 P1口全速运行程序,可以通过观察P1口的状态观察程序的运行结果,直至程序能正确运行。3、程序烧录

26、将单片机实验箱和电脑用串口电缆连接起来,然后打开实验箱的电源开关。将实验箱左上角的“MON51仿真器”A1区的MOD_SW1开关拨到LOAD模式,即在下载模式下。参看实验一的图4.7的操作,假定生成的HEX文件保存在D:SHIYAN下,文件名为SHIYAN1.HEX打开程序DPFlash ICDDPFlash,界面如图5.3所示。点击左上角的打开文件夹图标,找到前面已经生成的SHIYAN1.HEX,点击打开,如图5.3所示。再点击左下角的编程按钮,弹出如图5.4所示的编程对话框,再次按编程按钮对单片机芯片进行编程。图5.3 DPFlash操作界面图5.4 编程窗口4、连线并观察结果用导线把A2

27、区的J61接口与D1区的J52接口相连接。将实验箱左上角的“MON51仿真器”A1区的MOD_SW1开关拨到RUN模式,即在运行模式下,即可观察到结果。6、实验三:中断实验一、实验目的和要求:1、掌握中断系统的工作原理2、掌握中断控制寄存器的编程使用方法3、掌握中断入口地址的使用方法4、熟练掌握单片机的外部中断二、实验内容:利用单片机的P1.0P1.7做输出口接八只发光二极管,用P3.2外部中断来模拟故障信号。编写程序,使发光二极管循环点亮模拟正常控制,利用外部中断模拟有故障,并且在故障时使P1.0-P1.7全部点亮。三、实验步骤 1、编写程序利用实验一的过程进行程序的编写、编译操作,然后进行

28、调试。注意中断程序的编写方法和中断子程序调用、返回的方法。2、仿真调试在本次实验中由于要用到P1口和P3口,所以要将P1口和P3口都调出来,方法同上一次实验一样,然后通过将P3.2变低来模拟故障,再观察P1口的状态来验证程序的运行结果。3、程序烧录按照实验一的方法进行程序的下载、烧录。4、连线并观察结果用导线把A2区的J61接口与D1区的J52接口相连接,将A2区J58接口的INT0引脚与D1区的J54接口的SW1相连接。将实验箱左上角的“MON51仿真器”A1区的MOD_SW1开关拨到RUN模式,即在运行模式下,通过将开关SW1打开或者断开即可控制LED灯的亮灭,从而观察到结果。7、实验四:

29、串行通信实验一、实验目的和要求:1、熟练掌握串行口的工作原理2、掌握单片机串行口的工作方法和串行口控制寄存器的编程使用方法3、掌握串行口中断的使用方法4、掌握MAX232芯片的使用方法二、实验内容:编写一段程序,利用PC机和单片机的串行口相连接进行双工异步通信,采用方式1,波特率为9600bps。利用PC机向单片机发送数据,单片机在接收到该数据后将数据保存并返回给PC机。编写程序,调试运行,数据收发正确。三、实验步骤: 1、编写程序利用实验一的过程进行程序的编写、编译操作,然后进行调试。注意串行发送和接收程序的编写方法和中断子程序调用、返回的方法。注意波特率的设定,注意在中断服务程序中将TI和

30、RI清零。2、程序烧录按照实验一的方法进行程序的下载、烧录。3、观察结果该程序不需要连线,但是需要串口调试软件。在图5.3所示的界面菜单栏点击“串口调试器”,出现如图7.1所示的串口调试窗口。特别注意要将串口进行设置,即窗口左下角部分,尤其是波特率和数据位数的设定。在发送时选择HEX发送,接收时选择十六进制显示。然后可以在“处理字符串”框里输入字符,并点击“发送”按钮,则可以在接收窗口观察到接收的数据。编写程序要使发送和接收数据保持同一个数据。8、实验五:LED静态显示实验一、实验目的和要求1、掌握LED显示器件的编程使用方法2、掌握查表指令的使用方法3、掌握1秒定时的计算和编程方法4、熟练掌

31、握定时器的工作原理二、实验内容利用单片机的P1口做输出口和一位8段数码LED数码管相连接,利用定时器0或定时器1产生1S定时中断,采用软件查表的方式来实现一个能进行0-9显示的个位秒表显示。三、实验步骤: 1、编写程序利用实验一的过程进行程序的编写、编译操作,然后进行调试。注意定时器定时时间的确定,初值的计算,主程序的初始化设置,定时器工作方式的确定,中断服务子程序的内容以及中断调用、返回的方法,显示部分采用软件查表方式。2、仿真调试在本次实验中由于要用到定时器和P1口,所以要将定时器和P1口都调出来。前面已经介绍了P1口的调用方法,这里再介绍一下定时器的调用。方法是:菜单栏PeripheralsTimerTimer0,如下图7.1所示。图7.1 定时器的调用则弹出定时器窗口如下图7.2所示。图7.2 定时器0窗口通过观察P1口和定时器0窗口的状态来验证程序的运行结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1