单片机SPCE061A实现语音电压表

分享到:
点击量: 207746

  单片机SPCE061A简介

  工作电压:DC 3.6~5.0V

  工作电流:=<50mA

  开发板资源:

  (1)CPU:SPCE061A (SUNPLUS unSP),外部时钟为 32768Hz,内部倍频*高可至49MHz

  (2)Flash ROM:64Kbyte的 16bit Flash

  (3)RAM:4KByte的16bit SRAM

  (4)I/O:32位IO口

  (5)ADC:8路10位ADC. *高转换速率为96KHz。留有外接AD参考电压接口

  (6)DAC:2路10位DAC,*高转换速率为100KHz

  (7)麦克风:1路MIC音频输入

  (8)喇叭接口:开发板配备喇叭

  (9)音量调节电位器:用于调整音量的大小

  (10)端口电平可选:可以选择5V和3.3V

  (11)两个外部中断输入口

  (12)两个外部时钟源输入口

  (13)串行通讯接口(SIO)

  (14)电源和睡眠指示灯:当系统进入睡眠状态,绿色睡眠指示灯会被点亮

  (15)1*3小键盘,可以实现简单的按键控制

  (16)电池盒供电接口:开发板配有电池盒,也可外接5V稳压源

  (17)集成EZ_Probe

  (18)下载线接口

  (19)PROBE接口

  模块相应代码及其详解:

  {

  unsigned int uiData;

  *P_ADC_MUX_Ctrl=ADC_Channel; //选择通道-------IOA0

  *P_ADC_Ctrl= C_ADCE; //ADC 使能

  uiData=*P_ADC_LINEIN_Data; //ADC 开始

  while(!(*P_ADC_MUX_Ctrl&0x8000)); //等待,直到结束

  uiData=*P_ADC_LINEIN_Data;

  return(uiData&0xffc0); //返回值

  }

  知识点讲解:

  函数原形:

  {

  SACM_A2000_Initial(1);

  SACM_A2000_Play(Speech_Table_Id,3,3);

  while(SACM_A2000_Status()&0x01)

  {

  SACM_A2000_ServiceLoop();

  }

  }

  知识点讲解:

  {

  unsigned int temp;

  temp=Result;

  PlayRespond(temp);

  PlayRespond(11);

  temp=Result*10;

  PlayRespond(temp%10);

  temp=Result*100;

  PlayRespond(temp%10);

  temp=Result*1000;

  PlayRespond(temp%10);

  temp=Result*10000;

  PlayRespond(temp%10);

  }