MCS-51单片习题集.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MCS-51单片习题集

练习题: 1、运用数据传送指令(MOV) 对P0口进行数据传送、使得8个LED实现前4个LED亮后4个LED不亮、然后反过来前4个LED不亮后4个LED亮、这样重复不断循环。 2、运用置位(SETB)、清零(CLR)功能指令对P0口的P0.0\P0.2\P0.4\P0.6进行同时清零延时一段时间后同时进行置位(不断循环)。 3、利用取反(CPL)指令实现P0.7(第8个LED)灯闪烁(不断循环)。 4、利用左移(RL)指令实现单个LED进行左移并且不断循环。 5、利用右移(RR)指令实现单个LED进行右移并且不断循环。 6、运用数据传送指令(MOV)、左移(RL)、右移(RR)、减1不为0转移指令(DJNZ)、实现8个LED左移3次后右移3次后停止并且显示#3EH。 练习题: 一、利用MOV、RL、RR、DJNZ、ACALL、LCALL、RET、CLR、SETB、CPL等指令完成以下几个广告灯显示效果。 1、两个LED灯从左右两边往中间以增加的形式亮。亮到中间后又以递减的形式往两边灭,不断循环。 2、两个LED灯从左右两边往中间以增加的形式亮。亮到中间后又以递减的形式往两边灭,然后单个灯递增左移显示,然后全部灯熄灭,不断循环整个过程。 3、两个LED灯从左右两边往中间以增加的形式亮。亮到中间后又以递减的形式往两边灭,然后单个灯递增左移显示,接着递减右多显示当全部灯熄灭后不断循环整个过程。 LED数码显示器的连接与编程 7段数码管的结构: 数码管方式显示 在单片机应用系统中,数码管显示器显示常用两种方法: 静态显示和动态扫描显示 数码管静态方式显示 所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的I/O接口用于笔划段字形代码。 这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中CPU的开销小。 数码管动态扫描方式显示 所谓动态扫描就是指我们采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。 动态扫描显示接口是单片机中应用最为广泛的一种显示方式之一。其接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极COM是各自独立地受I/O线控制。CPU向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟是那个显示器亮,则取决于COM端,而这一端是由I/O控制的,所以我们就可以自行决定何时显示哪一位了。 数码管静态方式显示例: FIRST EQU P1.3 ;第一位数码管的位控制 SECOND EQU P1.4 ;第二位数码管的位控制 ORG 0000H ;起始地址 AJMP START ;跳到开始主程序 START: MOV P2, ;向P2口送要显示的数 SETB P1.3 ;关闭第一个数码管不显示 SETB P1.4 ;关闭第二个数码管不显示 CLR P1.5 ;选择第三个数码管显示 CLR P1.6 ;选择第四个数码管显示 SJMP $ END 练习题: 1、用MOV、SETB、CLR、EQU等指令实现对数码管送数显示,使得第一个数码管显示3。 2、用MOV、SETB、CLR、EQU、ACALL等指令实现对数码管送数显示,使得第三个数码管显示0、延时一段时间后显示2、再延时一段时间后显示6、接着不断循环整个过程。 3、用MOV、SETB、CLR、EQU、ACALL等指令实现对数码管送数显示,使得第一个数码管显示1、延时一段时间后第二个显示2、再延时一段时间后第三个显示6、再延时一段时间后第四个显示8、接着不断循环整个过程。 数码管动态扫描方式显示 所谓动态扫描就是指我们采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。 在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),但由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。 数码管动态扫描方式显示例: FIRST EQU P1.3 ;第一位数码管的位控制 SECOND EQU P1.4 ;第二位数码管的位控制 ORG 0000H ;起始地址 AJMP START ;跳到开始主程序 START: ;开始主程序标号 MOV P2,#0FFH ;初始化,让所有LED灭 MOV P2, ;向P2口送要显示的数 CLR FIRST ;选择第一个数码管显示 SETB

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档