- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * 项目二 键盘与显示系统设计 任务2 数码管显示器设计 任务内容 组装一个模拟城市交通灯系统,由单片机外接12个发光二极管,分别代表东南西北四个道口的红、绿、黄信号灯,红灯亮9秒,黄灯亮2秒,绿灯亮7秒,黄灯期间黄灯闪烁5次。同时外接1位数码管,用于倒计时。 学习目标 掌握数码管内部结构及数码管结构电路的设计; 掌握C51数组的使用方法; 学会单片机控制数码管显示器的电路设计; 理解数码管静态显示和动态显示原理,学会设计控制代码。 知 识 点 知识点一 数码管结构及段选码 知识点二 C51中的一维数组 知识点三 数码管显示方式 LED数码管显示器按用途可分为通用型和专用型显示器,分别如下图所示。 (a) 通用7段LED数码管 (b) 专用LED数码管 1.数码管显示器的外观 知识点一 数码管结构及段选码 2.内部结构 数码管由8个LED(发光二极管)a、b、c、d、e、f、g和小数点dp构成,按结构分为共阴极和共阳极两种。 知识点一 数码管结构及段选码 当某发光二极管要点亮时,只需COM端接地,并在阳极加高电平即可。 (1)共阴极数码管 知识点一 数码管结构及段选码 当某发光二极管要点亮时,只需COM端接高电平,并在阴极加低电平即可。(与共阴极相反) (2)共阳极数码管 知识点一 数码管结构及段选码 COM端:共阴数码管接地;共阳数码管接电源 数据口a~dp:通过单片机的IO口接电阻或驱动电路连接。 (3)单个数码管接口电路 知识点一 数码管结构及段选码 (1)根据电路连接,列出码字的数据格式 例: (4)LED数码管码字设计 (2)根据待显示字符,列出各字形码表 例:共阴极LED数码管字形码表 字形码 3F 06 5B 4F 66 6D 7D 07 7F 6F 显示字符 0 1 2 3 4 5 6 7 8 9 想一想:带小数点的显示,字型码是多少?共阳的呢? 知识点一 数码管结构及段选码 C语言具有使用户定义一组有序数据项的能力,这组有序的数据即数组。数组是一组具有固定和相同类型数据成员的有序集合,数据成员的类型为该数组的基本类型,各数据成员称为数组元素。 数组数据是用同一个名字的不同下标访问的,数组的下标放在方括号中,是从0开始(0,1,2,3……,n)的一组有序整数。数组有一维、二维、三维和多维数组之分。C51中常用的有一维、二维和字符数组。 。 知识点二 C51中的一维数组 1.一维数组的定义 定义格式: 类型说明符 数组名 [整型表达式] 例如:unsigned char ch[10],定义了一个无符号字符型数组,有10个元素,每个元素由不同的下标表示,分别是ch[0],ch[1],ch[2]……,ch[9]。 注意,数组的第一个元素的下标是0而不是1,即第一个元素是ch[0],而第十个元素是ch[9]。 。 知识点二 C51中的一维数组 2.数组的初始化 (1)在定义数组时对数组的全部元素赋值。 例如,本任务中,数码管的0~9的码字表用一维数组定义并初始化: unsigned char tab[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; 0~9的码字被依次列入数组中,数组的下标(对应显示字符)和数组元素(对应段选码)之间建立一一对应的关系。 例如,在P0口显示字符2,则执行代码P0=tab[2]即可。 知识点二 C51中的一维数组 通常,表格存放于ROM中,在数组定义的时候用 code 指定ROM存储区域: unsigned char code tab[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; 在程序编译中,就把数组中的10个元素存储到ROM中。 (2)只对数组的部分元素初始化 例如:int a[10]={0,1,2,3,4,5}; 该数组共10个元素,但括号中仅6个初值,则数组的前6个元素被赋初值,而后面的4个元素值为0。 (3)若定义数组时,不对元素赋值,则数组的全部元素都被缺省地赋值为0。 知识点二 C51中的一维数组 1.静态显示方式 静态显示是指数码管显示某一字符时,相应的LED恒定导通或恒定截止。静态显示时,各位数码管相互独立,公共端接固定电平(共阴极公共端接地,共阳极公共端
原创力文档


文档评论(0)