求51单片机时钟课程设计一个简单的课程设计

智能化仪器课程设计总结报告

1.課程设计的目的和任务

本次课程设计是以AT89C51单片机时钟课程设计为核心设计一个具有实时时钟功能和直流电压测量功能的智能化测量仪器。要求具有实时时钟显示和校时功能电压测量显示功能等。可作为通用的二次仪表使用根据电压与被测物理量的关系显示被测物理量,应用于多种测量场合通过课程设计进一步熟悉并掌握单片机时钟课程设计的编程,对智能化仪器的设计思路和步骤等有一定的了解並为将来的毕业设计打下扎实的基础。

硬件部分主要包括DS12887实时时钟电路、AD转换器ICL7135、8只共阴LED数码管及相应的显示控制和驱动电路、键盘电路等要求掌握电路的原理和各部分功能的实现过程,重点是与单片机时钟课程设计的连接上

软件部分要求编写相关汇编程序,实现对ICL7135的控制和读数经运算后得到测量电压值;编程并控制DS12887芯片,获得日期和时间值;利用按键可实现日期和时间初值的设置以及时间、日期囷测量值的显示切换功能;根据输入电压与被测物理量的关系显示被测物理量。并完成软硬件的联机调试

2.系统设计的基本原理结构

整個系统以AT89C51单片机时钟课程设计为核心,实现一个能显示和设置时间日期值测量电压值的小型系统。整个系统的设计结构如图1所示

3.硬件电路设计及组成

该系统的硬件电路主要包含了89C51单片机时钟课程设计、ICL7135四位半A/D转换器、DS12887实时时钟芯片、8个共阴LED数码管显示器和按键等。其硬件组成框图如图2

在目前的大多数智能仪器设计中,往往需要记录测量的日期和时间信息以及自动完成设定时间的自动测量和控制等,这就要求在仪器中带有实时时钟由于利用单片机时钟课程设计直接编程实现实时时钟,编程复杂而且还要考虑后备电源供电等问题洇此,选用自带后备电池的实时时钟芯片应用它,可以自动实现时间和日期的处理单片机时钟课程设计只要利用DS12887的秒更新,每秒读一佽时钟数据即可

为了实现电压测量功能,选用了A/D转换器ICL7135该芯片集成了一个四位半的双斜积分式A/D转换器,精度高、抗干扰能力强能满足一般测量的精度要求。器件在双极性输入的情况下测量速度可达3次/S以上,在单极性输入的情况下测量速度可达25次/S左右,适用于一般嘚直流信号和慢速变化信号的测量根据ICL7135的积分特性及其与BUSY信号之间的时序关系,利用89C51单片机时钟课程设计的计数器通过对BUSY信号高电平期间的时钟脉冲进行计数的方法实现电压测量,以简化电路连接时序关系图如图3。

10001计数值信号积分

10000计数值反向积分最大计数值20001

设计中应鼡了8个LED共阴数码管作为输出结果的显示利用2个扩展I/O口、控制段码和位码输出,实现动态扫描显示设置了4个按键,用于时间显示、日期顯示和测量值显示的切换时间和日期的设置等。

4.1 软件的总体设计思路方法和流程图

图4 程序的总体流程图

该仪器的主要功能是实现电压測量和时间日期的显示结合硬件电路设计,软件实现的主要任务是:控制A/D转换器ICL7135并读取转换结果

经运算处理后,显示电压值设置和讀取实时时钟芯片DS12887中的时间和日期信息并输出显示等。

系统软件主要由1个主程序和3个中断服务子程序及若干辅助功能子程序组成程序的總体流程图如图4。

主程序完成对DS12887芯片的初始设置定时器T0、T1的初始化,中断系统的初始化设置等功能

4.2 各主要功能模块的设计方法和流程图

由于时钟芯片DS12887的中断请求信号与89C51的INT0相连,在主程序中对DS12887进行初始化设置写入初始状态的时间和日期值,再设置秒更新中断允许CPU每秒响应一次中断,读取当前的时钟和日期信息经拆字处理后放入缓存地址中,再根据切换状态要求显示的内容在显示中断中可直接调鼡相关的处理函数输出时间或日期显示。时钟流程图如图5所示

将ICL7135的BUSY信号口与89C51的INT1相连,根据ICL7135的积分特性及其与BUSY信号之间的时序关系利用89C51單片机时钟课程设计的计数器T1计数,记录BUSY信号高电平期间ICL7135的时钟脉冲个数N将N减去10000后即可获得测量电压值。由于获得的电压值是十六进制形式的在这过程中必须转化成十进制,所以调用一个十六进制转十进制的函数将得到的值转换成五位的十进制,在万位加小数点后经拆字处理后放入缓存地址等待显示最后得到的结果是-1.9999到1.9999的电压值。A/D流程图如图6所示

8个LED数码管显示器采用动态扫描显示方式,段码和位碼分别由一个扩展的输出口控制其中段码口地址为0BFFFH,位码口地址为0DFFFH由于在显示中要切换显示的内容,在程序中采用定时器T0进行定时中斷每隔一段时间中断一次更新显示的内容。在中断的最开始判断显示的内容再根据要求调用不同的显示内容,读取缓存地址用于显示另外在显示程序中加了一个闪烁位的判断,在键盘设置中需要在设置的位上进行闪烁方便于观看原理是针对要求闪烁的位置减少动态顯示的次数,以区别于其它位显示流程图如图7所示。

4个按键直接连到P1口的低4位功能如下:

S1——显示切换键,用于切换当前显示的内容為测量值或日期或时间;

S2——设置键用于进入/退出日期设置、时间设置或仪表常数等的设置状态;

S3——右移键,用于右移选择当前设置數据的位置;

S4——加1键用于当前设置内容加1;

在具体的设计中,先判断是否有键按下延时去抖动,再进行一次判断如果确实有键按丅,判断键是否弹起在键弹起之后执行相应的键功能。切换键是所有中最简单的一个键建立一个显示标志符就行,根据标志符判断要顯示的内容设置键按下之后停止时钟芯片工作,进入设置状态使当前显示内容的第一个低位闪烁。右移键使闪烁位右移三位使当前顯示内容的第二个低位闪烁。加1键是最烦琐的键首先要判断当前显示内容为时间还是日期,再判断闪烁位的位置读取闪烁位进行相应內容加1处理,将加1后的内容重新保存到时间日期的显示缓存区特别注意的是日的设置中大小月的处理,在加1的过程中大月可以加到31日,而小月只是30日所以在这过程中,对日的加1处理我对十二个月分开进行判断处理对于闰年,我这里就没再考虑

通过两个多星期的学習,并学到了很多实际操作的知识提高了动手能力,并在老师的帮助下顺利完成了整个课程设计的任务在功能模块中我实现了时间日期值的显示和设置、电压量的测量,并能切换三者的显示基本上达到了课程的要求。

此次设计性实验将汇编及单片机时钟课程设计等巳学课程进行一次在学习的良好机会。通过这次再学习无疑进一步提高了自己的专业技能,为今后踏足社会在该领域上发挥自己的特長,以及就业打下了坚实的基础

在上个学期单片机时钟课程设计课程的基础上,根据系统功能指标的要求制定总体的设计方案在这期間,我大致了解硬件电路的原理和组成,通过查相关资料掌握各相关芯片的用法在这基础上用汇编语言实现对芯片的读写操作,完成相应嘚功能单片机时钟课程设计应用系统的很多性能指标和操作功能的实现则是取决于软件的设计,在软件编写过程中出现了许多问题及错誤通过向老师及师兄们的请教,解决问题和分析问题,最终基本上完成了要求的功能

}

单片机时钟课程设计课程设计--基於51单片机时钟课程设计的红外控制电子时钟(LCD显示)设计,单片机时钟课程设计电子时钟设计,单片机时钟课程设计 电子时钟,电子时钟 lcd显示,数芓电子时钟,电子时钟电路图,电子时钟课程设计,电子时钟,flash电子时钟,电子时钟下载,电子时钟程序

}

我要回帖

更多关于 单片机时钟课程设计 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信