多功能电子保姆机的设计与实现毕业论文(编辑修改稿)内容摘要:

借助微处理器的定时器 /计数器可实现电子保姆机功能。 然而系统时钟误差较大,电子钟的积累误差也可能较大,所以可以通过误差修正软件加以修正,或者在设计中加入高精度时钟日历芯片,以精确时间。 另外很多功能不同的单片机是兼容的,这就更便于实现产品的多功能性。 内蒙古科技大学毕业设计说明书(毕业论文) 6 第三章 基于单片机的电子保姆机硬件设计 在比较了以上的三 种实现方案之后,考虑单片机货源充足、价格低廉,可软硬件结合使用,能够较方便的实现系统的多功能性,故采用单片机作为本设计的硬件基础。 电子保姆机包括时钟日历芯片电路、显示电路、按键电路、供电电源、闹铃电路、继电器控制电路等几部分。 另外,本设计要求该电子保姆机能够采集环境温度,所以还需要温度采集电路 【 3】。 硬件电路框图参照图。 该系统使用 ATmega128 单片机作为核心,通过读取时钟日历芯片 DS1302 和温度传感器 DS18B20 的数据,继电器定时控制家用电器工作,完成此电子保姆机的主要功能—— 时钟 /日历、 环境温度采集以及家用电器定时工作等。 使用比较通用的 4 位 8 段共阳 LED 数码管,做 4 位显示,分别显示时间、日期、年 200X,以及环境温度值 【 4】。 A T m e g a 1 2 8温 度 传 感 器D S 1 8 B 2 0继 电 器+ 5 V 电 源L E D 显 示键 盘时 钟 日 历 芯 片D S 1 3 0 2家 用 电 器+ 3 V 电 源温 度 报 警 电路闹 铃 电 路 图 多功能电子保姆机硬件系统框图 键盘是为了完成时钟 /日历的校对和日历 /温度的显示功能。 继电器作为家用电器定时开关,控制家用电器工作。 此电子保姆机还具有闹铃功能,所以设计有闹铃电路,进行声音响铃。 整个电路使用了两种电源, +5V 电源将为整个电路供电。 而 +3V 电源仅作为 DS1302的备用电源。 当 +5V 电源被切断后, DS1302 启用 +3V 电源,可以保持 DS1302 继续工作。 当 +5V 电源恢复供电, LED 依旧显示当前时间,而不会因为断电使系统复位到初始化时间,避免了重新校时的麻烦。 具体电路图请参见附录 A。 内蒙古科技大学毕业设计说明书(毕业论文) 7 单片机的选择 AVR 单片机简介 所谓单片机,是指用一个芯片组成的微机系统。 片内包括了 CPU,程序存储器、数据存储器、定时器 /计数器及各种 I/O 口。 AVR 单片机是 ATMEL 公司 1997 年推出的全新配置精简指令集( RISC)单片机系列。 片内程序存储器采用 Flash 存储,可反复编程修改上千次,便于新产品开发; 程序高度保密,避免非法窃取;速度快,大多数指令只用 1 个晶振周期,而 MCS51 单片机单周期指令也需 12 个晶振周期;能采用 C 语言编程,从而高效快速的开发目标产品。 本设计选用 ATMEGA128 , ATMEGA128 为基于 AVR RISC 结构的 8位低功耗 CMOS 微处理器。 ATMEGA128 特点 ( 1) 高性能、低功耗的 AVR 8 位微处理器; ( 2) I/O 和封装 – 53 个可编程的 I/O脚; – 64 引脚 TQFP 与 64 引脚 MLF 封装; ( 3) 工作电压 : ~ ( ATmega128); ( 4) 速度等级 : 0~ 16 MHz( ATmega128); ( 5) 32个工作寄存器; ( 6) 16根地址线 PA PC ; ( 7) 8根数据线 PA。 ATmega128的引脚配置如图 : 图 Atmega128 芯片引脚图 内蒙古科技大学毕业设计说明书(毕业论文) 8 各引脚说明如下: VCC:数字电路的电源; GND:地; 端口 A(PA7PA0):端口 A为 8位双向 I/O 口,并具有可编程的内部上拉电阻。 其输出缓冲 器具有对称的驱动特性,可以输出和吸收大电流。 作为输入使用时,若内部上拉电阻使 能,则端口被外部电路拉低时将输出电流。 复位发生时 端口 A为三态,端口 A也可以用做 其他不同的特殊功能。 端口 B(PB7PB0):端口 B为 8位双向 I/O 口,并具有可编程的内部上拉电阻。 其输出缓冲 器具有对称的驱动特性,可以输出和吸收大电流。 作为输入使用时,若内部上拉电阻使 能,则端口被外部电路拉低时将输出电流。 复位发生时端口 B为三态。 端口 C(PC7..PC0):端口 C 为 8 位双向 I/O 口,并具有可编程的内部上拉电阻。 其输出 缓冲器具有对称的驱动特性,可以输出和吸收大电流。 作为输入使用时,若内部上拉电 阻使能,则端口被外部电路拉低时将输出电流。 复位发 生时端口 C为三态。 端口 D(PD7PD0):端口 D 为 8 位双向 I/O 口,并具有可编程的内部上拉电阻。 其输出缓 冲器具有对称的驱动特性,可以输出和吸收大电流。 作为输入使用时,若内部上拉电阻 使能,则端口被外部电路拉低时将输出电流。 复位发生时端口 D 为三态。 端口 E(PE7PE0):端口 E为 8位双向 I/O 口,并具有可编程的内部上拉电阻。 其输出缓冲 器具有对称的驱动特性,可以输出和吸收大电流。 作为输入使用时,若内部上拉电阻使 能,则端口被外部电路拉低时将输出电流。 复位发生时端口 E为三态。 端口 F(PF7PF0):端口 F 为 ADC 的模拟输入引脚。 如果不作为 ADC 的模拟输入,端口 F 可以作为 8 位双向 I/O 口,并具有可编程的内部上拉电阻。 其输出缓冲器具有对称的驱 动特性,可以输出和吸收大电流。 作为输入使用时,若内部上拉电阻使能,则端口被外 部电路拉低时将输出电流。 复位发生时端口 F 为三态。 如果使能了 JTAG 接口,则复位 发生时引脚 PF7(TDI)、 PF5(TMS) 和 PF4(TCK) 的上拉电阻使能。 端口 F 也可以作为 JTAG 接口。 端口 G(PG4PG0):端口 G为 5位双向 I/O 口,并 具有可编程的内部上拉电阻。 其输出缓冲 器具有对称的驱动特性,可以输出和吸收大电流。 作为输入使用时,若内部上拉电阻使 能,则端口被外部电路拉低时将输出电流。 复位发生时端口 G为三态。 在 ATmega103 兼 容模式下,端口 G 只能作为外部存储器的所存信号以及 32 kHz 振荡器的输入,并且在 复位时这些引脚初始化为 PG0 = 1, PG1 = 1 以及 PG2 = 0。 PG3 和 PG4 是振荡器引脚。 内蒙古科技大学毕业设计说明书(毕业论文) 9 RESET:复位输入引脚。 超过最小门限时间的低电平将引起系统复位。 低于此时间的脉 冲不能保证可靠复位。 XTAL1:反向振荡器放大器及片内时钟操作电路的输入。 XTAL2:反向振荡器放大器的输出。 AVCC: AVCC为端口 F以及 ADC转换器的电源,需要与 VCC相连接,即使没有使用 ADC也应 该如此。 使用 ADC 时应该通过一个低通滤波器与 VCC连接。 AREF: AREF为 ADC的模拟基准输入引脚。 PEN: PEN是 SPI串行下载的使能引脚。 在上电复位时保持 PEN为低电平将使件进入 SPI 串行下载模式。 在正常工作过程中 PEN 引脚没有其他功能。 时钟日历芯片 DS1302 常用的实时时钟芯片有 DS1288 DS121 DS164 DS1302。 每种芯片的主要时钟功能基本相同,只是在引脚数量、备用电池的安装方式、计时精度和扩展功能等方面略有不同。 DS12887 与 DS1216 芯片都有内嵌式锂电池作为备用电池; X1203 引脚少,没有嵌入式锂电池,跟 DS1302 芯片功能相似,只是相比较之下, X1203 与 ATmega128搭配使用时占用 I/O 口较多。 DS1643 为带有全功能实时时钟的 8K 8 非易失性 SRAM,集成了非易失性 SRAM、实时时钟、晶振、电源掉电控制电路和锂电池电源, BCD 码表示的年、月、日、星期、时、分、秒,带闰年 补偿。 同样, DS1643 拥有 28 只管脚,硬件连接起来占用微处理器 I/O 口较多,不方便系统功能拓展和维护。 故而从性价比和货源上考虑, DS1302 芯片读写靠时序控制且具有写保护位,抗干扰效果好, 故本设计采用实时时钟日历芯片 DS1302。 DS1302 简介 DS1302 是美国 DALLAS 公司推出的一种高性能、低功耗的实时时钟 日历 芯片,附加 31 字节静态 RAM,采用 SPI 三线接口与 CPU 进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和 RAM 数据。 实时时钟可提供秒、分、时、日、星期、月和年,一个月 小于 31 天时 可以自动调整,且具有闰年补偿功能。 工作电压宽达 ~。 采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后 备 电源进行涓细电流充电的能力。 有主电源和备份电源双引脚,而且备份电源可由大容量电容(> 1F)来替代。 需要强调的是, DS1302 需要使用 的晶振 【 5】。 内蒙古科技大学毕业设计说明书(毕业论文) 10 DS1302 引脚说明 DS1302 引脚图参照图。 1 2 3 4 5 6ABCD654321DCBAT i t leN u m be r R e v i s i onS i z eBD a t e : 9 Jun 20 08 S he e t o f F i l e : C : \ D o c um e nt s a n d S e tt i ng s \ A d m i ni st r a t or \桌面 \常亮毕业设计 \电路图 \多功能电子时钟毕业设计电路图 .ddbD r a w n B y :V C C 11X12X23G N D4V C C 2 8S C L K 7I / O 6R S T 5D S 13 02 图 芯片引脚图 其的引脚功能参照表。 表 DS1302 引脚功能说明 引脚号 名称 功能 1 VCC1 备份电源输入 2 X1 晶振输入 3 X2 晶振输出 4 GND 地 5 RST 复位 6 I/O 数据输入 /输出 7 SCLK 串行时钟 8 VCC2 主电源输入 DS1302 控制字和读写时序说明 在编程过程中要注意 DS1302 的读写时序。 DS1302 是 SPI 总线驱动方式。 它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。 要想与 DS1302 通信,首先要先了解 DS1302 的控制字。 DS1302 的控制字如 表 表 DS1302 控制字(即地址及命令字节) BIT7 BIT6 BIT5 BIT4 BIT 3 BIT 2 BIT 1 BIT 0 1 RAM A4 A3 A2 A1 A0 RD CK WR 控制字的作用是设定 DS1302 的工作方式、传送字节数等。 每次数据的传输都是由控制字开始。 控制字各位的含义和作用如下: 1. BIT7: 控制字的最高有效位 , 必须是逻辑 1,如果它为 0,则不能把数据写入到 DS1302 中。 2. BIT 6:如果为 0,则表示存取日历时钟数据,为 1 表示存取 RAM 数据; 内蒙古科技大学毕业设计说明书(毕业论文) 11 3. BIT 5 至 BIT 1( A4~ A0): 用 A4~ A0 表示,定义片内寄存器和 RAM 的地址。 定义如下: 当 BIT 6 位 =0 时,定义时钟和其他寄存器的地址。 A4~ A0=0~ 6,顺序为秒、分、时、日、月、星期、年的寄存器。 当 A4~ A0=7,为芯片写保护寄存器地址。 当 A4~A0=8,为慢速充电参数选择寄存器。 当 A4~ A0=31,为时钟多字节方式选择寄存器。 当 BIT 6=1 时,定义 RAM 的地址, A4~ A0=0~ 30,对应各子地址的 RAM,地址31 对应的是 RAM 多字节方式选择寄存器。 4. BIT 0(最低有效位):如为 0,表示要进行写操作,为 1 表示进行读操作。 控制字总是从最低位开始输出。 在控制字指令输入后的下一个 SCLK 时钟的上升沿时,数据被写入 DS1302,数据输入从最低位( 0 位)开始。 同样,在紧跟 8 位的控制字指令后的下一个 SCLK 脉冲的下降沿,读出 DS1302 的数据,读出的数据也是从最低位到最高位。 R S TR S TS C L KI / OS C L KI / OR / WR / WA 0A 0A 1 A 2 A 3 A 4 R / C 1A 1 A 2 A 3 A 4 R / C 1D 0D 0D 1 D 2D 3 D 4 D 5 D 6 D 7D 1 D 2 D 3 D 4D 5D 6 D 7单 字 节 读单 字 节 写 图 DS1302 数据读写时序 DS1302 的数据读写方式有两种,一种是单字节操作方式,一种是多字节操作方式。 每次仅写入或读出一个 字节数据称为单字节操作,每次对时钟 /日历的 8 字。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。