微机原理课程设计-数字录音机的设计与实现.doc_第1页
微机原理课程设计-数字录音机的设计与实现.doc_第2页
微机原理课程设计-数字录音机的设计与实现.doc_第3页
微机原理课程设计-数字录音机的设计与实现.doc_第4页
微机原理课程设计-数字录音机的设计与实现.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

郑州科技学院微机原理与接口技术课程设计题 目 数字录音机的设计与实现目 录1引言12 设计方案与论证22.1设计方案2 2.2设计的论证23 设计原理及功能说明 34 调试与结果测试105 总结 12参考文献14附录1:总体电路原理图15附录2:元器件清单161引言 通过实验掌握计数器/定时器8253和并行输入输出8255的基本工作原理和编程使用方法;进一步掌握a/d转换器与d/a转换器的使用方法; 了解录音机的基本工作原理,掌握其内部连接方式。本次课程设计的主题研究思想是利用微机原理与接口技术知识,掌握数字录音技术的基本原理.利用8253芯片,8255芯片,adc0809芯片和dac0832芯片实现电信号与数据信号的转换.8253设置成方式0,记数为200个,利用pa0查询电平变化,控制录音和放音时间.达到数字录音的目的.可广泛应用于数字录音领域.因此它具有一定的实用价值和开发价值。数字录音机有一定的市场前景和研究领域。微机原理和接口技术是一门实践性强的学科,其中很多的原量、规则、现象等仅仅靠学习教科书是无法完全掌握的,必须通过实践才能比较直观和深刻的理解。在进行毕业设计的过程中,可以让学生体验分析问题、提出解决方案、通过编程等手段实现解决方案、不断调试最终达到设计要求的全过程,从而帮助学生系统地掌握微机原理的接口技术的相关知识,达到将知识融会贯通的目的。 主要特点: 微结微机原理和接口技术教材的重点内容编写,涵盖课程的主要知识点,具有通用性,适合开设计课程的不同学校采用。 对课程设计的原理有比较详细的描述,课程设计的步骤循序渐进,便于学生独立完成课程设计。2 设计方案与论证设计方案及论证如下: 本课题设计可采用单独的硬件设计,也可以软件与硬件结合设计;后者的设 计方案较为合适,能够达到微机原理与接口技术的目的。 单独使用硬件来完成此设计,所使用的硬件材料较多,且不便于调试,而且 设计复杂,相对于用软件和硬件想结合而言,后者较为合适。 由于我们上一期学的课程是微机原理与接口技术课程,掌握了一定的微机原 理与接口技术知识;所以此设计采用硬件与软件结合设计,配合通用微机接口实验系统实验箱实现此设计及此设计功能,与此同时也可以对此门课程加深理解和巩固。为以后的学习和工作打下良好的基础。闪速处理器km29n32000数字信号处理器adsp-2181a/d和d/a转换器ad73311语音输入 语音输出 lcd显示器 图2-1数字录音机设计框图3设计原理及功能说明3.1 设计原理 图3-1单片机控制电路原理图 将传感器(话筒)接t2,由话筒传入语音电信号,把代表语音的电信号传送给adc0809。a/d转换芯片通道2(in2),片选信号cs低电平有效接微机通用实验系统箱地址298h,由298h地址信号控制,低电平表示adc0809芯片被选中. 利用可编程定时/计数器8253,由clk0计数时钟,输入时钟频率1mhz,再由gate0门控信号接+5v,通过gate0端控制计数器的启动计数和停止计数操作;cs片选信号接实验箱地址280h;同理,cs低电平有效,若280h为低电平,表示8253芯片被选中.out0接pa0;时间到或者计数结束输出引脚,将8253设置成方式0。计数值为200(定时0.2ms)。 再利用8255pa0查询out0电平,高电平表示定时时间到,cs片选信号接实验箱288h,由它输入。d/a转换器的输出端下接喇叭。cs片选信号接地址292h。 总体思想为:以每秒钟5000次的速率(以8253作为定时)in2采集输入的语言数据并存入内存。共采集60000个数据(录12秒钟),然后以同样的速率将数据送入dac0832使喇叭发声(放音),达到数字录音、放音的效果。3.2 设计功能说明 ( 1)主程序主程序的主要任务是对8253、8255a进行初始化,实现录、放音的功能调用。8253初始化设置8253在程序中设置成方式0,计数200,定时0.2ms 8253工作方式控制字:10000000b,即10h;选择通道0,方式0,只读写的、低8位设8253输入时钟信号的频率为 1mhz计数初值=0.2 ms/0.001ms=200控制字端口地址为:81h计数器0端口地址为:80h8255a初始化设置8255a控制字:10010000b,即90h;方式0,a口输入控制字端口地址为:85ha口地址为:84h调用录、放音子程序首先dos功能调用,显示录音提示信息,然后bios功能调用,读键盘缓冲区字符,等待键盘输入,若无键按下,继续等待;有键按下,则调用录音子程序,录音12秒。清除键盘缓冲区后,再进行放音子程序的调用。(2)a/d录放音子程序根据设计要求,adc0809要以每秒5000的速率采集语音数据,录音12秒,因此共需采集500012=60000个数据,计数器cx=60000。选择in0通道进行数据采集(d2=0、d1=0、d0=0),寻址a/d转换启动端口地址,cpu向in0通道执行一条输出指令,启动一次a/d转换。寻址eoc状态端口地址,读取eoc状态,测试转换是否结束,未完则继续等待,转换完成后,则寻址adc0809转换结果端口,cpu执行一条输入指令,取a/d转换结果。a/d转换启动端口地址:8ch转换结果端口地址:90heoc状态端口地址:94h(3)d/a放音子程序置数据区首址至si,计数器cx=60000。从数据区取数据,寻址dac端口地址,cpu执行一条输出指令,进行d/a转换。dac端口地址为:88h(4)延时子程序delay是延时0.2 ms的子程序 将8253计数器0的out0输入到8255a端口,测试pa0是否为1,若不为1,则表示8253未计数完,继续查询,如果为1,则表示8253计数完成,定时时间到。 开始8253、8255a初始化显示录音提示信息等待键盘输入有键按下吗?调用录音子程序显示录音提示信息等待键盘输入序有键按下吗?调用收音子程序是空格吗?返回dosnynnyy图3-2主程序流程图开始置数据区首地址至d1置循环初值cx=60000启动a/d转换测试转换是否结束?读eoc状态读取转换结果存数据区寻址下一单元序延时0.2ms循环结束吗?结束dosnyny图3-3 录音子程序流程图开始置数据区首地址至d1置循环初值cx=60000从数据区取数据寻址dacs1加1延时0.2ms循环结束吗?子程序返回dosny发送到dac进行d/a转换并输出图3-4放音子程序流程图设置8253为方式0计数200查询8255a的a口pa0为1吗?子程序返回dosny图3-5延时子程序4 调试与结果测试4.1 硬件的调试 接好实验箱,检查芯片和导线是否完整,具体连接情况如下: 8255:cs8255接地址译码y1, pa0接8253的out0。 8253:cs8253接地址译码y0, clk0接1mhz脉冲, gate0接vcc。 dac0832:cs0832接地址译码y2, ub接speakinput。 adc0809:cs0809接地址译码y3, clk接1mhz脉冲, in2接micoutput。4.2 硬件的调试 运行结果: 运行程序,打开开关k0或按下键盘上任一键,显示“record.”开始录音,录音结束后自动播放,显示“play”。播放过程,可以用k2控制停止,k3控制重放;幅度和放音增益由开关(k4、k5、k6)指定。并且可以实现在88双色点阵显示器上显示录音和放音的粗略波形,红色为放音,绿色为录音。 程序调试过程中遇到的问题及解决方法 在调试过程中,出现缺少提示信息的栏目,导致在运行过程中不知道何时开始录音,何时开始放音,如何设置重播音。发现问题后,马上增加白提示信息,使程序在运行过程中更加流畅,操作更加简单。7 总结 微机原理和接口技术是一门实践性强的学科,其中很多的原量、规则、现象等仅仅靠学习教科书是无法完全掌握的,必须通过实践才能比较直观和深刻的理解。在进行课题设计的过程中,可以让学生体验分析问题、提出解决方案、通过编程等手段实现解决方案、不断调试最终达到设计要求的全过程,从而帮助学生系统地掌握微机原理的接口技术的相关知识,达到将知识融会贯通的目的。 主要特点: 微结微机原理和接口技术教材的重点内容编写,涵盖课程的主要知识点,具有通用性,适合开设计课程的不同学校采用。 对课程设计的原理有比较详细的描述,课程设计的步骤循序渐进,便于学生独立完成课程设计。 实例丰富,既有小型的适合一个学生独立完成的项目,也有比较大型的适合团队完成的项目,不仅可以培养学生的动手能力,也有助于培养学生的团队意识。这次课程设计的主题研究思想是利用微机原理与接口技术知识,掌握数字录音技术的基本原理本。实验从硬件上讲共有四个工作芯片,0809和0832负责信号数模模数转换,8253是定时用的,8255则是读取开关状态,从而决定工作状态的,从软件上讲,共有录音和放音两个主要子程序,这两个程序每执行一次调用一次显示程序,显示声信号的波形。通过综合设计实验,我们巩固了很多器件的使用方法,进一步熟悉了试验箱的硬件结构和汇编的调试方法。在本实验中,充分利用学过的汇编语言程序设计能力,在了解了数字录音技术的基本原理后,通过对a/d转换器与d/a转换器的使用,以及利用8253和8255芯片实现延时功能,成功完成了数字录音机的设计。测试实验结果时,成功实现了12s的录音及放音,达到设计要求。在本次数字录音机设计中,实现功能有12s录音功能、放音功能、重复放音功能。课程设计使我们了解到数字录音技术的基本原理,进一步掌握a/d转换器和d/a转换器的使用方法,并巩固和加深了汇编语言程序设计的能力。参考文献 1 杨素行.微型计算机系统原理及应用,北京,清华大学出版社,2004年 2 刘树中.孙书膺,王春平.单片机和液晶显示驱动器串行接口的实现j.微计算机信息,2007 3 李广弟.单片机基础m。北京:北京航天航空大学出版社,2001 4 杨振江.智能仪器与数据采集系统的新器件及应用m。西安:西安电子科技大学出版社,2001 5 彭介华.电子技术课程设计指导j.北京:高等教育出版社,1997. 6葛纫秋.实用微机接口技术.高等教育出版社.2007 7何超.微型计算机原理及应用.中国水利水电出版社.2007 8田艾平.微型计算机技术.清华大学出版社.2005 9郑岚,王洪海.微机原理与接口技术.北京理工大学出版社.2012附录1:总体电路原理图 附录2:元器件清单 1:adc0809芯片 一块. 2:dac0832芯片 一块. 3:8253芯片 一块. 4:8255芯片 一块 5:通用微机接口实验系统实验箱 一个. 6:导线若干. 7:电脑 一台.附:调试程序代码 asm程序:data segmentioportequ 01400h-0280hluportequ ioport+29ah ;录音口地址fangportequ ioport+290h ;放音口地址io8253aequ ioport+283hio8253bequ ioport+280hio8255cequ ioport+28bhio8255dequ ioport+288hdata_qu db 60000 dup(?) ;录音数据存放数据区news_1 db press any key to record:,24h ;录音提示news_2 db 0dh,0ah, playing:,24h ;放音提示data endscode segmentassume cs:code,ds:data,es:databegin:mov ax,data ;初始化 mov ds,ax mov es,ax mov dx,offset news_1 ;显示录音提示 mov ah,9 int 21htest_1: mov ah,1 ;等待键盘输入 int 16h jz test_1 ;若不是则循环等待 call lu ;调用录音子程序 mov dx,offset news_2 ;显示放音提示 mov ah,9 int 21hfy: call fang ;调用放音子程序 mov ax,0c07h int 21h cmp al,20h jz fy mov ah,4ch ;返回dos int 21hlu proc near ;录音子程序 mov di,offset data_qu ;置数据区首地址为di mov cx,60000 ;录60000个数据 cldxunhuan:mov dx,luport ;启动a/dout dx,alcall delay ;延时in al,dx ;从a/d读数据到alstosb ;存入数据区,使di加1loop xunhuan ;循环ret ;子程序返回lu endpfang proc near ;放音子程序 mov cx,60000 ;放60000个数据 mov si,offset data_qu ;置数据区首地址为si cldfang_yin:mov dx,fangport lodsb ;从数据区取出数据 sub al,30h out dx,al ;放音 call delay ;延时 loop fang_yin ;循环 ret ;子程序返回fang endpdelay procnear ;延时子程序pushdxmoval,10h ;设8253通道0工作方式0movdx,io8253aoutdx,almoval,200 ;写入计数器初值200movdx,io8253boutdx,almovdx,io8255c ;设8255的a口为输入moval,9bhoutdx,almovdx,io8255d ;从8255的a口输入delay1:inal,dxandal,1 ;判断pa0是否为1jzdelay1 ;若pa0不为1,转de_laypopdxret ;子程序返回delay endpcode endsend begincpp程序:#include#include#include apiex.h#pragma comment(lib,apiex.lib)void lu();/*录音函数*/void fang();/*放音函数*/void de_lay();/*延时函数*/int i;byte *ii;void main()printf(-exp22_13_lyj-n);printf(1. mic = j2n);printf(2. i/o (298-29f) = 0809 (cs)n);printf(3. (jump 2 to 3) of jp2n);printf(4. speaker = j1n);printf(5. i/o (290-297) = 0832 (cs)n);printf(6. 8253 (clk0) = (1mhz) or (2mhz)n);printf(7. tpc (+5v) = 8253 (gate0)n);printf(8. 8253 (out0) = 8255 (pa0)n);printf(9. i/o (280-287) = 8253 (cs)n);printf(10. i/o (288-28f) = 8255 (cs)n);printf(press any key to begin!nn);getch();if(!startup()/*打开设备*/printf(error: open device error!n);return;ii = (byte *)malloc(60000);/*分配空间用于存放录音数据*/if(!ii)printf(no me

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论