Keil创建一个汇编程序的步骤
1、 在C盘新建文件夹“实验一”,启动Keil 2、 建立一个新工程,单击Project菜单,在弹出的下拉菜单中选中New Project
选项,如图1-1所示。
图1-1
3、 然后选择你要保存的路径“C:/ 实验一”,输入工程文件的名字“实验一”,然
后点击保存。
4、 这时会弹出一个对话框,要求你选择单片机的型号,这里选择Atmel 89C51,如
图1-2所示,选择89C51之后,右边栏是对这个单片机的基本的说明,然后点击确定。完成后,屏幕如图1-3所示。
图1-2
_
图1-3
5、 在图1-3中,单击“File”菜单,再在下拉菜单中单击“New”选项。新建
文件后屏幕如图1-4所示。
图1-4
6、 此时光标在编辑窗口里闪烁,这时可以键入应用程序了,建议首先保存该空白
的文件,单击菜单上的“File”,在下拉菜单中选中“Save As”选项单击,屏幕如1-5图所示,在“文件名”栏右侧的编辑框中,键入欲使用的文件名如”Text 1.asm”,然后,单击“保存”按钮。
_
图1-5
7、 回到编辑界面后,单击“Target 1”前面的“+”号,然后在“Source Group
1”上单击右键,并单击“Add File to Group ‘Source Group 1’”选项,在出现的对话框1-6中选中“Text1.asm”,此时出现对话框如图1-7所示,在Type选择栏中选择第二项“Assembly Language File”,确定文件类型为汇编语言。
8、 然后得到如图1-8所示的操作界面,注意比对左侧编辑框项目是否和图1-8
一致,下面可以在右侧空白栏中编写汇编程序了。
图1-6
_
图1-7
图1-8
_
实验一 汇编语言实验
一、实验目的
1.利用单片机的P1 口作I/O 口,掌握P1 口同时作为输入和输出的用法。 2.掌握汇编语言程序编写方法。
二、实验设备(仪器)
PC 微机一台,Keil软件
三、实验内容
1.寻址方式实验。
2. 单片机I/O口实验。输入并完善实验例程,进行Keil仿真功能调试。
四、实验步骤
1.寻址方式实验。掌握汇编编写步骤、ORG指令定位的验证,调试状态下观察ROM代码16进制显示、RAM变化,写出程序运行结果。 ORG 0000H; LJMP MAIN
MAIN: MOV 50H,#0BEH
MOV 51H,#99H
MOV R1, #50H;通用寄存器验证 MOV A, @R1 INC R1 ADD A, @R1 INC R1 MOV @R1, A
_
CLR A ADDC A, #0 INC R1 MOV @R1, A END
2.依据电路图,对以下程序补充并进行调试,完成下述功能:P1.0-P1.6作为输出,控制7位LED。P1.7 口作为输入,当P1.7按下时,P1.0-P1.6输出低电平;当P1.7没有按下时,P1.0-P1.6输出高电平,给程序添加注释。
1K P1.0 P1.1 P1.2 MCU P1.3 P1.4 P1.5 P1.6 P1.7200
图2.1 电路原理图
ORG 0000H LJMP Main ORG 0100H
_
Main: SETB P1.7 ; ______________________
JB ___ , SETLED ;按键没有按下时,跳转到SETLED CLRLED: MOV R0,#0FFH DJNZ R0,$ ;按键去抖
JB P1.7,SETLED; ______________________ ANL
P1, ___; P1.0-P1.6输出低电平,点亮LED
SJMP Main SETLED:
MOV P1,______ ;令LED 熄灭,试用其它语句实现该功能
______ ________ ;跳转主程序 END
五、预习要求
1.例程分析补充。 2.完成预习报告。
六、实验报告要求
1.把程序和注释补充完整,并写出运行中的观察体会。
_
实验二 接口实验(开关量输出实验)
一、 实验目的
了解和掌握开关量输出通道的工作原理和方法。
二、 实验设备(仪器)
1.计算机 2.Keil软件
三、 实验内容
利用单片机产生PWM信号,其中占空比由外部拨码开关控制
四、 实验步骤
1.双击AT89C52将KEIL软件生成PWM.HEX加载。(也可自己编写软件,生成HEX文件) 2.运行程序,调整PWM信号占空比,观察运行结果。
五、 预习要求
预习测控通道内容,熟悉Proteus软件。
六、 实验报告要求
按上述要求完成全部实验内容并做相应记录。
电路图为:(软件参考教材P47)
_
参考程序:
_
ORG 000H
AJMP MAIN
MAIN: MOV
LOOP: JNB P1.6,POS
AJMP LOOP
MOV
DPTR,#TABLE1
MOV MOV
R7,#06H
R5,#0 A,R5
POS:
LOOP1: MOVC A,@A+DPTR
DELAY: MOV R3,#255 DEL1: MOV R4,#255
MOV
P2,A
ACALL DELAY INC R5 MOV DJNZ
A,R5 R7,LOOP1
AJMP MAIN
_
DEL2: NOP
DJNZ R4,DEL2 DJNZ R3,DEL1
TABLE1: DB 0F1H,0F3H,0F2H,0F6H,0F4H,0F5H
END
RET
_
实验三 A/D实验(四课时)
1. 实验目的
了解和掌握ADC0809工作原理及应用
2. 实验设备(仪器)
1.计算机 2.Proteus软件
3. 实验内容
学习单片机采用非复用接口方式采集ADC0809通道5的数据,通道5的数据由电位器提供
4. 实验步骤
1. 根据实验内容在Protues软件中选择合适电路芯片进行电路连接。 2. 完善程序,使用KEIL软件编写,生成HEX文件,然后双击AT89C52
将HEX文件加载。 3. 运行程序,观察运行结果。
5. 预习要求
熟悉Proteus软件,预习单片机及数码显示内容,。
6. 实验报告要求
按上述要求完成全部实验内容并做相应记录。
电路图为:
_
参考程序
MAIN:MOV R1,#data ;置数据区首地址 MOV DPTR,#7FF8H ;P2.7=0,且指向通道0 MOV R7,#08H ;置通道数 LOOP:MOVX @DPTR,A ;启动A/D转换 MOV R6,#0AH ;软件延时 DELAY:NOP
NOP NOP NOP NOP
DJNZ R6,DELAY
_
MOVX A,@DPTR ;读取转换结果 MOV @R1,A ;存储数据 INC DPTR ;指向下一个通道 INC R1 ;修改数据区指针 DJNZ R7,LOOP ;8个通道全采样完了没?
_
实验四 数据处理实验
一、 实验目的
了解和掌握测控系统中的人-机接口和通信接口的基本工作原理,理解在控制中接口电路软件与硬件的关系。
二、 实验设备
计算机
三、 实验内容
编程实现非线性校正,分析下面程序,查找错误,加以改正,并将其补充完整。
1).查表法公式:
z=Yi+(Yi+1—Yi)/ (Xi+1—Xi)*(X—Xi)≈Y
2).插值法—等距节点分段直线校正法:设采样结果在表DATATable中(8位),等分四段,a1i和a0i在KABTAB开始的单元中,单字节。a0i为整数,a1i为小于0的小数,校正结果存在R2,R3中,部分程序如下: LINE:
MOV A,R2 ;求段号 MOV B,A ;Xi暂存B ANL A,#11000000B ;求段号 SWAP A RR A RR A ADD A,A
_
MOV R7,A ADD A,#0EH
MOVC A,@A+PC ;取ai0 MOV R3,A MOV A,R7 ADD A,#0AH
MOVC A,@A+PC ;取ai1 MUL AB MOV A,B
ADD A,R3 ;a1i*Xi+a0i MOV R3,A CLR A ADDC A,#00H MOV R2,A RET
BKTAB:DB ;1,0.2,2,0.5,5,0.3,4,0.1 DATATable: DB ; 2,16,34,57,60,13
END
四、 实验步骤
1. 根据查表法、插值法编写程序实现非线性校正,并进行程序调试。 2. 根据限幅滤波、中位值滤波和低通滤波编写汇编程序实现数字滤波,并
进行程序调试。
_
五、 预习要求
按照实验内容和步骤的安排,详细写出预习报告。
六、 实验报告要求
按上述要求完成全部实验内容并做相应记录,包括所选择的非线性校正和滤波的方法,调试通过的程序要进行详细注释。
因篇幅问题不能全部显示,请点此查看更多更全内容