一种基于MSP430单片机的日程管理系统

发布者:ByteWanderer最新更新时间:2010-11-22 来源: 山西电子技术关键字:日程管理  单片机  MSP430  I2C  ISD4004 手机看文章 扫描二维码
随时随地手机看文章

  0 引言

  日程管理系统是指在指定的时间自动实现提示、放音、录音等功能,例如清晨吹起床号和自动定时上下课响铃等。该系统广泛应用在学校、部队、工厂等部门。早期的司号仪系统存在诸多的缺点。如抗干扰能力差、播放音质不好、录音时间不长,给日常教学、工作到来极大不便。随着生活水平和需求的不断提高,人们对产品的智能化要求越来越高.老式的司号仪智能化不够高必将被淘汰,采用单片机控制的日程管理系统以其系统稳定、智能控制、操作简便、价格便宜等优点得到广泛应用。

  1 系统结构及功能

  系统的组成和程序流程如图l所示,整个系统共有七个部分组成,分别是:主控部件、电源部件、时钟部件、录放音部件、输入部件、显示部件、和扩展部件。主控部件选用的是MSP430F149超低功耗16位单片机,MSP430单片机采用FLASH存储体,此单片机采用了FLASH在线编程JTAG技术,可以利用片内的FLASH方便的实现软件升级,以达到系统升级的目的。设定的状态直接通过在系统编程存入FLASH存储体,掉电可保护,功耗低,其抗干扰能力极强,各种响应的设定值均存储在FLASH存储体中,强电磁干扰环境也不会影响到存储的状态。单片机通过I/O口接受按键输入,通过调用时钟实现定时响应,管理录音段及号音,并控制录放音、液晶显示和扩展口。

系统的组成和程序流程

  电源部件为各部件工作提供工作电源,全系统需要4种电源电压分别是:+3V、+5V、+12V、一12V。

  时钟部件提供全系统时间基准,单片机定时和中断。为了实现系统的定时录音和放音,必须有一个稳定的时钟。SD2003A是一种具有内置晶振、支持I2C总线接口的高精度实时时钟芯片。该系列芯片可保证时钟精度为±4 ppm(在25±l℃下),即年误差小于2分钟。SD2003A的电源由电池提供,当单片机掉电后,SD2003A照样工作。当单片机恢复工作时,调用SD2003A内部时钟。

  录放音部件实现语音等信息的存储和播放。录放音部件选用的是ISD公司ISD4000系列语音处理芯片,它的工作电压3V,单片录放时间最常可达16分钟,音质好,适用于移动电话及其他便携式电子产品中。芯片采用CMOS技术,内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮阵列。芯片设计是基于所有操作必须由微控制器控制.操作命令可通过串行通信接口(SPI或Microwire)送入。采样频率可为4.0,5.3,6.4,8.O kHz,频率越低,录放时间越长,而音质则有所下降,片内信息存于闪烁存贮器中,可在断电情况下保存100年(典型值),反复录音10万次。

  输入部件主要用于实现定时时间的修改、录音放音的转换、时钟芯片的时间调整、继电器的响应控制等。输入采用4×4扫描键盘,由MSP430单片机通过软件控制实现输入。显示部件采用M12864-11A5液晶显示器,主要用于显示操作进程,使使用者能够清楚的看到每步操作的作用,增强了人机对话功能。

  考虑到管理系统应用的广泛性,系统增加扩展部件,利用继电器组实现一些对大功率器件的控制功能。继电器的一端是弱电,一端是强电,因此我们采用了光电隔离控制的方法,从而有效地控制大功率输出部件对系统的干扰。

  2 系统的技术实现

  主控模块对继电器和按键的控制是用I/O口直接控制的。同时预留了大量外部接口,这主要用于将来升级。主控部分采用了大量的分支跳转表,对键盘输入的值根据不同的环境,选择相对应的程序进行响应。因此整个系统仅仅使用了5个按键就可以实现所有的功能,其它键作为快捷控制键和特殊功能键。

  该主控部分的单片机通过I2C通信协议对SD2003时钟芯片进行控制,调用SD2003的时钟,从而实现定时响应;而液晶显示模块是用并行通讯方式进行控制的,AO高时为指令,低时为数据。

  它与ISD4004语音片采用SPI同步通信协议,对4004语音芯片控制,以下是SPI协议的控制时序,SPI协议由三根线构成,MISO信号输入,MOSI信号输出,UCLK时钟线组成,其通讯方式如图2所示。

通讯方式

  SPI协议是一个同步串行数据传输协议,协议假定微控制器的SPI移位寄存器在SCLK的下降沿动作,因此对ISD4004而言,在时钟上升沿锁存MOSI引脚的数据,在下降沿将数据送至MISO引脚。从时序图可以看出,SPI协议的实现比较容易,MSP430Fll49单片机利用其内部定时器,采用3个I/O口,用软件可实现SPI协议。

  由于放音及录音有很多种,因此,我们必须找到一种良好的算法来进行这项工作,因此,我们采用了通过基于信息地址表(以下简称MAT)的管理方式对录音片进行操作,真正实现了可对任意段进行删除、重录、添加任意时间长度的录音的功能。

  ISD4004有能力读回每次录音结束时的内部信息指针,据此建立一个简单的MAT表,将每条信息的位置存入另外的不挥发性数字存储器中。这样,可按需要重放任一条指定信息。MAT表是信息管理体系的一个重要组成部分,它跟踪每一条信息的开始地址以及每一个信息碎块的开始和结束地址。

  在本应用中,录音部分MAT表的建立是这样的:通常,寻址ISD4004需要12位地址,加上片选4片4004,则需要14位地址,假设将最低5位地址恒为O,只需9位地址就可以寻址300个存贮块中的任意一块,每块长度为6.4秒。此例中,MAT表占用600字节的存贮空间,每个字对应着ISD4004的一个存储块。随着录音和删除反复进行,具体对应关系也许会改变。下面说明工作原理。

  MAT表中的一个表项的数值或者表示该项与ISD的存储块尚无关联,或者表示ISD某个存储块的状态。第15位(最高位)有特殊作用:置l表示对应的存储块是某条信息的起始块。其余各位就是存储块的地址。级联时,MAT中BITl2、BITl3是用来指示哪一片器件。这样,表项有四种可能值:

  (1)表项值为全O:表示该项与1SD的存储块尚无关联。

  (2)表项值的Bit15为l:表示对应的存储块是某段信息的起始块。

  (3)表项值的Bitl5为O,其余各位是有效地址:表示对应的存储块是某条信息的其中一块,但不是起始块。

  (4)第2种情况的特例:我们约定,1SD的第一个存储块总是某条信息的起始块,因此对应表项值为(1000 0000…)。

  录入若干段信息后,随着ISD4004空间的使用,MAT表自顶向下逐渐建立起相应表项。每使用了一个存储块就建立一字节的MAT表项。MAT表的特点是:①对应于同一条信息的所有表项在MAT中总是连续放置的。②对于由若干个MAT表项组成的一条信息,它的各个存储块的地址值总是从小到大,但不一定紧紧相连。

MAT表

  重放时,微控制器从MAT表头开始,向下搜索Bit 15为1的表项。要重放第几条信息,就去寻找第几个这样的表项.以重放#3信息为例,微控制器停留在第三个Bit 15为l的表项,该项指向#3信息的第一个存储块。从该表项中,微控制器得到ISD中03信息第一个存储块的块号是10,#03信息的重放由SPI送入第1O块的地址(即块号乘以8)后开始。

  去掉MAT表的相关表项就可删除该信息。例如删除#3信息,对照表l,#3信息占用了MAT表的第6、7、8字,为了删除#3信息,须将其对应的最后一个表项之后的所有表项往后移动3字,然后把MAT表已分配的最后三个表项值置为全O。

  3 结论

  基于MSP430单片机的日程管理系统具有以下特点。

  (1)录音:在指定时间开启录音,录音时间不小于30分钟。录音源为收音机(默认)、麦克风(选择音源时,采用手控);

  (2)吹号:在指定时间吹号,号音种类有15种,每个号音的时间是一定的,累计号音时间在10分钟左右;

  (3)放音:在指定时间,按指定时长放音,音源为录音、录音机、收音机。可选择播放的次数,在播放期间,如有其他指令,则停止播放执行新指令;

  (4)电铃:在指定时间开启电铃,持续时间(固定为5秒)可设定;

  (5)关灯(开灯):在指定时间关灯(开灯)。

  该系统功能强大,人机接口人性化,外观美观。已在部分院校推广使用。

关键字:日程管理  单片机  MSP430  I2C  ISD4004 引用地址:一种基于MSP430单片机的日程管理系统

上一篇:基于ADuC7026实现功率放大器监控的参考设计
下一篇:基于Proteus的单片机虚拟开发环境介绍

推荐阅读最新更新时间:2024-03-16 12:31

微控制器和超声波技术在汽车倒车检测系统中的应用
  倒车障碍检测系统对盲区内障碍物的探测   倒车障碍检测系统所采用的超声波传感器技术可以探测到附近的障碍物,为驾驶员提供倒车警告和辅助泊车功能,其原理是利用超声波探测倒车路径上或附近存在的任何障碍物,并及时发出警告。所设计的检测系统可以同时提供声光并茂的听觉和视觉警告,其警告表示是探测到了在盲区内障碍物的距离和方向。这样,在狭窄的地方不管是泊车还是开车,借助倒车障碍报警检测系统,驾驶员心理压力就会减少,并可以游刃有余地采取必要的动作。而这种PIC l8F8490微控制器与超声波传感器很便宜,并且可以用在众多车型上。   那末什么是基于超声波传感器的倒车障碍检测系统呢?为此应先了解超声波传感器的有关技术问题    超声
[单片机]
<font color='red'>微控制器</font>和超声波技术在汽车倒车检测系统中的应用
51单片机学习笔记(六)_串口中断通信+定时器2串口中断
51单片机默认使用定时器1作为串口通信的波特率发生器、定时器1中断通信,串口与定时器1冲突,在遇到定时器不够用的时候可以用定时器2 #include reg52.h void DelayMs(unsigned int i); void SerialInit(); void SendByte(unsigned char sbyte); void SendString(unsigned char *pstr); void main(void) { SerialInit(); while(1); //注:必需要无限循环 } /* //单片机时钟周期:11.0592MHz 以时钟1作为波特率发生器 void SerialInit
[单片机]
STC12C5A60S2单片机双串口同时通讯的完整版modbus程序
电路原理图如下: /****************************** 程序功能: modbus RTU 模式设置读取十六个继电器状态,以及内部保持寄存器的设置读取 硬件测试环境:单片机stc89C52RC十六继电器485接口控制板 通信协议: 晶振:11.0592 波特率:9600 8位数据 1位停止位 偶校验 485通位接口P3.7控制方向端 控制板地址: 修改localAddr(变量) 线圈个数:16个 线圈地址范围:0x0000~0x000F 保持寄存器个数:16个(字节型) 寄存器地址:0x0000~0x000F \******************************\ 功能码简介: 02:读
[单片机]
STC12C5A60S2<font color='red'>单片机</font>双串口同时通讯的完整版modbus程序
技术干货—11种常见单片机电路设计模块分享
1、双路232通信电路 3线连接方式,对应的是母头,工作电压5V,可以使用MAX202或MAX232。 2、三极管串口通信 本电路是用三极管搭的,电路简单,成本低,但是问题,一般在低波特率下是非常好的。 3、单路232通信电路 三线方式,与上面的三级管搭的完全等效。 4、USB 采用的是PL2303HX,价格便宜,稳定性还不错。 5、SP706S复位电路 带看门狗和手动复位,价格便宜(美信的贵很多),R4为调试用,调试完后焊接好R4。 6、SD卡模块电路(带锁) 本电路与SD卡的封装有关,注意与封装对应。此电
[电源管理]
技术干货—11种常见<font color='red'>单片机</font>电路设计模块分享
单片机flash中烧录自定义数据的方法
引言 答题器项目生产时,需要在程序烧录时附带生产信息(生产时间、软件版本等)。后续若答题器出问题时,能知道是哪个批次生产的答题器,方便定位问题。 技术可行性 答题器所用芯片nrf51822flash共256KByte,flash根本用不完,我们可以取一块没用到的flash,烧录时把生产信息也写进去。 一 HEX文件格式详解 非常感谢这篇文章,写的非常透彻: http://www.forwhat.cn/post-240.html 全文摘录如下: ------------------------------------摘录开始----------------------------------------- Hex
[单片机]
基于MSP430的ADS7841驱动程序
师姐(博士)反向设计了ADS7841芯片。为了测试其稳定性和精度,所以帮忙写了这个驱动程序。最初是师兄用FPGA写的,但读出来的数据差距太大,所以我就用430单片机帮忙搞了一个!但这个程序调试的并不顺利,简直就是痛苦,我昨天中午和晚上都没吃饭!首先碰到I/O口坏的情况,还有就是这个芯片的 DATASHEET关于读数的说明是错的,害人不浅!据datasheet解释是等待busy信号为低才开始读数,其实这个时候已经晚了,会漏掉一位。所有上面这些问题我是借助逻辑分析仪看出来的,把抓出来的时序一点点的分析,终于发现了读数方面DATASHEET的漏洞。还有就是她没提写数据和读数据分别应该在时钟的什么沿触发。实在让人郁闷~!~正常应该在下降沿写
[单片机]
使用可定制微控制器高效开发系统级芯片 (SoC)
作者:爱特梅尔公司 (Atmel) 微控制器部传讯经理Peter Bishop 为了应对成本、尺寸、功耗和开发时间的压力,许多电子产品都建构于系统级芯片 (SoC)之上。这个单片集成电路集成了大多数的系统功能。然而,随着这些器件越来越复杂,要在有限的时间里经济地进行产品开发以满足产品上市时间的压力已变得越来越困难。SoC集成了一些可编程部件 (特别是微控制器),使得其软件开发与硬件开发同样的昂贵和耗时。 使用基于业界标准、带有片上存储器和各种标准接口的ARMò处理器,再加上面向特定应用逻辑和非标接口的金属可编程模块 (MP模块),构成的可定制微控制器是切实可行的SoC开发方法,能够解决上述问题: -采用经过验证的软/硬件模块、
[单片机]
基于C8051f020单片机和UDP/IP协议实现地震勘测传感器网络的设计
随着地震勘测技术向着精细测量方向发展,有必要对频带宽、灵敏度高、失真度小的地震检波技术进行深入的研究。同时,在勘测现场要按一定方式放置一组检波器,将这一组检波器的数据进行综合分析,从而得出相应的勘测结果。 本文根据地震勘测原理,提出一种构建地震勘测传感器网络的方案:将各节点信息传输到监控PC机,采用虚拟仪器技术,使用Labview编写运行在PC机上的测控软件,进行相应的数据分析和处理;基于全光纤迈克尔逊干涉系统,采用交流相位跟踪零差检测技术(PTAC),实现对待测信号的精确检测和误差信号的补偿,减小信号漂移对系统的影响;采用C8051f020单片机对解调后的信号进行采样,并将相关数据通过UDP/IP协议进行网络传输。方案实现了
[单片机]
基于C8051f020<font color='red'>单片机</font>和UDP/IP协议实现地震勘测传感器网络的设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多每日新闻
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved