浅析51单片机的流水灯.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
浅析51单片机的流水灯

基于51单片机的流水灯利用51单片机P0口实现8个LED(发光二极管)的流水灯控制。可以使用Proteus软件进行仿真调试。1 硬件设计利用单片机的PO口控制8个LED,其电路如下图所示。在桌面上双击图标,打开ISIS 7 Professional窗口(本人使用的是v7.4 SP3中文版)。单击菜单命令“文件”→“新建设计”,选择DEFAULT模板,保存文件名为“LSD.DSN”。在器件选择按钮中单击“P”按钮,或执行菜单命令“库”→“拾取元件/符号”,添加如下表所示的元件。51单片机AT89C51 一片晶体CRYSTAL 12MHz 一只瓷片电容CAP 22pF 二只电解电容CAP-ELEC 10Uf 一只电阻RES 10K 一只电阻RES 300R(即300Ω)八只发光二极管 LED-YELLOW 八只若用Proteus软件进行仿真,则上图中的晶振和复位电路以及U1的31脚,都可以不画,它们都是默认的。在ISIS原理图编辑窗口中放置元件,再单击工具箱中元件终端图标,在对象选择器中单击POWER和GROUND放置电源和地。放置好元件后,布好线。左键双击各元件,设置相应元件参数,完成电路图的设计。2 软件设计流水灯又称为跑马灯,在函数中可以将P0口的八种不同状态做成一维数组,循环执行即可,如下所示。当然也可以采用其它函授来实现,如左移一位1(或右移一位1),循环左移函授_crol_(或循环右移函授_cror_)等。/******************************************************************流水灯*******************************************************************/#include reg51.hconst tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};void delayms(unsigned int x) //延时{ unsigned int j; unsigned char k; for(j=0;jx;j++) { for(k=0;k120;k++); } }void main(){unsigned char k;while(1){for(k=1;k8;k++){P0=tab[k];delayms(500);}}}打开Keil程序(本人使用的是Keil8.05中文版),执行菜单命令“工程”→“新建工程”创建“流水灯”项目,并选择单片机型号为AT89C51。执行菜单命令“文件”→“新建”创建文件,输入C语言源程序,保存为“LSD.C”。在Project Workspace窗口中右击源代码组1,选择“添加文件到组‘源代码组 l’”将源程序“LSD.C”添加到项目中。在Keil中执行执行菜单命令“工程”→“创建目标”,编译源程序。如果编译成功,则在“Output Window”的“创建”窗口中显示没有错误,并创建了“LSD.HEX”文件。3 仿真与调试关于Proteus与Keil的联合仿真调试,可参见我以前所写的博文或其它参考资料。启动Proteus的ISIS,并将其放在屏幕的右上角(可将原理图放大到合适大小);再启动Keil的μVision3,并将其放在屏幕的左下角。 在Keil中执行菜单命令“调试”→“启动/停止调试”,或直接单击图标,进入Keil调试环境。同时,在Proteus ISIS的窗口中可看出Proteus也进入了程序调试状态。 在Keil代码编辑窗口中设置相应断点,断点的设置方法:在需要设置断点语句前双击鼠标左键,可设置断点;再次双击,可取消该断点。在Keil中按F5键运行程序。首先,P0.O点亮D1发光二极管,等待500ms后D1熄灭,同时P0.1点亮D2发光二极管,同样等待500ms后D2熄灭,P0.2点亮D3发光二极管……,当P0.7点亮D8发光二极管等待500ms熄灭后,PO.O再次点亮D1发光二极管……如此循环。或可以点击单步、运行到光标处、全速运行等快捷按钮来进行调试。 ??? 本人邮箱:txxyc104@163.com,欢迎来信讨论.本页为著作的封面,下载以后可以删除本页!【最新资料 Word版可自由编辑!!员工录用管理制度为规范试用期员工的管理和辅导工作,创造良好的试用期工作环境,加速试用员工的成长和进步,特制定目标责任制制度。一、员工试用期规定?1、自员工报到之日起至人力资源部确认转正之日起。?2、员工试用期限为3个月,公司根据试用期员工具体表现提前或推迟转正。(一)、福利待遇?1、试用期员工工资根据所聘的岗位确定,核算时间从到岗工作之日起计算,日工资为:月工资÷(

文档评论(0)

jcc001 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档