资源简介
基于TMS320VC5416芯片、TLV320AIC23音频编解码芯片的语音录放程序,已生成.out可执行和.img烧写文件完美仿真运行。
实验内容主要完成以下几点:
1.DSP初始化;
2.同步串口0(McBSP0)初始化为I2S模式;
3.同步串口1(McBSP1)初始化为SPI模式;
4.中断控制寄存器初始化;
5.McBSP0发送中断服务程序;
6.McBSP0接收中断服务程序;
7.中断向量表;
8.NANDFLASH驱动程序;
9.TLV320AIC23初始化为MIC IN;
10.TLV320AIC23初始化为LINE IN。
仿真运行时,实验箱键盘各键功能设置如下:
1#键=0x01用于语音由麦克风输入时语音播放(直接回放Loopback);
2#键=0x02用于语音由线性输入时语音播放(直接回放Loopback);
3#键=0x03用于语音由麦克风输入时语音播放(边录音回放Loopback);
4#键=0x04用于语音由线性输入时语音播放(边录音边回放Loopback);
5#键=0x05用于语音播放。
代码片段和文件信息
/******************************************************************************/
/*main.c */
/* */
/* This is proprietary information not to be published -- DIGIPRO DATA */
/* Copyright (C) 2002 DigiPro Information Co.Ltd. All Rights Reserved. */
/* */
/* Author: Wu DingMing & Li Fayue */
/* Date: August 12-28 2002 */
/******************************************************************************/
#include
#include “mmdrv.h“
#include “mcbsp.h“
#include “cpu_reg.h“
#include “lcd_86.h“
ioport unsigned portefff;
#define IO_374 portefff
void init_exint1_interrupt();
void init_GPIO(void);
void mic_bypass(void);
void line_in_bypass(void);
void mic_record(void);
void line_in_record(void);
void codec_play(void);
void DEAL_RX(unsigned int i);
unsigned int DEAL_TX(void);
void stop_interrupt(); //stop receive & tranmit interrupt
unsigned int flag=0xffff;
unsigned long secter_num;
unsigned int ping_buf1[0x2000];
unsigned int ping_buf2[0x2000];
unsigned int enc_flag=0;
unsigned int input_flag =0;
unsigned int rl_flag=0;
unsigned int count1=0 ;
#define max_secter_num 33
#define init_secter_num 0
void main(void)
{
unsigned int ij;
unsigned int key_val;
SWWSR = 0x7fff;
SWCR = 0x0001;
BSCR = 0x8006;
CLKMD = PLL_DIV_INIT;
waitloop( 0x0400 );
CLKMD = PLL_LOCK_INIT_X(5);
waitloop( 0x0400 );
PMST = 0x0168;
Init_MCBSP_codec();
init_codec_linein();
init_exint1_interrupt();
init_GPIO();
init_lcd();
LCD_clear(0);
cur_row=2;
cur_col=20;
LCD_pr_chars(“RECORD_PLAY TEST“16);
cur_row=3;
cur_col=1;
LCD_pr_chars(“=======================“23);
IO_374=0xffff; //374 enable
Close_LED_Data();
Close_LED_Traf();
Close_LED_sign();
waitloop( 0x0400 );
while(1)
{
i=Get_Key();
waitloop( 0x04000 );
j=Get_Key();
if(i==j)
{
flag=0xffff;
key_val=j; /*Save key_val*/
switch(key_val)
{
default:
break;
case 1:
cur_row=4;
cur_col=10;
LCD_pr_chars(“ Mic_Bypass “17);
cur_row=5;
cur_col=15;
LCD_pr_chars(“ “17);
mic_bypass();
break;
case 2:
cur_row=4;
cur_col=10;
LCD_pr_chars(“ Line_In_Bypass “17);
cur_row=5;
cur_col=15;
LCD_pr_chars(“ “17);
line_i
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2572 2004-07-07 12:33 codec\BRXINT0.C
文件 200 2004-08-19 12:30 codec\cc_build_Debug.log
文件 6001 2004-09-21 14:21 codec\codec.paf
文件 1136 2004-05-12 14:50 codec\codec.pjt
文件 10843 2004-04-01 17:17 codec\codec_main.c
文件 3447 2002-09-05 12:05 codec\Debug\brxint0.obj
文件 74 2004-05-12 14:47 codec\Debug\codec.bat
文件 25907 2004-05-12 14:47 codec\Debug\codec.i00
文件 3170 2004-05-12 14:47 codec\Debug\codec.i10
文件 131072 2004-05-12 14:47 codec\Debug\codec.img
文件 12464 2004-08-19 12:30 codec\Debug\codec.map
文件 38375 2004-08-19 12:30 codec\Debug\codec.out
文件 6319 2004-07-09 12:16 codec\Debug\codeccfg.obj
文件 13289 2004-07-09 12:14 codec\Debug\codec_main.obj
文件 648 2004-07-09 12:14 codec\Debug\delay.obj
文件 3001 2004-03-31 11:26 codec\Debug\dtmf.obj
文件 6896 2004-03-31 11:03 codec\Debug\dtmfd.obj
文件 6930 2004-04-02 10:17 codec\Debug\dtmf_dec.obj
文件 3090 2004-04-02 10:17 codec\Debug\dtmf_enc.obj
文件 3123 2004-03-31 11:28 codec\Debug\dtmf_enc1.obj
文件 640 2004-07-09 12:14 codec\Debug\entry.obj
文件 87469 1999-08-11 02:10 codec\Debug\HEX2IMG.EXE
文件 102400 2001-05-08 13:18 codec\Debug\hex500.exe
文件 1203 2004-07-09 12:14 codec\Debug\key_driver.obj
文件 7904 2002-09-10 11:23 codec\Debug\lcd_86.obj
文件 8373 2004-07-09 12:14 codec\Debug\lcd_driver.obj
文件 2256 2004-07-09 12:14 codec\Debug\ldvects.obj
文件 2726 2004-07-09 12:14 codec\Debug\led_driver.obj
文件 12862 2002-09-10 09:21 codec\Debug\main.obj
文件 2216 2002-09-06 17:45 codec\Debug\nandread.obj
............此处省略12个文件信息
- 上一篇:模糊PID控制的一个简单
- 下一篇:8位CPU quartus 9.0版本
相关资源
- 一个随笔画程序
- 标准C实现FTP上传功能
- 基于DSP的多路温度控制系统的设计
- 基于DSP的PID高精度温度控制系统的设
- DSP音频处理程序设计
- dsp实验报告-语音信号处理
- DSPARM6202B-327开发板PCB电路图
- 中南大学单片机课设 密码锁
- DSP课程设计(基于TMS320F2812的DSP最小系
- 交通灯控制系统
- DSP+MP3+USB+FAT32
- funcode坦克大战源码
- 基于DSP与FPGA的变频器原理图
- 数据结构与算法全集C源代码+详细注释
- 现代数字信号处理理论及应用_何子述
- 基于DSP温度采集系统的设计与实现
- 基于DSP的设计正弦波信号发生器
- Open62541 win32 动态库
- Proteus8.9 VSM Studio WINAVR编译器仿真ATM
- 温度测试代码加仿真图protues
- 截图、抓屏程序纯C实现
- 《DSP集成开发环境CCS开发指南》PDF版
- 9个DSP图像处理实验程序图像处理源代
- DSP 2808 I2C 例程
- 基于dsPIC的精跟踪控制系统设计
- 6713的程序固化和flash引导
- DSP28335完整invter电机控制程序
- CPFSK调制解调算法研究及其DSP实现
- C代码版本的HTTP POST上传文件/JSON
- projectDSP.zip单片机TMS320F28027的温度测试
评论
共有 条评论