实验一Keil的熟悉与掌握实验
Keil公司是一家业界领先的微控制器(MCU)软件开发工具的独立供应商。Keil公司由两家私人公司联合运营,分别是德国慕尼黑的Keil Elektronik GmbH和美国德克萨斯的Keil Software Inc。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。
一、实验目的
本次实验的目的是掌握Keil uVision单片机用程序编写与调试软件。
二、实验要求
采用MCS-51汇编语言配合简单程序实现跑马灯内容以达到对Keil软件的掌握。实验前要认真阅读本次实验的内容,按照题目要求设计程序。然后上机调试,达到进一步掌握MCS-51汇编语言程序设计的基本方法。
三、实验步骤
3.1 Keil 新建工程步骤:
1、点击在WINDOWS环境下的Keil图标,进入编程环境。
2、在菜单项Project下点击New Project…创建自己的工程文件。(以*.uv4为后缀)3、在弹出窗口中选择要仿真的芯片。先选厂商(例如Atmel),再选型号(例如89C51)。可以看到该芯片的一些基本信息,如制造工艺,I/O口的数量,定时器数目,中断源数目,ROM大小及类型、RAM的大小等。
4、点击菜单项File下的New…建立新的源文件,并以“.asm”为后缀存盘。
5、在屏幕的左侧中部窗口中的Source Group1项目上右击鼠标,在弹出的窗口中选择Add Files to…项,为新建立的工程文件添加源文件。
6、双击源文件即可编辑它(注:*.asm是汇编格式文件;*.c是C语言格式文件)。
7、在新建的文件下编辑源程序。
8、在完成程序编写之后,需要调出输出菜单选择输出文件格式,具体步骤如下,点击“目标一”前的小图标,在弹出的“为目标‘目标一’设置”选项中选择输出,然后点选“产生HEX文件”前打钩,通过该设置,在编译程序之后再对应文件夹中生成一个.HEX文件,该文件是proteus和单片机开发板必需要的文件。
3.2 Keil 相关资源查看
Keil 是一款功能强大的编程环境,可以模拟运行,在运行时查看相应的寄存器内容的变化,可以查看定时器的定时时间,计数器计数值,及其它量的变化。在程序调试过程中十分方便,特别是在解析部分程序出现困难时,通过监控相关寄存器等,可以很直观的看到相关变化从而判断程序功能。
在程序编写完成后,进入调试,点击“调试”下的启动/停止调试,进入调试模式,此时在左端项目工作区即可查看对应的寄存器的值的而变化。调试时也可以选择设置断点,步进运行等方式,通过设置不同的运行模式达到更好的调试效果。也可以在外围设备中查看相关的I/O口和定时器等。
四、实验结果(报告)
1、实验流程图;
2、实验程序;
3、结果分析;
4、心得体会。
实验二多彩跑马灯实验
一、实验内容
本次试验的目的是利用HC6800单片机开发套件配合Keil软件构建多彩跑马灯。
二、实验要求
通过对跑马灯程序的编制、下载与运行状况分析,初步了解并掌握STC单片机应用系统开发的基本流程。
三、实验步骤
1、设计相关电路原理图并在开发套件上利用杜邦线完成硬件电路搭线;
2、编制相应程序(主程序及各种所需的子程序)并汇编产生.HEX可执行文件;
3、利用STC_ISP软件实现单片机程序的下载;
4、观察开发板跑马灯的运行,检验硬件电路、软件程序的正确性与可靠性。
四、实验结果(报告)
1、电路原理图;
2、程序流程图;
3、软件程序;
4、调试与结果分析;
5、心得体会。
实验三无符号双字节乘法实验
一、实验内容
本次试验的目的是实现无符号双字节乘法。对于两字节的乘法运算,其乘法结果必须保留四字节!
二、实验要求
1、子程序方式编程实现。
2、主程序中给定验证数据,从输出结果中查验结果。
三、实验步骤
1、设定入口地址与出口地址,绘制程序流程图;
2、根据流程图编制相应程序;
3、主程序中给定运算数据;
4、在RAM区域中查看运算结果。
四、实验结果(报告)
1、程序流程图;
2、实验程序;
3、结果分析;
ORG 0000H
LJMP MAIN
ORG 0040H
BMUL:MOV A,R3
MOV B,R5
MUL AB
ACALL RADD
MOV A,R3
MOV B ,R4
MUL AB
INC R0
ACALL RADD
MOV A,R2
MOV B,R5
MUL AB
INC R0
INC R0
ACALL RADD
MOV A,R2
MOV B ,R4
MUL AB
INC R0
ACALL RADD
INC R0
RET
RADD:ADD A,@R0
MOV @R0,A
MOV A,B
DEC R0
ADDC A,@R0
MOV @R0,A
DEC R0
MOV A,@R0
MOV A,#00H
MOV @R0,A
RET
MAIN: MOV R2,#12H ;被乘数
MOV R3,#1AH
MOV R4,#12H ;乘数
MOV R5,#2BH
MOV R0,#33H ;乘积低字节单元地址33h
MOV R7,#04H
DEC R0 ;调整指针
DEC R0
DEC R0
DEC R0
LOOP:MOV @R0,#00H
INC R0
DJNZ R7,LOOP
NOP ;此时R0指向积的低字节
ACALL BMUL
SJMP $
END
实验四码制转换实验
一、实验内容
本次试验的目的是编程实现各种码制之间的转换。由于在通信、显示上对码制的要求各不相同,在实际应用之前必须对数据的码制进行转换,转换成相应的码制才能使用,否则就会出错。本次试验就是编写程序实现16进制和ASCII码、非压缩性BCD码之间的转换。
二、实验要求
1、 HEX2ASCII(16进制转ASCII码)
入口地址:R0
出口地址:R1(高4位转换结果); R2(低4位转换结果)
2、 HEX2BCD(16进制转非压缩性BCD码)
入口地址:R0
出口地址:R3(BCD码百位);R4(BCD码十位);R5(BCD码个位)
三、实验步骤
1、设定结果存放地址,绘制程序流程;
2、编制相应子程序;
3、主程序给任意数据验证结果。
四、实验结果(报告)
1、程序流程图;
2、实验程序;
3、结果分析;
实验五矩阵键盘数码管显示实验
一、实验内容
本次试验的目的是利用HC6800单片机开发套件配合Keil软件搭建矩阵键盘的数码管显示。
二、实验要求
通过对设置在开发板上的矩阵键盘的操作,实时的将按键信息显示在静态数码管(共阳极数码管)中。
三、实验步骤
1、设计相关电路原理图并在开发套件上利用杜邦线完成硬件电路搭线;
2、编制相应程序(主程序及各种所需的子程序)并汇编产生.HEX可执行文件;
3、利用STC_ISP软件实现单片机程序的下载;
4、观察对矩阵键盘的操作观察开发板数码管的显示是否正常,检验硬件电路、软件程序的正确性与可靠性。
四、实验结果(报告)
1、电路原理图;
2、程序流程图;
3、软件程序;
4、调试与结果分析;
5、心得体会。
实验六串口通信实验
一、实验内容
本次试验的目的是利用HC6800单片机开发套件配合Keil软件以及PC(串口调试助手)实现单片机与上位机(PC)的串口通信。
二、实验要求
通过串口通信软件在发送部分的不同数值的给定,在接收栏中显示预先设置好的内容。
三、实验步骤
1、设计相关电路原理图并在开发套件上利用杜邦线完成硬件电路搭线;
2、编制相应程序(主程序及各种所需的子程序)并汇编产生.HEX可执行文件;
3、利用STC_ISP软件实现单片机程序的下载;
4、通过上位机(PC)的信息发送,在接收窗观察接收内容是否正确,检验硬件电路、软件程序的正确性与可靠性。
四、实验结果(报告)
1、电路原理图;
2、程序流程图;
3、软件程序;
4、调试与结果分析;
5、心得体会。
127.03 KB, 下载次数: 5, 下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |