基于AVR的录音笔设计

成都电子机械高等专科学校成教院

毕 业 设 计(论 文)

论文题目: 基于AVR 单片机的录音笔设计

教 学 点: 重庆科创职业学院

学 号: [1**********]

专 业: 应用电子技术

成都电子机械高等专科学校成教院制

年 月 日

成都电子机械高等专科学校成教院

毕业设计(论文)任务书

题目: 基于AVR 单片机的录音笔设计

任务与要求:

设计三个按钮,分别实现录音、删除、放音的功能,当按下不

同的按钮时、可以实现不同的功能。

时间:年 月 日 至 年 月 日 共 周 教 学 点: 重庆科创职业学院

学生姓名: 李海波 学 号: [1**********] 专业: 应用电子技术

指导单位或教研室:

指导教师: 熊建国

职 称: 讲师

成都电子机械高等专科学校成教院制

毕业设计(论文) 进度计划表

绪论

AVR 单片机是一款功能十分强大,集成度非常高的数字处理系统。它集成了ADC 与PWM 的模块,而且还有硬件滤波器!它基本上能够处理生活中实时性不太强的模拟信号与数字信号,并实现通信!该课题设计基于ATmega16单片机,介绍和分析了录音笔的基本原理,并做出了较为简单的录音笔模型展示其原理!主要运用了ATmega16单片机内部集成的ADC 转换模块以及PWM 功能,将从外部接收的模拟信号转化为数字信号,并存储在AT45DB041B 存储芯片中,再将从

AT45DB041B 存储芯片中读取的数字信号转化为模拟信号,送到外部的喇叭中进行播放。主要功能有录音,存储,删除,放音等!

摘 要

AVR 单片机是一款功能十分强大,集成度非常高的数字处理系统。它集成了ADC 与PWM 的模块,而且还有硬件滤波器!它基本上能够处理生活中实时性不太强的模拟信号与数字信号,并实现通信!该课题设计基于ATmega16单片机,介绍和分析了录音笔的基本原理,并做出了较为简单的录音笔模型展示其原理!主要运用了ATmega16单片机内部集成的ADC 转换模块以及PWM 功能,将从外部接收的模拟信号转化为数字信号,并存储在AT45DB041B 存储芯片中,再将从

AT45DB041B 存储芯片中读取的数字信号转化为模拟信号,送到外部的喇叭中进行播放。主要功能有录音,存储,删除,放音等!

Abstract The AVR chip is a very strong function, integration degree of very high digital processing system. It is the integration of ADC and PWM modules, but also the hardware filter! It basically to deal with life in real time is not strong in the analog signal and digital signal, and the realization of communication! This topic design based on ATmega16 single chip microcomputer, introduces and analyzes the basic principle of recording pen, and made a simple recording pen model shows its principle! The main use of the ATmega16 MCU internal integrated ADC conversion module and PWM function, will be received from an external analog signals into digital signals, and stored in a AT45DB041B memory chip, and then read from the AT45DB041B memory chip digital signal into analog signal, sent to an external speaker for playback. The main function of the recording, storage, delete, playback and other!

目 录

第一章 课题分析 . .................................................... 7

第一节 录音笔简介 ............................................... 7

第二节 设计构想 ................................................. 7

第二章 方案设计 . .................................................... 8

第一节 运用专门的语音芯片 ....................................... 8

第二节 运用AVR 自带的ADC 以及PWM 模块 ........................... 8

第三章 芯片简介 . .................................................... 9

第一节 ATmega16芯片简介 ......................................... 9

第二节 AT45DB041B 芯片简介 ..................................... 11

第四章 总体设计 . ................................................... 15

第一节 系统设计方框图 . ......................... 错误!未定义书签。

第二节 硬件系统 . ............................................... 16

4.2.1硬件设计思想 ........................................ 16

4.2.2声音输入模块 ........................................ 16

4.2.3声音存储模块 ........................................ 17

4.2.4声音输出模块 ........................................ 17

第三节 软件设计 . ............................................... 18

4.3.1软件设计思想 ........................................ 18

4.3.2程序流程图 .......................................... 20

4.3.3主函数方框图 ........................................ 20

第四节 系统调试与总结 . ......................................... 21

第五章 总结 . ....................................................... 22

总体设计原理图 . .............................................. 23

结束语 . ..................................................... 24

谢辞 . ........................................................ 24

第一章 1课题分析

第一节 录音笔简介

数码录音笔,也称为数码录音棒或数码录音机,数字录音器的一种,为了便于操作和提升录音质量造型并非以单纯的笔型为主,携带方便,同时拥有多种功能,如激光笔功能、FM 调频、MP3播放等。与传统录音机相比,数码录音笔是通过数字存储的方式来记录音频的。数码录音笔通过对模拟信号的采样、编码将模拟信号通过数模转换器转换为数字信号,并进行一定的压缩后进行存储。而数字信号即使经过多次复制,声音信息也不会受到损失,保持原样不变。

第二节 设计构想

设计三个按钮,分别实现录音、删除、放音的功能,当按下不同的按钮时,可以实现不同的功能。

首先要实现声音信号的采集,就需要一种声敏传感器,可以采用MIC ,再加上一些滤波电路,从而实现声音信号的采集。但是我们都知道,计算机处理的是数字信号,而采集的声音信号是模拟信号,因此,需要实现从模拟信号到数字信号的转化,可以利用专门的ADC 转换芯片或者是其他的某种方法,将模拟信号转化为数字信号。接下来就是转化后的声音信号的存储,需要某种存储芯片,将信号存储在芯片中,以至于掉电之后,声音信号不丢失。最后就是声音的还原,将信号从存储芯片中读取出来,但是此时的信号是数字信号,需要进行DAC 转换,可以利用专门的DAC 转换芯片或者是其他的某种方法来实现,将转化后的模拟信号,送到外部的喇叭播放。删除则直接将存储芯片中的数据删除就行了,当然这中间还有许多的细节问题需要考虑,例如声音的功率放大、去除杂波等等。

第二章 方案选择

第一节 运用专门的语音芯片

采用单片机控制一个语音芯片,再接一个FLASH 存储器的结构。单片机可以控制录放时间,选取特定时间段的播放以及单多声道的录放,容易通过改变外接存储FLASH 改变录放时间。此方法较为简单,但是这种语音芯片的价格较为昂贵,还有A VR 单片机的功能十分强大、资源也比较丰富,如果把它仅仅作为一种控制开关使用,太过于浪费了。

第二节 运用AVR 自带的ADC 以及PWM 模块

A VR 系列的单片机内部,已经集成了ADC 和PWM 模块,利用这两个模块,可以实现数模转换和模数转换。只要从软件上加以控制,就可以实现声音的录放功能。此方法很好的利用了单片机的内部资源,不但可以节约大量的费用而且还可以让我们更进一步的了解AVR 系列单片机的内部结构,因此在本课题中采用了这种方法。

第三章 芯片简介

第一节ATmega16芯片简介[1]

ATmega16 的封装如图3-1所示。

图3-1 A Tmega16 的引脚图

ATmega16 的引脚说明:

VCC 数字电路的电源

GND 地 端口 A(PA7..PA0) 端口 A 做为 A/D 转换器的模拟输入端。

端口 A 为 8 位双向 I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有

对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使

能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,

端口 A 处于高阻状态。

端口 B(PB7..PB0) 端口 B 为 8 位双向 I/O 口,具有可编程的内部上拉

电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使

用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,

即使系统时钟还未起振,端口 B 处于高阻状态。端口 B 也可以用做其他不同的

特殊功能。

端口C(PC7..PC0) 端口 C 为 8 位双向 I/O 口,具有可编程的内部上拉

电阻。其输出缓冲器具有对称的驱动特 性,可以输出和吸收大电流。作为输入

使用时,若内部上拉电阻使能,端口被外部电路拉 低时将输出电流。在复位过

程中,即使系统时钟还未起振,端口 C 处于高阻状态。如果JTAG 接口使能,

即使复位出现引脚 PC5(TDI)、 PC3(TMS) 与 PC2(TCK) 的上拉电阻被激活。

端口 D(PD7..PD0) 端口 D 为 8 位双向 I/O 口,具有可编程的内部上

拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入

使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。在复位过

程中,即使系统时钟还未起振,端口 D 处于高阻状态。 端口 D 也可以用做其他不同的特殊功能。

RESET 复位输入引脚。持续时间超过最小门限时间的低电平将引起系统复

位。持续时间小于门限间的脉冲不能保证可靠复位。

XTAL1 反向振荡放大器与片内时钟操作电路的输入端。

XTAL2 反向振荡放大器的输出端。

AVCC AVCC是端口A 与A/D转换器的电源。不使用ADC 时,该引脚应直接

与VCC 连接。使用ADC 时应通过一个低通滤波器与 VCC 连接。

AREF A/D 的模拟基准输入引脚。

ATmega16 的功能说明:

AVR 内核具有丰富的指令集和 32 个通用工作寄存器。所有的寄存器都直接

与算逻单元(ALU) 相连接,使得一条指令可以在一个时钟周期内同时访问两个独

立的寄存器。这种结构大大提高了代码效率,并且具有比普通的 CISC 微控制器

最高至 10 倍的数据吞吐率。

ATmega16 有如下特点:16K字节的系统内可编程Flash(具有同时读写的能力,即RWW) ,512 字节 EEPROM ,1K 字节 SRAM ,32 个通用 I/O 口线,32 个通用工作寄存器,用于边界扫描的 JTAG 接口,支持片内调试与编程,三个具有比较模式的灵活的定时器 / 计数器(T/C),片内/外中断,可编程串行USART ,有起始条件检测器的通用串行接口,8路 10位具有可选差分输入级可编程增益 (TQFP 封装 ) 的 ADC ,具有片内振荡器的可编程看门狗定时器,一个 SPI 串行端口,以及六个可以通过软件进行选择的省电模式。工作于空闲模式时 CPU 停止工作,而 USART、两线接口、 A/D 转换器、 SRAM、 T/C、 SPI 端口以及中断系统继续工作;掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作;在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其余功能模块处于休眠状态; ADC 噪声抑制模式时终止 CPU 和除了异步定时器与 ADC 以外所有 I/O 模块的工作,以降低 ADC 转换时的开关噪声; Standby 模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗极少的电流,同时具有快速启动能力;扩展 Standby 模式下则允许振荡器和异步定时器继续工作本芯片是以 Atmel 高密度非易失性存储器技术生产的。片内 ISP Flash 允许程序存储器通过 ISP 串行接口,或者通用编程器进行编程,也可以通过运行于AVR 内核之中的引导程序进行编程。引导程序可以使用任意接口将应用程序下载到应用Flash 存储区(Application Flash Memory) 。在更新应用Flash 存储区时引导Flash 区(Boot Flash Memory) 的程序继续运行,实现了 RWW 操作。 通过将 8 位 RISC CPU 与系统内可编程的 Flash 集成在一个片内, ATmega16 成为一个功能强大的单片机,为许多嵌入式控制应用提供了灵活而成本的解决方案。ATmega16 具有一整套的编程与系统开发工具,包括:C 语言 编译器、宏汇编、程序调试器 / 软件仿真器、仿真器及评估板。

第二节AT45DB041B 芯片简介

AT45DB041B 的封装如图3-2所示。

图3-2 A T45DB041B 的引脚图

AT45DB041B 的引脚说明:

连续输入(SI ):SI 脚仅作为输入脚且用于将数据写入至器件中。所有的数据输入包括操作码,地址序列都用此引脚。

连续输出(SO ):SO 脚仅作为输出脚且用于将器件内的数据移出。

连续时钟(SCK ):SCK 仅作为输入脚且用于控制流进和流出器件的数据。数据总是随着SCK 脚上的上升沿进入而随着SCK 脚上的下降沿流出。

片选(CS ):当CS 脚为低电平时选通数字闪存。当器件没有被选通时,数据无法被 SI 脚所接收,而SO 脚将会保持为高阻态。要进行某个操作,CS 脚上必须有一个由高到低电平的跃变,要结束某个操作,CS 脚上必须有一个由低到高电平的跃变。

写保护:如果WP 脚置为低电平,主存中的前256 页就无法被重写。要重写前256页的唯一方法就是将该引脚拉为高电平,然后用前面所提到的编写命令。WP 脚是内部拉高的;因此若非需要,WP 脚上不需连接其他引脚。然而,我们建议尽量通过外部拉高WP 引脚。

复位:复位脚(RESET )上的低电平将终止正在运行中的操作并将内部状态置为空闲状态。只要RESET 脚上一直为低电平,那么器件就一直处于复位状态。一旦RESET 脚上返回至高电平,器件就可以正常运行了。本器件内部整合了电源开启重接电路,所以在开启电源期间在RESET 脚上并无何限制。RESET 脚也是内部拉高的;因此若非需要,RESET 脚上不需连接其他引脚。然而,我建议尽量通过外部拉高RESET 引脚。

准备/忙:当器件进行某个内部自同步操作而处于忙状态时,该漏极输出引

脚将被拉低。该引脚通常处于高电平状态(通过1 个1 千欧外部上拉电阻),而在编写,较和页至缓存的传送操作器件,将会被拉低。状态表示着闪存阵列和其中一个缓存不能被访问;但对于另一个缓存的读写操作仍可进行。

AT45DB041B 的功能说明:

单电源2.5V-3.6V 或2.7V-3.6V 供电, 兼容串行外设接口最高20MHZ 时钟频率页编写操作 —单周期程序重调(擦除和编写) —2048页(264字节/页)主内存,支持页和块擦除操作, 双264字节SRAM 数据缓存—在非易失性存储器中进行程序重调时可接收数据, 能过连续地读取整个存储阵列, 低功耗 —有效读取工作电流仅为4毫安 —CMOS 待机电流仅为2微安, 数据保护功能 100%与AT45DB041及AT45DB041A 兼容,5V 输入容限电压:SI,SCK,CS,RESET 和WP 引脚, 商用及工业用温度范围描述AT45DB041B 仅需2.5V 或2.7V 供电,采用串行接口闪存,能够广泛的适用于各种数字语音,图像,编码以及数据存储应用。其4,325,376位的内存是由2048个页构成,每页为264个字节。除了主存以外,AT45DB041B 还有两个容量为264字节的SRAM 数据缓存。 当在主内存的某页上进行程序重调或者连续读 写数据流时,数据缓存都可以接收数据。EEPROM 仿真(位或字节可变更)能够容易地处理独立的三步读-修改-写操作。不同于传统的以多路地址线和并行接口随机访问的闪存芯片,本数字闪存是利用SPI 串行接口来顺序存取其数据。该数字闪存支持SPI 模式0和模式3。其简单的串行接口使得外围硬件设计变得容易,增强了系统的可靠性,最大化减小了开关噪声,降低了封装尺寸和有效引脚数量。该器件能够最优化的运用于以高密度,少引脚数量,低电压和低功耗为基本要求的各类商业和工业场合。该器件的有效工作电流为4毫安,能运行达到20MHZ 的时钟频率。 AT45DB041B不需要高输入电压就可以进行简单在系统编写。

在进行编写和读操作时,本器件需要单独的电源供电,电压为2.5V 至3.6V 或者2.7V 至3.6V 。片选引脚CS 和一个由连续输入SI ,连续输出SO 和连续时钟SCK 组成的三线访问接口使得AT45DB041B 正常工作。 所有的编写周期都是自同步的,因而在编写之前都无需分开的擦除周期。 当器件从Atmel 公司出厂后,存储阵列中最高页可能没有被擦除净。也就是说,最后一个页中的内容可能并非是FFH 。

AT45DB041B 的读命令如表3-1所示。

表3-1 A T45DB041B 的读命令

AT45DB041B 的编写与擦除命令如表3-2所示。

表3-2 A T45DB041B 的编写与擦除命令

AT45DB041B 的附加命令如表3-3所示。

表3-3 A T45DB041B 的附加命令

AT45DB041B 的写操作时序如图3-3所示。

图3-3 A T45DB041B 的写操作时序

AT45DB041B 的读操作时序如图3-4所示。

第四章 总体设计

第一节系统设计方框图

系统总体设计如图4-1所示。

方框图的相关说明:以AVR 单片机为核心,外接声音的输入电路、声音的输出电路、按钮的输入电路和声音的存储电路,其中声音的输入电路用于从外界接收声音信号,并且送到AVR 单片机中进行处理,声音的输出电路用于接收AVR 单片机输出的声音信号,并且送到speaker 中进行播放,声音的存储电路用于声音信号的存放与取出,按钮的输入电路用于实现不同的功能,包括录音、放音、删除等。通过硬件电路和软件程序的有机结合,从而实现了录音笔的相关功能。

图 4-1 系统设计方框图

第二节硬件设计

4.2.1硬件设计思想

用麦克风采集音频信号,经过一次功放,然后用电容进行一次滤波,电容的大小采用4.7nf ,滤波后进行AD 转换,转换后的信号存在AT45DB041B 中,然后用单片机调出信号,经过三次放大,将信号传到扬声器播放。

电路图上,ATmega16以上的电路图(见附录A) 就是用来采集信号的,放大信号用的是LM324集成功放芯片。

ATmega16以右的电路图(见附录A) 用来放音,经过三次信号放大,再放大信号的同时进行过滤。

4.2.2声音输入模块[2]

声音输入模块原理图如图4-2所示。

图4-2 声音输入模块原理图

模块的功能说明:MIC与ATmega16之间的电路模块,用来采集语音信号,并进行一定的处理,为ATmega16进行ADC 转换做好准备。通过MIC 接收外部的语音信号,通过功率放大器LM324进行功率放大,并通过4.7nf 的电容接地进行滤波,这样可以保证声音信号完整和正确地送到Atmega16的PD7引脚。

4.2.3声音存储模块[3]

声音存储模块原理图如图4-3所示。

图4-3 声音存储模块原理图

模块的功能说明:ATmega16及紧密相连的这一部分电路模块,是该系统的核心部分,ADC 转换和DAC 转换,都是在该部分进行的,并通过该部分控制整个系统,相应的滤波,外部晶振和按键也属于该部分。ATmega16芯片与AT45DB041B 相连,实现对信号的读写操作,从而实现了信号的储存与取出,擦除等。电路中有三个按键和三个指示灯,当不同的按键按下时,会执行不同的程序,并且会点亮相应的指示灯。当从引脚PD7接收到外部语音信号后,经过处理,存储在芯片AT45DB041B 中,需要放音时,从芯片AT45DB041B 中读取信号,经过处理,送到引脚PA0。

4.2.4声音输出模块

原理图如图4-4所示。

图4-4 声音输出模块原理图

模块的功能说明:耳机与ATmega16之间的电路模块,用来将存储在ATmega16的数字信号通过模拟语音信号还原出来,之前还进行了一系列的功放,用于信号的放大与相关处理。接收到芯片引脚PA0输出的信号后,经过三个功率放大器LM324进行功率放大,并且有接地电容进行滤波,这样可以保证声音信号完整和不失真地送到speaker 中进行播放。

第三节软件设计

4.3.1软件设计思想[4]

首先是设备初始化,但是初始化程序中,用于ADC 转换的定时器等并没有进行初始化,只是将PA0设置为输入模式,不上拉使能(作为AD 转换的输入通道),用于SPI 通信[1]的各个引脚的模式进行了设置。初始化完成之后,就进入主程序中进行键盘扫描,速度极其的快,无键盘按下时甚至只用不到1微秒的时间。一旦检测到哪个键按下就进入相应的程序中去。

录音程序的设计思想:

检测到录音键按下后进入录音程序,然后ADC 初始化同时开始一次AD 转换,延时一小会儿,等待AD 转换结束。接着SPI 、定时器初始化,从此就靠定时器来主导整个录音程序的运行了。

定时器有中断,其中有要求TCNT0设置这个基本的操做,还有一个就是ADSC 置位要求进行下一次转换。至于AD 转化的值则在AD 中断中写入一个已经建好循环队列中。定时器定时80微秒,一次AD 转换是在定时一开始就进行,需要时间

52微秒,也就是说定时器溢出时AD 中断一定结束了,下一次中断之前数据一定已经进入了队列中,如此循环。而在这期间有大量的时间向Dataflash 中写数据。Dataflash 有2048页,每一页有264字节,在每一页写满之前,程序不会再检测按键,一直到一页写满了,才检测按键,如果仍旧是按下则继续录音,否则退出。退出后如果存储空间未满则存储位置的参数会保留,下次录音可以接着向下写。如果满了,则录音工作指示灯永远都不会亮了,除非重启。

但是在退出录音程序时,ADC 、SPI 、定时器会全部关闭,再进入程序时再初始化开启。

放音程序的设计思想:

与录音程序相同,进入程序之后才开启所需要的功能。不同的是先开录音工作指示灯,SPI ,然后向Dataflash 要一次数据,再开TIMER2的快速PWM 功能。

一次PWM 时间是16微秒,每五次更新一次,通过调节占空比来实现DA 转换的功能。同样的每五次中断期间都有足够的时间向Dataflash 要数据。

放音程序最大的特点是那些控制参数虽然是全局变量,但是它们在进入程序的第一时间就被初始化了,在就要退出程序的最后时刻再次被初始化。这样就使得整个程序可以进行循环放音,但是每次都是从头开始,放开按键时停止,再按下时又从头开始。由于放开按键的同时按下按键的可能性很小,所以放音键按下的状态会在主程序按键检测循环中被检测到,并进入放音程序。

擦除程序设计思想:

擦除程序就简单多了。

首先,如前面提到的,它有延时去抖的时间。

其次,由于查找资料时找到的资料并没有芯片的块擦除命令,所以决定先往芯片的buffer1中写满0,然后顺次往每一个主页存储空间中进行先擦除再写的操作(即BUFFER TO MAIN MEMORY WITH BUILT-IN ERASE),这样消耗的时间会长很多,大约为70秒钟。

4.3.2程序流程图

系统主程序如图4-5所示。

4.3.3主函数方框图

主函数方框图如图4-6所示。

方框图的相关说明[5]:这里主要说明了放音函数具体的操作过程,当按下放音按键时,进入放音函数playback(),进行相关变量和器件的的初始化操作,当放音按键放开时,返回到主函数进行按键的扫描,否则,进入声音的播放程序。从buffer 中读取数据并且根据数据改变OCR 变量,利用timer 的PWM 功能,实

现数字信号的模拟输出,即声音信号的还原。

图4-6 主函数方框图

第四节系统的调试与总结

按照电路原理图,连接好电路。在ICC avr 编译器中,输入程序,并且进行编译,生成test.hex 文件,通过编程器下载到AVR 单片机中,上电运行[6]。

按下录音按键,对着MIC 讲话,讲完以后放开按键。按下放音按键,仔细听speaker 中的声音。放出的声音失真,对定时器的定时时间做一下微调,然后再

进行测试。按下删除按键,无法再进行播放,达到了删除已存储信息的目的。

通过对系统的微小调节,基本上可以实现录音、放音和删除等功能。

总结

按照电路原理图,连接好电路。在ICC avr编译器中,输入程序,并且进行编译,生成test.hex 文件,通过编程器下载到A VR 单片机中,上电运行[6]。

按下录音按键,对着MIC 讲话,讲完以后放开按键。按下放音按键,仔细听speaker 中的声音。放出的声音失真,对定时器的定时时间做一下微调,然后再进行测试。按下删除按键,无法再进行播放,达到了删除已存储信息的目的。

通过对系统的微小调节,基本上可以实现录音、放音和删除等功能。

系统的总体设计原理图如图7-1所示

图7-1

总结

这次毕业设计是对四年本科学习知识的综合应用,通过做毕业设计,我不但对以前所学的知识加深了理解,而且提高了自己的动手实践能力、分析问题和解决问题的能力以及创新能力,在具体应用当中还培养了自己科学的设计思维和严谨的工作作风。从确定任务开始,我认真学习了相关理论,学习了他人的经验。并具体分析了所选用方案的市场价值和应用价值,同时还考虑到系统中一些设备成本以及学校资源方面的因素,以此确定了设计方案。

毕业设计对于我们这些即将走向工作岗位的毕业生,可以说是一次极好的锻炼机会,它能为我们今后走入社会更好地工作打下良好的基础。这次毕业设计能够取得成功是老师的精心指导和小组成员共同努力的结果。“遇到困难毫不放弃,团结、合作、坚持不懈是成功之本”是我的深切体会。

结束语

本论文通过对录音笔设计中需要了解的相关名词及需要掌握的设计的原理和设计中出现的参数问题的解决方法以及在设计中应注意的问题作出了系统的介绍和总结。

谢 辞

在这次对录音笔的设计与实践中我遇到了很多的问题。但我的指导老师在我完成这次作业中给予了我很大的帮助,如我在对录音笔的设计时不知道该怎么进行时,老师给我讲解了其设计的精髓和应该注意的问题,帮助我很好的完成了这次设计和实践。

在此我深深的感谢老师你对我的帮助和指导。让我在社会实践的道路上有了新的认识和体会,更加深刻的理解和明白了机械设计的精髓。

最后我对老师说一句:老师你辛苦了!

参考文献

[1] 姜志玲. 用凌阳单片机实现多路数据采集与传输系统[J]. 西华大学学报.2005 [2] 王素珍,田振清. 用ISP 实现对ISD25120语音芯片的录放音控制[J].电声技术. 2002

[3] 林阳. 凌阳16位单片机与其它主流单片机的比较[J]. 电子世界. 2003 [4] 王竹便. 录音技术及技巧浅议[J].科技情报开发与经济.2005 [5] 孟宪超. 数码录音笔原理及应用[J].信息时代导刊.2004

[6] 薛驹义,张彦斌等. 凌阳16位单片机原理及应用[M]. 北京:北京航空航天大学出版社,2005

[7] 罗亚非 等编. 凌阳16位单片机应用基础[M]. 北京:北京航空航天大学出版社,2005

[8] 张福学. 传感器应用及其电路精选[M]. 北京:电子工业出版社,1995 [9] John Markus. 电子电路大全[M]. 北京:计量出版社,1995 [10] 邓元庆. 数字电路与逻辑设计[M]. 北京:电子工业出版社,2001

[11] 胡隆,许静波. 录音、调音与音响技术[M]. 北京:北京工业大学出版社,第1版

[12] 黄瀚,王宏民. 录音与调音[M]. 北京:中国广播电视出版社,第1版 [13] 杨行峻, 迟惠生. 语音信号数字处理[M]. 北京:电子工业出版社,第1版 [14] 阎石. 数字电子技术基础[M]. 北京:高等教育出版社,1998.12,第4版 [15] 周常森,范爱平等. 数字电子技术基础[M]. 济南:山东科学技术出版社,2002. 3,第1版

成都电子机械高等专科学校成教院

毕 业 设 计(论 文)

论文题目: 基于AVR 单片机的录音笔设计

教 学 点: 重庆科创职业学院

学 号: [1**********]

专 业: 应用电子技术

成都电子机械高等专科学校成教院制

年 月 日

成都电子机械高等专科学校成教院

毕业设计(论文)任务书

题目: 基于AVR 单片机的录音笔设计

任务与要求:

设计三个按钮,分别实现录音、删除、放音的功能,当按下不

同的按钮时、可以实现不同的功能。

时间:年 月 日 至 年 月 日 共 周 教 学 点: 重庆科创职业学院

学生姓名: 李海波 学 号: [1**********] 专业: 应用电子技术

指导单位或教研室:

指导教师: 熊建国

职 称: 讲师

成都电子机械高等专科学校成教院制

毕业设计(论文) 进度计划表

绪论

AVR 单片机是一款功能十分强大,集成度非常高的数字处理系统。它集成了ADC 与PWM 的模块,而且还有硬件滤波器!它基本上能够处理生活中实时性不太强的模拟信号与数字信号,并实现通信!该课题设计基于ATmega16单片机,介绍和分析了录音笔的基本原理,并做出了较为简单的录音笔模型展示其原理!主要运用了ATmega16单片机内部集成的ADC 转换模块以及PWM 功能,将从外部接收的模拟信号转化为数字信号,并存储在AT45DB041B 存储芯片中,再将从

AT45DB041B 存储芯片中读取的数字信号转化为模拟信号,送到外部的喇叭中进行播放。主要功能有录音,存储,删除,放音等!

摘 要

AVR 单片机是一款功能十分强大,集成度非常高的数字处理系统。它集成了ADC 与PWM 的模块,而且还有硬件滤波器!它基本上能够处理生活中实时性不太强的模拟信号与数字信号,并实现通信!该课题设计基于ATmega16单片机,介绍和分析了录音笔的基本原理,并做出了较为简单的录音笔模型展示其原理!主要运用了ATmega16单片机内部集成的ADC 转换模块以及PWM 功能,将从外部接收的模拟信号转化为数字信号,并存储在AT45DB041B 存储芯片中,再将从

AT45DB041B 存储芯片中读取的数字信号转化为模拟信号,送到外部的喇叭中进行播放。主要功能有录音,存储,删除,放音等!

Abstract The AVR chip is a very strong function, integration degree of very high digital processing system. It is the integration of ADC and PWM modules, but also the hardware filter! It basically to deal with life in real time is not strong in the analog signal and digital signal, and the realization of communication! This topic design based on ATmega16 single chip microcomputer, introduces and analyzes the basic principle of recording pen, and made a simple recording pen model shows its principle! The main use of the ATmega16 MCU internal integrated ADC conversion module and PWM function, will be received from an external analog signals into digital signals, and stored in a AT45DB041B memory chip, and then read from the AT45DB041B memory chip digital signal into analog signal, sent to an external speaker for playback. The main function of the recording, storage, delete, playback and other!

目 录

第一章 课题分析 . .................................................... 7

第一节 录音笔简介 ............................................... 7

第二节 设计构想 ................................................. 7

第二章 方案设计 . .................................................... 8

第一节 运用专门的语音芯片 ....................................... 8

第二节 运用AVR 自带的ADC 以及PWM 模块 ........................... 8

第三章 芯片简介 . .................................................... 9

第一节 ATmega16芯片简介 ......................................... 9

第二节 AT45DB041B 芯片简介 ..................................... 11

第四章 总体设计 . ................................................... 15

第一节 系统设计方框图 . ......................... 错误!未定义书签。

第二节 硬件系统 . ............................................... 16

4.2.1硬件设计思想 ........................................ 16

4.2.2声音输入模块 ........................................ 16

4.2.3声音存储模块 ........................................ 17

4.2.4声音输出模块 ........................................ 17

第三节 软件设计 . ............................................... 18

4.3.1软件设计思想 ........................................ 18

4.3.2程序流程图 .......................................... 20

4.3.3主函数方框图 ........................................ 20

第四节 系统调试与总结 . ......................................... 21

第五章 总结 . ....................................................... 22

总体设计原理图 . .............................................. 23

结束语 . ..................................................... 24

谢辞 . ........................................................ 24

第一章 1课题分析

第一节 录音笔简介

数码录音笔,也称为数码录音棒或数码录音机,数字录音器的一种,为了便于操作和提升录音质量造型并非以单纯的笔型为主,携带方便,同时拥有多种功能,如激光笔功能、FM 调频、MP3播放等。与传统录音机相比,数码录音笔是通过数字存储的方式来记录音频的。数码录音笔通过对模拟信号的采样、编码将模拟信号通过数模转换器转换为数字信号,并进行一定的压缩后进行存储。而数字信号即使经过多次复制,声音信息也不会受到损失,保持原样不变。

第二节 设计构想

设计三个按钮,分别实现录音、删除、放音的功能,当按下不同的按钮时,可以实现不同的功能。

首先要实现声音信号的采集,就需要一种声敏传感器,可以采用MIC ,再加上一些滤波电路,从而实现声音信号的采集。但是我们都知道,计算机处理的是数字信号,而采集的声音信号是模拟信号,因此,需要实现从模拟信号到数字信号的转化,可以利用专门的ADC 转换芯片或者是其他的某种方法,将模拟信号转化为数字信号。接下来就是转化后的声音信号的存储,需要某种存储芯片,将信号存储在芯片中,以至于掉电之后,声音信号不丢失。最后就是声音的还原,将信号从存储芯片中读取出来,但是此时的信号是数字信号,需要进行DAC 转换,可以利用专门的DAC 转换芯片或者是其他的某种方法来实现,将转化后的模拟信号,送到外部的喇叭播放。删除则直接将存储芯片中的数据删除就行了,当然这中间还有许多的细节问题需要考虑,例如声音的功率放大、去除杂波等等。

第二章 方案选择

第一节 运用专门的语音芯片

采用单片机控制一个语音芯片,再接一个FLASH 存储器的结构。单片机可以控制录放时间,选取特定时间段的播放以及单多声道的录放,容易通过改变外接存储FLASH 改变录放时间。此方法较为简单,但是这种语音芯片的价格较为昂贵,还有A VR 单片机的功能十分强大、资源也比较丰富,如果把它仅仅作为一种控制开关使用,太过于浪费了。

第二节 运用AVR 自带的ADC 以及PWM 模块

A VR 系列的单片机内部,已经集成了ADC 和PWM 模块,利用这两个模块,可以实现数模转换和模数转换。只要从软件上加以控制,就可以实现声音的录放功能。此方法很好的利用了单片机的内部资源,不但可以节约大量的费用而且还可以让我们更进一步的了解AVR 系列单片机的内部结构,因此在本课题中采用了这种方法。

第三章 芯片简介

第一节ATmega16芯片简介[1]

ATmega16 的封装如图3-1所示。

图3-1 A Tmega16 的引脚图

ATmega16 的引脚说明:

VCC 数字电路的电源

GND 地 端口 A(PA7..PA0) 端口 A 做为 A/D 转换器的模拟输入端。

端口 A 为 8 位双向 I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有

对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使

能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,

端口 A 处于高阻状态。

端口 B(PB7..PB0) 端口 B 为 8 位双向 I/O 口,具有可编程的内部上拉

电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使

用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,

即使系统时钟还未起振,端口 B 处于高阻状态。端口 B 也可以用做其他不同的

特殊功能。

端口C(PC7..PC0) 端口 C 为 8 位双向 I/O 口,具有可编程的内部上拉

电阻。其输出缓冲器具有对称的驱动特 性,可以输出和吸收大电流。作为输入

使用时,若内部上拉电阻使能,端口被外部电路拉 低时将输出电流。在复位过

程中,即使系统时钟还未起振,端口 C 处于高阻状态。如果JTAG 接口使能,

即使复位出现引脚 PC5(TDI)、 PC3(TMS) 与 PC2(TCK) 的上拉电阻被激活。

端口 D(PD7..PD0) 端口 D 为 8 位双向 I/O 口,具有可编程的内部上

拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入

使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。在复位过

程中,即使系统时钟还未起振,端口 D 处于高阻状态。 端口 D 也可以用做其他不同的特殊功能。

RESET 复位输入引脚。持续时间超过最小门限时间的低电平将引起系统复

位。持续时间小于门限间的脉冲不能保证可靠复位。

XTAL1 反向振荡放大器与片内时钟操作电路的输入端。

XTAL2 反向振荡放大器的输出端。

AVCC AVCC是端口A 与A/D转换器的电源。不使用ADC 时,该引脚应直接

与VCC 连接。使用ADC 时应通过一个低通滤波器与 VCC 连接。

AREF A/D 的模拟基准输入引脚。

ATmega16 的功能说明:

AVR 内核具有丰富的指令集和 32 个通用工作寄存器。所有的寄存器都直接

与算逻单元(ALU) 相连接,使得一条指令可以在一个时钟周期内同时访问两个独

立的寄存器。这种结构大大提高了代码效率,并且具有比普通的 CISC 微控制器

最高至 10 倍的数据吞吐率。

ATmega16 有如下特点:16K字节的系统内可编程Flash(具有同时读写的能力,即RWW) ,512 字节 EEPROM ,1K 字节 SRAM ,32 个通用 I/O 口线,32 个通用工作寄存器,用于边界扫描的 JTAG 接口,支持片内调试与编程,三个具有比较模式的灵活的定时器 / 计数器(T/C),片内/外中断,可编程串行USART ,有起始条件检测器的通用串行接口,8路 10位具有可选差分输入级可编程增益 (TQFP 封装 ) 的 ADC ,具有片内振荡器的可编程看门狗定时器,一个 SPI 串行端口,以及六个可以通过软件进行选择的省电模式。工作于空闲模式时 CPU 停止工作,而 USART、两线接口、 A/D 转换器、 SRAM、 T/C、 SPI 端口以及中断系统继续工作;掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作;在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其余功能模块处于休眠状态; ADC 噪声抑制模式时终止 CPU 和除了异步定时器与 ADC 以外所有 I/O 模块的工作,以降低 ADC 转换时的开关噪声; Standby 模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗极少的电流,同时具有快速启动能力;扩展 Standby 模式下则允许振荡器和异步定时器继续工作本芯片是以 Atmel 高密度非易失性存储器技术生产的。片内 ISP Flash 允许程序存储器通过 ISP 串行接口,或者通用编程器进行编程,也可以通过运行于AVR 内核之中的引导程序进行编程。引导程序可以使用任意接口将应用程序下载到应用Flash 存储区(Application Flash Memory) 。在更新应用Flash 存储区时引导Flash 区(Boot Flash Memory) 的程序继续运行,实现了 RWW 操作。 通过将 8 位 RISC CPU 与系统内可编程的 Flash 集成在一个片内, ATmega16 成为一个功能强大的单片机,为许多嵌入式控制应用提供了灵活而成本的解决方案。ATmega16 具有一整套的编程与系统开发工具,包括:C 语言 编译器、宏汇编、程序调试器 / 软件仿真器、仿真器及评估板。

第二节AT45DB041B 芯片简介

AT45DB041B 的封装如图3-2所示。

图3-2 A T45DB041B 的引脚图

AT45DB041B 的引脚说明:

连续输入(SI ):SI 脚仅作为输入脚且用于将数据写入至器件中。所有的数据输入包括操作码,地址序列都用此引脚。

连续输出(SO ):SO 脚仅作为输出脚且用于将器件内的数据移出。

连续时钟(SCK ):SCK 仅作为输入脚且用于控制流进和流出器件的数据。数据总是随着SCK 脚上的上升沿进入而随着SCK 脚上的下降沿流出。

片选(CS ):当CS 脚为低电平时选通数字闪存。当器件没有被选通时,数据无法被 SI 脚所接收,而SO 脚将会保持为高阻态。要进行某个操作,CS 脚上必须有一个由高到低电平的跃变,要结束某个操作,CS 脚上必须有一个由低到高电平的跃变。

写保护:如果WP 脚置为低电平,主存中的前256 页就无法被重写。要重写前256页的唯一方法就是将该引脚拉为高电平,然后用前面所提到的编写命令。WP 脚是内部拉高的;因此若非需要,WP 脚上不需连接其他引脚。然而,我们建议尽量通过外部拉高WP 引脚。

复位:复位脚(RESET )上的低电平将终止正在运行中的操作并将内部状态置为空闲状态。只要RESET 脚上一直为低电平,那么器件就一直处于复位状态。一旦RESET 脚上返回至高电平,器件就可以正常运行了。本器件内部整合了电源开启重接电路,所以在开启电源期间在RESET 脚上并无何限制。RESET 脚也是内部拉高的;因此若非需要,RESET 脚上不需连接其他引脚。然而,我建议尽量通过外部拉高RESET 引脚。

准备/忙:当器件进行某个内部自同步操作而处于忙状态时,该漏极输出引

脚将被拉低。该引脚通常处于高电平状态(通过1 个1 千欧外部上拉电阻),而在编写,较和页至缓存的传送操作器件,将会被拉低。状态表示着闪存阵列和其中一个缓存不能被访问;但对于另一个缓存的读写操作仍可进行。

AT45DB041B 的功能说明:

单电源2.5V-3.6V 或2.7V-3.6V 供电, 兼容串行外设接口最高20MHZ 时钟频率页编写操作 —单周期程序重调(擦除和编写) —2048页(264字节/页)主内存,支持页和块擦除操作, 双264字节SRAM 数据缓存—在非易失性存储器中进行程序重调时可接收数据, 能过连续地读取整个存储阵列, 低功耗 —有效读取工作电流仅为4毫安 —CMOS 待机电流仅为2微安, 数据保护功能 100%与AT45DB041及AT45DB041A 兼容,5V 输入容限电压:SI,SCK,CS,RESET 和WP 引脚, 商用及工业用温度范围描述AT45DB041B 仅需2.5V 或2.7V 供电,采用串行接口闪存,能够广泛的适用于各种数字语音,图像,编码以及数据存储应用。其4,325,376位的内存是由2048个页构成,每页为264个字节。除了主存以外,AT45DB041B 还有两个容量为264字节的SRAM 数据缓存。 当在主内存的某页上进行程序重调或者连续读 写数据流时,数据缓存都可以接收数据。EEPROM 仿真(位或字节可变更)能够容易地处理独立的三步读-修改-写操作。不同于传统的以多路地址线和并行接口随机访问的闪存芯片,本数字闪存是利用SPI 串行接口来顺序存取其数据。该数字闪存支持SPI 模式0和模式3。其简单的串行接口使得外围硬件设计变得容易,增强了系统的可靠性,最大化减小了开关噪声,降低了封装尺寸和有效引脚数量。该器件能够最优化的运用于以高密度,少引脚数量,低电压和低功耗为基本要求的各类商业和工业场合。该器件的有效工作电流为4毫安,能运行达到20MHZ 的时钟频率。 AT45DB041B不需要高输入电压就可以进行简单在系统编写。

在进行编写和读操作时,本器件需要单独的电源供电,电压为2.5V 至3.6V 或者2.7V 至3.6V 。片选引脚CS 和一个由连续输入SI ,连续输出SO 和连续时钟SCK 组成的三线访问接口使得AT45DB041B 正常工作。 所有的编写周期都是自同步的,因而在编写之前都无需分开的擦除周期。 当器件从Atmel 公司出厂后,存储阵列中最高页可能没有被擦除净。也就是说,最后一个页中的内容可能并非是FFH 。

AT45DB041B 的读命令如表3-1所示。

表3-1 A T45DB041B 的读命令

AT45DB041B 的编写与擦除命令如表3-2所示。

表3-2 A T45DB041B 的编写与擦除命令

AT45DB041B 的附加命令如表3-3所示。

表3-3 A T45DB041B 的附加命令

AT45DB041B 的写操作时序如图3-3所示。

图3-3 A T45DB041B 的写操作时序

AT45DB041B 的读操作时序如图3-4所示。

第四章 总体设计

第一节系统设计方框图

系统总体设计如图4-1所示。

方框图的相关说明:以AVR 单片机为核心,外接声音的输入电路、声音的输出电路、按钮的输入电路和声音的存储电路,其中声音的输入电路用于从外界接收声音信号,并且送到AVR 单片机中进行处理,声音的输出电路用于接收AVR 单片机输出的声音信号,并且送到speaker 中进行播放,声音的存储电路用于声音信号的存放与取出,按钮的输入电路用于实现不同的功能,包括录音、放音、删除等。通过硬件电路和软件程序的有机结合,从而实现了录音笔的相关功能。

图 4-1 系统设计方框图

第二节硬件设计

4.2.1硬件设计思想

用麦克风采集音频信号,经过一次功放,然后用电容进行一次滤波,电容的大小采用4.7nf ,滤波后进行AD 转换,转换后的信号存在AT45DB041B 中,然后用单片机调出信号,经过三次放大,将信号传到扬声器播放。

电路图上,ATmega16以上的电路图(见附录A) 就是用来采集信号的,放大信号用的是LM324集成功放芯片。

ATmega16以右的电路图(见附录A) 用来放音,经过三次信号放大,再放大信号的同时进行过滤。

4.2.2声音输入模块[2]

声音输入模块原理图如图4-2所示。

图4-2 声音输入模块原理图

模块的功能说明:MIC与ATmega16之间的电路模块,用来采集语音信号,并进行一定的处理,为ATmega16进行ADC 转换做好准备。通过MIC 接收外部的语音信号,通过功率放大器LM324进行功率放大,并通过4.7nf 的电容接地进行滤波,这样可以保证声音信号完整和正确地送到Atmega16的PD7引脚。

4.2.3声音存储模块[3]

声音存储模块原理图如图4-3所示。

图4-3 声音存储模块原理图

模块的功能说明:ATmega16及紧密相连的这一部分电路模块,是该系统的核心部分,ADC 转换和DAC 转换,都是在该部分进行的,并通过该部分控制整个系统,相应的滤波,外部晶振和按键也属于该部分。ATmega16芯片与AT45DB041B 相连,实现对信号的读写操作,从而实现了信号的储存与取出,擦除等。电路中有三个按键和三个指示灯,当不同的按键按下时,会执行不同的程序,并且会点亮相应的指示灯。当从引脚PD7接收到外部语音信号后,经过处理,存储在芯片AT45DB041B 中,需要放音时,从芯片AT45DB041B 中读取信号,经过处理,送到引脚PA0。

4.2.4声音输出模块

原理图如图4-4所示。

图4-4 声音输出模块原理图

模块的功能说明:耳机与ATmega16之间的电路模块,用来将存储在ATmega16的数字信号通过模拟语音信号还原出来,之前还进行了一系列的功放,用于信号的放大与相关处理。接收到芯片引脚PA0输出的信号后,经过三个功率放大器LM324进行功率放大,并且有接地电容进行滤波,这样可以保证声音信号完整和不失真地送到speaker 中进行播放。

第三节软件设计

4.3.1软件设计思想[4]

首先是设备初始化,但是初始化程序中,用于ADC 转换的定时器等并没有进行初始化,只是将PA0设置为输入模式,不上拉使能(作为AD 转换的输入通道),用于SPI 通信[1]的各个引脚的模式进行了设置。初始化完成之后,就进入主程序中进行键盘扫描,速度极其的快,无键盘按下时甚至只用不到1微秒的时间。一旦检测到哪个键按下就进入相应的程序中去。

录音程序的设计思想:

检测到录音键按下后进入录音程序,然后ADC 初始化同时开始一次AD 转换,延时一小会儿,等待AD 转换结束。接着SPI 、定时器初始化,从此就靠定时器来主导整个录音程序的运行了。

定时器有中断,其中有要求TCNT0设置这个基本的操做,还有一个就是ADSC 置位要求进行下一次转换。至于AD 转化的值则在AD 中断中写入一个已经建好循环队列中。定时器定时80微秒,一次AD 转换是在定时一开始就进行,需要时间

52微秒,也就是说定时器溢出时AD 中断一定结束了,下一次中断之前数据一定已经进入了队列中,如此循环。而在这期间有大量的时间向Dataflash 中写数据。Dataflash 有2048页,每一页有264字节,在每一页写满之前,程序不会再检测按键,一直到一页写满了,才检测按键,如果仍旧是按下则继续录音,否则退出。退出后如果存储空间未满则存储位置的参数会保留,下次录音可以接着向下写。如果满了,则录音工作指示灯永远都不会亮了,除非重启。

但是在退出录音程序时,ADC 、SPI 、定时器会全部关闭,再进入程序时再初始化开启。

放音程序的设计思想:

与录音程序相同,进入程序之后才开启所需要的功能。不同的是先开录音工作指示灯,SPI ,然后向Dataflash 要一次数据,再开TIMER2的快速PWM 功能。

一次PWM 时间是16微秒,每五次更新一次,通过调节占空比来实现DA 转换的功能。同样的每五次中断期间都有足够的时间向Dataflash 要数据。

放音程序最大的特点是那些控制参数虽然是全局变量,但是它们在进入程序的第一时间就被初始化了,在就要退出程序的最后时刻再次被初始化。这样就使得整个程序可以进行循环放音,但是每次都是从头开始,放开按键时停止,再按下时又从头开始。由于放开按键的同时按下按键的可能性很小,所以放音键按下的状态会在主程序按键检测循环中被检测到,并进入放音程序。

擦除程序设计思想:

擦除程序就简单多了。

首先,如前面提到的,它有延时去抖的时间。

其次,由于查找资料时找到的资料并没有芯片的块擦除命令,所以决定先往芯片的buffer1中写满0,然后顺次往每一个主页存储空间中进行先擦除再写的操作(即BUFFER TO MAIN MEMORY WITH BUILT-IN ERASE),这样消耗的时间会长很多,大约为70秒钟。

4.3.2程序流程图

系统主程序如图4-5所示。

4.3.3主函数方框图

主函数方框图如图4-6所示。

方框图的相关说明[5]:这里主要说明了放音函数具体的操作过程,当按下放音按键时,进入放音函数playback(),进行相关变量和器件的的初始化操作,当放音按键放开时,返回到主函数进行按键的扫描,否则,进入声音的播放程序。从buffer 中读取数据并且根据数据改变OCR 变量,利用timer 的PWM 功能,实

现数字信号的模拟输出,即声音信号的还原。

图4-6 主函数方框图

第四节系统的调试与总结

按照电路原理图,连接好电路。在ICC avr 编译器中,输入程序,并且进行编译,生成test.hex 文件,通过编程器下载到AVR 单片机中,上电运行[6]。

按下录音按键,对着MIC 讲话,讲完以后放开按键。按下放音按键,仔细听speaker 中的声音。放出的声音失真,对定时器的定时时间做一下微调,然后再

进行测试。按下删除按键,无法再进行播放,达到了删除已存储信息的目的。

通过对系统的微小调节,基本上可以实现录音、放音和删除等功能。

总结

按照电路原理图,连接好电路。在ICC avr编译器中,输入程序,并且进行编译,生成test.hex 文件,通过编程器下载到A VR 单片机中,上电运行[6]。

按下录音按键,对着MIC 讲话,讲完以后放开按键。按下放音按键,仔细听speaker 中的声音。放出的声音失真,对定时器的定时时间做一下微调,然后再进行测试。按下删除按键,无法再进行播放,达到了删除已存储信息的目的。

通过对系统的微小调节,基本上可以实现录音、放音和删除等功能。

系统的总体设计原理图如图7-1所示

图7-1

总结

这次毕业设计是对四年本科学习知识的综合应用,通过做毕业设计,我不但对以前所学的知识加深了理解,而且提高了自己的动手实践能力、分析问题和解决问题的能力以及创新能力,在具体应用当中还培养了自己科学的设计思维和严谨的工作作风。从确定任务开始,我认真学习了相关理论,学习了他人的经验。并具体分析了所选用方案的市场价值和应用价值,同时还考虑到系统中一些设备成本以及学校资源方面的因素,以此确定了设计方案。

毕业设计对于我们这些即将走向工作岗位的毕业生,可以说是一次极好的锻炼机会,它能为我们今后走入社会更好地工作打下良好的基础。这次毕业设计能够取得成功是老师的精心指导和小组成员共同努力的结果。“遇到困难毫不放弃,团结、合作、坚持不懈是成功之本”是我的深切体会。

结束语

本论文通过对录音笔设计中需要了解的相关名词及需要掌握的设计的原理和设计中出现的参数问题的解决方法以及在设计中应注意的问题作出了系统的介绍和总结。

谢 辞

在这次对录音笔的设计与实践中我遇到了很多的问题。但我的指导老师在我完成这次作业中给予了我很大的帮助,如我在对录音笔的设计时不知道该怎么进行时,老师给我讲解了其设计的精髓和应该注意的问题,帮助我很好的完成了这次设计和实践。

在此我深深的感谢老师你对我的帮助和指导。让我在社会实践的道路上有了新的认识和体会,更加深刻的理解和明白了机械设计的精髓。

最后我对老师说一句:老师你辛苦了!

参考文献

[1] 姜志玲. 用凌阳单片机实现多路数据采集与传输系统[J]. 西华大学学报.2005 [2] 王素珍,田振清. 用ISP 实现对ISD25120语音芯片的录放音控制[J].电声技术. 2002

[3] 林阳. 凌阳16位单片机与其它主流单片机的比较[J]. 电子世界. 2003 [4] 王竹便. 录音技术及技巧浅议[J].科技情报开发与经济.2005 [5] 孟宪超. 数码录音笔原理及应用[J].信息时代导刊.2004

[6] 薛驹义,张彦斌等. 凌阳16位单片机原理及应用[M]. 北京:北京航空航天大学出版社,2005

[7] 罗亚非 等编. 凌阳16位单片机应用基础[M]. 北京:北京航空航天大学出版社,2005

[8] 张福学. 传感器应用及其电路精选[M]. 北京:电子工业出版社,1995 [9] John Markus. 电子电路大全[M]. 北京:计量出版社,1995 [10] 邓元庆. 数字电路与逻辑设计[M]. 北京:电子工业出版社,2001

[11] 胡隆,许静波. 录音、调音与音响技术[M]. 北京:北京工业大学出版社,第1版

[12] 黄瀚,王宏民. 录音与调音[M]. 北京:中国广播电视出版社,第1版 [13] 杨行峻, 迟惠生. 语音信号数字处理[M]. 北京:电子工业出版社,第1版 [14] 阎石. 数字电子技术基础[M]. 北京:高等教育出版社,1998.12,第4版 [15] 周常森,范爱平等. 数字电子技术基础[M]. 济南:山东科学技术出版社,2002. 3,第1版


相关文章

  • 基于开关磁阻电机的电动车控制器设计
  • 摘要:主要研究四相8/6极开关磁阻电机驱动系统在两轮电动车中的应用,设计了以AVR单片机为主控芯片的电动车控制器.简介开关磁阻电机的结构和工作原理:分析并确定了开关磁阻电机的位置信号检测方法:制定了该系统使用的控制策略:采用转速外环.电流内 ...查看


  • 基于有限状态机的专用盖章机设计与实现
  • 机械设计与制造 18 文章编号:1001-3997(2010)06-0018-02 Machinery Design&Manufacture 第6期2010年6月 基于有限状态机的专用盖章机设计与实现肆 林凯宏t游林儒1阳如坤2 ( ...查看


  • 智能车设计 论文
  • 摘要 在全国大学生飞思卡尔"智能汽车"竞赛中,对智能车前轮倾角的调整是一个十分重要的过程,它关系到车模在高速行进过程中的直线行驶性能,转弯的性能等许多方面.为了提高倾角调整的准确性.一致性,本毕业设计旨在开发一种运用于前 ...查看


  • 智能家居控制系统的设计毕业论文
  • 毕业论文(设计) 论文题目: 智能家居控制系统的设计 毕业论文(设计)原创性声明 本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果.据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写 ...查看


  • 电子信息类毕业设计课题
  • 电子信息类毕业设计课题 [电子通讯] 出租车计价系统 [过程控制] 基于单片机实现单回路智能调节.. [电子通讯] 脉冲数字频率计 [机床仪表] 仪表机床数控系统的设计(论文.. 磁流体发电论文 [电子通讯] 基于VC++6.0的PC 机与 ...查看


  • 单片机实用技术
  • 单片机实用技术 作者:shenxq301 1 首先介绍经济使用的单片机AVR 使用学习板快速入门,尤其实用于在校学生和刚刚工作的工程技术人员. AVR mega16学习板 单价:240 元 该学习板可以从正规途径买到正版,当然也可从旧货市场 ...查看


  • 关于静电处理的常见方法
  • 关于静电处理的常见方法 :要有足够的地面积,有了足够的地面积,还要注意要保证有足够小的地阻抗. 这可以从干扰的本质说起,干扰的实质是快速变化的电压或电流,归结到最好其实就是快速变化的电流引起'地'的不稳定,当地阻抗越小,其能承受的干扰等级就 ...查看


  • 汇编语言作用
  • 汇编语言 本词条介绍的是汇编语言(面向机器的程序设计语言),更多含义,请参阅"汇编语言(多义词)". 汇编语言(Assembly Language)是面向机器的程序设计语言.在汇编语言中,用助记符(Memoni)代替机器 ...查看


  • 基于FPGA的乒乓球游戏参考毕业论文设计
  • 基于 XILINX-FPGA 的乒乓球游戏参考设计 一.背景: Xilinx 大学计划(xilinx university plan 简称 XUP)一直致力于为工程课程 提供新一代软件和硬件设计流程.全球数千所使用 Xilinx 系统进行教 ...查看


热门内容