- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机日历时钟与键盘显示程序设计报告
日历时钟与键盘显示程序
设计
学院名称:
专业班级:
学生姓名:
学生学号:
指导教师:
设计目的:
掌握日历时钟的编程方法,了解SMBus的编程方法。进一步掌握T0计数器的用法和中断服务的过程。用C51语言设计一个时钟,使其有自动报时和闹铃功能,并且可以通过键盘对当前时间进行校正,可以用键盘设置闹钟时间。
设计要求:
1、能在LED显示器上实现正常的时分秒计时
2、能通过键盘输入当前时间,并从该时间开始计时
3、有校时、校分功能
4、有报时功能,通过指示灯表示
5、有闹时功能,闹时时间可以设定,通过指示灯表示
流程图:
HD7279流程图
3530流程图
源程序:
1、HD7279芯片功能:
HD7279是一片具有串行接口的,可用于驱动8位共阴极式数码管(或64只独立LED)的智能显示驱动芯片,该芯片同时还可连接多达64键的键盘矩阵,单片即可完成LED显示、键盘接口的全部功能。
HD7279内部含有译码器,可直接接受BCD码或者16进制码,并同时具有两种译码方式,此外还有消隐、闪烁、左移、右移、段寻址等多种控制指令。
HD7279具有片选信号,可方便地实现多于8位的显示或多于64键的键盘接口。
2.LED数码管工作原理及显示码:
图1 这是一个7段两位带小数点 10引脚的LED数码管
图2 引脚定义
每一笔划都是对应一个字母表示 DP是小数点.
数码管分为共阳极的LED数码管、共阴极的LED数码管两种。下图例举的是共阳极的LED数码管,共阳就是7段的显示字码共用一个电源的正。led数码管原理图示意:
图3 引脚示意图
从上图可以看出,要是数码管显示数字,有两个条件:1、是要在VT端(3/8脚)加正电源;2、要使(a,b,c,d,e,f,g,dp)端接低电平或“0”电平。这样才能显示的。
共阳极LED数码管的内部结构原理图:
图4 共阳极LED数码管的内部结构原理图
共阴极LED数码管的内部结构原理图:
图5 共阴极LED数码管的内部结构原理图
LED数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数位,因此根据LED数码管的驱动方式的不同,可以分为静态式和动态式两类。
A、静态显示驱动:
静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O埠进行驱动,或者使用如BCD码二-十进位*器*进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O埠多,如驱动5个数码管静态显示则需要5×8=40根I/O埠来驱动,要知道一个89S51单片机可用的I/O埠才32个呢。故实际应用时必须增加*驱动器进行驱动,增加了硬体电路的复杂性。
B、动态显示驱动:
数码管动态显示介面是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp 的同名端连在一起,另外为每个数码管的公共极COM增加位元选通控制电路,位元选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位元选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位元就显示出字形,没有选通的数码管就不会亮。
透过分时轮流控制各个LED数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位元数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极体的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示资料,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O埠,而且功耗更低。
(1)、HD7279程序
#includec8051f020.h
sbit HD7279_DAT=P1^7; //数据线SDA
sbit HD7279_CLK=P1^6; //时钟线SCL
sbit HD7279_CS=P1^5; //片选CS,低电平有效
/******信号设置宏定义******/
#define NOSELECT7279 P5|=0x80 //片选置1,未选中
#define SELECT7279 P5=~(0x80) //片选清0,选中
#define Set7279DAT HD7279_DAT=1 //数据线置1
#define
您可能关注的文档
- 华硕内部的PCB设计规范(简体).doc
- 华盛炼铁二分厂烟煤混喷实践.ppt
- 华为FusionCloud桌面云解决方案教育行业主打胶片.pptx
- 协和客机改3.pptx
- 华硕 NB上电时序.ppt
- 单位电气火灾防范自查表.doc
- 卓越大修-大修安全计划.pptx
- 单元2 汽车地位.ppt
- 单元二课题六弯形与矫正.ppt
- 华师大版八上第10课 红色政权的创建与红军长征(共26张PPT).ppt
- 湖北省天门市2022-2023学年数学八上期末达标检测试题含解析 .pdf
- 沪科版物理九年级上册第14章达标试题及答案 .pdf
- 浙江杭州二中七年级数学下册第九章【不等式与不等式组】阶段练习(含答.pdf
- 河南省信阳市浉河区第九中学2022年中考押题化学预测卷(含解析).pdf
- 湖北省恩施2022-2023学年中考一模数学试题含解析 .pdf
- 液力变矩器生产制造项目可行性研究报告 .pdf
- 沪科版物理九年级上第十三章 第三节 内燃机 (教案) .pdf
- 游艇俱乐部可行性报告 .pdf
- 河南省新乡市牧野区2023-2024学年九年级上学期期中化学试题(含解析).pdf
- 河南省驻马店市遂平县2023-2024学年七年级上学期期中学业水平测试数学试 .pdf
文档评论(0)