找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2756|回复: 2
打印 上一主题 下一主题
收起左侧

msp430电子钟实验设计

[复制链接]
跳转到指定楼层
楼主
ID:331757 发表于 2018-5-16 23:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
基于MSP430单片机的电子时钟设计
                  
摘要
多功能数字钟的应用非常普遍,由单片机作为数字钟的核心控制器, 通过它的时钟信号 进行实现计时功能,将其时间数据经单片机输出,利用显示器显示出来。通过键盘可以进行 校时,定时等功能。本系统利用单片机实现其具有计时、校时等功能的数字时钟. 是以单片机MSP430F149为核心元件同时采用LCD12864同时显示“时、分、秒、星期、年、月、日、温度”的现代计时装置。显示极具人性化,另外具有校时功能,闹钟功能和节电保护功能。利用单片机实现的数字时钟具有编程灵活,便于功能的扩充等优点,如在电路板上预留有电源输出,温度传感 插座等插座,便于功能扩展。
一、实验目的
1、基础部分:电子钟能够直观、人性化显示:时间、日期、星期,能够按键校时(用独立的LED灯做流水灯装饰)。
2、提升部分:①带有闹钟功能,能够根据需要定时,②能够测量并显示当前环境的温度。
二、总体电路设计与时钟实现
此次设计主要是应用单片机来设计电子时钟,硬件部分主要分以下电路模块:MCU(F149)模块、独立按键模块、、OLED液晶显示模块、校时和闹钟设计模块、蜂鸣器报时模块。
总体框图如下图所示:
                        
1、MCU(F149)模块
   MSP430F149中有两个16位定时器,还可以利用看门狗定时器, MSP430F149中的定时器的比较模式产生PWM波形,再经过低通滤波器产生任意函数的波形, 可以通过定时器的比较模式实现数模转换功能。另外,定时器还具有捕获模式,我们可以通过定时器的捕获功能实现各种测量,比如脉冲宽度测量,如果和比较器结合,还可以测量电阻、电容、电压、电流、温度等。可以这样说,只要能通过传感转换为时间长度的,都可以通过定时器的捕获定时功能实现值的测量  MSP430F149单片机中集成了14路12位A/D转换,其中8路属于外部的信号转换,3路是对内部参考电压的检测转换,1路是接温控的传感电压转换,每一路转换都有一个可控制的转换存储器,而且,参考电平和时钟源都是可选择的,可以外部提供的.这给使用上带来了很大的灵活性。
                        
图2  MSP430F149原理图
2、液晶显示模块
     方案一:数码管是利用发光二极管的特性组合而成的数字显示器件,通过控制相应的二极管的状态显示相应的数字。要使数码管正常显示就要驱动电路驱动相应的段码,数码管的显示方式可分为静态显示和动态显示,静态显示的方式只适合显示单个的数字,因此本设计动态显示方式。由于动态显示方式利用的是人眼视觉暂留的特性,扫描的时间应不大于20毫秒,占用的系统资源大,而且显示的个数和字形有限,在本设计中不易使用。
    方案二:1602液晶显示屏是一种专门显示字符、数字、符号等的点阵型液晶模块,它有若干个5×7和5×11等点阵字符位组成,每个点阵字符都可以显示一个字符,每位之间都有一个点距的间隔,起到了字符间距和行间距的作用。1602的驱动电路带有11个指令,可以很方便的控制液晶的显示效果如:清屏、左移右移、光标显示。
    方案三:12864液晶显示是128×64点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。可与CPU直接接口,提供两种界面来连接微处理机:8-位并行及串行两种连接方式。具有多种功能:光标显示、画面移位、睡眠模式等。
    方案四:OLED显示屏又称有机电激发光二极管,由于同时具备自发光,不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及制程较简单等优异之特性,被认为是下一代的平面显示器新兴应用技术。由于OLED具有很好的人性化设计,所以受到人们的青睐
综上所述,由于该实验中要显示时间、日期、星期,而且要显示当前温度,所以本实验选用OLED显示屏。
        
图二  OLED 显示屏电路图
3、温度采集模块
    方案一:热敏电阻是开发早、种类多、发展比较成熟的热敏感元器件,热敏电阻由半导体陶瓷材料组成,利用的原理是温度引起电阻的变化。通过一定的电路可以将周围环境温度的变化转化为电压的变化,通过AD转化器将信号传输给单片机进行分析,从而检测出当前温度,但是误差大,不稳定,对环境温度要求比较高。
方案二:DS18B20数字温度传感器,采用单总线的接口方式与微处理器链接时仅需一条口线即可实现微处理器与DS18B20的双向通讯。单总线具有经济型好,抗干扰能力强,适合于恶劣环境的现场温度测量,使用方便等优点,使用户可轻松的组建传感器网络,为测量系统的构建引入全新概念。温度测量范围广,测量精度高,在使用中不需要任何外围元件,支持多点组网功能,供电方式灵活。因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而使系统结构更趋简单,可靠性高。
   
图三   DS18B20原理图
综上所述,温度采集模块采用结构较为简单,可靠性较高的DA18B20数字温度传感器来测量当前环境的温度。
DS18B20单线数字温度传感器,具有以下的特点:具有单总线的接口方式与微处理器连接时,仅需要一条口线即可实现微处理器与DS18B20的双向通讯。单总线具有经济性好、抗干扰能力强、适合于恶劣环境的现场温度检测,使用方便等优点;测量温度范围广、测量精度高;支持多点组网功能,多个DS18B20可以并联在惟一的单线上,实现多点测量。
DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警TH和TL、配置寄存器。
一般时序流程:
初始化—ROM操作指令—存储器操作指令—数据传输
4、独立按键模块
   单片机检测按键的原理:单片机的I/O既可作为输出也可作为输入使用,当检测按键时用的是它的输入功能,我们把按键的一端接地,另一端与单片机的某一个I/O口相接,开始时先给I/O口一个高电平,然后让单片机不断检测该I/O口是否变成低电平,当按键闭合时,即相当于该I/O口通过按键与地相接,变成低电平,程序一旦检测到I/O口变为低电平说明该案件被按下,然后执行相应的指令。按键要进行去抖操作才可以正常的工作。该实验中用到了两个按键,当第一个按键第一次按下时,进入到校时和闹钟的选择主菜单程序中,当第一个按键第二次按下时进入到了校时,第一个键第三次按下时进入到闹钟。如果在第一个键按下的前提下,第二个键按下,则说明要对当前的按键或者校时选择进行保存,使程序能更的运行。
         
图四  独立按键模块电路图
5、蜂鸣器模块
  在该实验中,定时部分靠蜂鸣器来实现的,一般先在软件部分先设置闹钟,然后到了时钟所设定的时间后,蜂鸣器发出声响。一以此来实现闹钟。
                     
图六  无源蜂鸣器原理图
6、DS1302定时模块
  方案一:MSP430单片机内部带有定时和计数功能,此定时功能是通过对外部晶振的脉冲进行计数,从而达到计时功能。只要使用11.0592的晶振就能实现零误差的计时,因此可以利用此功能实现计时,但因为只有单一的计使功能要实现“万年历”的功能需要较为复杂的程序,而且如果单片机掉电无法继续进行计时,所以使用不便。
方案二:DS1302是通过三根口线实现与单片机的通信,因DS1302功耗很小,即使电源掉电后通过3V的纽扣电池仍能维持DS1302精确走时。DS1302是一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小于31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5-5.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。
综上两种方案所述,应该选用DS1302实现计时功能。
DS1302芯片的引脚图如下图所示:
                           
                              
图七    DS1302引脚图
各引脚功能为:
8、VCC1:备用电池端;
1、VCC2:5V电源,当VCC2>VCC1+0.2V时,由VCC2向DS1302供电,当VCC2<VCC1时,由VCC1向DS1302供电;
7、SCLK:串行时钟,输入;
6、I/O:数据输入输出端口;
5、CE/RET:复位脚;
2、3、X1、X2是外接晶振脚(32.768KHZ的晶振);
4、接地端(GND);
      DS1302的数据读写是通过I/O串行进行的,当进行一次读写操作时最少得读操作时最少得读两个字节,就是一个命令,告诉DS1302是读还是写操作,是对RAM还是对CLOK寄存器操作,以及操作的址,第二个字节就是要读或者写的数据了。我们先看单字节:在进行操作之前先得将CE(也可以说是RST)置高电平,然后单片机将控制字符的位0放在I/O上,当I/O的数据稳定后,将SCLK置高电平,DS1302检测到SCLK上升沿后就将I/O上的数据读取,然后单片机将SCLK置为低电平,再将控制字的位1放在I/O上。读与写操作的不同就在于写操作是在SCLK低电平时单片机将数据放到I/O上,当SCLK上升沿时,DS1302读取。而读操作是在SCLK高电平时DS1302放数据到IO上,将SCLK置为低电平后,单片机就可以从IO上读取数据。
   
图八  DS1302时钟原理图
三、系统软件设计
软件设计是本设计的关键,软件程序编写的好坏直接影响着系统进行情况的好坏。因为本程序设计的模块比较多,所以程序编写也采用模块化设计,C语言具有编写灵活、移植方便、便于模块化设计的特点,所以本系统的软件采用MSP430进行编写。IAR Systems是全球领先的嵌入式系统开发工具和服务的供应商,提供的产品和服务涉及到嵌入式系统的设计、开发和测试的每一个阶段,包括:带有C/C++编译器和调试器的集成开发环境 (IDE)、实时操作系统和中间件、开发套件、硬件仿真器以及状态机建模工具。
系统的程序框图如下所示:
                     
                  

图九  系统软件程序图
四、实物图
         
五、小结
本次设计的重点是应用MSP430单片机,来实现基本的时分秒及调时调分
调秒的功能,首先从单片机的的发展历程入手,了解单片机的基本功能,结合本文实现功能的要求,基于MSP430单片机实现,通过对430系类单片机的认识,我们选用了MSP430F149单片机。我们进行了程序设计,通过调试,我们得到了基本的功能,可以正确的显示时间,包括时、分、秒;为了满足我们的日常要求,我们设置了调时、调分、调秒的功能。
六、器件清单
         
  
12864液晶屏
  
1
OLED液晶屏
1
DS18B20
1
DS1302
1
74HC164
1
430超小系统板
1
Msp430仿真器
1
电位器
1
电阻
若干
电容
若干
七、参考文献
   1、张靖武、周灵彬《单片机原理、应用与PROTEUS仿真》。
2、沈建华、杨艳琴《MSP430系列16位超低功耗单片机原理及应用》。
3、童诗白、华成英《模拟电子技术基础》。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:682691 发表于 2020-2-11 11:18 | 只看该作者
你好,有电子时钟的源码么
回复

使用道具 举报

板凳
ID:248705 发表于 2020-4-20 00:34 | 只看该作者
请问有应用到它的低功耗模式吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表