华侨大学厦门工学院单片机控制系统_ 课程设计报告题目基于51单片机录音笔设计专业、班级:12级通信3班_________学生姓名:__________ 詹家炜______________学号:___________ 1202303035 ________指导教师:__________ 高丽贞______________2015 年_6_月_28_ 日任务书题目:基于51 单片机录音笔设计一、任务设计一个录音笔,实现语音的存储和回放。
二、发挥部分用液晶屏显示存储内容的文字,并且要做好语音的滤波处理功能,也就是播放出来的音质要好。
喇叭要用好点的。
目录一、设计任务目的 (4)二、设计任务要求 (4)三、设计方案选取与论证 (4)四、电路设计 (5)4.1 核心控制模块 ....................... ..54.1.1 STC89C52 单片机介绍................ ..54.2 音频处理模块 ........................ .74.2.1 ISD1760 芯片简介 .................. ..74.2.2 SPI 模式 (11)4.2.3 微机接口....................... .. 134.2.4 SPI 协议总述...................... .134.2.5 SPI 命令总览 (14)4.2.6 ISD1760 的存储结构 (15)4.3 系统的总体设计方案 (15)4.3.1 STC89C52 的外围电路设计 (16)4.3.2 单片机复位、晶振电路设计 ............ . (16)4.3.3 音频处理电路设计................. . (18)4.4 软件总设计思路 .................... . (18)4.4.1 SPI 通信接口................... .................... .194.4.2 八段数码管................... .. (19)4.4.3 录放声音程序设计................. . (20)4.4.4 播放对应的语音段................. . (21)五、制作及调试过程........................ . (24)六、结论............................ . (25)七、致谢............................... .26八、参考文献........................... (27)成绩评定表.......................... (28)、设计任务目的随着电子技术的飞速发展,数码录音笔已得到了越来越多的人的青睐, 论文通过对多种录音笔的设计方案进行了比较和分析,选定STC89C52单片机设计了一个数码录音笔。
本文提出并设计实现了基于 STC89C52单片机和ISD1760语 音芯片的多功能录音笔方案。
首先介绍了设计方案的选择,接着进行了系统的硬 件设计,包括音频输入输出电路的设计、按键控制电路的设计等,设计中以 STC89C5单片机主控制为核心,采用了华邦公司新推出的ISD1700系列语音芯片,用来替代已经停产的ISD1400系列及ISD2500系列芯片实现录放系统的功 能。
其中按键控制电路对整个系统进行控制,用一个8段数码管更直观的显示录音时间。
系统模块包括主程序模块、语音信号的采集模块、键盘扫描模块等,进 行了程序流程的设计,编写了程序代码。
系统实现了语音数据的录制、播放、暂 停、全部擦除选择下一段等功能。
最后,对本设计进行总结与展望。
数码录音笔在录音领域等实际应用中具有诸多优势,值得进一步学习和研 究。
二、 设计任务及要求此次的设计任务是设计一款基于单片机的录音笔的设计。
设计要求如下:•具有单片机核心控制模块; •具有实现语音的存储和回放。
三、 设计方案选取与论证基于单片机、数字信号处理器 DSP 、FLASH 存储器的数码录音放音系统。
在录音时,语音信号经过处理后送到 A/D 转换器,转换成数字信号,把这些数 字信号送到数字信号处理器DSP 进行压缩处理,压缩后的语音数据送到FLASH 中,回放时从FLASH 存储器中读取压缩的数据经过 D/A 转换后,再通过喇叭 等具有播放功能的器件进行播放。
具体框图如下所示:图3.1方案一结构图语音信号A/D 转 换器DSP 处理压缩FLASH 存储器由于此方案要通过A/D芯片,专门的DSP芯片,本设计不需要高速、高精度运算,而且DSP功耗相对高,成本比较高,因此不选择此方案。
万案一:通过51单片机与语音功能集成芯片ISD1760进行设计,由单片机控制ISD1760来实现语音的录制存储以及播放清除等功能。
具体框图如下所示:显示图3.2方案二结构图由于采用资源不多的51单片机,这样节省了资源同时单片机运算速度已经足够用于检测按键,以及控制录音笔进行各种操作,而且这种设计无需对数字信号进行编码压缩的复杂的操作,实现简单,功耗不高,相对而言成本也不高,所以本设计采用了此方案。
四、电路设计4.1核心控制模块控制模块是整个录音笔的核心,实现对语音芯片ISD1760发送或接受指令,使其完成相应的动作。
本设计采用了型号为STC89C52单片机,它是一种简明易掌握,效率较高的指令系统,对存储空间和时间的利用率较高。
4.1.1 STC89C52单片机介绍STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
其主要工作特性是:8k字节Flash, 512字节RAM , 32位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。
另外STC89C52可降至OHz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
最高运作频率35MHz,6T/12T可选。
STC89C52 单片机的引脚排列如图4.1:图4.1 STC89C52单片机的引脚排列4.2音频处理模块音频处理模块主要由语音芯片ISD1760及其周围的滤波电路,其作用是对 声音的处理,通过单片机控制声音的录放。
421 ISD1760 芯片简介ISD1700系列芯片是华邦公司新推出的单片优质语音录放电路, 该芯片提供 多项新功能,包括内置专利的多信息管理系统, 新信息提示,双运作模式(独立& 嵌入式),以及可定制的信息操作指示音效。
芯片内部包含有自动增益控制、麦 克风前置扩大器、扬声器驱动线路、振荡器与内存等的全方位整合系统功能。
特 征如下:、特点:•可录、放音十万次,存储内容可以断电保留一百年。
•两种控制方式,两种录音输入方式,两种放音输出方式。
-可处理多达255段以上信息。
-有丰富多样的工作状态提示。
-多种采样频率对应多种录放时间。
•音质好,电压范围宽,应用灵活,价廉物美。
wssPiSp*图4.2 ISD1700 系列管脚图二、电特性:-工作电压:2.4V-5.5V,,最高不能超过6V •静态电流:0.5 - 1 卩A -工作电流:20mA用户可利用震荡电阻来自定芯片的采样频率,从而决定芯片的录放时间和录T E ^RESET MI50MOSI 262524・昭DINT / RDYFWDER4SE RECSCLKPLAYISD1700FTAnaln MIC + 212019 • CCAVOL"MIC-18AGCAUD AUXSP放音质。
下表为ISD1700的参数表:三、独立按键工作模式ISD1700的独立按键工作模式录放电路非常简单(后附图),而且功能强大。
不仅有录、放功能,还有快进、擦除、音量控制、直通放音和复位等功能。
这些功能仅仅通过按键就可完成。
在按键模式工作时,芯片可以通过/LED管脚给出信号来提示芯片的工作状态,并且伴随有提示音,用户也可自定4种提示音效。
录音操作:按下REC键,/REC管脚电平变低后开始录音,直到松开按键使电平拉高或者芯片录满时结束。
录音结束后,录音指针自动移向下一个有效地址。
而放音指针则指向刚刚录完的那段语音地址。
放音操作:放音操作有两种模式,分别是边沿触发和电平触发,都由/PLAY管脚触发。
A)边沿触发模式:点按一下PLAY键,/PLAY管脚电平变低便开始播放当前段的语音,并在遇到EOM标志后自动停止。
放音结束后,播放指针停留在刚播放的语音起始地址处,再次点按放音键会重新播放刚才的语音。
在放音期间,LED灯会闪烁直到放音结束时熄灭。
如果在放音期间点按放音键会停止放音。
B)电平放音模式:如果一直按住PLAY键,使/PLAY管脚电平持续为低,那么会将芯片内所有语音信息播放出来,并且循环播放直到松开按键将/PLAY 管脚电平拉高。
在放音期间LED 闪烁。
当放音停止,播放指针会停留在当前停止的语音段起始位置。
快进操作:点按一下FWD按钮将/FWD端拉低,会启动快进操作。
快进操作用来将播放指针移向下一段语音信息。
当播放指针到达最后一段语音处时,再次快进,指针会返回到第一段语音。
当下降沿来到/FWD 端时,快进操作还要决定于芯片当时的状态:A)如果芯片在掉电状态并且当前播放指针的位置不在最后一段,那么指针会前进一段,到达下一段语音处。
B)如果芯片在掉电状态并且当前播放指针的位置在最后一段,那么指针会返回到第一段语音处。
C)如果芯片正在播放一段语音(非最后一段),那么此时放音停止,播放指针前进到下一段,紧接着播放新的语音。
D)如果芯片正在播放最一段语音,那么此时,放音停止,播放指针返回到第一段语音,紧接着播放第一段语音。
擦除操作:擦除操作分为单段擦除和全体擦除两种擦除方式,区别如下:A)单个擦除:只有第一段或最后一段语音可以被单个擦除。
点按一下ERASE 健将/ERASE管脚拉低,这时具体的擦除情况要看播放指针的状态:•如果芯片空闲并且播放指针指向第一段语音,则会删除第一段语音,播放指针指向新的第一段语音(执行擦除操作前的第二段)•如果芯片空闲并且播放指针指向最后一段语音,则会删除最后一段语音,播放指针指向新的最后一段语音(执行擦除操作前的倒数第二段)•如果芯片空闲并且播放指针指向没有指向第一或最后一段语音,则不会删除任何语音,播放指针也不会被改变•如果芯片当前正在播放第一段或最后一段语音,点按下ERASE键会删除当前语音。