单片机软件仿真实验.doc

单片机软件仿真实验.doc

ID:25625711

大小:337.00 KB

页数:13页

时间:2018-11-21

单片机软件仿真实验.doc_第1页
单片机软件仿真实验.doc_第2页
单片机软件仿真实验.doc_第3页
单片机软件仿真实验.doc_第4页
单片机软件仿真实验.doc_第5页
资源描述:

《单片机软件仿真实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机实训指导书专业:交通安全与智能控制(交通)班级:姓名:安徽交通职业技术学院单片机实训一、使用KeilC51软件仿真的意义调试、运行汇编或C语言程序后,我们会觉得单片机并不很复杂,学起来也并不枯燥。特别是KeilC51提供了I/O端口、定时/计数器、中断结构和串行通信部件窗口,可观察到程序运行或单步调试时各端线、寄存器、标志位等电平的变化情况,对清晰把握流程及理解工作原理起到良好的促进作用。当输出端电平按自己的要求变化时,愉悦随之而来!软件仿真不仅在学习探究阶段是好方法,实际应用中也是重要的环节。二、由浅入深安排的实验项目[实验1]KeilC

2、51软件仿真步骤。输入、编译一个短小程序,调试运行观察P1.0端的电平变化规律,并对程序作适当修改,让P1端口各位依次出高电平点亮LED发光管(左移)。[实验2]十进制数转BCD码(汇编程序、C语言)了解数据在累加器、存储单元内的存储形式及如何控制端口Port各位电平的高低、SWAP命令的功能。开始尝试调试或了解C语言程序。[实验3]定时器/计数器(汇编程序、C语言)要点:定时器延时方法、程序查询溢出、定时器程序调试技巧[实验4]中断(汇编程序、C语言)1.定时器硬件中断2.外部中断要求:把握汇编程序的转跳流程、C51程序的中断服务函数定义格式,

3、学会软件仿真调试时怎样实现外部中断。[实验5]航标灯(汇编程序)白天灯灭,天黑闪亮,快慢可调,电路简单,流程清晰,调试、运行成功多有趣![实验6]步进电机(C语言)步进电机也称为脉冲电机,它可以接收单片机I/O端口的数字脉冲(高低电平的变化),使电机旋转过相应的角度,在要求快速启停、精确定位的场合广泛应用。[实验7]串行通信奇偶校验(汇编程序)调试一个程序了解奇偶校验技术、方式2一帧数据组成、振荡周期、波特率周期,观察TB8(“第九位数据”)、P(PSW.0)、CY(位累加器C)、TI(中断申请)位。[实验8]转速自动稳定程序(C语言)三、实验内

4、容实验1KeilC51软件仿真步骤1.进入KeiluVision2集成开发环境2.建立项目选“Project”—“NewProject…”,在对话框中输入项目名:led注意:路径是E:CJY实验1led,需先建个人文件夹及子文件夹“实验1”。3.选芯片项目建立完毕自动弹出器件选择对话框,选择“Inter”中的8051AH。4.输入程序选“File”—“New…”,在文本框中编辑源文件,保存。汇编程序路径及文件名为:E:CJY实验1led.asm5.添加将汇编程序添加到项目中,方法是在左边文件栏中用鼠标右键点击弹出快捷菜单,选“AddF

5、ilestoGroup‘SourceGroup1’”,在对话框中选led.asm,点击“Add”、“Close”按钮。6.编译点击图标“”(BuildTarget),进行编译,根据错误提示修改。7.调试点击图标“”(Start/StopDebug…)进行调试,“”单步执行,“”跳出循环。“Peripherals”—“I/OPorts”—“Port1”显示端口窗口。点击“”可运行程序,“Port1”端口的P1.0应怎样变化?“”停止。如何用左移指令使得P1端口各位依次出高电平点亮LED管?提示:增加、修改的语句有:MOVA,#01H、MOVP1,A

6、、RLAMOVP1,A8.关闭项目“Project”—“ClouseProject”。程序调试界面实验2十进制数转BCD码借助本程序的调试,可清楚地观察到执行每条语句后各累加器内容的变化情况,了解到十进制数是以何种形式存入累加器的,I/O端口的电平的高低是怎样控制的。汇编语言程序调试界面C51程序:#includevoidmain(){unsignedchara=23,t,b;t=a/10;b=a%10;t<<=4;b+=t;P1=b;}调试、运行C语言程序的方法与汇编语言相同,不妨试一试,自己喜欢哪一种?实验3定时器/计数器延

7、时方法有三种,一是子程序延时(实验1),二由定时器完成(实验3),三是两种方法的结合(试验4)。当程序调试到下面位置时,应怎样做才能继续?实验3汇编程序调试界面C语言:#includesbitP1_0=P1^0;/*定义P1_0为Port1端口的0位*/voidmain(){TMOD=0x01;/*“0x01”的第一个符号是零*/TR0=1;for(;;){TH0=0x3D;TL0=0xB0;do{}while(TF0==0);P1_0=!P1_0;TF0=0;}}实验4中断1.定时器硬件中断定时器0、6M晶振,定时6秒,中断到

8、来P1.0输出低电平,电亮发光二极管。汇编程序:ORG0000HAJMPMAINORG000BH;定时器0溢出中断矢量地址AJMPET0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。