新闻中心

EEPW首页>嵌入式系统>设计应用> 一种基于MSP43O单片机的日程管理系统

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

作者: 时间:2009-06-17 来源:网络 收藏

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

本文引用地址://m.amcfsurvey.com/article/173709.htm


2 系统的技术实现
主控模块对继电器和按键的控制是用I/O口直接控制的。同时预留了大量外部接口,这主要用于将来升级。主控部分采用了大量的分支跳转表,对键盘输入的值根据不同的环境,选择相对应的程序进行响应。因此整个系统仅仅使用了5个按键就可以实现所有的功能,其它键作为快捷控制键和特殊功能键。
该主控部分的通过I2C通信协议对SD2003时钟芯片进行控制,调用SD2003的时钟,从而实现定时响应;而液晶显示模块是用并行通讯方式进行控制的,AO高时为指令,低时为数据。
它与ISD4004语音片采用同步通信协议,对4004语音芯片控制,以下是协议的控制时序,协议由三根线构成,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表项组成的一条信息,它的各个存储块的地址值总是从小到大,但不一定紧紧相连。



评论


相关推荐

技术专区

关闭