ISD1420语音模块课程设计报告.docx

上传人:b****4 文档编号:3073045 上传时间:2022-11-17 格式:DOCX 页数:14 大小:190.71KB
下载 相关 举报
ISD1420语音模块课程设计报告.docx_第1页
第1页 / 共14页
ISD1420语音模块课程设计报告.docx_第2页
第2页 / 共14页
ISD1420语音模块课程设计报告.docx_第3页
第3页 / 共14页
ISD1420语音模块课程设计报告.docx_第4页
第4页 / 共14页
ISD1420语音模块课程设计报告.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

ISD1420语音模块课程设计报告.docx

《ISD1420语音模块课程设计报告.docx》由会员分享,可在线阅读,更多相关《ISD1420语音模块课程设计报告.docx(14页珍藏版)》请在冰豆网上搜索。

ISD1420语音模块课程设计报告.docx

ISD1420语音模块课程设计报告

ISD1420语音模块课程设计

一、实验内容

1、ISD1420语言模块(B1区):

(1)20秒录放音长度,具有不掉电存储功能;

(2)可分1—160段录放音片段

2、具体操作

(1)手动控制方式,通过B1区按键REC和按键PLAYE、PLAYL放音

(2)MCU控制方式,通过G6区8个按键控制录、放音:

1—4号键录音各五秒;然后通过5—8号键放音,放音内容顺序对应1—4号键的录音内容

二、实验原理图

1、录音、放音的工作原理:

(1)录音时,声音使话筒内纸盘发生振动,由电磁磁感应可使话筒内的线圈将产生随声音而变化的感应电流---音频电流---声音的模拟信号,然后经过A/D转换器将模拟信号转换为数字信号,然后将其存储在语音存储模块的存储空间里。

(2)放音时,语音存储模块里的数字信号,经过D/A转换器将数字信号转换为模拟信号---音频电流,然后再经过一个音频电流放大器,将一个较弱的电流信号放大足以驱动喇叭,喇叭内的线圈流过不断变化的电流,喇叭内的纸盘发生振动从而发出声音。

三、ISD1420语音模块程序框图

键扫描子程序:

按键处理子程序:

录音子程序:

放音子程序:

延时250毫秒子程序:

本次设计的硬件系统是在80C51的基础上由ISD1420语音芯片、直流电源模块、扬声器等部分组成。

利用80C51单片机作为CPU来进行总体控制,通过语音芯片ISD1420组成的语音控制电路能够建立多段语音库信息,并且可以对这些段的语音信息进行自由的组合,形成变化多样的语音提示信息,能够实现公交车的语音报站。

在CPU控制模式下,键盘电路采用子程序调用模式,当有键按下时,系统调用子程序,通过软件来实现该键号所对应键的功能。

ISD1420系列单片语音录放集成电路是美国Winbond公司产品,集成度较高,内部包括前置放大器、内部时钟、定时器、采样时钟、滤波器、自动增益控制、逻辑控制、模拟收发器、解码器和480K字节的E2PROM等。

四、实验步骤及现象

1、主线连线说明

STARES598PCI

B1区:

REC

——

A3区:

P3.2(INT0)录音控制

B1区:

PLAYE

——

A3区:

P3.3(INT1)电平放音控制

B1区:

PLAYL

——

A3区:

P3.4(T0)触发放音控制,下降沿触发

B1区:

CP

——

A3区:

CS1

G6区:

JP74

——

A3区:

JP51(P1)

2、将JP13,JP14,JP15跳向“MANUAL”,即手动录、放音。

三个控制按键(在B1区左边)REC(录音)、PLAYE(电平放音)和PLAYL(边沿放音)控制录音和放音。

3、将JP13,JP14,JP15跳向“MCU”,单片机控制,运行演示程序,1—4号键录音,5—8号键放音。

五、演示程序

ISD1420语音模块实验说明

实验目的:

1.掌握录音,放音的基本控制

2.掌握分段录音,放音控制

实验内容:

由MCU控制,通过G6区8个按键控制录、放音,每个按键控制录放音各5秒

录音按键:

G6区1,2,3,4号键分别可录音5秒;录音时,B1区DS6发光管亮

放音按键:

G6区5,6,7,8号键分别可放音5秒,与放音内容与1,2,3,4号键相对应

接线说明

按键:

G6区,8个按键,顺序连接到P1口,例如P1.0对应1号键

ISD1420:

B1区-->A3区

REC--->P3.2(INT0)

PLAYE->P3.3(INT1)

PLAYL->P3.4(T0)

CP---->CS1(0F000H)片选地址

ISD1420_AD1EQU00H;1号键录放音起始地址,每次录音5s

ISD1420_AD2EQU28H;2号键录放音起始地址

ISD1420_AD3EQU50H;3号键录放音起始地址

ISD1420_AD4EQU78H;4号键录放音起始地址

RECBITP3.2;录音接口

PLAYEBITP3.3;电平触发放音接口

PLAYLBITP3.4;边沿触发放音接口

ISDCOMMXDATA0F000H;录放音地址/操作模式输入地

址,0F000H是接到CS1上的地址

ORG0

LJMPSTART

ORG100H

START:

LCALLMainInit;主程序初始化

Main:

LCALLScanKey;扫描按键

JNCMain

Main1:

LCALLKeyRun;按键处理

JNBF0,Main;是否有新的键按下

CLRF0;清按键标志

SJMPMain1

JMPMAIN;循环进行实验内容介绍与ISD1420功能测试

主程序初始化

MainInit:

CLRF0;有键按下标志位,清0-无键按下

MOVP1,#0FFH

LCALLISD_INIT;ISD1420初始化

RET

录放音子程序

KEY1:

MOVA,#ISD1420_AD1;录音首地址

LJMPKEY_REC

KEY2:

MOVA,#ISD1420_AD2

LJMPKEY_REC

KEY3:

MOVA,#ISD1420_AD3

LJMPKEY_REC

KEY4:

MOVA,#ISD1420_AD4

LJMPKEY_REC

KEY_REC:

MOVR7,#20;录音时间长度,5s

LCALLISD_REC;调用录音子程序

KEY_REC1:

LCALLDelay_025S;延时

JBF0,KEY_REC2;检测按键是否有键按下

DJNZR7,KEY_REC1;录音时间,根据R7的值决定

LCALLISD_STOP;停止录音

KEY_REC2:

RET

放音子程序

KEY5:

MOVA,#ISD1420_AD1;放音首地址

LJMPKEY_PLAY

KEY6:

MOVA,#ISD1420_AD2

LJMPKEY_PLAY

KEY7:

MOVA,#ISD1420_AD3

LJMPKEY_PLAY

KEY8:

MOVA,#ISD1420_AD4

LJMPKEY_PLAY

KEY_PLAY:

MOVR7,#20

LCALLISD_PLAY;调用录用子程序

KEY_PLAY1:

LCALLDelay_025S;用于进度显示的时间参照

JBF0,KEY_PLAY2;检测按键是否有键按下

DJNZR7,KEY_PLAY1

KEY_PLAY2:

RET

KeyRun:

MOVDPTR,#KeyTab;有键按下,跳到相应处理程序

MOVA,B

RLA

JMP@A+DPTR

KeyTab:

SJMPKEY1;1--4号键,分别各录音5秒,ISD1420可录音20秒

SJMPKEY2

SJMPKEY3

SJMPKEY4

SJMPKEY5;5--8号键,对应分别放音各5秒

SJMPKEY6

SJMPKEY7

SJMPKEY8

按键扫描

ScanKey:

MOVA,P1;键扫描

CJNEA,#0FFH,ScanKey1

ScanKey4:

CLRC

RET

ScanKey1:

ACALLScanKey2

JNCScanKey4

ScanKey3:

MOVB,A

ACALLDelay20ms;消抖动

ACALLDelay20ms

ACALLScanKey2

JNCScanKey4

CJNEA,B,ScanKey3

ScanKey5:

MOVA,P1

CJNEA,#0FFH,ScanKey5

SETBC

RET

ScanKey2:

CLRA

JNBP1.0,ScanKey21

INCA

JNBP1.1,ScanKey21

INCA

JNBP1.2,ScanKey21

INCA

JNBP1.3,ScanKey21

INCA

JNBP1.4,ScanKey21

INCA

JNBP1.5,ScanKey21

INCA

JNBP1.6,ScanKey21

INCA

JNBP1.7,ScanKey21

CLRC

RET

ScanKey21:

SETBC

RET

Delay20ms:

MOVR6,#10

Delay1:

MOVR7,#100

DJNZR7,$

DJNZR6,Delay1

RET

延时0.25s

Delay_025S:

PUSH05H

PUSH06H

PUSH07H

MOVR5,#6

DL1S_1:

MOVR6,#100

DL1S_2:

MOVR7,#200

DJNZR7,$

DJNZR6,DL1S_2

DJNZR5,DL1S_1

ACALLScanKey

JNCDL1S_3

SETBF0;F0有键按下标志,F0=1,有键按下

DL1S_3:

POP07H

POP06H

POP05H

RET

录音子程序

A--存放操作方式设置值,R7--录几秒

ISD_INIT:

SETBREC;语音模块初始化,关闭录放音功能

SETBPLAYE

SETBPLAYL

MOVDPTR,#ISDCOMM

CLRA

MOVX@DPTR,A;允许手动录放音,当A6,A7为高时,无法手动放音

RET

操作模式,A-操作模式设置值

ISD_MODE:

PUSHACC

LCALLISD_STOP;语音模块初始化,将REC,PLAYE,PLAYL置位,并设置操作模式

MOVDPTR,#ISDCOMM;设置操作模式:

分段录音

POPACC

MOVX@DPTR,A;设置操作模式命令在A中

CLRPLAYL;给一个上升沿,锁存命令

NOP

NOP

NOP

SETBPLAYL

RET

录音

ISD_REC:

MOVDPTR,#ISDCOMM;设置录音起始地址

MOVX@DPTR,A

CLRREC;REC变低,即开始录音

RET

放音子程序

A--放哪段音

ISD_PLAY:

PUSHACC

LCALLISD_STOP;暂停之前的录放音操作

POPACC

MOVDPTR,#ISDCOMM;设置放音起始地址

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1