欢迎来到天天文库
浏览记录
ID:15504022
大小:3.98 MB
页数:115页
时间:2018-08-03
《p.上实现led灯闪烁》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、西安思源学院精品课程单片机原理与应用子项目一:P1.0上实现LED灯闪烁目标:1、通过一个简单实例的仿真,掌握单片机仿真的基本过程2、了解单片机C51程序设计基础。3、掌握keilC编译器的使用。4、掌握proteus仿真软件进行仿真的基本过程。任务:设计一个单片机最小应用系统,并在P1.0上实现LED灯闪烁任务分解:1、设计原理图;2、利用proteus绘制原理图;3、编写程序,并利用KeilC进行编译,生成hex文件;4、利用proteus进行仿真调试。技能拓展:1、proteus软件使用。2、KeilC编译器使用3、C51
2、程序设计一、原理由于需要实现的功能比较简单,所以单片机最小系统,时钟采用内部时钟,复位采用上电复位,在P1.0端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为0.2秒,电路图如下图所示。西安思源学院精品课程单片机原理与应用二、原理图绘制安装完Proteus后,运行ISIS7Professional,会出现以下窗口界面:1、将所需元器件加入到对象选择器窗口:本例要用到的元件有:AT89C51、电阻(RES)、电容(CAP)、电解电容(HITEMP)、发光二极管(LED)、晶振(CRYSTAL)单击对象选择器
3、按钮,如图所示弹出“PickDevices”页面,在“Keywords”输入AT89C51,系统在对象库中进行搜索查找,并将搜索结果显示在“Results”中,如图所示。西安思源学院精品课程单片机原理与应用在“Results”栏中的列表项中,双击“AT89C51”,则可将“AT89C51”添加至对象选择器窗口。然后用同样的步骤添加其他器件,完成后单击“OK”按钮,结束对象选择。最终结果:经过以上操作,在对象选择器窗口中,就有了需要的元器件对象,单击,在预览窗口中,可见到的实物图,如图所示;此时,在绘图工具栏中的元器件按钮处于选中
4、状态。1、放置元器件至图形编辑窗口西安思源学院精品课程单片机原理与应用在对象选择器窗口中,选中AT89C51,将鼠标置于图形编辑窗口该对象的欲放位置、单击鼠标左键,该对象被完成放置。同理,将其他器件放置到图形编辑窗口中。如图所示。若对象位置需要移动,将鼠标移到该对象上,单击鼠标右键,此时我们已经注意到,该对象的颜色已变至红色,表明该对象已被选中,按下鼠标左键,拖动鼠标,将对象移至新位置后,松开鼠标,完成移动操作。3、放置电源和地添加“地”:左键选择模型选择工具栏中的图标,出现:左键选择GROUND,并在原理图编辑窗口中左击,这样
5、“地”就被放置到原理图编辑窗口中了。同理可以在需要电源的地方添加电源。4、元器件之间的连线Proteus的智能化可以在你想要画线的时候进行自动检测。下面,我们来操作将电阻R1的右端连接到LED显示器的A端。当鼠标的指针靠近R1右端的连接点时,跟着鼠标的指针就会出现一个“×”西安思源学院精品课程单片机原理与应用号,表明找到了R1的连接点,单击鼠标左键,移动鼠标(不用拖动鼠标),将鼠标的指针靠近LED显示器的A端的连接点时,跟着鼠标的指针就会出现一个“×”号,表明找到了LED显示器的连接点,同时屏幕上出现了粉红色的连接,单击鼠标左键
6、,粉红色的连接线变成了深绿色,同时,线形由直线自动变成了90º的折线,这是因为我们选中了线路自动路径功能。Proteus具有线路自动路径功能(简称WAR),当选中两个连接点后,WAR将选择一个合适的路径连线。WAR可通过使用标准工具栏里的“WAR”命令按钮来关闭或打开,也可以在菜单栏的“Tools”下找到这个图标。同理,我们可以完成其它连线。在此过程的任何时刻,都可以按ESC键或者单击鼠标的右键来放弃画线。三、程序设计1、延时程序的设计方法作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要求的闪烁时间间隔为0.2秒,
7、相对于微秒来说,相差太大,所以我们在执行某一指令时,插入延时程序,来达到我们的要求,但这样的延时程序是如何设计呢?下面具体介绍其原理:石英晶体为12MHz,因此,1个机器周期为1微秒机器周期微秒MOVR6,#202个2D1:MOVR7,#2482个2DJNZR7,$2个2×248DJNZR6,D12个2×20=402+2×248=49820×498=10002西安思源学院精品课程单片机原理与应用因此,上面的延时程序时间为10.002ms。由以上可知,当R6=10、R7=248时,延时5ms,R6=20、R7=248时,延时10m
8、s,以此为基本的计时单位。如本实验要求0.2秒=200ms,10ms×R5=200ms,则R5=20,延时子程序如下:DELAY:MOVR5,#20D1:MOVR6,#20D2:MOVR7,#248DJNZR7,$DJNZR6,D2DJNZR5,D1RET2、输
此文档下载收益归作者所有