单片机实验1灯的亮灭.docx
- 文档编号:25753030
- 上传时间:2023-06-12
- 格式:DOCX
- 页数:6
- 大小:641.18KB
单片机实验1灯的亮灭.docx
《单片机实验1灯的亮灭.docx》由会员分享,可在线阅读,更多相关《单片机实验1灯的亮灭.docx(6页珍藏版)》请在冰豆网上搜索。
单片机实验1灯的亮灭
实验报告
课程名称:
单片机原理及应用
实验项目:
I/O口控制编程及调试实验
专业班级:
姓名:
学号:
实验室号:
实验组号:
实验时间:
批阅时间:
指导教师:
成绩:
1.实验名称
I/O口控制编程及调试实验
2.实验目的
1.以IAP15F2K61S2为例了解单片机的IAP的仿真调试功能
2.了解P1口的使用方法。
3.了解延时子程序的编写和使用。
3.实验内容
3.1.IAP15F2K61S2单片机介绍
(1)采用宏晶公司最新STC15系列IAP15F2K61S2芯片。
ISP/IAP,在系统可编程/在应用可编程,无需编程器,无需仿真器。
可当仿真器使用。
(2)增强型8051CPU,1T,单时钟/机器周期,速度比普通8051快8-12倍,61KB片内片内Flash程序存储器,擦写次数10万次以上(3)片内XDATA2KB的SRAM,8通道10位30万次/秒ADC,3路PWM还可当3路DAC使用。
3.2.IAP的仿真调试功能
片上仿真是基于单片机本身的仿真,也就是说只要一片单片机,不需要额外的开发设备,就可以实现仿真。
对于单片机爱好者来说,片上仿真是最高性价比的选择,你甚至不需要修改电路,用给单片机下载HEX文件的电路就能实现仿真。
各大单片机公司都已开发出不同性能的支持片上仿真的单片机。
本实验以STC公司的片上仿真单片机——IAP15F2K61S2为例,介绍片上仿真环境的建立和进入仿真界面的操作流程。
3.3.Hex文件的生成
单片机只能下载HEX文件或BIN文件,其中HEX文件是十六进制文件,BIN文件是二进制文件,这两种文件可以通过软件相互转换。
在Keil界面编写好程序后,单击[Project]菜单,然后在下拉菜单里单击[OptionsforTarget‘Target1’]项,或直接单击界面上的工程设置选项快捷图标
,弹出下图所示画面。
单击[Target]在[Xtal(MHz)]项填入系统所用晶振频率,这里实验板所用晶振是11.0592MHz。
单击[Output]然后选中[CreateHEXFile]项,使程序编译后产生HEX代码,供下载器软件下载到单片机中。
I/O口控制发光二极管循环左移(循环右移)。
P1口做输出口,接只发光二极管,编写程序,使发光二极管循环点亮。
(2).利用数码管1显示按键1的被按次数,按第10次时数码管显示归零,重新显示。
4.实验步骤或程序
4.1.IAP15F2K61S2与PC机连接
(1)安装CH430驱动,在驱动文件夹下找到CH430的驱动,双击图标安装,也可以在硬件管理器中虚拟串口中,更新驱动安装。
(2)通过USB电缆连接实验板和计算机,图示如下:
4.2.新建仿真环境
第一步,打开STC-ISP(V6.80)软件
第二步,选择“Keil仿真设置”页面,点击“添加MCU型号到Keil中”,在出现的如下的目录选择窗口中,定位到Keil的安装目录(一般可能为“C:
\Keil\”),“确定”后出现下
图中右边所示的提示信息,表示安装成功。
第三步,新程序的建立与编译仿真:
在keil中建立一个新工程单击[Project]菜单中的[NewProject…]选项,选择工程要保存的路径,输入工程文件名,单击保存。
工程建立后,此工程后缀为”.uv3”。
新建项目后,便会有“STCMCUDatabase”的选择项.
然后从列表中选择响应的MCU型号(目前STC支持仿真的型号只有STC15F2K60S2),所以我们在此选择“STC15F2K60S2”的型号,点击“确定”完成选择.
选择菜单[File]菜单中的[New]菜单项,或单击
图标,新建汇编文件,点击保存按钮,给出文件所要保存的位置,输入文件名,单击保存。
文件保存后后缀为”.asm”。
选择界面左端的”ProjectWorkspace”中,”Target”下的”SourceGroup1”文件夹,单击鼠标右键选择”AddFilestoGroup‘SourceGroup1’”,将”.asm”文件添加到工程中。
选择菜单中的
编译图标,将工程进行编译,检查程序中的错误,若有错误,将错误修改后,重新编译,直至没有错误为止。
接着在”Target”上单击鼠标右键选择“optionsforTarget‘Target1’”进入到项目的设置页面,选择“Debug”设置页,第2步选择右侧的硬件仿真“Use…”,第3步,在仿真驱动下拉列表中选择“STCMonitor-51Driver”项,然后点击“Settings”按钮,进入下面的设置画面,对串口的端口号和波特率进行设置,波特率一般选择默认。
到此设置便完成了。
程序如下:
LJMPSTART
ORG0100H
START:
MOVA,#0F7H
MOVR3,#4
LOOP:
RLA
MOVP1,A
LCALLDELAY
DJNZR3,LOOP
AJMPSTART
DELAY:
MOVR1,#200
DEL1:
MOVR2,#200
DEL2:
MOVR4,#200
DEL3:
DJNZR4,DEL3
DJNZR2,DEL2
DJNZR1,DEL1
RET
END
5.程序运行结果
可以通过改变RO,R1……R7的值来调节灯的亮灭
利用数码管1显示按键1的被按次数,按第10次时数码管显示归零重新显示。
6.出现的问题及解决方法
问题1:
在这次实验中,我们调试出了实验结果,但是当运行的时候,准备停止运行时,按了一个stop键,调试页面却自动的关掉了。
解决方法:
我们重新的调试了一遍,程序能够运行,应该是界面不稳定的缘故。
问题2:
在调试的时候一直都在循环程序中反复的循环。
解决方法:
我更改了数,让程序跳出了这个循环程序,结果程序可以往下执行了。
这个程序执行之后,可以更改数来使数码管和小灯的亮灭
7.心得体会及建议
在这次的单片机上机实验中,我对KeiluVision3编译软件更加了解了。
学会了单步、断点、自动跟踪/单步、全速执行等各种执行方法,可以对程序进行更改,并且能够简单的编写程序,并对编写的程序进行编译与检查。
建议:
希望指导的详细一些。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 实验