网站大量收购闲置独家精品文档,联系QQ:2885784924

第5讲 十进制计数器设计.ppt

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

十进制计数器设计 十进制计数器设计 了解C语言中的数组的使用; 了解break、continue语句的使用; 掌握数码管动态显示程序设计。 本次课重点 任 务: 设计一个四位数码管显示的十进制计数器,能够使用按键进行点动和连续加减计数。 静态显示 静态显示是指显示驱动电路具有输出锁存功能,待显示的字符编码被CPU送出后,数码管会一直显示该字符不变,CPU不需要再控制数码管,如果要显示新的字符,CPU只要再次送出即可。 采用静态显示方式,较小的电流就可以获得较高的亮度,且占用CPU时间较少,编程简单,显示便于检测和控制,但其占用的I/O口线较多,硬件电路复杂,成本高,只适合显示位数较少的场合。 硬件设计相关知识 74LS47是由与非门、输入缓冲器和7 个与或非门组成的BCD-7段数码管译码器/驱动器,是输出低电平有效的七段字形译码器。 能将4位二进制编码—十进制数(BCD码)转化成七段字形码,然后去驱动一个七段显示器。 也就是说74LS47可以直接把数字转换为数码管的显示数字,从而可以简化程序,节约单片机的IO开销。 动态显示 在多位LED显示时,为了降低成本和功耗,将所有位的段选控制端并联起来,由一个8位端口控制(本任务中用P1口);各位数码管的公共端(com端),用作“位选端”,由另一个端口进行显示位的控制(本任务中用P2口)。 由于段选端是公用的,要让各位数码管显示不同的字符,就必须采用扫描方式,即动态扫描显示方式。动态扫描是采用分时的方法轮流点亮各位数码管的显示方式,它在某一时间段,只让其中一位数码管的“位选端”(com端)有效,并送出相应的字型编码。 动态扫描过程 首先从段选线上送出字型编码,再控制位选端,字符就显示在指定数码管上,其他位选端无效的数码管都处于熄灭状态,持续1.5ms时间,然后关闭所有显示; 接下来又送出新的字型编码,按照上述过程又显示在另外一位数码管上,直到每一位数码管都扫描完为止,这一过程即为动态扫描显示。 数码管其实是轮流依次点亮的,但由于人的视觉驻留效应,因此当每个数码管点亮的时间小到一定程度时,人就感觉不出字符的移动或闪烁,觉得每位数码管都一直在显示,达到一种稳定的视觉效果。 硬件电路 break语句(P65) break语句强行结束循环,转向执行循环语句的下一条语句。 在一个循环程序中, 可以通过循环语句中的表达式来控制循环程序是否结束。除此之外,还可以通过break语句从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。 一般形式: break; 注意:break语句不能用于循环语句和switch语句之外的任何其他语句中;break语句是结束整个循环过程,不再判断执行循环的条件是否成立。 软件设计相关知识 continue语句(P65) continue语句作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。 对于for循环,跳过循环体其余语句,转向循环变量增值表达式的计算;对于while和do-while循环,跳过循环体其余语句,但转向循环继续条件的判定。 一般形式: continue; 注意:continue只能用于循环语句中;continue语句只结束本次循环,而不是终止整个循环的执行。 一维数组(P68) 在C语言中数组必须要先定义,后使用。一维数组的定义方式为: 类型说明符 [存储器类型] 数组名[整型表达式]; 类型说明符是任一种标准数据类型或构造数据类型,是数组中各个元素的数据类型。 数组名是用户定义的数组标识符。 方括号中的整型表达式表示数据元素的个数,也称为数组的长度 例如: int a[9]; //定义整型数组a,有9个元素,下标从0到8。 float b[5]; //定义实型数组b,有5个元素,下标从0到4。 char ch[10]; //定义字符数组ch,有10个元素,下标从0到9。 注意事项 数组的类型是指构成数组的元素的类型。对于同一个数组,其所有元素的数据类型都是相同的。 数组名的书写规则应符合标识符的命名规则,并且不能与其它变量同名。 常量表达式可以是符号常量或常量表达式,但是不能包含变量,即不能对数组的大小作动态定义。 一维数组(P68) 一维数组的引用: 数组名[下标] 说明: 通常下标只能为整型常量或整型表达式。 如果下标是实数,C编译器自动将它转换为整型,舍弃小数部分。 C语言中规定,不能一次引用整个数组,只能逐个引用数组元素。 C语言并不对越界使用数组进行检查。 一维数组(P68) 一维数组的初始化: 在定义数

文档评论(0)

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

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

1亿VIP精品文档

相关文档