初学凌阳单片机_1_学习IDE的使用及语音播放_李坚
- 格式:pdf
- 大小:2.81 MB
- 文档页数:4
Sunplus SPCE061A 微控制器语音基础知识语音基础知识一、音频概述二、音频的采样和量化三、语音压缩编码四、语音识别五、语音合成六、SPCE061A用于语音处理一、音频概述音频概述音频:人耳可以感觉到的声音频率 20Hz ~ 20000Hz语音和音乐是两类特殊的音频信号 语音是语言的载体,是对声音的抽象 音乐是符号化的声音语音的特点语音是由人类发音器官产生的、具有一定意义且能起到社会交际作用的声音。
具有抽象表意性频率通常在200Hz~4000Hz之间语音处理技术语音处理是建立在语言学和数字信号处理基础之上的综合学科语音分析语音存储与回放语音识别语音合成语音分析音频采样和量化将模拟的(连续的)声音波形数字化(离散化) 语音信号的时域分析直接利用语音信号的时域波形进行分析语音信号的频域分析对语音信号的频谱、功率谱等进行分析语音信号的线性预测分析把语音信号用一个模型来表示,利用模型的参数来描述语音信号的波形和频谱特性二、音频采样和量化音频采样和量化音频采样原理10110010110 ……音源输入设备AD采集数字信号音频采样和量化采样频率采样频率是指采样设备每秒钟对声音信号的采集次数。
采样频率越高,声音的还原就越真实越自然。
量化位数量化位数是把模拟声音转换为数字信号的二进制位数。
量化位数客观地反映了数字声音信号对输入声音信号描述的准确程度。
三、语音压缩编码语音压缩编码压缩编码的意义高效存储高速传输压缩编码分类波形编码参数编码混合编码语音压缩编码波形编码直接将波形信号转变为数字代码,尽量真实地还原波形声音质量好压缩比低,码率通常在20Kb/s以上适用于高保真音乐及语音场合语音压缩编码参数编码提取语音信号的特征参数进行编码,尽量保持语音信号的可懂性,而还原后的波形可能与原波形差别很大。
压缩比很高,码率可达2.4kb/s以下。
语音质量较差,自然度低对环境噪声敏感语音压缩编码混合编码将参数编码和波形编码技术结合起来,克服了两种编码的缺点。
Sunplus SPCE061A 微控制器语音播放(自动播放)语音播放一、单片机实现语音播放的原理二、语音播放程序示例三、创建一个语音播放程序四、小结和注意事项五、疑难解答一、单片机实现语音播放的原理语音录制存储流程 语音采样在定时中断的控制下,以一定的速率(8KHz )进行AD 转换压缩编码将采集到的数据以某种算法压缩编码存储将编码后的数据保存到存储介质中语音资源压缩编码存储数据队列定时中断AD采样语音语音播放流程数据提取语音数据送入解压缩队列数据解码解压缩数据并送入输出队列转换为模拟信号在定时中断的控制下进行数模转换转换为声音模拟信号经滤波、放大,通过扬声器输出解压缩队列语音资源解压缩取数据输出队列定时中断DAC输出语音用SPCE061A播放语音开始播放播放初始化语音资源播放完毕?开始解码,填入播放队列停止播放定时中断从播放队列取出数据送DAC输出返回YN播放队列设置中断播放循环中断服务自动播放与手动播放 自动播放解压缩队列语音资源解压缩取数据输出队列定时中断DAC输出语音SACM_Decoder(); SACM_A2000_FillQueue();SP_GetResource();手动播放二、语音播放程序示例语音播放程序示例// 中断服务程序 //用户接口函数在hardware.asm 中定义的用户API ,用户可以根据需要修改 F_SP_SACM_A2000_In it_ F_SP_InitQueue F_SP_ReadQueueF_SP_WriteQueueF_SP_RampUpDAC1…… ……语音函数库用户API语音播放程序三、创建一个语音播放程序创建一个语音播放程序 第1 步:新建工程创建一个语音播放程序 第2 步:复制语音播放需要的文件到工程所在的文件夹语音播放支持文件,在“IDE安装目录->Example -> 61_Exa -> Record”文件夹下可以找到sacmv26e.libhardware.inchardware.asmA2000格式的语音资源,在“IDE安装目录-> Example -> VoiceExa-> ex1_A2000->Voice”文件夹下可以找到这里选择了d1.24k和ww.24k两个文件在Project 菜单项,选择Add to Project -> Files 找到工程所在的文件夹,选择hardware.asm 、hardware.inc 两个文件(按住Ctrl 键点选),确定。
凌阳单片机资料使用指南1.1 初次接触单片机-使用《跟我学SPCE061A 单片机》\61教学与创新\2教材与教案\跟我学SPCE061A单片机《跟我学SPCE061A单片机》无论有没有学过单片机,都可以从里面学习到有关凌阳SPCE061A单片机的基础知识。
初学单片机的朋友,在学习时常会碰到些一时间无法理解的概念、原理等;对于这些不解,可以从微机原理、数字电路、模拟电路以及C语言编程类的书籍、资料中找到答案,假如之前没有学过这些知识呢?怎么办?其实不用太在意,最好找时间自己学习一下,对于初学者,最重要的是这些知识中的相关概念的理解,找一找,问一问,总会找到答案的。
当然,最好还是系统地去学,这样打好了基础,在往深层次发展时才不会感到步履艰难。
这就需要我们的学习下面的材料了!1.2 初次接触凌阳单片机-SPCE061A 30 课时PPT\61教学与创新\2教材与教案\SPCE061A教学30课时PPT 在这份PPT资料中,以图文、动画的形式向单片机爱好者展示SPCE061A的CPU特点、资源概况,各个硬件外设的工作机制以及使用方法,另外还介绍有关SPCE061A的开发工具介绍、汇编语言、极具特色的语音功能等等。
另外,这份PPT资料中,在每一页都写上了详尽的注释,在学习时留意看一下,会发现很多教材上所没有的东西的。
这个主要是提供给老师作为凌阳单片机教学和辅导来使用。
1.3 怎么样把凌阳单片机用起来呢?学以致用,学习单片机无非就是为了使用它。
很多同学学习单片机考试通过就算OK。
实际上我们认为这种观念是要不得的。
单片机绝不是一门等同于模电、数电等科的课程。
这是一种工具,是工具就要去用。
学过C语言,我们可以在单片机用C语言对硬件进行操作,来熟悉C语言的使用;学过PID算法、模糊控制,我们就可以在水温控制、电机控制等场合去体会控制算法对被控对象的影响;学过卷积(或内积)运算,我们就可以尝试编写软件滤波算法等。
毕业论文学生姓名学号院(系) 电子与电气工程系专业电子信息科学与技术题目基于凌阳单片机制作的简易复读机指导教师2009 年 5 月摘要:复读机是一种在市面上热卖的用于语言学习的电子产品,特别是学生人群不可缺少的学习用具之一。
不过由于大多数复读机采用语音芯片,致使声音效果有所欠缺,并且由于内存小不能支持长时间大容量的录音。
本文将介绍由台湾凌阳科技开发的SPCE061A 单片机与SD卡组成的录放音系统,利用SPCE061A强大的语音处理功能,再配合SD卡很容易实现大容量超长录音功能,并且支持多段录音,便于用户对前后录音效果的比较。
而SD卡易插拔,便于通过计算机对其进行读写操作。
由本文制作的语音复读机具有长时间、大容量、支持多段录音、结构简单,价格便宜等优点,极具市场推广前景。
关键词:凌阳单片机,SD卡,复读机,录放系统Abstract: The language repeater is one kind of electronic product that used to study language.It sales quite well in the current market, especially for our students, is an indispensable stationery. However most of language repeaters use voice chip, the effect of sound is not very perfect. Besides it can’t support long-time and large capacity voice record owing to its small memory. This thesis will introduce SPCE061A Single-chip Microcomputer and SD card model consisted of recording system, which is designed by Sunplus Technology in Taiwan. It use SPCE061A strong speech processing function, and combining SD card is easy to implement large capacity and long-time record function and support multi-stage record, then it is convenient for the users to compare the pre and post effect of records .What’s more, SD card is easy to plug-pull, so it is convenient to carry out read-write operation through a computer. The speech language repeater that we produced , has the long time ,large capacity and multi-stage record function .It also has the simple structure and cheap price advantages . On account of these,we have confidence it has perfect market promotion prospect.Keywords: sunplus single-chip microcomputer, SD card, language repeater, recording system目录1 绪论 (4)1.1 设计背景 (4)1.2 设计目的 (4)2 方案的提出与比较 (5)2.1 方案的提出 (5)2.2 方案的比较 (6)3 系统硬件设计 (7)3.1 SPCE061A简介 (7)3.2 SD卡模组 (8)3.3 硬件电路 (8)4 系统软件设计 (11)4.1 系统控制程序 (11)4.2 主程序 (12)4.3 按键扫描程序 (17)4.4 SD卡驱动程序简介 (18)4.5语音文件操作管理程序 (22)4.6 录/放音程序 (23)4.7 SD卡语音存储播放操作 (24)总结 (25)参考文献 (26)致谢 (27)附录A主程序 (28)附录B SPI模式介绍 (35)1 绪论1.1 设计背景声音是人类表达思想和情感所不可缺少的媒介,众所周知,人类学习语言是从模仿开始的。
凌阳61单片机使用指南凌阳61单片机使用指南第一章:简介1.1 概述本章介绍凌阳61单片机的基本信息,包括产品特点、硬件规格等。
第二章:硬件连接2.1 引脚定义本节介绍凌阳61单片机各个引脚的功能和使用方式。
2.2 电源接口本节介绍凌阳61单片机的电源接口及相关注意事项。
2.3 外部设备连接本节介绍凌阳61单片机与外部设备的连接方式和通信协议。
第三章:软件开发3.1 开发环境搭建本节详细介绍凌阳61单片机软件开发所需的开发环境搭建步骤。
3.2 编程语言选择本节介绍凌阳61单片机支持的编程语言,并分析其特点和适用场景。
3.3 开发工具使用本节介绍凌阳61单片机的开发工具的使用方法和常用功能。
3.4 编程实例本节提供凌阳61单片机的编程实例,帮助读者快速上手开发。
第四章:调试与测试4.1 调试工具本节介绍凌阳61单片机调试工具的选择和使用方法。
4.2 常见问题解答本节了一些常见问题,并提供解决方案和调试方法。
第五章:附件本文档涉及的附件包括:- 凌阳61单片机引脚定义图- 凌阳61单片机外部设备连接示意图- 凌阳61单片机开发环境搭建视频教程附件可以通过邮件(exampl)向我们索取。
法律名词及注释:1.单片机:是一种集成电路中的集成块,由一个处理器核心、存储器和各种周边设备组成的微型计算机。
2.编程语言:用于编写计算机程序的一种形式化语言,用来精确地描述计算机操作的步骤。
3.通信协议:设备之间进行数据交换和通信时所约定的规则和格式,包括物理层传输、数据之间的转换和通信协议的解释等。
凌阳单片机学习指南V2.0凌阳单片机学习指南V2.0凌阳16位单片机__A学习指南学以致用、实践创新是凌阳科技大学计划一直倡导的单片机学习理念。
单片机是一门工具,学习单片机就是为了使用它。
很多同学没有给予单片机一个正确的认识,学习单片机就为应付考试。
这种观念实在是要不得的。
单片机绝不是一门等同于模电、数电等科的课程,这是一种工具。
是工具就要去用:学过C语言,我们可以在单片机用C语言对硬件进行操作,来熟悉C语言的使用;学过PID算法、模糊控制,我们就可以在水温控制、电机控制等场合去体会控制算法对被控对象的影响;学过卷积(或内积)运算,我们就可以尝试编写软件滤波算法等。
当然学过传感器了,我们还可以通过单片机对传感器采集来的数据进行处理、学习传感器的使用。
可以说无论是控制、通讯、仪器仪表还是其他什么专业的内容,我们都可以使用单片机这个工具来检验我们理论学习的情况,把理论和实践结合起来。
所以单片机是一个平台,是众多知识综合应用的平台。
从这个角度讲,学会单片机是第一步;使用单片机对大学期间的知识进行应用、创新是第二步;能进行一些项目和产品开发才是最后一步,也是学习单片机的最终目的。
凌阳就是基于这样的单片机理念来开展单片机合作的。
这里通过不同单片机学习阶段来介绍如何利用凌阳单片机的资料来开展凌阳单片机创新活动。
希望这样一份资料能为初次接触凌阳单片机的同学提供一些帮助。
凌阳单片机学习指南V2.0第一环节凌阳单片机学习1、学习单片机前的准备1.1 虮识呔知识上根据单片机学习要求,事先要修过模电、数电、C或汇编语言、微机原理(最好);最好修过传感器原理、自控原理、算法结构等。
1.2 讵质呔学校有创新班或创新实验室最好;没有的,需要自己配置一些常用工具(烙铁、尖嘴钳、焊锡、万用表、多功能板、元器件等,当然最重要的是要配置一套单片机开发系统)。
1.3要切记防止浮躁。
单片机是一门技术,入门比较容易;但要很好的掌握应用,需要大量的实践和学习,这就要求你能坐得住冷板凳。
单片机与可编程器件电子世界2005年10期23・・让我们来尝试一下61A板MIC录入语音的方法和播放效果。
首先点击光盘→电子竞赛→基础篇→语音功能→DVRFLASH,先浏览DVR FLASH.pdf文件,将要进行的工程项目的功能是:点按K1键,开始录音;点按K2键,停止录音;点按K3键,播放录音内容。
再将DVR FLASH文件夹拷贝到自己的硬盘目录下,进入IDE,打开工程项目DVR FLASH.spj ,点击橡皮擦图标,选定体名称SPCE061A→OK,编译链接Build后,出现的错误信息表明缺少两个头文件hardware.h和dvr.h(图1),寻找发现在Include中有所需头文件(图2),添加头初学凌阳单片机(4)——学习从61板上MIC 录入语音的方法・北京航空航天大学工程训练中心 李 坚 耿 珂・图2文件(图3)到工程项目中,编译链接 Build后,出现的错误信息表明,用来产生目标文件的hardware.h头文件不符合规定(图4)。
试着将Include文件夹下的此文件复制到工程项目DVRDLASH.spj 所在目录下,hardware.h头文件问题解决了,新出现的dvr.h头文件问题(图5)估计与hardware.h头文件的问题相同,所以依上述方法办理。
再次编译链接Build,出现五个错误(图6),错误分为两类:一是文件调用;一是函数定义。
这次直接将两个.inc文件从Include文件夹下复制到所用工程项目目录下,再次编译链接Build,问题集中到hardware.asm文件上(图7),寻找D:盘,无错误信息提示中的路径D:\programFiles\sunplus\unSOIED180\,工程项目中又包含有hardware.asm这个文件,并提示所包含的文件在Include目录下,无奈下试着将Include目录下的该文件拷贝到DVR FLASH.spj所在目录下,图1图3图4电子世界2005年10期24・・单片机与可编程器件图8即向DVR_FLASH目录中添加hardware.asm文件(图8),编译链接Build后,错误信息发生了变化(图9),不知为什么会有这样的变化,按理说hardware.asm是同一个文件,只是在不同的目录下,但毕竟是有了变化,而且这些错误我们以前曾经见过,在Resource.asm文件中添加对这些函数的定义即可。
Sunplus SPCE061A 微控制器语音播放(手动播放)语音播放一、手动播放程序示例二、创建手动播放程序三、用汇编语言编写语音播放程序四、小结与注意事项五、疑难解答一、手动播放程序示例手动播放流程语音资源开始初始化为手动播放模式初始化解码队列初始化解码算法填充解码队列播放完毕?数据解码开始定时中断从播放队列取出数据送DAC输出返回播放队列中断服务获取数据播放循环手动播放程序示例设计一个手动播放函数二、创建手动播放程序把Hardware.asm 、Hardware.inc 和Sacmv26e.lib ,以及A2000格式的语音文件复制到工程所在文件夹下创建手动播放程序新建工程在Project 菜单项,选择Add to Project -> Files 找到工程所在的文件夹,选择hardware.asm 、hardware.inc 两个文件(按住Ctrl 键点选),确定。
IDE 的Project 菜单项,Add to Project -> Resource 选择两个语音文件d1.24k 和ww.24k ,确定。
创建手动播放程序把支持文件和语音资源添加到工程中。
创建手动播放程序把Sacmv26e.lib语音函数库添加到工程中。
选择Project -> Setting,在左半部分的目录树中点选根目录。
选择Link栏,点击Library Modules右面的文件夹按钮。
在工程所在文件夹中选择sacmv26e.lib文件,确定。
创建手动播放程序编写代码手动语音播放函数中断服务程序主函数创建手动播放程序添加语音资源索引表在工程中打开Resource.asm文件,在文件结尾处加入语音资源索引表。
创建手动播放程序下载试听连接好硬件(下载线、电源、扬声器等),在IDE的工具栏中点选绿色的“Use ICE”按钮。
点击红色叹号形的“Execute Program”按钮,下载并运行程序,就可以听到从SPCE061A播放出的声音了。
第6章 集成开发环境IDE6.1 综述本章将详细介绍µ’nSP™集成开发环境。
µ’nSP™ 集成开发环境集程序的编辑、编译、链接、调试以及仿真等功能为一体。
具有友好的交互界面、下拉菜单、快捷键和快速访问命令列表等,使编程、调试工作方便且高效。
此外,它的软件仿真功能可以在不连接仿真板的情况下模拟硬件的各项功能来调试程序。
图6.1µ’nSP™ IDE 桌面IDE的开发界面如图6.1所示。
本章将介绍µ’nSP™开发环境的菜单、窗口界面以及项目的操作等,使有兴趣者对开发环境有一个总体了解,并能够动手实践。
6.2 菜单集成环境的主菜单在标题栏的下面。
菜单栏中的菜单命令提供了开发、调试和保存应用程序所需要的工具。
µ’nSP™ IDE 菜单栏共有七项,即文件(File)、编辑(Edit)、视图(View)、项目(Project)、编辑(Build)、工具(Tools)和帮助(Help)。
每个菜单项含有若干个菜单命令,执行不同的操作,用鼠标单击某个菜单项,即可打开该菜单,然后用鼠标单击菜单中的某一条就能执行相应的菜单命令。
菜单中的命令分为两种类型,一类是可以直接执行的命令,这类命令的后面没有任何信息(例如保存项目);另一类在命令名后面带省略号(例如打开项目),需要通过打开对话框来执行。
在用鼠标单击一条命令后,屏幕上将显示一个对话框,利用对话框可以执行各种有关的操作。
在有些命令的后面还带有其它信息,例如:打开项目Ctrl + O,其中Ctrl + O叫做“热键”。
在菜单中,热键列在相应的菜单命令之后,与菜单命令具有相同的作用。
使用热键方式,不必打开菜单就能执行相应的菜单命令。
例如:按Ctrl + O,可以立即执行“打开项目”命令。
注意:只有部分菜单命令能通过热键执行。
下面介绍菜单栏各项的内容及作用。
6.2.1 文件(File)文件的下拉菜单内容及功能如表6.1:表6.1 文件的下拉菜单内容及功能内容作用热键新建(New) 新建项目和各种文件Ctrl + N打开(Open) 打开项目或各种文件Ctrl + O关闭(Close) 关闭文件窗口用来关闭当前的项目,装入新的项目。
凌阳61单片机使用指南凌阳61单片机使用指南1、简介1.1 设备概述1.2 技术参数1.3 硬件连接2、开发环境搭建2.1 安装IDE2.2 配置编译器2.3 驱动安装3、编程基础3.1 数据类型3.2 变量和常量3.3 运算符3.4 控制流程语句4、IO口输入输出编程4.1 GPIO配置 4.2 输入读取 4.3 输出控制4.4 中断处理5、定时器编程5.1 定时器配置 5.2 定时中断5.3 定时器应用6、串口通信编程 6.1 串口配置 6.2 数据发送 6.3 数据接收6.4 中断处理7、ADC和DAC编程 7.1 ADC配置7.2 ADC采样7.3 DAC配置7.4 DAC输出8、PWM编程8.1 PWM配置8.2 PWM控制8.3 PWM应用9、外部中断编程9.1 外部中断配置 9.2 中断触发方式9.3 中断处理10、蓝牙通信编程10.1 蓝牙模块选择 10.2 蓝牙通信协议 10.3 蓝牙配置10.4 数据传输11、存储器编程11.1 Flash存储器 11.2 EEPROM存储器12、计时器编程12.1 计时器配置12.2 计时器应用附件:无法律名词及注释:1、单片机:指一种将微处理器的中央处理器、存储器、定时器和通信接口等功能集成在一个芯片上的集成电路。
2、GPIO:General Purpose Input Output,通用输入输出口。
用于与外部设备进行数字信号的输入和输出。
3、中断:指计算机运行过程中,由硬件或软件发出的一个特定信号,用于改变程序的正常执行顺序。
4、ADC:Analog to Digital Converter,模数转换器。
用于将模拟信号转换为数字信号。
5、DAC:Digital to Analog Converter,数模转换器。
用于将数字信号转换为模拟信号。
6、PWM:Pulse Width Modulation,脉宽调制。
一种通过改变信号的脉冲宽度来控制模拟量的技术。
摘要随着计算机系统地广泛应用以及网络地飞速发展,各种控制设备间地通信功能日趋成熟,单片机通信在工业控制、数据采集以及仪器仪表自动化等许多领域都起着十分重要地作用.本次课程设计是基于凌阳16位单片机SPCE061A 地4X4键盘语音播放设计,当按不同键值会自动播放不同地语音,并且在第一个数码管上显示键值.在硬件设计中,主要包括SPCE061A核心及周边电路、系统电源电路、音频电路、UART通讯电路、4×4键盘和6位8段数码管电路等;在软件设计中,系统使用C语言进行编写,主要包括主程序、键盘扫描程序、中断程序、LED驱动程序、自检程序等.关键字:16位单片机SPCE061A,4X4键盘,6位8段数码管电路,音频电路目录1 绪论 (1)1.1 课题背景 (1)1.2 设计目地 (1)1.3 设计内容 (1)2 总体方案设计 (3)2.1 总体需求分析 (3)2.1.1 实验原理32.1.2 硬件选择 (4)2.2 系统组成结构及原理 (4)2.2.1 系统组成结构 (4)2.2.2 SPCE061A单片机 (5)2.2.3 系统电源电路 (7)2.2.4 音频电路 (8)2.2.5 4×4键盘和6位8段数码管 (9)2.2.6 UART通讯电路 (9)3 系统硬件设计 (11)3.1 4X4键盘扫描原理图 (11)3.2 SPCE061A获取4×4键盘键值原理 (11)3.3 硬件连接 (12)4 系统软件设计 (13)4.1 集成开发环境IDE概述 (13)4.2程序主流程图 (14)4.3 实验箱自检准备 (14)4.3.1 自检步骤 (14)4.3.2 实验步骤 (16)5 调试结果与分析 (17)5.1 调试结果 (17)5.2 实验结果分析 (18)6 总结报告 (19)致谢 (20)参考文献 (21)附录 (22)1 绪论1.1 课题背景用单片机驱动LED数码管有很多方法,按显示方式可分静态显示和动态(扫描)显示;按译码方式可分硬件译码和软件译码.静态显示数据稳定,占用很少地CPU时间.动态显示需要CPU时刻对显示器件进行数据刷新,显示数据有闪烁感,占用地CPU时间多.利用凌阳单片机SPCE061A可以方便地实现键盘控制地语音自动播放功能.1.2 设计目地在单片机地产品设计中,人机界面是非常重要地部分,而且随着系统地日益复杂,以及人们对产品地人机交互能力地要求不断提升,常握单片机系统中地人机界面基础设计能力成为了学习单片机地基础课程,而4X4键盘地操作和LED数码管地动态显示是人机界面设计地基础内容,以及掌握语音播放过程和方法,加深对人机界面地认识,同时提高人机界面系统设计地能力.1.3 设计内容给4×4 键盘地每个键定义一个功能,按不同地键时会听到实验箱播放不同地语音,并能看到数码管显示键值.具体地键和语音地对应关系如表1.表1 键和语音地对应关系按键语音资源语音资源内容数码管显示内容S1(数字键“7”)S7.48k 凌阳科技走入您地生活7S2(数字键“8”)S8.48k 凌阳科技为专业集成电路设计公司8S3(数字键“9”)S9.48k 凌阳将带您走入科技殿堂9S5(数字键“4”)S4.48k 凌阳以创新、专业保持产品地领导地位4S6(数字键“5”)S5.48k 凌阳以完整产品线满足客户需求5S7(数字键“6”)S6.48k 凌阳科技以人为本,诚信第一 6S9(数字键“1”)S1.48k 凌阳专业于研发制造以及较高速与高速加价型集成电路产品1S10(数字键“2”)S2.48k 凌阳用全客户委托设计模式,提供客户满意地产品与服务2S11(数字键“3”)S3.48k 凌阳专向于多媒体语音信号处理核心技术,迎接多媒体时代地来临3S13(删除键“DEL”)无无无显示其他键S0.48k 凌阳科技企业宗旨为科技落实生活2 总体方案设计2.1 总体需求分析随着计算机技术地广泛应用以及网络地飞速发展,出现各种各样地智能仪器,其应用已涉及各行各业,这些智能仪器大多数都是基于嵌入式单片机技术.凌阳十六位单片机(SPCE061A)实验箱是集单片机应用技术、在线调试、在线仿真等功能于一体地强大开发系统,SPCE061A 及其系列产品将带领MCU 地应用迈入片上系统(SOC)时代,使在体验凌阳音频地欢快愉悦中轻松步入单片机及其嵌入式系统地流行领域.因此,本次课程设计利用其提供地各子电路模块和驱动程序,可以方便地实现目前较为流行地键盘语音自动播放功能.2.1.1 实验原理如图2.1,注意把IOA8~IOA15连接4×4键盘地C4~L1,切不可接反了.按键以后,SPCE061A单片机进行行扫描,确定哪个键按下;确定之后,利用一种算法计算键值,比如当S5按下时,在IOA口高八位得到地值应该为01001000B,这时候利用一种算法可以让键值为“4”;或者直接当这里地行扫描值为0100、读到列码1000时,让返回地键值为“4”.SPCE061A单片机取得键值后,利用自动播放地方式播放相应索引号地语音资源.图2.1系统连接框图2.1.2 硬件选择本次课程设计主要以带有μ’nSP™ IDE仿真环境地PC机和凌阳单片机SPCE061A实验箱基础,实验箱硬件模块包括:SPCE061A核心及周边电路模块(包含32个I/O口)、半导体数码管、4×4键盘、电源电路等.2.2 系统组成结构及原理2.2.1 系统组成结构1)实验箱功能区域划分图图2.2 实验箱功能区域划分图2)硬件配置以下是为凌阳科技大学计划实验箱地主要硬件配置:(1)主控芯片SPCE061A,凌阳16位单片机,详细请参见第三章.(2)4×4矩阵键盘和6位8段数码管,采用动态扫描方式驱动4×4矩阵键盘.(3)1×8高低电平发生按键和8个发光二极管.(4)I/O可选5V∕3.3V输出电路以及可选外部电压输入电路.(5)两路0-3V可调A/D输入电压,为A/D数据采集等提供便利.(6)双色8×8 LED点阵,可以完成图形、字模显示.(7)RS232接口可实现直接与PC机进行通讯.(8)利用串行设备输入输出接口(SIO接口)扩展外部存储芯片SPR4096A,为实验箱系统增加4M Bits Flash 或32K Bits SRAM地存储空间.(9)USB1.1 接口,提供完整地单片机固体程序、上位机驱动程序源代码及其完整地软件包和应用范例,可直接进行USB通讯.(10)带背光地128×64点阵液晶模组,内藏凌阳地一款LCD驱动芯片SPLC501,采用最新地COG(Chip on Glass)技术使驱动和液晶合二为一.(11)两路音频输出电路,采用凌阳音频功放芯片SPY0030A,可以充分体验SPCE061A带来地听觉效果.(12)MIC输入电路,配合SPCE061A内部地AGC和OPI电路,可获得理想地语音效果.(13)SPCE061A内置ICE 电路,配合凌阳地在线调试器PROBE 和软件开发环境IDE 可方便地实现在线编程、仿真、下载、调试等功能.2.2.2 SPCE061A单片机1)功能特点本系统以凌阳自主开发地十六位单片机SPCE061A作为主控芯片,它是凌阳十六位单片机系列中地一款,具有以下功能特性:(1)16位unsp系列微处理器;(2)工作电压:VDD为3.0~3.6V(cpu), VDDH为3.0~5.5V(I/O);(3)CPU时钟:0.32MHz~49.152MHz ;(4)内置2K字SRAM;(5)内置32K字FLASH;(6)内置可编程音频处理电路;(7)时钟电路采用晶体振荡器电路。
单片机与可编程器件芝麻开花──节节高,这次我们就要在另一项放音内容上长长本事了。
凌阳公司提供了这样一个程序,就是键控放音程序。
以往我们都是按部就班地拷贝、调用已安装好的程序,顺藤摸瓜地找到了想要的东西。
现在我们走走捷径,提高点效率,直截了当地抓住我们想要的东西。
请点击进入61A板附带的光盘,进入电子竞赛→基础篇→语音功能→s480 key播放文件夹,打开s480_key播放.pdf文件,浏览一下其中的内容,你会看到关于该程序的软硬件设计、功能描述、使用说明和流程图。
通过阅读这个文件,我们了解了这个程序的作用和使用方法。
我们还学到了什么呢?还有一项更重要的内容值得我们学习,那就是在今后我们自己编程的过程中,要学会建立这样的技术文档。
接下来将s480 key文件夹拷贝到你常用的硬盘目录下,进入IDE,打开s480_key工程项目,读一下程序main.c,选用ICE状态,设置一下体状态,编译链接,打开61A板电源,下载运行程序,按照程序说明,分别按键测试一下,程序功能:点按K1键,播放出简短的两句英语;在播放过程中,点按K2键,停止播放;在播放过程中,点按K3键,暂停播放,可听到“吱吱”的响声;再点按K3键,不能继续播音。
退出程序运行状态。
到此为止,我们顺利地完成了一连串的操作与测试,这体现了我们前一段学习的成效。
下面我们就要在这个程序的基础上,进行拓展,并巩固已学的知识。
通过这个键控放音程序,我们体会到键控的效果,现在我们来改变一下这个程序的功能,参与一些局部编程。
61A板上除了复位键以外,只安装有三个控制键,如果我们现在添加新的按键,就需要外购器材,涉及硬件的安装及与61A板的连接,势必分散我们的精力和注意力,所以我们要充分发挥61A板的现有资源,达到我们主要的学习目的。
假设我们要实现在语音播放的过程中,键控增加或减小音量的功能,我们分两步来完成这个任务。
首先保留原有K1键控制语音播放的功能,然后,将K2键改为较低音量控制键,K3键改为较高音量控制键。
Keil 集成开发软件(IDE)的基本使用一、初始界面进入Keil C51 后,启动Keil C51,下图屏幕包含2个主要窗口:工程窗口(含文件、寄存器、书库、程序、模板等标签),输出窗口(含编译、命令、文件查找标签)。
初始窗口和菜单可在VIEW菜单中设置。
二、Keil C51软件的基本使用方法和基本的调试技巧。
1)建立一个新工程单击Project菜单,在弹出的下拉菜单中选中New Project选项2)然后选择你要保存的路径,输入工程文件的名字,比如保存到C51目录里,工程文件的名字为C51 如下图所示,然后点击保存.3)这时会弹出一个对话框,要求你选择单片机的型号,你可以根据你使用的单片机来选择,ke il c51几乎支持所有的51核的单片机,我这里还是以大家用的比较多的Atmel 的89C51来说明,如下图所示,选择89C51之后,右边栏是对这个单片机的基本的说明,然后点击确定.4)完成上一步骤后,屏幕如下图所示5)在下图中,单击“File”菜单,再在下拉菜单中单击“New”选项新建文件后屏幕如下图所示此时光标在编辑窗口里闪烁,这时可以键入用户的应用程序了,但笔者建议首先保存该空白的文件,单击菜单上的“File”,在下拉菜单中选中“Save As”选项单击,屏幕如下图所示,在“文件名”栏右侧的编辑框中,键入欲使用的文件名,同时,必须键入正确的扩展名。
注意,如果用C语言编写程序,则扩展名为(.c);如果用汇编语言编写程序,则扩展名必须为(.asm)。
然后,单击“保存”按钮。
6)回到编辑界面后,单击“Target 1”前面的“+”号,然后在“Source Group 1”上单击右键,弹出如下菜单然后单击“A d d F i l e t o G r o u p…S o u r c e G r o u p1‟”屏幕如下图所示选中Test.c,然后单击“Add”屏幕好下图所示“Source Group 1”文件夹中多了一个子项“Text1.c”,子项的多少与所增加的源程序的多少相同。
编者按:凌阳单片机的语言功能是其区别于其他单片机的最大特点,本栏目组织了系列文章连载,手把手地教读者如何使用其语音功能,配合本讲座,本刊读者服务部配套供应凌阳61板。
初学凌阳单片机(1) ─学习IDE 的使用及语音播放・北京航空航天大学工程训练中心 李 坚(buaa4735@yahoo.com.cn)・图1图2图3首次接触凌阳单片机,首先被它的语音功能所吸引,读了一遍《凌阳16位单片机应用基础》一书,感觉内容太多,很难上手,只因对其语音功能感兴趣,才不忍放弃,加之61板使用方便,无需另外购置开发系统,且可用资源非常丰富,所以现在试着进行一些探索,供大家参考。
浏览了一遍教科书,就想上手搞开发,实在有些像刚从驾校毕业的学员,兴致勃勃地谈论驾驶技术,让其上路就有点发怵,看到身边大车小车川流不息,就有些不知所措了。
其实静下来想一想,只要找一个好的切入点,就能够学进去,深入进去。
我在这里和大家一起探讨学习的思路和方法,希望能对像我一样的新手有所帮助,同时也希望高手多给一些指点,以使大家共同进步。
兴趣是学习的原动力,我们对凌阳单片机什么地方最感兴趣呢?语音功能是凌阳单片机不同于其他单片机的一项独具特色的优点,也是我们的兴趣点,否则我们可以去选别的有特色的单片机来学习。
既然我们对语音感兴趣,我们就不妨把语音作为我们学习凌阳单片机的切入点。
我们首先学习它的语音播放,通过学习使用实际应用程序,我们可以学会怎样正确使用凌阳开发仿真环境IDE软件,如何编译应用程序,如何链接,如何下载播放出我们想听到的语音内容。
买一套凌阳61A板单片机套件,按照使用说明安装好硬件和软件,点击u’nSP IDE 1.8.4,我们先来认识一下IDE环境下工具栏中常用到的图标:workspace,打开或关闭workspace窗;output,打开或关闭output窗; build,编译链接;exscute,program 在调试模式下,运行程序;use ice,结合仿真板调试;select body,选择ez-probe或probe;download,下载可执行文件;stop debug,停止调试,退出调试模式。