资源预览内容
第1页 / 共21页
第2页 / 共21页
第3页 / 共21页
第4页 / 共21页
第5页 / 共21页
第6页 / 共21页
第7页 / 共21页
第8页 / 共21页
第9页 / 共21页
第10页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数字录音机设计目录1、课程设计的目的 32、课程设计的方案论证 73、设计的结果与分析 184、心得体会 185、参考文献 19数字录音机设计1课程设计的目的目的(1) 进一步加深对微机系统的理解和认识,提高微机系统的应用水平。(2) 进一步学习和掌握汇编语言程序的编写和应用的方法,通过较大规模程序 的编写,提高编写汇编语言程序的水平和学习程序调试方法。(3) 进一步熟悉接口, DAC0832、ADC0809及定时计数器等芯片的使用。内容与要求(1) 设计一个声音录放系统,通过传感器及 ADC0809以每秒 5000 次的速率采 集语言信号,录音 12 秒后,再以同样的速率将语音数据通过 DAC0832送出至喇 叭发声(放音)。(2) 画出系统的硬件连接图。(3) 画出程序流程图并编写程序实现上述功能。各芯片工作原理及功能简介(1) ADC0809ADC0809是 CMOS工艺制成的双列直插式 8 位 A/D 转换芯片,内部采用逐 次逼近原理,单极性,量程为 0+5V。片内部有 8 路模拟开关,可控制选择输入 8 个模拟量之中的一个,并带有三态输出锁存缓冲器,可直接与CPU 总线连接,不需要外部锁存器,是应用较广泛的一种 A/D 转换芯片。 ADC0809 内部结构ADC0809内部由两部分电路组成:第一部分: 8 路模拟通道选择开关,地址锁存器和译码器。第二部分:比较器、 8 位逐次逼近寄存器 SAR、8位开关树型 D/A 转换电路、 控制逻辑、三态输出缓冲锁存器。工作原理:由 ADDA、ADDB、ADDC 及 ALE选择 8 个模拟量之一,并通过通 道选择开关加至比较器一端。 由START信号启动 A/D转换开始且 SAR清 0。在 CLOCK 的控制下,将 SAR从高位逐次置 1,并将每次置位后的 SAR送 D/A 转换器转换成 与 SAR中数字量成正比的模拟量。 DAC 的输出加至比较器的另一端与输入的模拟 电压进行比较,若Vi大于等于 V0保留SAR中该位的 1;若Vi小于V0则该位清 0。 经过 8次比较( 8个CLOCK)后, SAR中的 8位数字量即是结果。在 OE有效时, 将 SAR中的 8 位二进制数输出至锁存器,并通过 D7D0输出,同时发出 EOC转 换结束信号。 ADC0809 引脚功能如下:IN0IN7 :8 路模拟输入通道。D0D7 :8 位数字量输出端。START : 启动转换命令输入端,由 1 0 时启动 A/D 转换,要求信号宽 度 100nOE :输出使能端,高电平有效ADDA 、ADDB 、ADDC : 地址输入线,用于选通 8 路模拟输入中的一路进 入 A/D 转换。其中 ADDA 是 LSB 位,这三个引脚上所加电平的编码为000111 ,分别对应 IN 0 IN 7 ,例如,当 ADDC=0 , ADDB=1 , ADDA=1 时, 选中 IN 3 通道。ALE :地址锁存允许信号。用于将 ADDAADDC 三条地址线送入地址锁存 器中。EOC :转换结束信号输出。转换完成时, EOC 的正跳变可用于向 CPU 申 请中断,其高电平也可供 CPU 查询。CLK :时钟脉冲输入端,要求时钟频率不高于 640KHZ 。REF(+)、REF(-):基准电压,一般与微机接口时, REF(-)接 0V 或 -5V , REF (+)接 +5V 或 0V 。(2)DAC0832DAC0832是用 COMS工艺制成的双列直插式 8 位 D/A 转换芯片,内部采用 T 型电阻网络,数字输入有输入寄存器和 DAC寄存器两级缓冲,可以双缓冲、单缓 冲或直接输入方式连接。片选信号:输入低电平有效,与 ILE相配合,可对写信号 是否有效起到控制 作用ILE允许锁存信号:输入高电平有效。输入锁存器的锁存信号由 ILE, , 的逻辑组合产生。 当 ILE为高电平、 为低电平、 输入负脉冲时, 在 端产生正脉冲。 当 为高电平时,输入锁存器的状态随着数据输入线的状态变化, 的负跳变将数 据线上的信息打入输入锁存器。写信号 1:输入低电平有效。当 , ,ILE均为有效时,可将数据写入 8 位输 入锁存器。写信号 2:输入低电平有效。当其有效时,在传送控制信号 的作用下,可将 锁存在输入锁存器的 8 位数据送到 DAC寄存器。数据传送控制信号:输入低电平有效。当 , 均有效时,则在 端产生正脉 冲。当 为高电平时, DAC寄存器的输出和输入锁存器的状态一致,的负跳变将输入锁存器的内容打入 DAC寄存器。基准电压输入端:可在 10 V范围内调节。DI7DI0:8 位数字输入量输入端。Iout1:DAC的电流输出 1。当 DAC寄存器各位均为 1 时,输出电流最大;当 DAC寄存器各位均为 0 时,输出电流为 0。Iout2 : DAC的电流输出 2。 与 的和为一常数,一般单极性输出时 接地, 在双极性输出时接运放。Rfb :反馈电阻引脚。在 DAC0832芯片内部有一个反馈电阻,可作为外部运 算放大电路的反馈电阻用。(3)可编程计数 / 定时接口芯片 82538253 内部结构 数据总线缓冲器该缓冲器为 8 位双向三态的缓冲器, 8 根数据线 D 0 D 7 可直接挂在 CPU 数据总线上。 读/ 写控制逻辑它是 8253 内部操作的控制部分,它决定三个计数器和控制字寄存器中哪一 个能进行工作,并控制内部总线上数据传送的方向。 控制字寄存器接收从 CPU 来的控制字, 并由控制字的 D7 、D6 位的编码决定该控制字写 入哪个计数器的控制寄存器,控制寄存器只能写入,不能读出。 计数器8253 有 3 个独立的计数器通道,每个通道的结构完全相同,如图 所示。 每一个通道有一个 16 位减法计数器;还有对应的 16 位初值寄存器和输出锁存 器。每个计数器都可以对其 CLK 输入端输入的脉冲按照二进制或 BCD 码从预置 的初值开始进行减 1 计数,当减至 0 时,从 OUT 端输出一个信号,计数的开 始由软件启动或硬件门控信号 GATE 控制。计数开始前写入的计数初值存于初值 寄存器;计数过程中,减法计数器的值不断递减,而初值寄存器中的初值不变。 输出锁存器则用于写入锁存命令时锁定当前计数值。当 8253 用作计数器时, 加在 CLK 引脚上脉冲的间隔可以是不相等的; 当它 用作定时器时, 则在 CLK 引脚应输入精确的时钟脉冲, 8253 所能实现的定时时 间,取决于计数脉冲的频率和计数器的初值。对 8253 来讲,外部输入到 CLK 引脚上的时钟脉冲频率不能大于 2MHZ , 否则需分频后才能送到 CLK 端。( 4)可编程并行 I/O 接口芯片 8255A 并行输入 / 输出端口 A、B、C8255A 芯片具有 24 个可编程输入输出引脚,分成 3 个 8 位端口,其中: 端口 A 包含一个 8 位数据输出锁存 / 缓冲寄存器和一个 8 位数据输入锁存 器;端口 B 包含一个 8 位数据输入 / 输出、锁存 / 缓冲寄存器和一个 8 位数 据输入缓冲寄存器;端口 C 包含一个输出锁存 / 缓冲寄存器和一个输入缓冲寄 存器。必要时端口 C 可分成两个 4 位端口,分别与端口 A 与端口 B 配合工作, 通常将端口 A 和端口 B 定义为输入 / 输出的数据端口,而端口 C 可作为状态 或控制信息的传送端口。A 组和 B 组控制部件端口 A 与端口 C 的高 4 位 (PC 7 PC 4) 构成 A 组,由 A 组控制部件 实现控制功能,端口 B 与端口 C 的低 4 位( PC 3 PC 0 )构成 B 组,由 B 组控制部件实现控制功能。 它们各有一个控制单元, 可接收来自读 / 写控制部件 的命令和 CPU 通过数据总线( D7D0)送来的控制字,并根据它们来定义各个 端口的操作方式。 数据总线缓冲器这是一个三态双向 8 位数据缓冲器,它是 8255A 与 8086CPU 之间的数据 接口, CPU输入输出的数据, CPU输出的控制字以及外设的状态信息都是通过这 个缓冲器进行传送。 读 / 写控制部件这是 8255A 内部完成读 / 写控制功能的部件,它与 CPU 的地址总线及有 关的控制信号相连,接收 CPU 的控制命令,并根据它们向片内各功能部件发出 操作命令(5)74LS138译码器74LS138是 3-8 线二进制译码器,它有 3 个输入端, 8 个输出端,输出低电平 有效。该器件 3 个输入端 A、B、C接受二进制码,其输出端 Y0Y7工 8 条译码 输出线。除此之外,还有 3 个使能控制端 G、G2A、G2B,目的在于灵活应用并组 合各种电路。只有当 G=0,同时 G2A +G2B=0时,译码器工作,否则,译码器功能 被禁止。2设计方案论证 总体设计思想根据设计要求,本次数字录音机的汇编语言设计所需芯片有模数转换芯片 ADC0809、数模转换芯片 DAC0832、定时计数器 8253、可编程并行 I/O 接口 8355A 及译码器 74LS138。设计过程可简述为:利用传感器和 ADC0809采集语音数据, 以每秒 5000 的速率采集 IN0 输入的语音数据并存入内存,共采集数据 60000 个, 即录音 12 秒。 DAC0832进行数模转换,以同样的速率将数据送 DAC0832使喇叭 发声。 8253用作定时,定时,设置成方式 0,计数初值为 200。8253计数器 0 的 OUT0与8255A的PA0连接,利用 PA0查询 OUT0电平,如果为高点平则表示定 时时间到。用译码器 74LS138对地址线进行译码以产生各接口芯片所需的信号。硬件连接图图 1 硬件连接图各芯片的作用及工作方式(1)ADC0809在本次设计中的作用及工作方式ADC0809 作数据采集用,用来采集 12 秒的语音信号并保存到相应的存储单 元。对 ADC0809的 8个模拟通道,这里是用数据总线的低 8 位 D2、D1、D0来控 制 ADC 的通道选择信号 ADDC、ADDB、ADDA,以实现选择其中之一模拟通道输入。 在本次设计中,初始值为 000(D2=0、D1=0、D0=0),即选择 IN0 通道进行数据 采集,然后使 ADC0809的 ALE、START有效, START和 ALE信号通过 CPU向选中 的通道口执行一条输出指令, 启动 A/D 转换。转换结束后, 发出 EOC信号,当 EOC 为高电平时,可供 CPU查询,读取每次采集的 A/D 转换结果。当 CPU知道转换已 完成,执行一条输入指令使 OE 信号有效,此时输出缓冲器被打开,数据送到数 据总线。系统时钟经分频后接到 ADC0809芯片的时钟引脚 CLK上。(2)DAC0832在本次设计中的作用及工作方式在本次设计中, 我使用的 DAC0832采用直通方式与 CPU连接,从硬件图中可 以看出,该片 DAC0832只有一个端口地址,即 88H。DAC0832的 ILE信号与 +5V 连在一起, 、WR1和 WR2均接地,总是有效的, DAC0832的输入寄存器和 DAC 寄存器均处于选通状态,只要 CPU 想 88H 端口执行一条输出指令,就会使 XFER 有效, CPU输出繁荣数字量就会顺利通过 DAC0832的两个寄存器,然后进行 D/A 转换,在运算放大器的输出端得到转换结果(3)8253、8255A在本次设计中的作用及工作方式8253在本次设计中用作定时,工作于方式 0,与 8255A连接使用完成定时
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号