基于单片机的电子万年历的设计与制作毕业论文内容摘要:

力。 一个工作周期可分 为两个部分,即温度检测和数据处理。 DS18B20 共有三种形态的存储器资源,分别是: ROM 只读存储器:用于存放 DS18B20 的 ID 编码,其前 8 位是单线系列编码( DS18B20 的编码是 19H),后面 48 位是芯片唯一的序列号,最后 8 位是以上 56位的 CRC 码(冗余校验)。 数据在出产时设置不由用户更改。 DS18B20 共 64 位ROM。 RAM 数据暂存器:用于内部计算和数据存取,数据在掉电后丢失, DS18B20共 9 个字节 RAM,每个字节为 8 位。 第 2 个字节是温度转换后的数据值信息,第 4 个字节是用户 EEPROM( 常用于温度报警值储存)的镜像。 在上电复位时其值将被刷新。 第 5 个字节则是用户第 3 个 EEPROM 的镜像。 第 8 个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是内部温度转换、计算的暂存单元。 第 9 个字节为前 8 个字节的 CRC 码。 EEPROM 非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,DS18B20 共 3 位 EEPROM,并在 RAM 都存在镜像,以方便用户操作。 DS18B20 芯片与单片机的接口: DS18B20 只需要接到控制器(单片机)的一个 I/O 口上,由于单总线为开 漏,所以需要外接一个 的上拉电阻。 如要采用寄生工作方式,只要将 VDD 电源引脚与单总线并联即可。 但在程序设计中,寄生工作方式将会对总线的状态有一些特殊的要求。 郑州航空工业管理学院毕业设计(论文) 11 读数据 写 0 60 微秒 15 微秒 45 微秒 15 微秒 45 微秒 15 微秒 DS18B20 写时间间隙 写 1 微控制器控制 DS18B20 完成温度转换必须经过三个步骤:每一次读写之前要对 DS18B20 进行复位,复位成功后发送一条 ROM 指令,最后发送 RAM 指令,这样才能对 DS18B20 进行预定的操作。 复位要求微控制器将数据线下拉 500 微秒,然后释放, DS18B20 收到信号后等待 16~ 60 微秒左右,然后发出 60~ 240 微秒的存在低脉冲,微控制器收到此信号表示复 位成功,如果没有收到复位成功信号,则表示 DS18B20 出现问题,可以用来作为系统设计时的故障提示、判断信号。 DS18B20 的单总线数据传输特点,决定了它严格的控制时序。 微控制器写 1时,数据线必须先被拉至低电平,然后就被释放,使数据线在写时间片开始之后的 15 微秒之内拉至高电平。 微控制器写 0 时,数据线必须先被拉至低电平且至少保持逻辑低电平 60 微秒。 微控制器把数据线从高电平拉至低电平时,产生读时间片,数据线必须保持在逻辑低电平至少 1 微秒;来自 DS18B20 的输出数据在读时间片下降沿之后 15 微秒有效。 因此,为了读 取从时间片开始算起 15 微秒的数据线状态,微控制器必须停止把数据线驱动至低电平。 在读时间片结束时,数据线经过外部的上拉电阻拉回至高电平。 所有读时间片的最短持续期限为 60 微秒,各个读时间片之间必须有最短为 1 微秒的恢复时间。 其读写时序如图 所示。 图 DS18B20 读时间间隙 DS18B20 的实物图及与单片机接口电路原理图如 和 : 图 DS18B20 实物图 图 DS18B20 连接图 郑州航空工业管理学院毕业设计(论文) 12 时钟电路设计 DS12C887 时钟日历芯片,是由美国 DALLAS 公司生产的新型时钟日历芯片,采用 CMOS 技术制成。 芯片采用 24 引脚双列直插式封装,内部集成晶振、振荡电路、充电电路和可充电锂电池,组成一个加厚的集成电路模块,在没有外部电源的情况下可工作 10 年。 具 DS12C887 这种实时时钟芯片具备年、月、日、星期、时、分、秒计时功能和多点定时功能,计时数据的更新每秒自动进行一次,不需程序干预。 同时芯片内有微功耗,外围接口简单,精度高,工作稳定可靠等优点,广泛应用在各种需要较高精度的实时时钟 系统中。 DS12C887 的实物及外部引脚图如下图 和 : 图 DS12C887 的外部引实物图 图 DS12C887 的外部引脚 DS12C887 主要功能介绍: ( 1)内含一个锂电池,断电后运行十年以上不丢失数据; ( 2)计秒、分、时、天、星期、日、月、年、并有闰年补偿功能; ( 3)二进制数码或 BCD 码表示时间,日历和设定闹钟; ( 4) 12 小时或 24 小时制, 12 小时时钟模式带有 PM 和 AM 指示,有夏令时功能; ( 5) Motorola 和 Intel总线时序 选择; ( 6)有 128 个字节 RAM 单元与软件接口,其中 14 个字节作为时钟和控制寄存器, 114 字节为通用 RAM,所有 RAM 单元数据都具有掉电保护功能; ( 7)可编程方波信号输出; 本次设计用的是 BCD 码表示时间, 24 小时制, Intel总线时序。 与单片机接口电路原理图: 电路原理图如图 所示, DS12C887 与单片机的连接,数据线 AD[0..7]与 P1郑州航空工业管理学院毕业设计(论文) 13 口连接,片选信号 CS 和 相连,地址选通输入 AS 和 相连,读 /写输入 RW和 相连,数据选通 DS 和 相连。 DS12C887 的连接图如 下图 图 DS12C887 与单片机的连接电路原理图 显示电路设计 液晶显示的原理是利用利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示。 液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已被广泛应用在便携式电脑、数字摄像机、 PDA移动通信工具等众多领域。 液晶显示的分类方法有很多种,通常可按其显示方式分为段式、字符式、点阵式等。 除了黑白显示外,液晶显示器还有多灰度和彩色显示等。 在本万年历当中 12864 液晶显示显示当前 的实时时间和温度及重要的阴阳历节日等功能。 12864 液晶显示具有如下的特性:  提供 8 位, 4 位并行接口及串行接口可选  并行接口适配 M6800 时序  自动电源启动复位功能  内部自建振荡源  64 16 位字符显示 RAM( DDRAM 最多 16 字符 4 行, LCD 显示范围16 2 行) (改为半角输入 )  2M 位中文字型 ROM( CGROM),总共提供 8192 个中文字型( 16 16 点阵)  16K 位半宽字型 ROM(HCGROM),总共提供 126 个西文字型( 16 8 点阵) 郑州航空工业管理学院毕业设计(论文) 14  64 16 位字符产生 RAM( CGRAM)  15 16 位总共 240 点的 ICON RAM( ICONRAM) 其与单片机的连接电路如图 所示: 图 12864 与单片机的接线图 液晶显示 12864 的引脚功能如表 32 所示。 表 32 液晶显示 12864 的引脚功能 引脚号 引脚名称 方向 功能说明 1 VSS 模块的电池地 2 VDD 模块的电源正端 3 VO LCD 驱动电压输入端 4 RS(CS) H/L 并行的指令 \数据选择信号:串行的片选信号 5 R/W(SID) H/L 并行的读写选择信号: 串行的数据口 6 E(CLK) H/L 并行的使能信号:串行的同步时钟 7 DB0 H/L 数据 0 8 DB1 H/L 数据 1 9 DB2 H/L 数据 2 10 DB3 H/L 数据 3 11 DB4 H/L 数据 4 12 DB5 H/L 数据 5 13 DB6 H/L 数据 6 14 DB7 H/L 数据 7 15 PSB H/L 并 \串行接口选择: H并行 :L串行 16 NC 空脚 郑州航空工业管理学院毕业设计(论文) 15 17 RST H/L 复位 低电平有效 18 NC 空脚 19 LED_A 背光电源正极 20 LED_K 背光电源负极 对 12864 写控制时,在使能信号 E 下降沿有效。 在使能信号 E 下降沿后,为了保证数据或指令可靠写入,需要在使能信号 E 下降沿后有一段延时,使 12864完成内部动作。 12864 的指令集分为基本指令集和扩充指令集,扩充指令集提供绘图功能,可以显示图片;在本设计当中,仅需要基本指令集以显示汉字、数字和字母,表 给出 12864 的基本指令集。 清除显示指令将 DDRAM 填满“ 20H”,并且设定 DDRAM 的地址计数器( AC)为“ 00H”。 地址归位指令设定 DDRAM的地址计数器( AC)为 “ 00H”,并且将游标移到开头原点位置,这个指令并不改变 DDRAM 的内容。 在显示状态开 /关指令中, D=1,整体显示 ON, C=1,游标ON, B=1,游标位置 ON。 在功能设定指令中 DL=1(必须为 1), RE=1,扩充指令集动作, RE=0,基本指令集动作。 表 33 12864 的基本指令 指令 指令码 RS RW DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 设定 DDRAM 地址 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 AC0 些资料到 RAM 1 0 D7 D6 D5 D4 D3 D2 D1 D0 清楚显示 0 0 0 0 0 0 0 0 0 1 地址归位 0 0 0 0 0 0 0 0 1 X 显示状态开 \关 0 0 0 0 0 0 1 D C B 游标或显示移位控制 0 0 0 0 0 1 S/C R/L X X 功能设定 0 0 0 0 1 DL X RE X X 郑州航空工业管理学院毕业设计(论文) 16 按键电路设计 按键采用 4个独立的按键,一个功能键、一个确认键、一个加按键、一个减按键通过这四个按键可以来合理的设置时钟的调整和闹铃的设定温度报警的上下限数 值。 与单片机的连接电路如图 : 图 按键电路与单片机的链接 报警电路设计 为了实现报警功能,选择蜂鸣器作为闹铃。 采用 PNP 型 8550 三极管,发射极e 脚连接 +5V,基极 b 脚连接 电阻后接到单片机 口上, c 脚连接蜂鸣器。 电路如图 所示。 图 蜂鸣器连接电路 郑州航空工业管理学院毕业设计(论文) 17 第 4 章 软件设计 程序流程图 主程序流程 该系统软件采用 C 语言设计,模块化的设计方法使得该系统以后的升级改动更 为灵活。 系统软件流程为:读写时间日期和温度、分离时间日期温度显示值、显示子程序、定时闹铃子程序、日期时间修改子程序、农历自动更新子程序、闰月子程序、返回。 本系统采用四个按键和微处理器对话,可以修改时间,设定定时时间及温度上下限。 微处理器采用查询方式扫描按键状态。 主程序执行流程如图 所示。 图 主程序执行流程图 开始 初始化 读写时间、温度和日期 分离时间、温度和日期显示值 显示子程序 定时闹铃子程序 日期、时间修改子程序 农历自动更新子程序 闰月子程序 返回 郑州航空工业管理学院毕业设计(论文) 18 时间调整程序流程图 时间调整程序中,在对数据加一处理程序中,需要对各数据范围进行判断,年的最大值为 99,即该系统最长可 显示到 2099 年的日期、时间。 月的最大值为12,时的最大值为 23,分的最大值为 59,秒的最大值为 59。 该系统能够对每月的天数进行自动判断,阳历的月份信息为: 12 月,每月 31 天; 11 月,每月 30 天;二月最为特殊,非闰年为 28 天,闰年为 29 天,所以,要想实现日期加一,除了要判断月份值外,还需要判断年份是否为闰年。 程序流程如图 所示。 郑州航空工业管理学院毕业设计(论文) 19 图 时间调整程序流程图 开始 控制键有效 ,进入小时调整 等待按键程序 加键有效 减键有效 小时加一 小时减一 控制键有效,进入日期调整 控制键有效,进入分钟调整 等待按键程序 加键有效 减键有效 分种加一 分钟减一 控制键有效,进入月份调整 等待按键程序 加键有效 减键有效 日期加一 日期减一 控制键有效,进入星期调整程序 等待按键程序 加键有效 减键有效 月份加一 月份减一 控制键有效,进入年份调整 等待按键程序 等待按键程序 加键有效 减键有效 星期加一 星期减一 加键有效 减 键有效 年份加一 年份减一 按键有效,跳出时间调整程序。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。