
基于AVR录音笔设计.pdf
28页成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计1 成都电子机械高等专科学院成教毕业论文设计题目:基于 AVR单片机的录音笔设计教 学点:重庆科创职业学院学生姓名 :李海波学号:2006496015 班级:通信工程 ZB42901指导教师:熊建国成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计1 前言AVR单片机是一款功能十分强大,集成度非常高的数字处理系统它集成了 ADC与 PWM 的模块,而且还有硬件滤波器!它基本上能够处理生活中实时性不太强的模拟信号与数字信号,并实现通信!该课题设计基于ATmega16单片机,介绍和分析了录音笔的基本原理, 并做出了较为简单的录音笔模型展示其原理!主要运用了 ATmega16单片机内部集成的ADC转换模块以及 PWM 功能,将从外部接收的模拟信号转化为数字信号,并存储在AT45DB041B存储芯片中,再将从AT45DB041B存储芯片中读取的数字信号转化为模拟信号,送到外部的喇叭中进行播放主要功能有录音,存储,删除,放音等!成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计1 目 录1 课题分析 11.1 录音笔简介 . 11.2 设计构想 . 12 方案选择 32.1 运用专门的语音芯片 . 32.2 运用 avr 自带的 ADC以及 PWM 模块 33 芯片简介 43.1 ATmega16芯片简介 . 43.2 AT45DB041B芯片简介 . 84 总体设计 134.1 系统设计方框图 . 13 4.2 硬件设计 . 13 4.2.1硬件设计思想 13 4.2.2声音输入模块 14 4.2.3声音存储模块 14 4.2.4声音输出模块 16 成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计1 4.3 软件设计 . 16 4.3.1 软件设计思想 16 4.3.2 程序流程图 19 4.3.3 主函数方框图 20 4.4 系统的调试与总结 . 21 5 总结 221课题分析1.1 录音笔简介数码录音笔,也称为数码录音棒或数码录音机,数字录音器的一种,为了便于操作和提升录音质量造型并非以单纯的笔型为主,携带方便,同时拥有多种功能,如激光笔功能、FM 调频、 MP3 播放等。
与传统录音机相比,数码录音笔是通过数字存储的方式来记录音频的数码录音笔通过对模拟信号的采样、编码将模拟信号通过数模转换器转换为数字信号,并进行一定的压缩后进行存储而数字信号即使经过多次复制,声音信息也不会受到损失,保成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计1 持原样不变1.2 设计构想设计三个按钮,分别实现录音、删除、放音的功能,当按下不同的按钮时,可以实现不同的功能首先要实现声音信号的采集,就需要一种声敏传感器,可以采用MIC,再加上一些滤波电路,从而实现声音信号的采集 但是我们都知道, 计算机处理的是数字信号,而采集的声音信号是模拟信号,因此,需要实现从模拟信号到数字信号的转化,可以利用专门的ADC转换芯片或者是其他的某种方法,将模拟信号转化为数字信号接下来就是转化后的声音信号的存储,需要某种存储芯片,将信号 存 储 在 芯 片 中 , 以 至 于 掉 电 之 后 , 声 音 信 号不丢失最后就是声音的还原,将信号从存储芯片中读取出来,但是此时的信号是数字信号,需要进行 DAC转换,可以利用专门的DAC转换芯片或者是其他的某种方法来实现,将转化后的模拟信号,送到外部的喇叭播放。
删除则直接将存储成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计3 芯片中的数据删除就行了,当然这中间还有许多的细节问题需要考虑,例如声音的功率放大、去除杂波等等2 方案选择2.1 运用专门的语音芯片采用单片机控制一个语音芯片,再接一个FLASH存储器的结构 单片机可以控制录放时间,选取特定时间段的播放以及单多声道的录放,容易通过改变外接存储FLASH改变录放时间此方法较为简单, 但是这种语音芯片的价格较为昂贵,还有 AVR单片机的功能十分强大、资源也比较丰富,如果把它仅仅作为一种控制开关使用,太过于浪费了成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计3 2.2 运用 avr 自带的 ADC 以及 PWM 模块AVR 系列的单片机内部,已经集成了ADC 和PWM 模块,利用这两个模块,可以实现数模转换和模数转换只要从软件上加以控制,就可以实现声音的录放功能此方法很好的利用了单片机的内部资源,不但可以节约大量的费用而且还可以让我们更进一步的了解AVR系列单片机的内部结构,因此在本课题中采用了这种方法成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计3 3芯片简介3.1 ATmega16 芯片简介[1]ATmega16 的封装如图 3-1 所示。
图 3-1 ATmega16 的引脚图成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计3 ATmega16 的引脚说明:VCC 数字电路的电源GND 地 端口 A(PA7PA0) 端口 A 做为 A/D 转换器的模拟输入端端口 A 为 8 位双向 I/O 口,具有可编程的内部上拉电阻其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流在复位过程中,即使系统时钟还未起振,端口 A 处于高阻状态端口 B(PB7PB0) 端口 B 为 8 位双向 I/O 口,具有可编程的内部上拉电阻其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流在复位过程中,即使系统时钟还未起振,端口B 处于高阻状态端口B 也可以用做其他不同的特殊功能端口 C(PC7PC0) 端口 C 为 8 位双向 I/O 口,具有可编程 的 内 部 上 拉 电 阻 其 输 出 缓 冲 器 具 有 对 称 的 驱 动 特性,可以输出和吸收大电流作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。
在复位过程中, 即使系 统 时 钟 还 未 起 振 , 端 口C 处 于 高 阻 状 态 如 果JTAG 接口使能,即使复位出现引脚PC5(TDI) 、 PC3(TMS) 与PC2(TCK) 的上拉电阻被激活端口 D(PD7PD0) 端口 D 为 8 位双向 I/O 口,具有可编 程 的 内 部 上 拉 电 阻 其 输 出 缓 冲 器 具 有 对 称 的 驱 动 特性,可以输出和吸收大电流作为输入使用时,若内部上拉电阻成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计3 使能,则端口被外部电路拉低时将输出电流在复位过程中,即使 系 统 时 钟 还 未 起 振 , 端 口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 , 具有片内振荡器的可编成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计3 程看门狗定时器,一个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 语言 编译器、宏汇编、程序调试器/ 软件仿真器、仿真器及评估板3.2 AT45DB041B芯片简介成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计3 AT45DB041B 的封装如图 3-2 所示图 3-2 AT45DB041B的引脚图AT45DB041B的引脚说明:连续输入(SI) :SI 脚仅作为输入脚且用于将数据写入至器件中所有的数据输入包括操作码,地址序列都用此引脚连续输出( SO) :SO 脚仅作为输出脚且用于将器件内的数据移出。
连续时钟( SCK ) :SCK 仅作为输入脚且用于控制流进和流出器件的数据数据总是随着 SCK 脚上的上升沿进入而随着SCK 脚上的下降沿流出片选(CS ) :当 CS 脚为低电平时选通数字闪存当器件没有被选通时,数据无法被SI 脚所接收,而SO 脚将会保持为高阻态要进行某个操作, CS 脚上必须有一个由高到低电平的跃变,要结束某个操作, CS 脚上必须有一个由低到高电平的跃变写保护:如果 WP 脚置为低电平, 主存中的前 256 页就无法成都电子机械高等专科学院毕业论文设计基于 AVR单片机的录音笔设计3 被重写要重写前256 页的唯一方法就是将该引脚拉为高电平,然后用前面所提到的编写命令WP 脚是内部拉高的;因此若非需要, WP 脚上不需连接其他引脚然而,我们建议尽量通过外部拉高 WP 引脚复位:复位脚(RESET )上的低电平将终止正在运行中的操作并将内部状态置为空闲状态只要RESET 脚上一直为低电平,那么器件就一直处于复位状态一旦RESET 脚上返回至高电平,器件就可以正常运行了本器件内部整合了电源开启重接电路,所以在开启电源期间在RESET 脚上并无何限制 RESET 脚也是内部拉高的;因此若非需要,RESET 脚上不需连接其他引脚。
然而,我建议尽量通过外部拉高R。
