。虽然这只时钟的工作流程,软件设计可分为以下几个功能模块主程序模块主程序主要用于系统初始化设置计时缓冲区的位置及初值,设置的工作方式定时器的工作方式和计数初值等参数。主程序流程如下图所示。开始显示单元清否是地址指针指向计时缓冲区调用时间设置程序主程序流程图计时模块即定时器中断子程序,完成刷新计时缓冲区的功能。系统使用的晶振,假设定时器工作在方式,则定时器的最大定时时间为,这个值远远小于。因此本系统采用定时器与软件循环相结合的定时方法。设定时器工作在方式,每隔溢出中断次,则循环中断次延时时间是,上述过程重复次为分,分计时次为小时,小时计时次则时间重新回到。因定时器工作在方式,则定时对应的定时器初值为,即,。但应当指出从响应中断到完成定时器初值重装这段时间,定时器并不停止工作,而是继续计数。因此,为了确保能准确定时,重装的定时器初值必须加以修正,修正的定时器初值必须考虑到从原定时器初值中扣除计数器多计的脉冲个数。由于定时器计数脉冲的周期恰好和机器周期吻合,因此修正量等于从响应中断到重装完为止所用的机器周期数。响应中断通常要个机器周期。经过测试,定时器重装的计数初值设为,可以满足精度要求。另外,单片机只有二进制加法指令,而时间是按十进制递增,因此用加法指令后必须进行二十进制转换。计时模块流程图如下图所示。秒单元加,计数器清计数器开始重装定时器初值计数器加否是否到是秒单元清,分单元加否分到是分单元清,时单元加否小时到是时单元清中断返数码管显示程序将时间存入显示缓冲区相应的位置循环扫描显示定时器计数器中断服务程序,按键处理程序,,,,回返回定时器计数器中断服务程序流程图系统主程序设计采用位软件译码动态显示程序使用单片机,晶振,输出字码段,口输出位选码用共阳数码管,为调时位选择按键,为加键,为减键片内的单元为数码管的显示缓冲区,分别为秒,分,小时计数单元为计数器,为调时按键计数器定时器计数器中断程序入口主程序延时子程序,延时子程序子程序设计延时子程序,延时子程序最小系统第章软件设计工作流程图系统主程序设计子程序设计第章系统仿真简介系统仿真第章总结参考文献致谢第章系统方案设计设计要求准确计时,以数字形式显示时分秒的时间。小时以小时计时形式,分秒计时为进位。校正时间功能,即能随意设定走时时间。设计直流电源,系统时钟电路复位电路器有个外接端子,个是电源的正负极端子,最后个是脉冲信号输出,只要将此信号输出端接到单片机的口端子上便可以实现距离检测。其中,单片机的引脚作为信号的输入端接收来自传感器输出的信号,采用外部中断进行计数。车轮每转圈,霍尔传感器就产生个脉冲信号,根据霍尔效应原理,当霍尔片处在磁场中时,霍尔传感器的输出端输出低电平。当车轮转动圈时小磁铁提供个磁场,则霍尔传感器输出次低电平完的工具。虽然目前国内推广刚起步,但已受到单片机爱好者从事单片机教学的教师致力于单片机开发应用的科技工作者的青睐。是世界上著名的工具仿真软件,从原理图布图代码调试到单片机与外围电路协同仿真,键切换到设计,真正实现了从概念到产品的完整设计。是目前世界上唯将电路仿真软件设计软件和虚拟模型仿真软件三合的设计平台,其处理器模型支持次简单的课程设计,但通过这次课程设计我们了解了课程设计的般步骤,和设计中应注意的问题。设计本身并不是有很重要的意义,而是同学们对待问题时的态度和处理事情的能力。至于设计的成绩无须看的太过于重要,而是设计的过程,设计的思想和设计电路中的每个环节,电路中各个部分的功能是如何实现的。各个芯片能够完成什么样的功能,使用芯片时应该注意那些要点。同个电路可以用那些芯片实现,各个芯片实现同个功能的区别。另外,我们设计要从市场需求出发,既要有强大的功能,又要在价格方面比同等档次的便宜。在这次设计过程中,我也对画图等软件有了更进步的了解,这使我在以后的工作中更加得心应手。感谢指导老师的耐心指导,使我们的课程设计能够顺利的完成,和等,年即将增加和系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持和等多种编译器。系统仿真第章总结做了两周的课程设计,有很多的心得体会,有关于单片机的,也有关于模电数电等基础科目的。因为单片机已经很久没复习,刚拿到题目,不知道从哪入手,后来通过对书本的回顾,加深了对单片机的记忆。有些知识会迁移和联系模电数电。课堂教学考虑到大多数同学的需求,主要强调基本基本知识基本理论基本方法基本技能。而这次设计正是为我们提供了个深入学习探索的机会,成为课堂教学的有益补充。我们正面临就业问题,这次课设给了我们个机会去试验。单片机理论的学习是为课程的设计作准备的,但有时学习的理论也解决不了实践中的问题。实践中获得的知识能让我对单片机的知识有更好的认识和理解。虽然这次的课程设计我参考了些文献资料,没有做到创新,但在对程序的读写过程中我明白了许多。这次课程设计的最大收获是只有把理论用到实践中我们才能真正掌握好所学知识。参考文献朱兆优等单片机原理与应用北京电子工业出版社何立民单片机应用系统设计北京北京航空航天大学出版社楼然笛单片机开发北京人民邮电出版社谢维成单片机原理与应用清华大学出版社黄同成单片机原理及应用中国铁路出版社致谢我们学习了数字电子电路和模拟电子电路,对电子技术有了些初步了解,但那都是些理论的东西。通过这次数字电子钟的课程设计,我们才把学到的东西与实践相结合。从中对我们学的知识有了更进步的理解。在此次的数字钟设计过程中,更进步地熟悉了芯片的结构及掌握了各芯片的工作原理和其具体的使用方法。也锻炼了自己独立思考问题的能力和通过查看相关资料来解决问题的习惯成次数据采集,从而产生信号。霍尔传感器检测并输出信号到单片机的计算脉冲输入端,引起单片机的中断,对脉冲计数,当计数达到特定的次数时,里程就会增加,单片机对里程进行计算后,通过接口电路将计算好的结果传送到数码管并显示出来。存储电路存储电路的作用是储存上次的里程金额和等待时间。本设计采用公司的可擦除存储芯片,采用两线串行的总线和单片机通讯,芯片内的信息可以在断电的情况下保存年以上,而且采用脚的封装,使用方便。存储电路如图所示。图中是上拉电阻,其作用是减少的静态功耗。由于的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线时钟脉冲和数据地址与单片机和口连接,进行传送数据。图存储电路时钟显示电路本设计采用基于的时钟电路,空车时显示当前时间。是美国公司推出的种高性能低功耗带的实时时钟电路,的引脚排列,其中为后备电源,为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。和是振荡源,外接晶振。是复位片选线,通过把输入驱动置高电平来启动所有的数据传送。为串行数据输入输出端双向,为时钟输入端。如图所示。图时钟显示电路第四章软件系统设计本系统的软件设计主要分为系统主程序数据处理子程序等待时间计时子程序和键盘扫描子程序四个模块,下面对每块进行介绍。系统主程序本设计中采用了主程序调用各个子程序的方法。在函数编写开始,要进行初始化,包括对系统初始化和对硬件设备进行初始化,并使硬件处于就绪状态。在主程序模块中,需要完成对各接口芯片的初始化出租车起价和单价的初始化中断向量的设计以及开中断循环等待等工作。系统主程序流程图如图所示。图系统主程序流程图数据处理子程序每当霍尔传感器输出个低电平信号就使单片机中断次,在计数中断服务程序,里程和金额都相应变化,当然等待时间也换算成里程当速度小于时,每分钟相当于公里。计算程序根据里程数分别进入不同的计算公式。如初始化开始数据处理键盘扫描结束等待计时果里程大于公里,则执行公式金额里程单价否则,执行公式总金额起步价。数据处理子程序流程图如图所示。图数据处理子程序流程图中断子函数对于中断程序,只要定时器计数满就会产生中断中断次,共计次,秒钟加,秒钟计满再分钟加,当分钟加到时全部清零。以下是中断子函数的流程图如图所示计算里程开始里程公里金额元金额单价里程显示金额结束否是图中断子程序流程图中断子涵数流程图等待时间计时子程序当出租车的速度时等待时间开始计时,并换算成里程,进行计算后显示等待时间和金额。当停止键按下时停止计时和计费并显示金额,当有查询键按下时显示等待时间,当有清除键按下时存储本次金额。等待时间计时子程序如图所示。开始是否产生中断结束否否否否是是是是图等待时间计时子程序键盘扫描子程序键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主。虽然这只时钟的工作流程,软件设计可分为以下几个功能模块主程序模块主程序主要用于系统初始化设置计时缓冲区的位置及初值,设置的工作方式定时器的工作方式和计数初值等参数。主程序流程如下图所示。开始显示单元清否是地址指针指向计时缓冲区调用时间设置程序主程序流程图计时模块即定时器中断子程序,完成刷新计时缓冲区的功能。系统使用的晶振,假设定时器工作在方式,则定时器的最大定时时间为,这个值远远小于。因此本系统采用定时器与软件循环相结合的定时方法。设定时器工作在方式,每隔溢出中断次,则循环中断次延时时间是,上述过程重复次为分,分计时次为小时,小时计时次则时间重新回到。因定时器工作在方式,则定时对应的定时器初值为,即,。但应当指出从响应中断到完成定时器初值重装这段时间,定时器并不停止工作,而是继续计数。因此,为了确保能准确定时,重装的定时器初值必须加以修正,修正的定时器初值必须考虑到从原定时器初值中扣除计数器多计的脉冲个数。由于定时器计数脉冲的周期恰好和机器周期吻合,因此修正量等于从响应中断到重装完为止所用的机器周期数。响应中断通常要个机器周期。经过测试,定时器重装的计数初值设为,可以满足精度要求。另外,单片机只有二进制加法指令,而时间是按十进制递增,因此用加法指令后必须进行二十进制转换。计时模块流程图如下图所示。秒单元加,计数器清计数器开始重装定时器初值计数器加否是否到是秒单元清,分单元加否分到是分单元清,时单元加否小时到是时单元清中断返数码管显示程序将时间存入显示缓冲区相应的位置循环扫描显示定时器计数器中断服务程序,按键处理程序,,,,回返回定时器计数器中断服务程序流程图系统主程序设计采用位软件译码动态显示程序使用单片机,晶振,输出字码段,口输出位选码用共阳数码管,为调时位选择按键,为加键,为减键片内的单元为数码管的显示缓冲区,分别为秒,分,小时计数单元为计数器,为调时按键计数器定时器计数器中断程序入口主程序延时子程序,延时子程序子程序设计延时子程序,延时子程序最小系统第章软件设计工作流程图系统主程序设计子程序设计第章系统仿真简介系统仿真第章总结参考文献致谢第章系统方案设计设计要求准确计时,以数字形式显示时分秒的时间。小时以小时计时形式,分秒计时为进位。校正时间功能,即能随意设定走时时间。设计直流电源,系统时钟电路复位电路器有个外接端子,个是电源的正负极端子,最后个是脉冲信号输出,只要将此信号输出端接到单片机的口端子上便可以实现距离检测。其中,单片机的引脚作为信号的输入端接收来自传感器输出的信号,采用外部中断进行计数。车轮每转圈,霍尔传感器就产生个脉冲信号,根据霍尔效应原理,当霍尔片处在磁场中时,霍尔传感器的输出端输出低电平。当车轮转动圈时小磁铁提供个磁场,则霍尔传感器输出次低电平完