欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于-51单片机的LED数码管动态显示.doc

    • 资源ID:587679       资源大小:154KB        全文页数:6页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于-51单片机的LED数码管动态显示.doc

    |基于 51 单片机的 LED 数码管动态显示LED 数码管动态显示就是一位一位地轮流点亮各位数码管,对于每一位 LED 数码管来说,每隔一段时间点亮一次,利用人眼的“视觉暂留“效应,采用循环扫描的方式,分时轮流选通各数码管的公共端,使数码管轮流导通显示。当扫描速度达到一定程度时,人眼就分辨不出来了。尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,认为各数码管是同时发光的。若数码管的位数不大于 8 位时,只需两个 8 位 IO 口。1 硬件设计利用 51 单片机的 P0 口输出段码,P2 口输出位码,其电路原理图如下所示。在桌面上双击图标,打开 ISIS 7 Professional 窗口(本人使用的是 v7.4 SP3 中文版) 。单击菜单命令“文件”“新建设计” ,选择 DEFAULT 模板,保存文件名为 “DT.DSN”。在器件选择按钮中单|击“P”按钮,或执行菜单命令“库”“拾取元件符号” ,添加如下表所示的元件。51 单片机 AT89C51 一片晶体 CRYSTAL 12MHz 一只瓷片电容 CAP 22pF 二只电解电容 CAP-ELEC 10uF 一只电阻 RES 10K 一只电阻 RES 4.7K 四只双列电阻网络 Rx8 300R() 一只四位七段数码管 7SEG-MPX4-CA 一只三极管 PNP 四只若用 Proteus 软件进行仿真,则上图中的晶振和复位电路以及 U1 的 31 脚,都可以不画,它们都是默认的。在 ISIS 原理图编辑窗口中放置元件,再单击工具箱中元件终端图标,在对象选择器中单击 POWER和 GROUND 放置电源和地。放置好元件后,布好线。左键双击各元件,设置相应元件参数,完成电路图的设计。2 软件设计LED 数码管动态显示是一位一位地轮流点亮各位数码管的,因此要考虑每一位点亮的保持时间和间隔时间。保持时间太短,则发光太弱而人眼无法看清;时间太长,则间隔时间也将太长(假设 N位,则间隔时间=保持时间 X(N-1) ) ,使人眼看到的数字闪烁。在程序中要合理的选择合适的保持时间和间隔时间。而循环次数则正比于显示的变化速度。LED 数码管动态显示的流程如下所示。|LED 数码管动态显示的详细 C51 程序如下。/* *通过 P0 及 P2 口控制四只数码管 ,12M 晶振|*/#include “reg51.h“#define uchar unsigned char#define uint unsigned intuchar code ddata=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xc0,0xf9,0xa4; /0,1,2,3,4.F,0,1,2,3 的段码/*延时函数*/void delayms(uint t)uint i,j;for(i=0;i<t;i+)for(j=0;j<120;j+);main()while(1)uint i,j,k;for(k=1;k<17;k+) /16 个字符for(j=0;j<50;j+)/反比于字符显示变化速度 for(i=1;i<5;i+) /4 位|P0=ddatak+i-2;switch(i)case 1:P2=0XFE;break; /点亮第 1 位case 2:P2=0XFD;break; /点亮第 2 位case 3:P2=0XFB;break; /点亮第 3 位case 4:P2=0XF7;break; /点亮第 4 位delayms(5);P2=0XFF; / 熄灭 打开 Keil 程序(本人使用的是 Keil8.05 中文版) ,执行菜单命令“工程”“新建工程”创建“动态”项目,并选择单片机型号为 AT89C51。执行菜单命令“文件”“新建”创建文件,输入 C语言源程序,保存为“DT.C” 。在 Project Workspace 窗口中右击源代码组 1,选择“添加文件到组源代码组 l”将源程序“ DT.C”添加到项目中。在 Keil 中执行执行菜单命令“工程”“创建目标” (或点击“创建目标”快捷按钮) ,编译源程序。如果编译成功,则在“Output Window”的“创建”窗口中显示没有错误,并创建了“DT.HEX”文件。3 仿真与调试关于 Proteus 与 Keil 的联合仿真调试,可参见我以前所写的博文或其它参考资料。启动 Proteus 的 ISIS,并将其放在屏幕的右上角(可将原理图放大到合适大小) ;再启动 Keil 的Vision3,并将其放在屏幕的左下角。在 Keil 中执行菜单命令“调试”“启动停止调试” ,或直接单击图标,进入 Keil 调试环境。同时,在 Proteus ISIS 的窗口中可看出 Proteus 也进入了程序调试状态。|在 Keil 代码编辑窗口中设置相应断点,断点的设置方法:在需要设置断点语句前双击鼠标左键,可设置断点;再次双击,可取消该断点。在 Keil 中按 F5 键(或点击“运行”快捷按钮)运行程序。四位 LED 数码管显示0123、1234、2345CdEF、dEf0、EF01 、F012如此循环。或可以点击单步、运行到光标处、全速运行等快捷按钮,以及同时观察工程窗口寄存器页面、存储器窗口等,来进行仿真调试。

    注意事项

    本文(基于-51单片机的LED数码管动态显示.doc)为本站会员(小**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开