SPCE061A在简易电子书中的应用文章来源:凌阳科技教育推广中心作者:矢名(2005年毕业设计)发布时间:2006-4-2410:18:25摘要:本方案主要介绍了利用凌阳SPCE061A精简开发板作为控制核心,外扩64M三星NANDFlash存储器,利用SPLC501液晶显示模组显示的简易语音电子书的设计方案。该电子书不仅可以使读者看书,而且可以听书,利用我们的SPCE061A的语音功能开发出一个趣味书屋。关键词:K9F1208外部存储器SPLC051液晶显示模组语音朗读1引言随着消费类电子产品越来越多占据着世界消费市场,电子宣传册、电子报纸、电子相册等产品进入越来越多人的生活中。汉码字典、电子纸张的出现使得电子书产品技术越来越趋于成熟,液晶时代使得电子书从传统纸张的静态显示转向迈入动态的液晶显示。2004年,索尼的第一款超薄型液晶显示电子书(EBR-1000EP)出现,这款声貌并重的电子书以本身丰富的内容和强大的功能展现在市场,然而,它3080元人民币的价格使得好多人只有望而叹之了。利用凌阳已有的液晶显示模组和SPCE061A板本身强大的语音播报功能,并配有K9F1208外部存储器,声貌并重不仅可以实现,也可以利用软件擦写存储器来实现动态存储,更重要的是,它的价格将会远低于3080元。2芯片特性简介2.1SPCE061A特性简介SPCE061A是凌阳科技开发的采用μ'nSP内核的16位结构的微控制器,SPCE061A里内嵌32K字的闪存FLASHROM。较高的处理速度使μ'nSP能够非常容易地、快速地处理复杂的数字信号。因此,以μ'nSP为核心的SPCE061A微控制器也适用在数字语音识别应用领域。SPCE061A在2.6V~3.6V工作电压范围内的工作速度范围为0.32MHz~49.152MHz,较高的工作速度使其应用领域更加拓宽。2K字SRAM和32K字闪存ROM仅占一页存储空间,32位可编程的多功能I/O端口;两个16位定时器/计数器;32768Hz实时时钟;低电压复位/监测功能;8通道10位模-数转换输入功能并具有内置自动增益控制功能的麦克风输入方式;双通道10位DAC方式的音频输出功能……。SPCE061A是数字声音和语音识别产品的一种最经济的应用。特性:◆16位μ'nSP微处理器;◆工作电压:内核工作电压VDD为2.6~3.6V(CPU),IO口工作电压VDDH为VDD~5.5V(I/O);◆CPU时钟:0.32MHz~49.152MHz;◆内置2K字SRAM;◆内置32K闪存ROM;◆可编程音频处理;◆晶体振荡器;◆系统处于备用状态下(时钟处于停止状态),耗电小于2μA@3.6V;◆2个16位可编程定时器/计数器(可自动预置初始计数值);◆2个10位DAC(数-模转换)输出通道;◆32位通用可编程输入/输出端口;◆14个中断源可来自定时器A/B,时基,2个外部时钟源输入,键唤醒;◆具备触键唤醒的功能;◆使用凌阳音频编码SACM_S240方式(2.4K位/秒),能容纳210秒的语音数据;◆锁相环PLL振荡器提供系统时钟信号;◆32768Hz实时时钟;◆7通道10位电压模-数转换器(ADC)和单通道声音模-数转换器◆声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;◆具备串行设备接口;◆低电压复位(LVR)功能和低电压监测(LVD)功能;◆内置在线仿真板(ICE,In-CircuitEmulator)接口。2.2SPLC501液晶显示模组特性简介SPLC501液晶显示模组为128*64点阵,面板采用SIN(SuperTwistedNematic)超扭曲相列技术制成并且由128segment和64common组成。LCM非常容易通过接口被访问。SPLC501是凌阳的一款液晶显示模组,其主要特性有:◆显示模式:黄色模式SIN液晶◆显示格式:128*64点阵地图形液晶显示◆输入数据:兼容68/80系列MPU数据输入◆背光:黄绿色LED◆模块尺寸:72.8(长)×73.6(宽)×9.5(高)mm◆视屏尺寸:54.84(长)×35.79(宽)mm◆点大小:0.42(宽)×0.51(长)mm◆像素尺寸:0.46(宽)×0.56(长)mm2.3K9F1208存储器特性简介K9F1208是一个64M×8bit与非门Flash存储器。其特性有:◆工作电压:2.7V~3.6V◆存储器单元结构:(64M+2.048k)bit×8bit◆数字寄存器:(512+16)bit×8bit乘以四个位面◆程序自动擦写:◆页程序:(512+16)Byte◆块擦除:(16k+512)Byte◆528-Byte的读存储器操作,随机:12us(max),固定页:50ns(min)◆读写存储器周期:◆读写程序:200us(典型值)◆擦除:2ms(典型值)◆地址/数据/命令多元复用IO口◆硬件数据保护◆可靠的CMOS门技术◆内有命令寄存器◆智能的读、写和擦除存储器操作◆一次可以读写或者擦除4页或者块的内容3系统组成电子书主要的内容就是书,也即要有文字。我们所做的电子书不仅有文字,而且有声音,有声音是她的主要特点。而且重要的是她播放的声音音质好,音字清晰。如图3.1是电子书系统的硬件结构原理图。把预先准备好的语音和文字资源通过SPCE061A存入外部存储器K9F1208中,语音资源先要用凌阳的压缩软件去压缩,当要读书既要显示和朗读的时候需要把资源从外部存储器K9F1208读出到SPCE061中,或者进行解码朗读,或者进行查字库显示。到底要进行什么操作,是通过LED键盘模组的键盘去控制的。图3.1电子书系统的结构原理图如上系统运行结构原理图图,SPLC051语音电子书主要由SPCE061A主控板、SPLC501液晶显示模组、K9F1208存储器、LED键盘模组、电源、喇叭和一些排线构成。其硬件框图如图3.2所示。图3.2电子书系统的硬件框图4系统硬件设计我们知道,电子书分为显示和朗读两个模块。具体的说,电子的资源分为文本资源和语音资源两个资源模块。显示的时候从存储器里读出来的是文本资源,而朗读时从存储器里读出的是语音资源。这些显示和朗读是通过键盘模组的键盘来控制实现的。键盘通过SPCE061A控制了读书的各个操作,使的读书能完成完整的移动字幕、翻页、选书和朗读的功能。整个系统工作于3.3V电压下,由电源板提供5V电压,经过稳压器稳压到3.3V为系统供电。7个按键从2号到8号分别为上移字幕、下移字幕、开始读书、朗读、向下翻页、向上翻页、选下一本书按键。K9F1208存储器用来外扩SPCE061A的存储空间,以存储更多的资源。主控器SPCE061A不断查询键盘的键值,判断是否有键值即是否有按键按下,如有按下,根据相应的键值驱动外部模块执行相应的操作。4.1键盘扫描分析如上图所示为键盘电路。这些键除1号键之外的键中,从左到右的功能依次为上移字幕、下移字幕、开始读书、朗读、向下翻页、向上翻页、选下一本书。1*8键盘共同接在行线ROW1上,ROW1接高电平,当有键按下时把I/O口拉到高电平,这时候CPU读到键值并做相应的操作。4.2外部存储器K9F1208分析如图所示为外部存储器K9F1208和SPCE061A连接的电路原理图。她主要用来存储电子书的语音资源和文本资源及其存储生成的索引表。SPCE061A通过读写指令和K9F1208通讯。这样,当要读取存储其的内容时,先通过存储器的各控制引脚给其控制命令,并且先读出索引表里面要读的资源的起始地址和结束地址,就可以读出资源显示或者播报。4.3液晶显示分析SPLC051是凌阳的一款液晶显示模组,此液晶模组为128*64点阵,面板采用SIN(SuperTwistedNematic)超扭曲相列技术制成并且由128segment和64common组成。LCM非常容易通过接口被访问。她的电路图如图所示。在电子书系统中,采用SPLC501液晶显示模组显示内容。其中,它的数据口IO0~IO7从SPCE061A的IOA0~IOA7中提取数据进行显示。显示过程通过IOB1~IOB3控制。当SPCE061A送出数据到IO口时,通过软件驱动驱动显示器把文字显示出来。5软件设计本系统主要有主程序模块、朗读模块、索引表模块、中断模块和写存储器模块。其中主程序模块中包括主函数、显示函数、读存储器文本资源函数和键盘函数。如下图所示为主函数流程图。主函数实现的功能主要是根据键值调用相应的操作程序,比如朗读或者是显示程序去完成完整的读书操作。其中键值主要是在中断程序中取得键值的。5.1键盘中断程序由于在电子书系统中,无论是正在显示还是正在朗读,当有键按下时都需要打断当前的操作,于是把键盘程序放在中断中处理。这里使用了8HZ的TME1中断,即没1/8s系统扫描一次键盘看是否有键按下。这样就可以打断当前操作而执行键值所要求的另外一个操作。键盘中断程序的流程图如下图所示。5.2朗读程序系统在收到键值判断要朗读时,先根据送入的读书指令从索引表中找出该语音资源的初始地址和结束地址,再从初始地址开始,逐字读出资源并当语音队列未满时填充语音队列。当语音队列满时开始解码并播放语音知道该资源的结束地址。这就是电子书的完整的读书过程。读书程序过程也可以表示成下图所示的过程。在朗读程序中使用的是凌阳SACM_A2000格式的播放形式。而在朗读程序中直接调用了语音播放程序,在播放程序中包括播放初始化程序、播放程序和中断服务程序。播放初始化完成初始化A/D、定时器TimerA和音量,播放程序从ROM里取出预先压缩好的语音数据,解压缩后存放到播放队列里。中断服务程序定时地从播放序列中读数据,送到D/A转换驱动喇叭发音。6.3显示程序和朗读程序一样,显示时也要从存储器中读出文本资源,和朗读不一样的是,读资源时从索引表中读出的是该文本资源的起始地址和结束地址。而且读出时要经过数组变换才能显示。其显示详细过程可参考如下图所示流程图。6结束语在电子书的设计和实现中,可以明显地感觉到凌阳语音的强大功能及其直接利用SPCE061A扩展开发的便利性。综合起来,应用SPCE061A控制开发电子书有以下优点:利用SPCE061A外扩存储器非常方便,这样可以灵活的根据自己的需要和资源的大小来扩展存储器存取更多的资源。利用SPCE061A和SPLC501液晶显示模组显示器连接的简便性,直接用排线连接而无须其他的驱动电路就可以显示,使得开发非常的便利,可以缩短开发周期。利用凌阳压缩编码算法使得存取资源变小,这样可以节省很多存储空间。利用凌阳强大的语音功能使的在开发中不需要专门的语音播放模块而很好的实现语音朗读的功能。同时,她最大的特点就是她的性价比高。价格便宜,成本低、运行可靠。SPCE061A有丰富的I/O口资源,外围电路相对简单。7参考文献[1]雷思孝等,单片机原理及实用技术[M]西安电子科技大学出版社[2]罗亚非等,凌阳16位单片机应用基础[M]北京航空航天大学出版社[3]谭浩强著,c程序设计[M]清华大学出版社[4]内藏SPLC501控制器图形液晶显示模组使用手册[Z]凌阳大学计划网站[5][6]LED键盘模组使用说明书[Z][7]K9F1208U0M-YCB0使用说明书相关源代码下载:[源码下载]