基于DS1307的PIC时钟课设_第1页
基于DS1307的PIC时钟课设_第2页
基于DS1307的PIC时钟课设_第3页
基于DS1307的PIC时钟课设_第4页
基于DS1307的PIC时钟课设_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 PIC16系列单片机课程设计学生姓名: 学 号: 课题项目: 万年历时钟系统 专业班级: 电机与电器 指导教师: 二一一年 五 月 二十 日目 录1. 目 录22. 课程设计目的33. 课程设计题目要求和描述34. 课程设计报告内容35. 系统的软件设计86. 总 结97. 附:实验调试图解108. 参考文献111.课程设计目的:PIC单片机课程设计是电气工程及其自动化专业及相近专业的一门重要的专业实践课,本在PIC单片机课程的基础上,通过硬件设计与软件编程与调试的实践,进一步掌握 PIC 单片机的应用方法,熟练 PIC 单片机的C程序的编写与调试,是毕业设计前的一次重要的实践,为今后走上工

2、作岗位打下坚实的单片机应用基础。2.课程设计题目要求和描述:根据所给的硬件线路原理图与PCB焊接图,焊接印刷线路板并经过初步检查无误。设计一个具有完整功能、有一定工作量与一定难度的单片机应用线路,并绘制能用于仿真的Proteus线路图,编制相应的单片机C语言,分别在Proteus 仿真界面和实物板上调试运行正确。最后用实物进行运行演示,并写出符合规范的课程设计报告。 本课题设计的系统是以 PIC16F887单片机为控制核心,通过实时时钟芯片DS1307构成了一个多功能的万年历时钟系统,详细阐述了整个系统的硬件组成结构、工作原理和系统的软件程序设计。系统采用了字符型LCD液晶模块LM016L作为

3、显示器,界面友好,功耗低;并且具有实时时间,可以显示年、月、日、小时、分钟等时间信息,还有按键调时、闹铃定时等功能。由于软件程序均采用PICC C语言编写,所以还可对其进行必要的移植与升级改造,性价比高。3.课程设计报告内容:该系统以PIC16F887单片机作为核心控制器件,外围主要有实时时钟芯片DS1307、LCD模块LM016L、按键控制、蜂鸣器等模块器件,整个系统线路简单可靠性高。系统结构框图1所示。图1 系统结构框图3.1单片机主控模块:系统采用PIC16F887单片机作为控制核心。本课设板采用的PIC16F887,是 877A的升级,其主要参数与877A类似,但使用更为灵活、有的参数

4、更为细化(如异步通信的波特率为双字节),易于日后的升级,且价格比877A更低。887引脚与877A 兼容,但增加了一些功能。PIC16F887单片机主要负责各个模块的初始化工作;设置定时器、寄存器的初值;读取并处理时间等信息;处理按键响应;控制液晶实时显示等。单片机仿真控制总线路电路连接如图2所示。单片机系统采用4M晶振;RB口采用弱上拉使能,用到其低四位的按键模块接口;RD口低四位为单片机与液晶显示器通信的数据端口,高四位为液晶显示器的控制信号端口;RE0为闹铃的输出端口;SCL和SDA为单片机通过IIC通信与时钟芯片DS1307连接通信的端口; 还有RESET组成系统上电复位电路。图2 单

5、片机仿真控制总线路电路3.2实时时钟日历模块:系统采用DS1307实时时钟芯片。它是一款总线接口的时钟日历芯片,片内含有8个特殊功能寄存器和56bit的SRAM,是一种低功耗的实时时钟芯片。DS1307引脚功能与封装如图3。它的主要技术性能指标:具有秒、分、时、日、星期、月、年的计数功能,并且具有12小时制和24小时制的计数模式,可自动调整每月的天数,具有闰年调整的功能,具有自动掉电保护和上电复位的功能。同时它独立于CPU工作,不受CPU主晶振及其电容的影响,而且计时准确,月累计误差小于10秒。时钟的晶振为32.768kHz,为时钟芯片提供计时脉冲;Vbat为DS1307的备用电源,以便在没有

6、主电源的情况下能够保存时间信息和一些重要的数据;两个电阻为总线的上拉电阻。仿真线路图如4。注:T0口输送给TIM0对外计数端口,以每隔一秒对DS1307读数并显示一次,节省资源。图4 实时时钟日历电路3.3闹铃模块:系统采用蜂鸣器作为闹铃输出。仿真电路连接如图5所示。电路中采用NPN管TIP31来控制蜂鸣器的开关,由图可以看出当SPE引脚为单一电平时,NPN管成单一导通或截止,蜂鸣器不工作;当SPE引脚为高、低电平变化时,NPN管导通与截止交替,蜂鸣器工作。其中R为限流电阻。图5 闹铃电路3.4液晶显示模块:系统中采用字符型LCD液晶模块LM016L作为显示器件显示信息。与传统的LED数码管显

7、示器件相比,液晶显示模块具有体积小、功耗低、显示内容丰富等优点,而且不需要外加驱动电路,现在液晶显示模块已经是单片机应用设计中最常用的显示器件了。图6 液晶显示电路LM016L可以显示2行16个字符,具有8位数据总线D0-D7,和RS、R/W、E三个控制端口,并且带有字符对比度调节和背光设置。仿真及电路连接如图6、图7。图7 液晶显示连接实物电路3.5键盘模块:键盘模块设置了四个按键:SET、ADD、INC、DEC。其中用SET来控制菜单的主模式,有日历时间及闹钟设置;用ADD来控制菜单的副模式,主要是修改位的选择,还有就是对闹钟的开关控制;INC键用来修改时间增加;DEC键用来修改时间减小。

8、仿真电路连接如图6所示。在按键没有输入时,进入单片机四个I/O口的按键状态均为高电平;当有按键按下时,相应的口线被拉低。软件上采用中断与查询结合的方式,对按键状态进行扫描,确保系统的实时性。图8 键盘电路4.系统的软件设计:系统的软件设计可以分为几个部分,首先是各个模块的底层驱动程序编写,而后是系统联机调试,编写上层系统程序。在编写和调试一个大的项目软件程序时,先编写各个子模块的驱动程序,保证每个模块都可以正常工作,做好备份工作,之后再来编写整机程序。本系统软件程序主要包括:液晶LCD1602的底层驱动模块、IIC通信模块、时钟芯片DS1307的底层驱动模块、定时器0外设端口检查系统模块、日历

9、时间设置模块、闹钟模块等。系统的软件流程图如图9。图9 系统软件流程图整个系统的软件设计均采用PICC C语言开发,因此这些器件的底层程序均可以移植到其它系统中,这就是采用C语言开发的最大的优点。 5.总结:通过对PIC单片机课程设计硬件设计的专业实践后,再在结合PIC单片机课程的软件编程基础上,经过不断的调试与实践,进而掌握了 PIC 单片机的应用方法,并能较熟练编写与调试PIC单片机的C程序。最后万年历时钟系统在经组装、调试后,可以较稳定运行。同时该系统稍加改造,就可以作为工业实时采集中的一个模块。附:实验调试图解1、开机界面(欢迎语)2、时钟显示3、时钟设置4、闹钟设置5、闹钟开关参考书目:1 江和,PIC16 系列单片机C程序设计与PROTEUS仿真,北京航空航天大学出版社,2010.6 2 DataSheet,Microchip,Ltd.PIC16F87XA 28/40/44-Pin Enhanced Flash Microcontrollers,DS39582B,20

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论