多功能电子时钟设计

2024-09-15

多功能电子时钟设计(精选6篇)

多功能电子时钟设计 第1篇

随着电子技术的发展, 微处理器在性能提升的同时功耗能够降得更低, 功能也更加强大, 16位和32位微处理器逐渐成为嵌入式系统设计的主流芯片。一个较完整的系统不但要有微处理器, 还需要在微处理器上运行一个比较稳定的操作系统;因此, 系统要有比较良好的可移植性, 能够运用于根据不同应用要求选择的微处理器中。μCOS-II作为一个实时操作系统内核, 由于其源代码公开、代码规范、价格便宜。为了研究MSP430系列单片机支持多任务、并行、实时操作, 移植的稳定性、可靠性等优越的功能。本设计在运用MSP430单片机和μCOS-II的相关知识的基础上, 设计了个多功能电子时钟。通过软件功能扩充和硬件功能扩展设计了一个较完整的嵌入式实时操作系统, 从而验证了μC O S-I I操作系统移植在MSP430F149的可行性和稳定性。

2 总体电路设计与多功能时钟实现

本设计采用MSP430F149作为整个电路的核心部件, 运用4*4矩阵键盘作为输入设备, 外接LCD12864进行显示, 同时还连接一些扩展电路以便增加电子时钟功能。本设计的硬件电路比较简单, 计数、调时、译码显示等功能全部都由软件控制实现, 准确性较高。

本设计中系统采用的主控芯片是MSP430F149、时钟芯片是DS1302、显示芯片是LCD12864液晶、键盘芯片是4*4矩阵键盘、温度芯片是DS18B20、掉电存储芯片共6个芯片组成。设计了一个具有万年历、温度显示、定时响闹功能的闹钟。实现了显示时间与日期 (即时分秒、年月日、星期) 的万年历;实现了由温度传感器测试出温度并显示出温度;实现了闹钟功能:闹钟设定界面;存储闹钟时间;时间中断、设置读取时间flag;主程序中判断设置flag, 读取时钟;比较当前时钟在响闹时间范围内, 输出响铃。设计中的掉电存储采用MSP430F149内部自带的flash实现闹钟数据的掉电保存。总体电路设计的总体框图如图1所示。

3 系统软件设计

本设计的关键是软件设计, 因为本设计的芯片比较多, 所以程序编写也采用模块化程序设计并采用C语言进行编写。由于C语言具有编写风格灵活、移植方便、便于模块化程序设计的特点, IAR Systems是全球比较领先的嵌入式系统开发工具和服务的供应商, 它所提供的产品和服务已经涉及到嵌入式实时系统的设计、开发和测试的每一个阶段;其中包括:带有C/C++的编译器和调试器的集成开发环境 (IDE) 、嵌入式实时操作系统和中间件、开发套件、硬件仿真器以及状态机建模等工具。系统软件设计程序流程图如图2所示。

3.1 不带μC/OS-II操作系统的软件设计

整个系统的工作基本过程:系统通电之后将会对MSP430F149单片机、4*4矩阵键盘、LCD12864芯片与DS18B20芯片等进行初始化, 然后进入LPM0低功耗模式等待中断。

在整个系统软件程序设计包括主程序、显示电路程序和键盘程序。其中, 键盘扫描法是一种常用的识别方法, 使用这种方法时只要是CPU空闲, 就会调用键盘扫描程序, 查询键盘并给予处理;因为CPU的利用率比较高, 所以在键盘程序设计中我们就采用了扫描法。显示部分用的是LCD12864液晶显示器。在系统软件设计中不带操纵系统时实现了在LCD12864液晶显示屏上显示年月日、时分秒、温度以及闹钟功能。用按键复用来调整和控制以上各参数。

3.2 μC/OS-II操作系统在MSP430F149单片机上的移植

μC/OS-II在MSP430F149单片机上的移植具有:可以实现软件设计的模块化;能有效的利用CPU有限的资源;按照任务的重要程度安排任务的级别;大大降低操作系统的故障率等优点。同时, μC/OS-II移植必须具有的条件:处理器具有堆栈;CPU内部寄存器具有入栈、出栈指令;使用的C语言编译器支持内嵌汇编或者该C语言可扩展, 可连接汇编模块, 使得开、关中断能在C语言程序中实现。

3.3 带μC/OS-II操作系统的软件设计

因为μC/OS-Ⅱ是实时操作系统, 系统会自动响应多个任务, 所以对于任何一个可执行的任务都可以对其进行无限循环处理, μC/OS-Ⅱ操作系统在多任务并发进行的时候就会采用优先级调度算法来进行资源分配;当没有实时任务响应的时候, μC/OS-Ⅱ操作系统能正常运行;当有实时任务时, μC/OS-Ⅱ操作系统会按照任务的优先级设定来处理任务。这样, 当有高优先级任务需要特别CPU处理时, 系统会把所有的资源分配给高优先级, 直到其任务运行完毕为止。基于μC/OS-Ⅱ操作系统这个特性, μC/OS-Ⅱ操作系统具有很强的实时处理能力, 特别是对于需要优先响应的任务, μC/OS-Ⅱ操作系统会立即自动中断其它任务, 对高优先级任务进行响应, 这是分时处理系统所不能达到的功能。

已经成功地将μCOS-II系统移植到MSP430f149上并运行。同时, 也从软件功能扩充和硬件功能扩展设计了一个较完整的嵌入式实时操作系统, 从而验证了μCOS-II实时系统移植在MSP430F149的可行性和稳定性。带μCOS-II操纵系统时实现万年历、闹钟功能、按键、流水灯闪烁四个任务的控制。

4 结论与讨论

本设计不带μCOS-II操作系统时实现了在LCD12864液晶显示屏上显示年月日、时分秒、温度以及闹钟功能, 用按键复用来调整和控制以上各参数。带μCOS-II操纵系统时实现万年历、闹钟功能、按键、流水灯闪烁四个任务的控制。同时, 结合理论与实际也从软件移植和硬件开发两方面, 验证了μCOS-II实时操作系统移植在MSP430F149的可行性及稳定性。

本设计中也出现不足之处, 把μC/OS-Ⅱ操作系统内核移植到了MSP430F149中, 并未把温度移植上去;MSP430F149单片机的优点为低功耗, 在本设计中并未特别体现出来, 后续将致力于低功耗的研究。

参考文献

[1]沈建华, 杨艳琴, 翟骁曙.MSP430系列16位超低功耗单片机实践与系统设计[M].北京:清华大学出版社, 2004.

[2]崔武子, 付钪, 鞠慧敏.C语言程序设计实践教程[M].北京:清华大学出版社, 2005.

[3]何立民.单片机应用系统设计系统配置与接口技术[M].北京:北京航空航天大学出版社, 2006.

[4]魏小龙.MSP430系列单片机接口技术及系统设计实例[M].北京:北京航空航天大学出版社, 2004.

[5]陈是知.μC/OS-Ⅱ内核分析、移植与驱动程序开发[M].北京:人民邮电出版社, 2007.

电子时钟 电子技术基础 课程设计 第2篇

课 程 名 称 电子技术基础 院 部 名 称

机电工程学院

自动化

班 级 10自动化 指 导 教 师 赵国树

金陵科技学院教务处制

目录

一、课程设计应达到的目的............................................二、课程设计题目及要求..............................................三、课程设计任务及工作量的要求....................................1.设计要求.......................................................2.总体参考方案.................................................3.单元电路设计....................................................(1).秒脉冲发生器.............................................(2).秒、分、时计数器...........................................(3).秒、分、时译码显示模块....................................(4).校时电路................................................4.附图说明各部分功能的实现....................................(1).开始状态................................................(2).时、分、秒分别校时........................................(3).3满60秒向分钟进位状态...................................(4).满60分向小时进位状态....................................(5).23:59:59向00:00:00进位状态................................5.整体电路图....................................................6.实验室调试....................................................(1).元件清单.................................................(2).调试过程...............................................(3).调试结果(照片).........................................(4).调试心得体会..............................................参考文献.......................................................致谢........................................................一、课程设计应达到的目的

1、掌握组合逻辑电路、时序逻辑电路及数字逻辑电路系统的设计、安装、测试方法;

2、进一步巩固所学的理论知识,提高运用所学知识分析和解决实际问题的能力;

3、提高电路布局﹑布线及检查和排除故障的能力;

4、培养书写综合实验报告的能力。

二、课程设计题目及要求

数字电子时钟设计

1、准确计时,以数字形式显示时、分、秒的时间。

2、小时计时采用24进制的计时方式,分、秒采用60进制的计时方式。

3、具有快速校准时、分的功能。

三、课程设计任务及工作量的要求

1、设计要求

(1)、准确计时,以数字形式显示时、分、秒的时间。

(2)、小时计时采用24进制的计时方式,分、秒采用60进制的计时方式。(3)、具有快速校准时、分的功能。

2、总体参考方案 框图

T0.7(R12R2)C0.7(6k24.7k)100uF1.078s

3.单元电路设计(1).秒脉冲发生器

采用555施密特触发器

相关计算如下

仿真图

(2).秒、分、时计数器

秒脉冲信号经过6级计数器,分别得到“秒”个位、十位、“分”个位、十位以及“时”个位、十位的计时。“秒”“分”计数器为六十进制,小时为二十四进制。

由秒脉冲获得的1Hz的频率首先送到计数器,这里采用的是十进制计数器74LS192,达到10次脉冲向前进位并且同步清零,一次来实现“秒”各位的十进制,然后产生一个进位信号,向“秒”的十位送达一个脉冲,“秒”的十位数字将要显示六时,将Q1,Q2经过与门与MR相连,一次达到“秒”的六十清零的目的,同样,分钟的个位的计数要通过秒十位的Q1,Q2经过与门,与“分”个位的家计数器相连,时,“12翻1”小时计数器是按照“01——02——03——„„——22——23——00——01——02——„„”规律计数的,这与日常生活中的计时规律相同。在此实验中,它是由两片cc40192和一片cc4011构造成的同步二十四计数器,利用异步清零端实现起从23——00的翻转,其中“24”为过渡状态不显示。其中,“时”十位是3进制,“时”个位是十进制。

74LS192功能及引脚图

、可预置的十进制加/减计数器

仿真图

(3).秒、分、时译码显示模块

本系统用七段发光二极管来显示译码器输出的数字,显示器有两种:共阳极显示器或共阴极显示器。74LS48译码器对应的显示器是共阴极显示器。

(4).校时电路

当数字钟走时出现误差时,需要校正时间。校时电路实现对“时”“分”

“秒”的校准。在电路中设有正常计时和校对位置。本实验实现“时”“分”的校对。对校时的要求是,在小时校正时不影响分和秒的正常计数;在分校正时不影响秒和小时的正常计数。需要注意的时,校时电路是由与门构成的组合逻辑电路如下图示:

方法:“秒”校时采用等待校时法。正常工作时,将开关S1拨向VDD位置,不影响与门G1传送秒计数信号。进行校对时,将S1拨向接地位置,封闭与门G1,暂停秒计时。标准时间一到,立即将S1拨回VDD位置,开放与门G1。“分”和“时”校时采用加速校时法。正常工作时,S2和S3接地,封闭与门G3或G5,不影响或门G2或G4传送秒、分进位计数脉冲。进行校对时,将S2、S3拨向VDD位置,秒脉冲通过G3、G2或G5、G4直接引入“分”、“时”计数器,让“分”、“时”计数器以秒节奏快速计数。待标准时、分一到,立即将S2、S3拨回接地位置,封锁秒脉冲信号,开放或门G2、G4对秒、分进位计数脉冲的传送

仿真图

4、附图说明各部分功能的实现

(1).开始状态

(2).时、分、秒分别校时

.(3)..满60秒向分钟进位状态

(4)、满60分向小时进位状态

(5)、23:59:59向00:00:00进位状态

5.整体电路图

6、实验室调试(1)元件清单

(2)调试过程

于6月7日下午开始进行实物调试,历时四个小时。首先调试的是秒脉冲发生器,以NE555为主要芯片其引脚示意图如下图示

选择合适的电阻电容,根据仿真的数据以及连接方式,对其进行调试,由于脉冲产生的波形不稳定,可以采取将脉冲信号经过非门调试。计数器采用的是十进制计数器74LS192,其引脚示意图以及功能表如下示

74ls192引脚图

74ls192功能表

将192的输出端Q1、Q2、Q3、Q4分别与译码器74LS48的A、B、C、D相连接,其引脚示意图如下图示

译码器与共阴极的七段数码管分别相连接。主要部分已经完成,所需要注意的是,每一个芯片都要接通电源和地。至于控制电路以及逻辑进位和清零,所需要的芯片主要是与门和或门以及非门,三者的引脚示意图分别如下示

(与门74LS08)(或门74LS32)(非门74LS00)

(3)调试结果(照片)由于跳动的太大,在进行校正时,可能不会尽如人意,照片如下图示

(4)调试心得体会

通过这次数字电子钟的课程设计,我们才把学到的东西与实践相结合。从中对我们学的知识有了更进一步的理解,而且更进一步地熟悉了芯片的结构及掌握了各芯片的工作原理和其具体的使用方法。也锻炼了自己独立思考问题的能力和通过查看相关资料来解决问题的习惯。虽然这只是一次简单的课程设计,但通过这次课程设计我们了解了课程设计的一般步骤,和设计中应注意的问题。设计本身并不是有很重要的意义,而是同学们对待问题时的态度和处理事情的能力。各个芯片能够完成什么样的功能,使用芯片时应该注意那些要点。同一个电路可以用那些芯片实现,各个芯片实现同一个功能的区别。

另外,我还渐渐熟悉了pruteus这个仿真软件的各个功能,让我体会到了期中的乐趣,还在电脑制作文档的过程中,使我对办公软件有了更进一步的了解和掌握。

参考文献

1.现代数字电路与逻辑设计 清华大学出版社 北京交通大学出版社.2.模拟电子技术(修订版)清华大学出版社 北京交通大学出版社

3.模拟电子技术教程 电子工业出版社

4.朱定华主编.电子电路测试与实验.北京:清华大学出版社,2004.致谢

多功能电子时钟设计 第3篇

现有时钟设计的可选方案较多,可以利用中小规模集成电路设计,可以利用专用的时钟芯片设计,也可以利用单片机进行设计等,且各有特点。其中利用单片机实现时钟的设计方法,具有电路简单、编程灵活、便于扩展、精确度高、稳定性好等优点,所以这里选择利用单片机设计。

在选择单片机时,考虑到AT89C2051体积较小、性价比较高,在家电产品、工业控制、计算机产品、医疗器械、汽车工业、智能仪器等应用领域已成为用户降低成本的首选产品[1]。所以,该设计选用AT89C2051作为时钟的中心控制单元,结合相关外围电路,实现了时间显示、时钟调整、闹钟设置、整点报时及省电等多种功能。

2 系统设计

2.1 定时器工作方式选择

时钟设计的关键问题是秒信号的产生,在使用MCS-51的定时器/计数器生成秒信号时,若选用12 MHz晶振,选择工作方式0时,最大定时时间为8.19 ms;选择工作方式1时,最大定时时间为65.54 ms;选择工作方式2,3时,最大定时时间为0.26 ms。因为进入中断要做很多判断,如果中断时间太短则不能完成任务,导致时钟误差增大,所以选择中断时间最长的工作方式1。这时定时器最大定时时间只能达到65.5 ms,离1 s还相差甚远。因此,该设计采用硬件定时和软件计数相结合的方式实现秒信号的,即把秒定时时间定为50 ms,软件计数20次为1 s。

2.2 定时初值的计算

MCS-51系列单片机的定时器为加法计数器计满溢出时申请中断,所以在给定时器赋初值时,不能直接输入所需的计数值,而应输入定时器的计数最大值与需要定时值的差值。采用定时器/计数器0,选择工作方式1,在选用12 MHz系统晶振时,要得到50 ms定时,设定时初值为X,则有如下等式:

(216-X)×1=50000

计算得定时初值X=15 536,二进制表示为1110010110000B,16进制表示为3CB0H。

为了实现调整时间时的闪烁显示功能,采用T1定时器,定时初值仍可延用上面计算结果。

2.3 存储单元的设置

为了方便实现其他附加功能,将计时存储单元、显示存储单元与闹钟时间存储单元分开。其中显示装置是用6位LED数码管,时钟的时、分和秒各占2位。在闹钟设置时显示闹钟时间,其余时间显示时钟。存储单元设置分别如表1,表2,表3所示。

3 电路设计

3.1 时钟电路原理图

数码管时钟电路以AT89C2051单片机最小系统为基础,显示采用LED动态扫描方式实现,P3.7口接设置按钮,用来实现调时钟、调闹钟、省电3种状态的转换,在闹钟和时钟调整时为上翻键,也是关闭闹钟的按键。为了提供LED数码管的驱动电流,用三极管9012作输出驱动。为了提高秒计时精确度,系统选用12 MHz晶振,即电路主要是由单片机、复位电路、振荡电路和显示电路4部分组成。复位电路采用上电复位,振荡电路选用12 MHz中晶振和2个30 pF的瓷介电容。电路原理如图1所示。

3.2 AT89C2051芯片简介

AT89C2051是Atmel公司生产的带2 kB FLASH存储器(PEROM)的8 位单片机,它具有如下主要特性:与MCS-51兼容;内部带2 kB可编程FLASH存储器;工作电压范围为2.7~6 V;全静态工作频率为0 Hz~24 MHz;128×8位内部RAM;2个16位定时器/计数器;片内振荡器和时钟电路;片内精确模拟比较器;低功耗的休眠和掉点模式。

AT89C2051减少了两个外部端口,因而芯片的外部引脚大大减少,芯片尺寸很小。它是一个有20引脚双列直插式的芯片。

3.3 显示电路

时钟采用6个共阳极的数码管完成时、分、秒的显示,P3口的低6位分别通过5.6 kΩ的限流电阻与相应的驱动三极管的连接,三极管的导通与否决定对应位是否显示。其中数码管引脚与单片机引脚的连接关系如表4所示,数码管的显示代码如表5所示[2]:

4 软件设计

4.1 主程序

主程序主要完成系统的初始化和按键的捕获,在键没有被按下时调用显示子程序,程序流程图如图2所示。

4.2 显示程序

需要显示时,从P1口送出时钟的显示段码,从P3口低6位送出时钟的位选信号,通过动态扫描的方式实现时钟的显示功能[3]。应该注意的是,16进制数所表示的共阳极的段码最高位都为1,这样在显示时它将P1.7强行置1,即直接关闭响铃,所以在显示数据送给P1口之前要进行判断,如果P1.7为0,则将显示数据与立即数7fH逻辑与;如果P1.7为1,则不做任何,直接输出处理。这样,显示时就不会影响响铃的正常进行。

另外,为了符合人们的习惯,该设计中将小时的十位做灭零处理,所以在软件设计中要检测显示首位是否为零,若是则放入 “熄灭符”,即关闭该位的显示,若不是则正常显示。

4.3 定时器T0中断程序

定时器T0主要完成时钟计时、整点报时和闹钟控制等功能,其流程图如图3所示。

4.3.1 计时的实现

定时器溢出中断周期为50 ms,中断累计20次得到1 s,这样就产生了秒信号。程序中通过数值累加和数值比较来实现从秒到分钟,从分钟到小时的计时。具体地来说,每产生1 s的定时,计数缓冲区中与“秒”对应的存储单元值加1;秒单元内容加至60时则产生1 min信号,相应的计时缓冲区中与“分钟”对应的存储单元加1,同时,将秒计数缓冲区清零;分钟存储单元内容加至60时则产生1 h信号,相应的计数缓冲区中与“小时”对应的存储单元加1,同时,将分钟计数缓冲区清零;小时存储单元内容加至24时自动清零,则产生24小时的定时,从而实现了24小时制的时钟。

4.3.2 整点报时的实现

每次小时加1时即为整点,此时打开闹铃,同时将整点报时标志位06H置1,整点数赋给times,以后进入中断则通过1 s定时初值R4判断是关闭闹铃还是打开闹铃;通过判断整点数times是否为零来结束响铃,从而实现了整点报时即闹铃响的次数等于整点时数。

需要说明的是,因为小时的十位和个位分别放在两个存储单元中,所以在整点数赋给times之前应该将其合并转换为10进制数,否则将出错。

在整点报时程序中,考虑到在临晨0点到临晨6点一般不需要报时,所以,将整点报时关闭;当闹钟设置为整点,则闹钟优先,闹铃响时,不进行整点报时。

4.3.3 闹钟的实现

闹钟通过比较闹钟存储单元的值与时钟存储单元的值是否相等来实现。设置的闹钟值存放在7BH-7EH中,当闹钟有效时,计时单元的小时和分钟每分钟与相应的闹钟存储单元比较1次,当时钟值和闹钟值相等时,则开始响闹铃;响闹铃期间若有按键按下,则停止闹铃;若无按键按下,闹铃将持续响1 min后自动停止。在停止闹铃的同时,将自动取消闹钟功能,除非再次设置,所以实现的是一次闹铃功能。

4.4 T1中断服务程序

T1中断服务程序用来实现闪烁显示功能。在调整时钟或设置闹钟的状态下,使对应显示单元的数据在时间数据和“熄灭符”数据(#0AH)之间以0.3 s为间隔交替显示,这样,对应的调整单元数据就会闪烁,以便于调整。

4.5 调时程序

首先需要说明长按和短按的标准,其标志是铃声,当在铃响之前放开按键则是短按,之后放开则是长按。调时程序的设计方法是:2次连续短按进入省电状态(时钟继续,但数码管不亮);第一次短按,第二次长按进入调时状态,此时关闭T0,时钟停止,开始调整时间,短按实现分钟加1操作,分钟调整完毕后,若长按则进入小时调整状态,同样,短按实现小时加1操作,当小时调整好后长按则退出时间调整,开启T0,启动时钟。

在响闹铃的时候,有按键按下,其作用是关闭闹铃,不进入调时状态。

4.6 闹钟调整程序

一次长按进入闹钟调整程序。其中闹钟调整和时钟调整的方法完全相同,只是时钟调整时关闭T0,而在闹钟调整程序中T0需要继续工作。另外,要设置不同的标志,以实现闹钟调整时闪烁的数据是闹钟。

总之,在应用单片机设计的电路中,程序设计很重要,尤其是硬件电路比较简单的情况下,这就需要软件完成和补充其他功能。主要思想为将总体功能分解成若干个模块,每个功能模块完成特定的功能,并且确定各模块之间的关系,最终完成设计的所有功能。

5 系统的调试

调试阶段的任务是排除系统的硬件故障和纠正软件中的设计错误,并解决硬件和软件之间的协调问题。

首先进行硬件调试。硬件调试方法有静态调试和动态调试2种。静态调试是在电路加电之前先用万用表等工具根据硬件原理检查电路的连接,核对元器件的型号、规格、安装,特别要检查电源系统,防止电源短路和极性错误。动态调试是电路在检查无误后,给电路和仿真器加上电源进行的联机仿真调试。软件的调试是通过程序的汇编、连接、执行来发现程序中的语法错误与逻辑错误并加以纠正的过程。实际上系统的硬件调试和软件调试是不能完全分开的,许多软件错误是在硬件电路上运行后发现的,所以硬件和软件应该结合起来调试[4]。

经过上述反复调试,该电路在5V电压供电的情况下,正常的现实24小时计时方式的时、分、秒显示以及调时、调闹钟、整点报时和省电状态等多种功能。

6 结 语

该设计是应用AT89C2051进行设计的典型实例,应用数码管显示原理,动态扫描原理。因为外围电路较为简单,所以大部分功能用软件来实现,这就提高了系统的灵活性和稳定性。由于软件中要完成的功能较多,所以尤其适合单片机学习者实战练习。

参考文献

[1]余锡存,曹国华.单片机原理及接口技术[M].西安:西安电子科技大学出版社,2000.

[2]孙钢峰,杨利霞.时钟设计问题的讨论[J].鄂州大学学报,2001,8(4):23-27.

[3]翟玉文,梁伟.电子设计与实践[J].北京:中国电力出版社,2005.

[4]陈建设.简单易制的三位电子秒表[J].电子制作,2005(3):29.

[5]郝建国,郑燕,薛延侠.单片机在电子电路设计中的应用[M].北京:清华大学出版社,2006.

[6]王法能.单片机原理及应用[M].北京:高等教育出版社,1997.

数字电子时钟课程设计报告-2 第4篇

20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。例如,许多火灾都是由于人们一时忘记了关闭煤气或是忘记充电时间。尤其在医院,每次护士都会给病人作皮试,测试病人是否对药物过敏。注射后,一般等待5分钟,一旦超时,所作的皮试试验就会无效。手表当然是一个好的选择,但是,随着接受皮试的人数增加,到底是哪个人的皮试到时间却难以判断。所以,要制作一个定时系统。随时提醒这些容易忘记时间的人。

钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。

论文的研究内容和结构安排

本系统采用石英晶体振荡器、分频器、计数器、显示器和校时电路组成。由LED数码管来显示译码器所输出的信号。采用了74LS系列中小规模集成芯片。使用了RS触发器的校时电路。总体方案设计由主体电路和扩展电路两大部分组成。其中主体电路完成数字钟的基本功能,扩展电路完成数字钟的扩展功能。论文安排如下:

1、绪论 阐述研究电子钟所具有的现实意义。

2、设计内容及设计方案 论述电子钟的具体设计方案及设计要求。

3、单元电路设计、原理及器件选择 说明电子钟的设计原理以及器件的选择,主要从石英晶体振荡器、分频器、计数器、显示器和校时电路五个方面进行说明。

4、绘制整机原理图 该系统的设计、安装、调试工作全部完成。

(一)设计内容要求

1、设计一个有“时”、“分”、“秒”(23小时59分59秒)显示且有校时功能的电子钟。

2、用中小规模集成电路组成电子钟,并在实验箱上进行组装、调试。

3、画出框图和逻辑电路图。4、功能扩展:(1)闹钟系统

(2)整点报时。在59分51秒、53秒、55秒、57秒输出750Hz音频信号,在59分59秒时,输出1000Hz信号,音像持续1秒,在1000Hz音像结束时刻为整点。(3)日历系统。

(二)设计方案及工作原理

数字电子钟的逻辑框图如图1所示。它由石英晶体振荡器、分频器、计数器、译码器显示器和校时电路组成。振荡器产生稳定的高频脉冲信号,作为数字钟的时间基准,然后经过分频器输出标准秒脉冲。秒计数器满60后向分计数器进位,分计数器满60后向小时计数器进位,小时计数器按照“24翻1”规律计数。计数器的输出分别经译码器送显示器显示。计时出现误差时,可以用校时电路校时、校分。

三、单元电路设计 1.秒脉冲产生电路(1)1KHZ 振荡器

振荡器由 555 定时器组成。图 3‐1 中是 由 555 定时器构成的 1KHZ 的自

激振荡器 ,其原理是

0.7(2R3+R4+R5)C4=1ms f=1/t=1KHZ。

2、计数器

秒脉冲信号经过6级计数器,分别得到“秒”个位、十位,“分”个位、十位以及“时”个位、十位的计时。“秒”、“分”计数器为60进制,小时为24进制。1、60进制计数器

(1)计数器按触发方式分类

计数器是一种累计时钟脉冲数的逻辑部件。计数器不仅用于时钟脉冲计数,还用于定时、分频、产生节拍脉冲以及数字运算等。计数器是应用最广泛的逻辑部件之一。按触发方式,把计数器分成同步计数器和异步计数器两种。对于同步计数器,输入时钟脉冲时触发器的翻转是同时进行的,而异步计数器中的触发器的翻转则不是同时。

(2)60进制计数器的工作原理

“秒”计数器电路与“分”计数器电路都是60进制,它由一级10进制计数器和一级6进制计数器连接构成,如图4所示,采用两片中规模集成电路74LS90串接起来构成的“

”、分

器。

IC1是十进制计数器,QD1作为十进制的进位信号,74LS90计数器是十进制异步计数器,用反馈归零方法实现十进制计数,IC2和与非门组成六进制计数。74LS90是在CP信号的下降沿翻转计数,Q A1和 Q C2相与0101的下降沿,作为“分”(“时”)计数器的输入信号,通过与非门和非门对下一级计数器送出一个高电平1(在此之前输出的一直是低电平0)。Q B2 和Q C2计数到0110,产生的高电平1分别送到计数器的清零R0(1),R0(2),74LS90内部的R0(1)和R0(2)与非后清零而使计数器归零,此时传给下一级计数器的输入信号又变为低电平0,从而给下一级计数器提供了一个下降沿,使下一级计数器翻转计数,在这里IC2完成了六进制计数。由此可见IC1和 IC2串联实现了六十进制计数。其中:74LS90——可二/五分频十进制计数器 74LS04——非门 74LS00——二输入与非门 2、24进制计数器

小时计数电路是由IC5和IC6组成的24进制计数电路,如图5所示。当“时”个位IC5计数输入端CP5来到第10个触发信号时,IC5计数器自动清零,进位端QD5向IC6“时”十位计数器输出进位信号,当第24个“时”(来自“分”计数器输出的进位信号)脉冲到达时,IC5计数器的状态为“0100”,IC6计数器的状态为“0010”,此时“时”个位计数器的QC5和“时”十位计数器的QB6输出为“1”。把它们分别送到IC5和IC6计数器的清零端R0(1)和R0(2),通过7490内部的R0(1)和R0(2)与非后清零,从而完成24进制计数。

3.组合的数字时钟

数字时钟系统的组成利用上面的六十进制和二十四进制递增计数器子电路 构成的数字钟系统

4、校时电路的实现原理 当电子钟接通电源或者计时发现误差时,均需要校正时间。校时电路分别实现对时、分的校准,由于4个机械开关具有震颤现象,因此用RS触发器作为去抖动电路。采用RS基本触发器及单刀双掷开关,闸刀常闭于2点,每搬动一次产生一个计数脉冲,实现校时功能

5.整点报时电路

电路应在整点前 10 秒钟内开始整点报时,即当时间在 59 分 50 秒到 59 分59 秒期间时,报时电路报时控制信号。

当时间在 59 分 59 秒到 00分 00 秒期间时,分十位、分个位和秒十位均保持不变,分别为 5、9 和 5,因此可将分计数器十位的 Qc 和 Qa、个位的 Qd 和 Qa及秒计数器十位的 Qc 和 Qa 相与,从而产生报时控制信号。报时电路可选7个74F08D 来构成

6、电路复位

四、译码与显示电路

1、显示器原理(数码管)

数码管是数码显示器的俗称。常用的数码显示器有半导体数码管,荧光数码管,辉光数码管和液晶显示器等。

本设计所选用的是半导体数码管,是用发光二极管(简称LED)组成的字形来显示数字,七个条形发光二极管排列成七段组合字形,便构成了半导体数码管。半导体数码管有共阳极和共阴极两种类型。共阳极数码管的七个发光二极管的阳极接在一起,而七个阴极则是独立的。共阴极数码管与共阳极数码管相反,七个发光二极管的阴极接在一起,而阳极是独立的。

当共阳极数码管的某一阴极接低电平时,相应的二极管发光,可根据字形使某几段二极管发光,所以共阳极数码管需要输出低电平有效的译码器去驱动。共阴极数码管则需输出高电平有效的译码器去驱动。

2、译码器原理(74LS47)

译码为编码的逆过程。它将编码时赋予代码的含义“翻译”过来。实现译码的逻辑电路成为译码器。译码器输出与输入代码有唯一的对应关系。74LS47是输出低电平有效的七段字形译码器,它在这里与数码管配合使用,表2列出了74LS47的真值表,表示出了它与数码管之间的关系。

四、详细设计与调试

4.1 秒脉冲的产生

秒脉冲发生器

脉冲发生器是数字钟的核心部分,它的精度和稳定度决定了数字钟的质量,通常用晶体振荡器产生标准频率信号经过整形、分频获得1Hz的秒脉冲。石英晶体振荡器的特点是振荡频率准确、电路结构简单、频率易调整。如晶32768 Hz,通过15次二分频后可获得1Hz的脉冲输出。

4.2 秒计数、译码及显示部分的设计

秒计数译码电路

秒计数器为M=60的计数器,即显示00~59,采用中规模集成电路双十进制计数器至少需要2片,因为10 < M < 100。它的个位为十进制,十位为六进制。本电路采用两片74LS161实现。当个位计数至1010时,通过 74LS00 二输入与非门连至清零端达到清零,当达到0000时,产生上升脉冲送给十位。十位计数至0110时清零。调试

六.总结

无线网络电子时钟软件设计与实现 第5篇

关键词:无线网,电子钟,C/S架构

随着信息技术和网络技术的高速发展, 国内各高校, 包括一些中小学, 大多对学校现有的网络设备进行了升级改造, 而且很多学校都拥有了自己的无线网络环境, 从而满足了互联网时代运用现代化教学手段进行教学的需要。辽宁轨道交通职业学院于2014年9月搬迁到新校区, 新校区的网络基础设施采用了国内领先、国际先进的网络设备, 校园实现了无线网络全覆盖。为了更好地发挥校园网络的作用, 学院在信息化建设上作了大量工作, 自主开发了很多信息系统, 无线网络电子时钟就是其中之一。

1 项目描述

无线网络电子时钟项目是辽宁轨道交通职业学院的一项院级科研项目, 系统从设计到调试、制作和安装, 全部由校内教师和学生完成, 其总体架构如图1所示, 系统完成的功能和实现方式如下所述。

1.1 系统功能

无线网络电子时钟 (以下简称电子钟) 通过无线网络与无线电子时钟服务器 (以下简称服务器) 通信, 实现各种功能。

1.1.1 自动校时功能

系统可以实现电子钟与服务器时间同步, 电子钟在每次启动时, 通过无线网络自动与服务器连接, 从服务器获得时间后, 通过程序控制时间;电子钟正常运行过程中, 定时与服务器进行时间同步;服务器定期与互联网上的标准时间服务器进行同步。通过以上3种手段, 保证电子时钟的时间准确, 保证全院各个场所的时间统一。

1.1.2 时间显示和响铃

服务器可以为每个电子钟下发响铃时间列表, 在保证时间准确的前提下, 电子钟显示当前的北京时间, 并通过电子钟中存储的时间列表和音乐, 在规定的时间响铃, 作为学生上下课或各项活动开始的铃声。因为每个时钟可以设置不同的时间列表, 这样就为学院实现错时上下课创造了条件。

1.1.3 音频会议功能

系统在软件设计时采用组播技术, 而且电子钟的使用环境是在局域网中, 能够保证网络带宽, 因此, 本文设计了音频广播功能, 根据组播技术的特点, 将广播分组, 不同的组广播不同的内容, 这样就满足了各系在同一时间给不同的学生开会的需要, 学生只需要在班级就可以听到会议的内容。

1.1.4 状态查询功能

为了保证电子时钟的正常运行, 电子钟定时向服务器发送自己的状态, 同时服务器也定期去检查电子钟的状态, 当某个电子钟出现故障时, 在服务器端会给出警告, 提示管理人员处理相应的故障。

1.2 系统实现

系统的实现分为硬件部分和软件部分, 硬件部分采用嵌入式技术, 由学院其他教师完成, 这里就不再赘述其工作过程, 只给出其原理框图, 供感兴趣的技术人员参考 (见图2) 。

软件部分采用C/S架构, 客户端为电子钟, 通过无线网络与服务器端通信, 实现电子钟的各项功能。本文将详细介绍客户端和服务器端的软件设计思路和实现方法。

2 客户端软件设计

客户端软件设计过程中, 首先应考虑的是加载硬件各模块的驱动, 包括无线WIFI驱动、音频芯片驱动、显示模块驱动等。为了提高开发效率, 也为了体现模块化编程在嵌入式系统中的优势, 本文采用了多进程方式设计软件, 每个模块独立开发, 运行时根据需要创建进程, 进程间通过管道实现数据共享, 进程运行结束后释放相关资源, 这样既节省了系统资源, 也可以方便、快速地查找系统调试过程中出现的问题在哪里。

客户端软件分为shell程序、主模块、显示模块、声音播放模块。

2.1 shell程序

shell程序实现加载WIFI模块驱动, 连接校园网, 获取IP地址, 成功后创建主模块进程;不成功, 则调用显示进程, 提示错误信息。

2.2 主模块

主模块实现以下功能:通过无线网络与服务器端进行交互, 向服务器端发送请求和接收服务器端的命令;创建显示进程;在接收到服务器端某些需要客户端共享的数据时, 负责共享数据的管理等。图3为主模块的程序框图。

2.3 显示模块

显示模块实现以下功能:加载显示驱动;定时获得客户端系统时间, 并显示时间;通过管道获取响铃时间列表, 并在需要响铃的时间创建声音播放进程播放铃声;定时向服务器端发送电子钟状态。图4为显示模块的程序框图。

2.4 声音播放模块

声音播放模块实现以下功能:加载音频驱动程序;播放存储器中的音乐文件。图5为声音播放模块的程序框图。

3 服务器端软件设计

服务器端软件采用MVC架构, 在.net framework4.5框架下, 使用C#语言开发, 数据库采用SQL Server2008。软件使用UDP技术, 实现组播和单播技术, 组播用来实现时钟同步、响铃策略发放和网络广播等功能, 单播用来接收电子钟的状态。服务器端软件的总体架构如图6所示。

服务器软件正常运行后, 用户可以通过软件操作窗口执行系统设置、手动同步时间、手动互联网校时、分组广播等功能。软件操作界面如图7所示。

服务器端软件在建立组播和单播时, 使用了.net的Udp Client类, 在服务器端创建2个Udp Client对象, 一个使用本地IP作为服务器地址 (单播对象) , 使用组播地址作为服务器地址 (组播对象) 。服务器端使用这2个对象来完成单播和组播的功能。另外, Udp Client类在初始化时, 默认TTL为1, 如果网络应用需要跨路由器或三层交换机是不可以的。而使用Udp Client自带的Ttl属性进行设置则不能改变TTL的值。解决办法如下:

4 结语

无线网络电子时钟目前已经在辽宁轨道交通职业学院大面积使用, 使用效果良好。本系统在硬件设计和软件设计方面还有很多值得探讨和推敲的地方, 笔者将对系统进行不断的升级改造。本文只是为广大软件设计人员提供一个参考。

参考文献

[1]Stevens.TCP/IP详解[M].北京:机械工业出版社, 2003.

[2]张沈莘.IP组播技术在远程视频监控系统中的应用分析[J].电子技术与软件工程, 2014 (9) :42.

多功能电子时钟设计 第6篇

关键词:单片机,Mega16,硬件组合,软件编辑

一、AVR单机片中Mega16的特征分析

所谓Mega16是一种经过改进的AVR单机片, 其结构的突出特征就是低功耗, 是一款AVR RISC结构的8位微控制器。具体看Mega16控制器有以下特征:具有16k字节可以实现编程的Flash, 512字节的EEPROM, 1K字节的SRAM, 以及多个通用的I/O串口, 与之配合的有32个通用寄存器, 还有JTAG接口用于边界扫描, 支持芯片调试与程序编辑过程, 其中还有灵活的比较模式定时器、计数器等, 可以编程的串行口与对模块进行检测器向连接, 8路多位ADC, 还具有看门狗定时装置, 并具有利用软件进行节能的模式供应用选择。在工作的间隙阶段, 处理器可以停止工作, 此时各种接口与转换器、寄存器等都可以以持续工作;如果出现电源断开, 模块的进个模块的相应的晶体就会停止振荡, 所有的功能都会暂停, 只有复位硬件参与工作;在节能模式下, 异步定时装置可以持续运行, 允许保持一个基准的系统时间, 而其余模块都可以休眠;在系统中还具有对噪音进行抑制的模式, 此时处理芯片与异步定时器、ADC进行工作外, 其余模块都可以进入到休眠状态以节能, 使得微型控制器的工作能耗降到极低, 同时也可以进行快速启动并进行工作。

二、Mega16芯片为基础的电子时钟的设计思路

1、总体思路

因为数字集成电路的发展与石英晶体参与的振荡器进入到普及阶段, 让数字时钟的精度大大提高, 已经代替了传统的钟表成为了人们在日常生活中不可缺少的计时工具, 并方便的生活实用, 同时拓展了原有钟表的单一报时功能。虽然电子技术让时钟的更加的先进, 但是原有的单机片的所有数据处理都是在一个累加器的基础上完成的, 这样的累加与程序处理装置、数据存储器之间的数据转换就成为了单片机应用的一个瓶颈, 当然也就影响了相关电子产品的性能。利用更加先进的微型控制器, 其寄存器由32个通用寄存器构成, 同时任何一个寄存器都可独立工作成为累加器, 此时就可以获得更好的工作效率, 提高了系统性能, 因此利用AVR单片机Mega16作为时钟芯片可以突破瓶颈而获得高效系统。

这是因为Mega16单片机的内部是以时钟为基准, 利用软件编辑对其进行控制, 实现了各种时间轴控制, 从秒到年的现实可以通过显示装置呈现出来其编辑的结果。同时在实际应用的过程中可以实现对各种模式的调整, 定时、闹钟等。为了实现以上功能, 在对单机片为基础的时钟应从两个方面进行软件与硬件的合理配置。硬件采用的是Mega16芯片作为系统的核心控制器, 利用相应的高清晰液晶显示其作为交互界面;软件部分因为芯片的功能强大可以利用C语言对其进行程序编辑与控制, 以此驱动微型控制器完成各种功能。

2、硬件系统实现

硬件围绕整微型控制器展开, 即Mega16单片机、振荡器、液晶显示器三个部分组成一个时钟的核心系统, 具有结构简单且经济高的特点。单片机内部配置的晶体振荡装置与外部电路通过电容、振荡其构成, 为了整个系提供了两个脉冲控制终端, 让芯片内部的脉冲电路可以为整个时钟以及调控界面的提供脉冲信号, 完成显示与调整、报时、闹钟等功能。在系统中利用Mega16电机片和电压、晶体振荡器构成的是最简单的芯片系统, 在此基础上将开发设计、调试、下载等功能, 就可以将始终信息通过各端口输出到LED显示终端上。

3、软件的编辑与调试

软件开发与设计实际上就是围绕多单片机的编程与控制, 即利用AVR软件对系统进行软件编辑与控制实现, 将下载的软件利用ISP生成可执行的程序而写入到目标芯片上, 然后采用AVR嵌入单片机综合开发, 其适用的C语言程序如下所示:

三、结束语

AVR单片机中的Mega16芯片具有强大的存储能力与低能耗性能, 其在使用汇总可以利用ISP Flash完成与向串口的连接完成编程控制, 也可利用编程器完成编程控制, 或者利用AVR内核中的引导程序完成编程, 这就给控制系统调整提供了简单而容易操作手段。在实际的应用中通过8位内部CPU与系统可编程的芯片连接就结构成了一个功能强大的Mega16单机片, 尤其是其嵌入式的控制结构可以实现更多的灵活配置, 在电子时钟的应用可以有效的降低成本。可见此类单机片的体积很小, 抗干扰能力强, 环境适应性好, 同时价格与能耗较低, 因此用于始终开发较为适合。特别是其以AVR单机片为基础, 可以利用高级语言对其完成编程与控制, 加快了软件开发的速度, 更加的具备了批量性。因此以Mage16为核心辅助以必要的振荡电路, 加之高级的C语言程序就可工程一个简单而准确的电子时钟, 利用直流供电可以保证其长时间使用。

参考文献

[1]蔡希彪、曹洪奎、牛芳琳:《单片机电子时钟系统的设计与仿真》, 《中国科技信息》, 2007 (04) 。

[2]刘斌勇:《单片机Mega16型微控制器的电子时钟设计》, 《国外电子元器件》, 2008 (07) 。

上一篇:程序升级下一篇:语文课堂三要素