基于单片机的宠物喂食器电路设计 I 摘要摘要 本设计所研究的是实现一个宠物自动喂食器,即先将宠物饲料放入其中,通过设 定五个喂食时间点,当到达这一时间点后,系统发出喂食信号吸引宠物,自动进行喂 食本设计主要研究如何设定五个时间点并发出喂食信号宠物喂食器系统主要包括 单片机控制、自动开关和蜂鸣器提示、倒计时间设定系统喂食器的喂食过程,通过 键盘设定五个倒计时间,当依次到达这五个时间时,发光二极管发光,蜂鸣器发出响 声,吸引宠物过来进食并自动投放食物本设计解决了工作时或节假日时由于主人不 在不能对宠物进行喂食,避免了宠物由于饮食不正常所产生的问题 在整个系统中,利用单片机对各个系统进行控制 倒计时系统时间通过六位七段数 码管显示出来利用键盘设定五个倒计时间,单片机不停的读取时间,并判断是否到 达喂食时间开关系统电阻和发光二极管表示 ,发光二级管收到低电平时导通表示 开关打开投放喂食同时接有蜂鸣器,当到达喂食时间后蜂鸣器发出响声吸引宠物进 行喂食 关键词:智能;定时喂养;单片机 AT89S52; 基于单片机的宠物喂食器电路设计 II Abstract The study design is to achieve an automatic pet feeder, pet feed into which will set the five fed point, when you reach this point in time, automatically feeding. The main point of how to set the time within the pet food put out. Pet feeder system includes MCU control, automatic switch and music alert system, the remaining time setting system. Feeder feeding process, the five remaining time set by the keyboard, when the order reaches the five time, while the timer chip to send a signal relay and music, music playback chip, a piece of music attracted the pet, the relay switch is closed So that a red light emitting diode, said switch delivery of food. This design solves the holidays when work or not is not the owner of the pet to feed, to avoid the pet food is not normal because the problems arising. Throughout the system, the use of single chip control system of each. Countdown to the system time by six out of seven segment digital display. Using the keyboard to set the five remaining time, microcontroller reads the stop time and to determine whether the feeding time arrives. Switching system by the relay and the light-emitting diode, said switch is closed when the relay received high light-emitting diode, said switch is running feeding. Tip has a music system, when the arrival time after feeding a piece of music tips music playback chip to feed pets. Key words: intelligent; automatic feeding; MCU 基于单片机的宠物喂食器电路设计 目 录 中文摘要 英文摘要 1 绪论.1 1.1 设计意义1 1.2 设计要求1 2 设计方案2 2.1 按键模块2 2.2 自动开关模块2 2.3 蜂鸣器模块2 2.4 显示模块3 3 硬件电路的设计3 3.1 单片机3 3.1.1 AT89S52 单片机的简介 .3 3.1.2 AT89S52 的时钟介绍 .5 3.1.3 单片机中断的介绍 .7 3.2 电源电路8 3.3 时钟电路8 3. 4 复位电路 9 3.5 LED 数码管显示 .10 3.5.1 数码管显示简介10 3.5.2 数码管编码表 .11 3.6 开关控制.11 3.7 单片机的去抖动.12 4 电路的软件部分.13 参考文献46 附录 1 47 附录 2 48 附录 3 49 致谢50 基于单片机的宠物喂食器电路设计 1 1 绪论 1.1 设计意义 单片机自 20 世纪 70 年代问世以来,以其极高的性能价格比受到人们的重视和关 注,应用广泛,发展快速。
单片机具有体积小、速度快、抗干扰能力强,环境要求不 高,性能可靠和价格低廉等优点,通常在其外部配置外围电路就可构成一完整的控制 系统由于具有以上优点,在我国,单片机已广泛应用与工业自动化控制、自动检测、 智能仪器仪表、家电电器、电力电子、武器装备、机电一体化设备等各个方面 单片机,亦称单片微电脑或单片微型计算机它是把中央处理器(CPU)、随机存取 存储器(RAM)、只读存储器(ROM)、输入/输出端口(I/0)等主要计算机功能部件都集成 在一块集成电路芯片上的微型计算机 现在越来越多的家庭都饲养有猫、狗等宠物,但是由于工作等原因,宠物的饮食 规律得不到一定的保障,宠物喂食器可以解决这一问题,宠物自动喂食器可以定时定 量的进食,且设计简单方便,有一定的实用价值 1.2 设计要求 利用单片机的定时功能设计一个宠物自动喂食盒的电路,要求:可以通过键盘输 入至少 3 个倒计时时间,每一个倒计时时间到后,发出宠物开始喂食信号; 扩展功能: 按照 年/月/日/时/分 的格式输入宠物进食时间; 基于单片机的宠物喂食器电路设计 2 2 设计方案 分析本题,根据设计要求先确定了本系统的整体设计原理框图如图 1: 按键模块 单片机 自动开关模块 蜂鸣器 显示模块 图 1 系统整体设计原理框图 2.1 按键模块 采用 7 个触键开关, 可实现五个倒计时间依次键入,同时还有两个调时按键, 再一个复位按键。
2.2 自动开关模块 采用三极管和发光二极管近似表示 本系统是基于 52 单片机的宠物自动喂食的 设计,用电阻和发光二极管代替比较容易,当发光二级管接收到一个低电平时开关闭 合,发光二极管导通发出绿光表示自动投食 2.3 蜂鸣器模块 采用一个三极管和一个蜂鸣器,由蜂鸣器发出响声吸引宠物过来进食 当发光二极管亮灯时,蜂鸣器接收到一个低电平,蜂鸣器器发出响声吸引宠物过来进 食 2.4 显示模块 选用数码管显示,用普通的数码管显示简单的数字、符号、字母只需一次显示 5 个倒计时间,而且每个时间只需显示 6 个数字,即年/月/日 基于单片机的宠物喂食器电路设计 3 3 硬件电路的设计 3.1 单片机 3.1.1 AT89S52 单片机的简介 AT89S52 是一种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器使用 Atmel 公司高密度非易失性存储器技术制造,与工 80C51 产品 指令和引脚完全兼容片上 Flash 允许程序存储器在系统可编程,亦适于常规编程器 AT89S52 具有以下标准功能: 8k 字节 Flash,256 字节 RAM,32 位 I/O 口线, 看门狗定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级中断结 构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52 可降至 0Hz 静态逻辑操 作,支持 2 种软件可选择节电模式空闲模式下,CPU 停止工作,允许 RAM、定时 器/计数器、串口、中断继续工作掉电保护方式下,RAM 内容被保存,振荡器被冻 结,单片机一切工作停止,直到下一个中断或硬件复位为止 3.1.1.1 主要性能 与 MCS-51 单片机产品兼容 8K 字节在系统可编程 Flash 存储器 1000 次擦写周期 全静态操作:0Hz~33Hz 三级加密程序存储器 32 个可编程 I/O 口线 三个 16 位定时器/计数器 八个中断源 全双工 UART 串行通道 低功耗空闲和掉电模式 掉电后中断可唤醒 看门狗定时器 双数据指针 掉电标识符 基于单片机的宠物喂食器电路设计 4 3.1.1.2AT89S52 双列直插式引脚图 VCC P0.5/AD5 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.4/AD4 P0.3/AD3 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.2/A10 P2.1/A9 P2.7/A15 P2.6/A14 P2.5/A13 P2.4/A12 P2.3/A11 PSEN ALE/PROG EA/VPP T2/P1.0 T2EX/P1.1 P1.2 P1.3 P1.4 MOSI/P1.5 MISO/P1.6 SCK/P1.7 RXD/P3.0 TXD/P3.1 T0/P3.4 T1/P3.5 XTAL2 XTAL1 GND RST 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 15 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 AT89S52 /P3.7RD /P3.6WR /P3.2INT0 /P3.3INT1 图 2.1 AT89S52 双列直插式引脚图 3.1.1.3 端口介绍 P0 口:P0 口是一个 8 位漏极开路的双向 I/O 口。
作为输出口,每位能驱动 8 个 TTL 逻辑电平对 P0 端口写“1”时,引脚用作高阻抗输入当访问外部程序和数据 存储器时,P0 口也被作为低 8 位地址/数据复用在这种模式下,P0 具有内部上拉电 阻在 flash 编程时,P0 口也用来接收指令字节;在程序校验时,输出指令字节 程序校验时,需要外部上拉电阻 P1 口:P1 口是一个具有内部上拉电阻的 8 位双向 I/O 口,p1 输出缓冲器能驱动 4 个 TTL 逻辑电平对 P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为 输入口使用作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流 (IIL) 此外,P1.0 和 P1.2 分别作定时器/计数器 2 的外部计数输入(P1.0/T2)和 时器/计数器 2 的触发输入(P1.1/T2EX) 在 flash 编程和校验时,P1 口接收低 8 位 地址字节 基于单片机的宠物喂食器电路设计 5 P2 口:P2 口是一个具有内部上拉电阻的 8 位双向 I/O 口,P2 输出缓冲器能驱动 4 个 TTL 逻辑电平对 P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为 输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流 (IIL) 在访问外部程序存储器或用 16 位地址读取外部数据存储器(例如执行 MOVX @DPTR)时,P2。