基于MSP430单片机的电子时钟设计.doc
基于MSP430单片机的电子时钟设计设计报告 第四组:郭晓林、张慧、王爽摘要2一、实验目的3二、总体电路设计与时钟实现31、MCUF149模块42、液晶显示模块43、温度采集模块54、独立按键模块65、蜂鸣器模块76、DS1302定时模块8三、系统软件设计9四、实物图10五、小结11六、器件清单11七、参考文献11基于MSP430单片机的电子时钟设计 摘要多功能数字钟的应用非常普遍,由单片机作为数字钟的核心控制器, 通过它的时钟信号 进行实现计时功能,将其时间数据经单片机输出,利用显示器显示出来。通过键盘可以进行 校时,定时等功能。本系统利用单片机实现其具有计时、校时等功能的数字时钟. 是以单片机MSP430F149为核心元件同时采用LCD12864同时显示“时、分、秒、星期、年、月、日、温度的现代计时装置。显示极具人性化,另外具有校时功能,闹钟功能和节电保护功能。利用单片机实现的数字时钟具有编程灵活,便于功能的扩充等优点,如在电路板上预留有电源输出,温度传感 插座等插座,便于功能扩展。关键词:MSP430F149 单片机 DS12887AbstractMulti-function digital clock is very common, by single chip microcomputer as the core of the digital clock controller, through its function of timing clock signal, the time data by the MCU output, using the monitor display. Through the keyboard to school, timing, and other functions. This system using single-chip microcomputer to realize its timing, the functions such as digital clock. When the school is based on single chip MSP430F149 as the core element at the same time adopt LCD12864 display at the same time "the hours, minutes, seconds, year, month, day, week, temperature" modern timing devices. Shows highly humanized, the other has a school function, when my alarm clock and saving electricity protecting functions. Using singlechip microcomputer digital clock has a flexible programming, function expansion conveviently, such as reserved on the circuit board output power, temperature sensing socket outlet, such as convenient for function extension.Key words: MSP430F149 Single chip microcomputer DS12887一、实验目的1、根底局部:电子钟能够直观、人性化显示:时间、日期、星期,能够按键校时用独立的LED灯做流水灯装饰。2、提升局部:带有闹钟功能,能够根据需要定时,能够测量并显示当前环境的温度。二、总体电路设计与时钟实现此次设计主要是应用单片机来设计电子时钟,硬件局部主要分以下电路模块:MCUF149模块、独立按键模块、OLED液晶显示模块、校时和闹钟设计模块、蜂鸣器报时模块。总体框图如下列图所示: 0.96寸OLED显示屏单片机MSPF149校时、时钟电路独立按键图1 总体框图DS18B20温度检测1、MCUF149模块 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点阵显示RAMGDRAM。可与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)、实时操作系统和中间件、开发套件、硬件仿真器以及状态机建模工具。系统的程序框图如下所示: 开始初始化显示欢送界面从DS1302读取信息1602液晶屏显示相关信息判断是否有按键按下没有按键按下时间、日期、上限温度、闹钟设置模块温度检测模块图九 系统软件程序图四、实物图 五、小结本次设计的重点是应用MSP430单片机,来实现根本的时分秒及调时调分调秒的功能,首先从单片机的的开展历程入手,了解单片机的根本功能,结合本文实现功能的要求,基于MSP430单片机实现,通过对430系类单片机的认识,我们选用了MSP430F149单片机。我们进行了程序设计,通过调试,我们得到了根本的功能,可以正确的显示时间,包括时、分、秒;为了满足我们的日常要求,我们设置了调时、调分、调秒的功能。六、器件清单 12864液晶屏1个OLED液晶屏1个DS18B201个DS13021个74HC1641个430超小系统板1个Msp430仿真器1个电位器1个电阻假设干电容假设干七、参考文献 1、张靖武、周灵彬?单片机原理、应用与PROTEUS仿真?。2、沈建华、杨艳琴?MSP430系列16位超低功耗单片机原理及应用?。3、童诗白、华成英?模拟电子技术根底?。仅供学习参考