您好, 访客   登录/注册

基于STC12C5A60S2单片机的语音系统的研究与设计

来源:用户上传      作者: 朱伟

  摘要:本文介绍了一种基于STC12C5A60S2单片机的语音功能设计方案。利用该单片机的大容量ROM将语音编码数据存储到单片机中,再利用单片机内置的数字脉冲宽度调制器(PWM)将语音还原,无需专用语音芯片即可实现语音功能,可以极大地减少硬件成本,使语音系统的设计变得简洁。
  关键词: STC12C5A60S2,PWM,PCM,单片机,语音
  
  1 引言
  目前,语音系统越来越广泛地应用于各个领域。目前常用的方案是采用专用语音集成电路加以单片机控制实现,而这类设计用到的语音芯片一般价格较高,电路的软硬件设计成本和难度都比较大。如果采用STC12C5A60S2单片机的大容量ROM存储语音数据,再利用内置的PWM功能,可以方便的将语音信号还原。本文就单片机设计语音功能原理和方法进行详细介绍。
  2 STC12C5A60S2单片机介绍
  STC12C5A60S2单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代51单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部拥有高达60K的用户应用程序空间(ROM),1280字节RAM,集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S)等功能。
  STC12C5A60S2单片机集成了两路可编程计数器阵列(PCA)模块,可通过程序设定,使其工作于8位PWM模式,它是实现语音输出的重要部件。大容量的ROM空间适合存储较长的语音数据,1T高速的运算能力和1KB的RAM为语音解码输出提供了保障,所以应用该单片机可以很容易的设计出具备语音功能的系统。
  3 单片机实现语音功能的原理
  在STC12C5A60S2单片机上实现语音输出,首先要有供单片机读取的语音数据,可以借助PC机上的软件录制或从现有声音文件中提取,保存为PCM编码,8kHz采样,8位的WAV格式文件。采取这种格式的原因有两点:一是该采样速率下可获得清晰的语音效果,能满足语音系统的要求,二是和单片机位数以及PWM位数一致,有利于单片机的处理和运算。
  PCM是波形编码技术的一种,特点是比较简单,语音质量高,缺点就是占用存储空间较多,如果要实现较长的语音,可采取适当的编码形式进行压缩,如ADPCM自适应差分脉冲编码算法等,在这里限于篇幅不再对语音编解码知识加以论述,有兴趣的读者可以自己查阅相关资料。
  当获得了WAV文件中的PCM数据后,要把该数据以数组的形式存放,并和单片机程序一道经过C编译器编译生成代码。再通过USART将代码下载到单片机内部FLASH ROM存储器中。
  单片机对FLASH存储器中的语音编码数据进行解码,在采样时钟频率下,送到内部集成的脉冲宽度调制器PWM中,来控制PWM每个波形的占空比,再通过低通波器滤波,最后经功放单元推动扬声器发出声音。
  4 系统硬件设计
  4.1 系统框图
  系统STC12C5A60S2单片机为核心,按键、显示和低通滤波器等外围器件共同组成,硬件电路设计简单,这也是本系统的优点之一,极大程序地节约了硬件成本。
  
  图1 系统组成框图
  4.2 系统电路图
  
  
  图2 单片机主系统电路图
  图3 RC低通滤波器
  PWM 输出后须通过低通滤波器滤除高频噪声,才能还原成人耳能识别的声音。低通滤波器的类型和参数取决于声音的采样频率和价格预算。用的最多的要数RC滤波器,这种滤波器的设计简单成本低廉,即使使用参数不是非常明确的元件也能获得很好的声音输出。
  5 系统软件设计
  在主程序设计时,首先要建立一个PWM任务,PWM的输出频率要高于定时器中断频率,最好两倍以上,这样语音输出混杂的高频PWM波容易被低通滤波器滤除,使语音信号变得清晰,然后设置一个周期性的定时器中断程序,在中断函数里面将语音数据写入PWM寄存器,来改变PWM 的占空比,中断周期应和语音数据的采样周期一致,本系统采用的是8KHz采样速率的音频数据,因此定时器的中断周期应设定为125uS。下面是主程序及定时器中断程序的设计流程。
  
  图4 系统主程序流程图
  6 结束语
  随着语音技术应用的越来越广泛,对语音系统设计要求也越来越高,很多的电子产品要求语音合成集成电路电路简单,成本低廉,利用STC12C5A60S2单片机内大容量ROM和自带的PWM可以很好地解决这个问题,而PWM方式进行D/A转换输出电压信号,可以直接输出语音信号。并且,数字脉冲宽度调制器避免了复杂的模拟电路的设计,降低了设计和生产的难度。所以,PWM方式作为语音合成的输出具有极大的应用前景。
  
  
  
  
  参考文献
  [1] 赵力.语音信号处理[M].北京:机械工业出版社,2003
  [2] [美]T.W.Parsons.语音处理[M].国防工业出版社,1990


转载注明来源:https://www.xzbu.com/2/view-421643.htm