logo资料库

pic 数字钟.doc

第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
资料共8页,全文预览结束
1、课程设计目的
如今单片机在生活中应用非常广泛,许多电子产品、自动控制中都有举足轻重的地位。PIC16系列单片机技术
2、课程设计题目描述和要求
根据硬件电路原理图与PCB板实际线路,设计一个具有功能完善、有一定工作量及难度的PIC单片机应用设计
根据要求,本次课设定位于基于PIC16F887单片机的数字电子钟设计。以单片机为控制核心,通过与外围
3、课程设计报告内容
3.1设计方案
本次课程设计作品为数字电子时钟,运用DS1307作为时钟计数来源,TC74温度传感器采集当前环境温度
按键LCD显示
输入
PIC16F887
单片机控制
时钟芯片
温度传感器蜂鸣器
通信报时
3.2硬件电路及说明
3.2.1 LCD模块原理图如下:
该模块与单片机D口相连接,运用4位传送数据与指令,节省I/O口空间。10K可调电阻用来调节字符显示亮
3.2.2温度传感器TC74与时钟芯片DS1307
TC74与DA1307通过与PIC单片机I2C模块通信来传送数据,单片机通过传送不同地址来辨别
3.2.3按键接口电路
下拉电阻防止过电流。单片机B口内部弱上拉使能,外部不接上拉电阻,节省元件。
3.2.4蜂鸣器电路
用三极管放大来驱动蜂鸣器,减小I/O输出电流,有利保护单片机。基极接1K电阻来限流保护,防止
3.3软件设计及相关说明
《PIC单片机》 课程设计 学生姓名: 学 号: 专业班级: 指导教师: 二○○二 年 五 月 四 日 目 录
1、课程设计目的............................................................. 错误!未定义书签。 2、课程设计题目描述和要求......................................... 错误!未定义书签。 3、课程设计报告内容..................................................... 错误!未定义书签。 4、实验验证...............................................................................................6 5、总结....................................................................................................... 8 6、参考资料...............................................................................................8
1、课程设计目的 如今单片机在生活中应用非常广泛,许多电子产品、自动控制中都有举足轻 重的地位。PIC16 系列单片机技术成熟,功能齐全,能够满足大多数场合的需求。 通过本次课设的硬件设计,软件编写及调试,能够综合应用单片机的大多数模块, 提高编程开发能力,进一步掌握 PIC 单片机的应用方法,为以后单片机的开发奠 定基础。 2、课程设计题目描述和要求 根据硬件电路原理图与 PCB 板实际线路,设计一个具有功能完善、有一定工 作量及难度的 PIC 单片机应用设计,运用 C 语言编程,并能在 protues 仿真界面 及实际电路中运行、调试。 根据要求,本次课设定位于基于 PIC16F887 单片机的数字电子钟设计。以单 片机为控制核心,通过与外围设备:YB1602LCD 模块、独立按键、DS1307 时钟芯 片、TC74 温度传感器、蜂鸣器及基本晶振、复位电路构成多功能的数字电子钟。 本系统通过 LCD 与按键实现人机友好界面,通过按键修改当前时钟基数,通过蜂 鸣器实现整点报时功能,硬件设备简单低耗,功能较完善。 3、课程设计报告内容 3.1 设计方案 本次课程设计作品为数字电子时钟,运用 DS1307 作为时钟计数来源,TC74 温度传感器采集当前环境温度,在单片机控制下让 LCD 显示当前时间与实时温 度。通过 3 个独立按键来实现人机对话,可以改变当前时钟年、月、日、星期、 小时、分钟、秒等具体时间,运用蜂鸣器进行整点报时,整个设计具有较完善的 功能。系统结构框图如下: 按键 输入 时钟芯片 温度传感器 通信 PIC16F887 单片机控制 LCD 显示 蜂鸣器 报时
3.2 硬件电路及说明 3.2.1 LCD 模块原理图如下: 该模块与单片机 D 口相连接,运用 4 位传送数据与指令,节省 I/O 口空间。 10K 可调电阻用来调节字符显示亮度。仿真图中背光接口不能设置,实际电路图 中有。 3.2.2 温度传感器 TC74 与时钟芯片 DS1307 TC74 与 DA1307 通过与 PIC 单片机 I2C 模块通信来传送数据,单片机通过传 送不同地址来辨别与哪个芯片通信。DS1307 芯片的地址为 0B1101000X,最低位为 0 表示写,为 1 表示读。TC74 地址有两个,仿真地址为 0b1001101,实物硬件电 路地址为 0x1001000。DS1307 的 OUT 引脚可设置输出方波,通过与 LED 相连,可 用来辨别时钟芯片是否工作,外接 32.768KHz 高精度晶振,产生 1s 的时钟基准。 同时,3 号引脚接备用电池,使得时钟芯片在单片机掉电是能正常计时,当单片 机正常工作时,时间仍然准确。通信接口必须接 2 个 4.7K 上拉电阻才能正常通 信。
3.2.3 按键接口电路 下拉电阻防止过电流。单片机 B 口内部弱上拉使能,外部不接上拉电阻,节 省元件。 3.2.4 蜂鸣器电路 用三极管放大来驱动蜂鸣器,减小 I/O 输出电流,有利保护单片机。基极接 1K 电阻来限流保护,防止 RC1 为高电平时输出电流太大,烧毁三极管,当 RC1 为高电平时蜂鸣器响。 3.3 软件设计及相关说明 3.3.1 软件设计思路 1、单片机、LCD 显示模块、DS1307 模块的初始化 2、主函数中,通过判断功能键标志位来决定程序走向,语句为 While(SET==0)、while(SET>=1) 若功能键标志位为 0,则读取 DS1307 及 TC74 数据,并显示,这是不 显示光标,同时检测是否为整点,当时间为整点时,蜂鸣器报时。 若功能键标志位为 1,则执行修改时钟程序,让 LCD 显示时显示光标, 表示正在执行修改,有利于人机界面的合理化。令 CH=1,让 DS1307 停止工作, 当退出修改时让 CH=0,时钟芯片开始工作。 3、当功能键按下,同时启动定时器,定时时间到,产生中断,中断计数变
量加一,当变量的值达到预定值时,强制 SET=0,退出修改模式,防止认为不小 心按下功能键,是系统的功能更加人性化。按下功能键时,位选键与增加键才能 作用,则位选键与增加键的相关程序应放在 while(SET>=1)程序中。 3.3.2 软件设计结构图 开始 单片机、LCD、 DS1307 初始化 SET=0 SET!=0 按下 功能键 推出修改 修改时间 写入时钟芯片 读取时间 并显示 整点 蜂鸣器响 3.3.2 相关程序说明 主函数格式: while(1) { while(SET==0) { } 读取时钟芯片在数组中的程序; 显示时间数据程序; 蜂鸣器相关程序; while(SET>=1) { } } 调用位选键与修改键的相关程序; 4、实验验证 时钟、温度正常显示模式界面
按下功能键的界面 按下位选键后可修改月份,修改为 9 月份后的界面
当第一次按下 SET 键后,显示模式为显示光标并且光标闪烁。按下位选键可选着 修改的时间,按下“加”键盘,可对年、月、日,、小时、分钟、秒进行修改, 且修改后的值为新的计数值起点。当进行修改时,停止对时钟芯片与温度传感器 进行读操作,故 LCD 显示的值为修改值。当第二次按下 SET 键时,表示要退出修 改模式,进入正常计时模式,不显示光标。在修改模式中,若连续 10s 没有按下 键盘,则系统自动退出修改模式,有利于防止意外按下功能键,提高系统的可靠 性与人性化。整个系统的操作结果符合设计要求,功能完善。 5、总结 本次课程设计锻炼了我自学能力,同时也提高我综合运用能力,经过查阅芯 片资料,参考书本内容,独立完成了数字电子时钟的设计,功能达到预期的效果。 在本次设计中,程序的调试是我最大的收获,没有那个程序能一下子就成功,只 有经过不断的调试,查找出错误的原因,才是编程能力的实际体现。同时程序结 构的安排也是影响程序运行的一个很重要的因素。最后,我还从此次设计中明白, 程序是靠一步一步写出来的,只有动手写才能真正理解程序,光看资料不动手是 写不出好的程序,也不可能完成任务。 参考书目: [1]江和,《PIC16 系类单片机 C 程序设计与 PROTUES 仿真》 ,北京航空航天大学 出版社,2010.6 [2]江和、鲍光海,《PIC 单片机课程设计指导书》 ,2012.3
分享到:
收藏