您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 《单片微型计算机与接口技术》实验指导书
-1-《单片微型计算机与接口技术》操作指导书一、单片机软硬件仿真工具的使用一、利用Keil进行软件仿真(1)建立工程文件:启动μVision软件,选择菜单【Project】/【NewProject】选项,打开新建工程窗口,命名为“学号”(此处文件名不加后缀),单击【保存】按钮,在弹出的对话框中选择Atmel中的AT89C51芯片,单击【确定】按钮,在弹出的对话框中,选择“否”。(2)建立源文件:选择菜单【File】/【New】选项,在工程窗口右侧打开一个文本编辑窗口。在该窗口内输入源程序并保存,命名为“学号.asm”(注意,文件名后面必须添加后缀)。(3)添加源文件:在左侧工程窗口中,左键双击“Target1”,再右键单击下层的“SourceGroup1”,选中【AddFilestoGroup“SourceGroup1”】,在弹出的对话框中将文件类型改选为“*.a*”,找到第(2)步保存的asm文件,添加该文件。(4)工程详细设置:先左键单击左侧工程窗口文件页中的“Target1”,然后选择菜单【Project】/【OptionsforTarget“Target1”】,打开工程属性对话框进行属性设置,在“Output”选项卡中选择“CreateHEXFile”。(5)编译、连接:选择菜单【Project】/【Buildtarget】,系统即对当前工程进行编译、连接。若源程序中有错误,在构造页里会有出错信息提示,若源程序正确,则会在文件夹中产生“学号.HEX”及其他相关文件,该HEX文件可用于Keil的仿真和调试。(6)调试:选择菜单【Debug】/【Start/StopDebugSession】,进入调试状态,分为单步运行与连续运行。单击可进行单步运行,箭头将按照指令的执行顺序依次下移,导航条深色部分表示已执行指令,灰色部分表示未执行指令。单击,CPU将连续运行到子程序结束,箭头返回到断点位置。单击,CPU将连续运行箭头与光标之间的程序段。在程序开始调试前,连续单击,将使CPU执行到子程序是自动连续运行。若调试结束,选择菜单【Debug】/【Start/StopDebugSession】,退出调试状态。二、利用Proteus进行硬件仿真(1)绘制原理图:在Isis编辑窗口内添加AT89C51,LED,RESPACK-8元件,并绘制电路图,如下图所示(2)装载“学号.HEX”文件:鼠标左键双击原理图中的AT89C51单片机芯片,在弹出的对话框中“ProgramFile”栏内输入欲装载的“学号.HEX”文件的路径,然后单击【OK】按钮。(3)仿真:成功装载“学号.HEX”文件后,即可利用Proteus仿真工具栏中的图标进行仿真。三、使用程序(例)MAIN:MOVA,#10101010BMOVP1,AEND-2-二、流水灯一、实验目的1、了解单片机顺序执行的工作特点。2、掌握单片机并行控制I/O口的基本方法。3、掌握汇编语言的编写,及对I/O口的基本操作方法。二、实验设备使用计算机一台、单片机实验箱一台、Proteus软件、Keil软件。三、实验基本原理硬件原理图:实验箱LED使用P1口进行控制,低电平有效。四、预习要求1、单片机延时程序的实现方式。2、单片机汇编语言左右移动语句、逻辑运算语句的使用。五、实验步骤1、打开Keil,新建工程:学号-1.uv2。2、参考实验程序,编写程序:让灯从P1_0到P1_7做流水动作,生成:学号-1.hex文件。3、把学号-1.hex文件烧写到单片机,观察流水灯的现象。4、修改程序让流水灯循环产生不少于三种显示方式:(1)P1口反向流动(2)中间向两边流动(3)自己的流水方式。-3-六、灯从P1_0到P1_7做流水动作,实验程序及注释1、程序流程图:2、程序清单及注释:ORG0000HLJMPMAINORG0030HMAIN:MOVA,#11111110BLOOP:MOVP1,A;把累加器A的内容从P1口输出LCALLDELAY;调用延时程序RLA;把累加器A的内容循环左移SJMPLOOPDELAY:MOVR7,#50;延时1s子程序DL1:MOVR6,#100DL2:MOVR5,#100DJNZR5,$DJNZR6,DL2DJNZR7,DL1RETEND七、思考问题及需掌握要点1、单片机对P1口的操作属于读还是写操作。2、流水灯从P1_7到P1_0移动,程序修改方法。-4-三、独立按键识别一、实验目的1、掌握单片机I/O口读写方法。2、掌握独立按键的连接方法及使用。3、掌握汇编语言的编写,及对I/O口的基本操作方法。二、实验设备使用计算机一台、单片机实验箱一台、Proteus软件、Keil软件。三、实验基本原理硬件原理图:电路采用PNP8550三极管驱动蜂鸣器,低电平有效。因为单片机开机初始化瞬间,其I/O口为高电平,会有误响动作。单片机的独立键盘使用的是P1口。当有键按下时,P1口相应位为低电平。四、预习要求1、查找资料说明产生按键抖动的原因。2、对按键、蜂鸣器的操作是读还是写操作?五、实验步骤1、打开Keil新建工程:学号-2.uv2。2、参考实验程序,编写程序:任意Key按下后让蜂鸣器响一声。生成:学号-2.hex文件。3、打开下载软件,把学号-2.hex文件烧写到单片机,观察蜂鸣器现象。4、修改程序将按键绑定在P1_1上,并每按一次按键让蜂鸣器响三声。-5-六、任意Key按下后蜂鸣器响一声,实验程序及注释1、程序流程图:2、程序清单及注释:ORG0000HLJMPMAINORG0030HMAIN:MOVP1,#0FFHTEXT1:MOVA,P1;读I/O口状态CJNEA,#0FFH,TEXT2;有键闭合?SJMPTEXT1TEXT2:LCALLD10ms;延时10-20ms消除抖动MOVA,P1;再读I/O口状态CJNEA,#0FFH,TEXT3;有键闭合?SJMPTEXT1TEXT3:MOVP2,#11101111B;让蜂鸣器响LCALLD1s;响声延时1-2sMOVP2,#11111111B;关闭蜂鸣器AJMPTEXT1D10ms:MOVR7,#50;延时10-20msD1:MOVR6,#100DJNZR6,$DJNZR7,D1RETD1s:MOVR0,#50;延时1-2sD2:MOVR1,#100D3:MOVR2,#100DJNZR2,$DJNZR1,D3DJNZR0,D2RETEND七、思考问题及需掌握要点1、单片机读写方式。2、按键防抖动技术。3、延时程序的使用方法。-6-四、静态显示技术一、实验目的1、掌握数码管与单片机的连接方法。2、掌握段代码表的推算及数据表的使用方法。3、掌握逻辑操作、控制转移指令的具体用法。4、为动态扫描显示做准备。二、实验设备使用计算机一台、单片机实验箱一台、Proteus软件、Keil软件。三、实验基本原理硬件原理图:采用共阴数码管,数码管的数据由单片机的P0口提供,单片机的P2口做位选通信号。当P0口输出相应的数据,并且P2口输出对应的低电平,相应的数码管就被点亮。如:P0=00111111B,P2=01111111B,则数码管最低位显示0。74LS573这里用于提高P0口的输出电流,驱动数码管显示,并有一定的隔离干扰的作用。本实验只用到8位数码管的其中一位。四、预习要求1、静态显示的工作原理。2、数码管内部结构、引脚定义及驱动方式。五、实验步骤1、打开Keil新建工程:学号-3.uv2。2、参考实验程序,编写程序:在数码管上最低位显示“1”。生成:学号-3.hex文件。3、打开下载软件,把学号-3.hex文件烧写到单片机,观察实验现象。4、修改程序,让数码管最低位由0~F显示。-7-六、实验程序及注释1、程序流程图:(1)数码管最低位显示“1”(2)数码管最低位由0~F显示2、程序清单及注释:(1)数码管最低位显示“1”ORG0000HLJMPMAINORG0030HMAIN:MOVP0,#0FFH;初始化MOVP2,#0FFHLOOP:MOVP0,#06H;送“1”的字形MOVP2,#7FH;送“1”的字位NOPSJMPLOOPEND(2)数码管最低位由0~F显示ORG0000HLJMPMAINORG1000HMAIN:MOVP0,#0FFH;初始化MOVP2,#0FFHSTART:MOVR0,#00HMOVDPTR,#TABLOOP:_________________________________________________________;送字形___________________;送字位___________________;延时_______________________________________;0~F是否显示完?AJMPSTARTDELAY:MOVR7,#50;延时1-2sD2:MOVR6,#100D3:MOVR5,#100DJNZR5,$DJNZR6,D3DJNZR7,D2RETTAB:DB___________________________END七、思考问题及需掌握要点1、掌握数码管的使用方法,为动态显示做准备。2、思考静态显示和流水灯的相同之处。-8-五、动态显示技术一、实验目的1、掌握动态显示技术。2、掌握数码管与单片机的连接方法。3、掌握段代码表的推算及数据表的使用方法。4、掌握逻辑操作、控制转移指令的具体用法。二、实验设备使用计算机一台、单片机实验箱一台、Proteus软件、Keil软件。三、实验基本原理硬件原理图:采用共阴数码管,数码管的数据由单片机的P0口提供,单片机的P2口做位选通信号。当P0口输出相应的数据,并且P2口输出对应的低电平,相应的数码管就被点亮。如:P0=00111111B,P2=01111111B,则数码管最低位显示0。74LS573这里用于提高P0口的输出电流,驱动数码管显示,并有一定的隔离干扰的作用。四、预习要求1、思考动态显示的工作原理。2、各寄存器的使用。五、实验步骤1、打开Keil新建工程:学号-4.uv2。2、参考实验程序,编写程序:首先在数码管最高位连续显示0~9字段,其次在数码管次高位连续显示0~9字段,依此类推。生成:学号-4.hex文件。3、打开下载软件,把学号-4.hex文件烧写到单片机,观察实验现象。4、修改程序,将自己的学号显示在数码管上。-9-六、实验程序及注释1、程序流程图:2、程序清单及注释:ORG0000HLJMPMAINORG0030HMAIN:MOVP0,#0FFH;初始化MOVP2,#0FFHMOVR0,#0FEH;设置数码管最高位显示START:MOVDPTR,#TAB;送数据表地址MOVR1,#00H;送数据表第一位数字序号LOOP:MOVA,R1MOVCA,@A+DPTRMOVP0,A;送字形MOVP2,R0;送字位LCALLDELAY;延时INCR1CJNER1,#10,LOOP;0~9是否显示完?MOVA,R0RLA;数码管显示位移动MOVR0,AAJMPSTARTDELAY:MOVR7,#50;延时1-2sD2:MOVR6,#100D3:MOVR5,#100DJNZR5,$DJNZR6,D3DJNZR7,D2RETTAB:DB3FH,06H,5BH,4FH,66HDB6DH,7DH,07H,7FH,6FHEND七、思考问题及需掌握要点1、数据表的调用方法。2、数码管的使用方法。-10-六、定时器运用一、实验目的1、掌握定时/计数器中断服务程序的编写方法。2、掌握定时器初值及定时器的计算。3、掌握单片机中断系统优先级别IP的设定。二、实验设备使用计算机一台、单片机实验箱一台、Proteus软件、Keil软件。三、实验基本原理硬件原理图:四、预习要求1、定时器中断服务程序的编程方法。2、定时器的开启方法。五、实验步骤1、打开Keil新建工程:学号-5.uv2。2、参考实验程序,编写程序:开启定时器0产生一个1S的脉冲信号,并让P1_1每秒取反一次。生成:学号-5.hex文件。3、打开下载软件,把学号-5.hex文件
本文标题:《单片微型计算机与接口技术》实验指导书
链接地址:https://www.777doc.com/doc-2841212 .html