新闻中心

EEPW首页 > 设计应用 > 红外测温计的设计

红外测温计的设计

作者:时间:2015-06-23来源:网络收藏

  本软件系统设计简单。主要是因为的十六位单片机开发环境使用方便,并支持C语言与汇编语言的互相调用,且提供丰富的语音函数库,只要我们了解这些函数的使用方法,我们就可以很容易的实现语音的播放。本系统采用S480压缩格式,该压缩算法压缩比较大80:3, 存储容量大,音质介于A2000和S240之间,适用于语音播放。例如播放部分代码如下:

本文引用地址:http://www.eepw.com.cn/article/276154.htm

  其相关API函数如下所示:

  int SACM_S480_Initial(int Init_Index) //初始化

  void SACM_ S480_ServiceLoop(void) //获取语音资料,填入译码队列

  void SACM_ S480_Play(int Speech_Index, int Channel, int Ramp_Set) //播放

  void SACM_ S480_Stop(void) //停止播放

  void SACM_S480_Pause (void) //暂停播放

  void SACM_S480_Resume(void) //暂停后恢复

  void SACM_S480_Volume(Volume_Index) //音量的控制

  unsigned int SACM_S480_Status(void) //获取模块的状态

  Call F_FIQ_Service_ SACM_S480 //中断服务函数

  各函数具体内容如下:

  1)【API格式】

  C:int SACM_S480_Initial(int Init_Index)

  ASM:R1=[ Init_Index]

  Call F_ SACM_ S480_Initial

  【功能说明】SACM_S480语音播放之前的初始化。

  【参 数】Init_Index=0 表示手动方式;Init_Index=1 则表示自动方式。

  【返 回 值】

  0:代表语音模块初始化失败

  1:代表初始化成功。

  【备 注】该函数用于对定时器、中断和DAC等的初始化。

  2) 【API格式】

  C:void SACM_S480_ServiceLoop(void)

  ASM:Call F_ SACM_S480_ServiceLoop

  【功能说明】从资源中获取SACM_S480语音资料,并将其填入解码队列中。

  【参 数】无。

  【返 回 值】无。

  【备 注】播放语音文件中数据,当出现FF FF FFH数据时便停止播放。

  3) 【API格式】

  C:int SACM_S480_Play(int Speech_Index, int Channel, int Ramp_Set);

  ASM:R1=[ Speech _Index]

  R2=[ Channel]

  R3=[ Ramp_Set]

  Call SACM_S480_Play

  【功能说明】播放资源中SACM_S480语音。

  【参 数】Speech _Index 表示语音索引号。

  Channel: 1.通过DAC1通道播放; 2.通过DAC2通道播放; 3.通过DAC1和 DAC2双通道播放。

  Ramp_Set:0.禁止音量增/减调节; 1.仅允许音量增调节; 2.仅允许音量减调 节; 3.允许音量增/减调节。

  【返 回 值】无。

  【备 注】

  ① SACM_S480的数据率有4.8Kbps7.2Kbps三种,可在同一模块的几种算法中自动选择一种。

  ②Speech_Index是定义在resource.inc文件中资源表(T_SACM_S480_SpeechTable)的偏移地址。

  ③ 中断服务子程序中F_FIQ_Service_ SACM_S480必须放在TMA_FIQ中断向量上(参见SPCE的中断系统)。

  ④函数允许TimerA以所选的的数据采样率(计数溢出)中断。

c语言相关文章:c语言教程


传感器相关文章:传感器工作原理


风速传感器相关文章:风速传感器原理
红外热像仪相关文章:红外热像仪原理
热像仪相关文章:热像仪原理


关键词: 凌阳 SPCE061A

评论


相关推荐

技术专区

关闭