⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 note_document.c

📁 这是一个在TMS5509A平台上运行的工程
💻 C
字号:

/*******************  This Is A Note Document  ********************/
/*------------------------------------------------------------------

1.  TMS320VC5509A的时钟为12.288 X 15 = 184.32MHz。

2.  WM8950采样速率为16KHz,主时钟为12.288MHz。

3.  WM8950音频A/D转换芯片与TMS320VC5509A的数据接口格式
    WM8950的音频数据接口连接到TMS320VC5509A的McBSP1口,采用DSP接口方
式,数据长度为word(16位),每帧接受1个word,延迟1bit。TMS320VC5509A通
过DMA通道0接受WM8950传送的采样数据,每接收80个数据(10毫秒的采样数。
10毫秒的数据为1帧,进行音频数据处理)产生1次DMA中断。采样数据交替存放
于AUDIO_DATA0[]--AUDIO_DATA3[]存储区内。

3.  WM8950与TMS320VC5509A的控制接口
    WM8950控制接口连接到TMS320VC5509A的I2C接口。TMS320VC5509A通过写
WM8950的控制寄存器,对WM8950进行设置。

5.  刺激脉冲编码格式
    每个刺激脉冲需转换成24位脉冲编码发送。编码格式如下:
    起始位:  1  bit    该位 = 1,表示脉冲编码的开始,MSB
    刺激幅度:10 bits
    校验位0: 1  bit    刺激幅度各位之和(不含起始位)
    脉宽调整:6  bits
    电极选择:5  bits
    校验位1: 1  bit    脉宽调整与电极选择各位之和,LSB
    
    编码方式:PWM波
    1 -- 高电平1.6us,低电平0.8us,先高后低;
    0 -- 高电平0.8us,低电平1.6us,先高后低;
    先发送高位,后发送低位。
    当无编码输出时,TMS320VC5509A的GPIO引脚应输出低电平。
    
 -------------------------------------------------------------   
|   23   |  22--13  |    12   |   11--6  |   5--1   |    0    |
 -------------------------------------------------------------
| 起始位 | 刺激幅度 | 校验位0 | 脉宽调整 | 电极选择 | 校验位1 |
 -------------------------------------------------------------

6.  刺激脉冲编码的发送
    24位脉冲编码的发送速率为416.7KHz,即2.4bit/us。每个音频采样值经语
音算法处理后,得到1个刺激脉冲,按顺序刺激16个电极。每次刺激一个电极,
即一个采样值对应一个电极。因此,刺激速率即为采样速率:8KHz。每个电
极的刺激速率为0.5KHz,即TMS320VC5509A每隔1/8KHz=125us发送24位脉冲编
码。
    语音处理算法处理完1帧数据(80个采样点,10ms)后,处理数据交替存放
于2个存储区:PULSE_DATA0[]--PULSE_DATA1[]。TMS320VC5509A在处理当前帧
数据时,发送的脉冲编码为上一帧的处理结果。即延时1帧(10ms)发送脉冲编码。
当产生DMA CHANNEL0中断时,启动Timer0,发送脉冲编码。Timer0根据编码位值,
定时高电平和低电平的时长(1--1.6us高定平,0.8us低电平;0--0.8us高定平,
1.6us低电平)。当24位脉冲编码发送完毕(需时57.6us)后,间隔125-57.6=67.4us
后,发送下一个24位脉冲编码,如此循环,直至一帧80个脉冲编码(共24 X 80=1920bits)
全部发送完毕,当下一个DMA CHANNEL0中断产生时,进行新一帧的脉冲编码的发送。
如此循环进行。

7.  外部中断0 void Power_Switch_Isr(void)
    当按下PWR_Swi键时,引起外部中断0,使TMS320VC5509A进入或退出休眠状
态。

8.  外部中断1 void Signal_Alter_Isr(void)
    当按下SGN_Alt键时,引起外部中断1,选择Microphone或Line in作为WM8950
的模拟输入信号。

9.  外部中断2 void Alert_Bat_Isr(void)
    当电池电压低至设定的门限时,引起外部中断2,使TMS320VC5509A进入休眠
状态,并设置LED进行提示。

-------------------------------------------------------------------*/
/*******************************************************************/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -