《单片微型计算机与接口技术》实验指导书.
《单片微型计算机与接口技术》操作指导书
一、单片机软硬件仿真工具的使用
一、利用Keil进行软件仿真
(1)建立工程文件:启动μVision软件,选择菜单【Project】/【New Project】选项,打开新建工程窗口,命名为“学号”(此处文件名不加后缀),单击【保存】按钮,在弹出的对话框中选择Atmel中的AT89C51芯片,单击【确定】按钮,在弹出的对话框中,选择“否”。
(2)建立源文件:选择菜单【File】/【New】选项,在工程窗口右侧打开一个文本编辑窗口。在该窗口内输入源程序并保存,命名为“学号.asm”(注意,文件名后面必须添加后缀)。
(3)添加源文件:在左侧工程窗口中,左键双击“Target1”,再右键单击下层的“Source Group 1”,选中【Add Files to Group“Source Group 1”】,在弹出的对话框中将文件类型改选为“*.a*”,找到第(2)步保存的asm文件,添加该文件。
(4)工程详细设置:先左键单击左侧工程窗口文件页中的“Target1”,然后选择菜单【Project】/【Options for Target “Target 1”】,打开工程属性对话框进行属性设置,在“Output”选项卡中选择“Create HEX File”。
(5)编译、连接:选择菜单【Project】/【Build target】,系统即对当前工程进行编译、连接。若源程序中有错误,在构造页里会有出错信息提示,若源程序正确,则会在文件夹中产生“学号.HEX”及其他相关文件,该HEX文件可用于Keil的仿真和调试。
(6)调试:选择菜单【Debug】/【Start/Stop Debug Session】,进入调试状态,分为单步运行与连续运行。单击可进行单步运行,箭头将按照指令的执行顺序依次下移,导航条深色部分表示已执行指令,灰色部分表示未执行指令。单击,CPU将连续运行到子程序结束,箭头返回到断点位置。单击,CPU将连续运行箭头与光标之间的程序段。在程序开始调试前,连续单击,将使CPU执行到子程序是自动连续运行。若调试结束,选择菜单【Debug】/【Start/Stop Debug Session】,退出调试状态。
二、利用Proteus进行硬件仿真
(1)绘制原理图:在Isis编辑窗口内添加AT89C51,LED,RESPACK-8元件,并绘制电路图,如下图所示
(2)装载“学号.HEX”文件:鼠标左键双击原理图中的AT89C51单片机芯片,在弹出的对话框中“Program File”栏内输入欲装载的“学号.HEX”文件的路径,然后单击【OK】按钮。
(3)仿真:成功装载“学号.HEX”文件后,即可利用Proteus仿真工具栏中的图标进行仿真。
三、使用程序(例)
MAIN:MOV A,
MOV P1,A
END
二、流水灯
一、实验目的
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)自己的流水方式。
六、灯从P1_0到P1_7做流水动作,实验程序及注释
1、程序流程图:
2、程序清单及注释:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:MOV A,#
LOOP:MOV P1,A;把累加器A的内容从P1口输出
LCALL DELAY;调用延时程序
RL A;把累加器A的内容循环左移
SJMP LOOP
DELAY:MOV R7,#50;延时1s子程序
DL1:MOV R6,#100
DL2:MOV R5,#100
DJNZ R5,$
DJNZ R6,DL2
DJNZ R7,DL1
RET
END
七、思考问题及需掌握要点
1、单片机对P1口的操作属于读还是写操作。
2、流水灯从P1_7到P1_0移动,程序修改方法。
三、独立按键识别
一、实验目