当前位置:文档之家› 基于单板机的分频器设计与实现版本2

基于单板机的分频器设计与实现版本2

基于单板机的分频器设计与实现版本2
基于单板机的分频器设计与实现版本2

合肥学院

计算机科学与技术系

微机原理与接口技术

课程设计

2008~2009学年第一学期

课程设计题目基于单板机的分频器设计与实现学生姓名刘伟

学号0604032044

班级06网络工程(2)班

指导教师龙夏

2008年12月

一、题义分析与解决方案

1、题义需求分析

用STAR ES598PCI单板开发机,设计一个能用微机键盘控制的脉冲信号分频器,并编程实现其功能。

设计要求:

(1)能对2MHZ以下的脉冲信号进行分频。

(2)分频系数由STAR ES598PCI单板开发机的小键盘输入(2—1000)。

(3)由LED显示分频系数。

2、解决问题方法及思路

应用STAR ES598PCI单板开发机在PC机上调试,用户程序存储器共32KB,工作于Winxp Xingyan集成环境:分频系数使用小键盘;分频系数输出接口用8255A;分频系数的显示用LED七段数码管;实现分频功能部件8253A。

分频器实现对2MHZ以下的脉冲信号进行分频,利用不同的计数值达到对时钟脉冲的分频。若记数初值为N,启动记数器后,使用CLK脉冲频率进行减1记数,直到CE 为1,输出一个CLK周期的负脉冲,此时输出信号的频率为输入信号频率的1/N,就是N分频方式。通过分频器将系统提供的频率进行分频,由输入开关或小键盘提供分频系数,再由LED七段数码管显示出来。

1)硬件部分

本程序设计的主要模块有:芯片的初始化,分频系数的输入及输出(包括分频系数是如何进入8253A芯片的),分频系数和频率的显示。

①实现分频功能:我们让系统每隔一段相等的时间后输出一负脉冲,即每N个CLK 输出一个宽度为一个CLK周期的负脉冲。此时要用到定时器芯片,给定时器芯片赋初值,当初值记为0时,输出一负脉冲,起到分频作用。定时器芯片有8253A和555芯片,两者都可用于计时和产生矩形波。但是8253A芯片可编程,555芯片不行,而且设计要求分频系数由小键盘任意输入一分频系数,故选择8253A芯片。分频系数的输入是读逻辑开关量。根据设计的要求,需要输入16位的开关量,但是试验箱中只有8位逻辑开关,所以在设计时我们将前4位作为输入量,第五位作为开关量,输入8253A的控制开关,第6、7位的4次输入,用来控制一组开关量,最后一位控制开关,决定是否能输入初始量。

②实现输入输出功能:8255A与8251A芯片,都是可编程输入输出接口芯片。但是:8255A为可编程并行接口,具有传输速度快效率高等优点,而8251A是串行的,综合考虑,选用8255A好。

初始化主要是应用8255A和8253A芯片,即分别写方式控制字,8255A的A、B口作为输出口,C口作为输入口,A口接位选,B口接段选。

③模块显示程序:分别取位选和段选的偏移地址,再通过数据转换,将字形码转

换成开关量,最后通过相应的端口输出。

2)软件部分

①对8253A进行初始化:8253A具有分频作用,可将其初始化为方式2或方式3,方式3输出为方波,便于用方波观察波形,所以选择是通道0,则控制字为36H。端口2用于输入,端口3用于输出。先读低八位,后读高八位。

分频系数的输入,其设计思路为:首先取一个字,需要对32位进行操作,从低到高分别取32位的低16位,再从低16位的低8位中选择高4位,32位的低16位的高8位的高4位,32位的高16位的低8位的高4位,32位的高16位的高8位的高4位。将取到的数通过逻辑移动形成一个16位的开关量,如果需要输出则通过8253A的通道2显示在LED 上。

②对8255A进行初始化:将8255A的工作方式设定为方式0,即PA、PB、PC三个口都能够进行输入输出操作。8255A的方式选择控制字为92H,即A,B口方式0,输入,C口输出。分频系数的输入由外部逻辑开关输入。

按照设计流程,我们首先判断能否进行输入(PC7是否等于1),如果等于则进入输入模块,读取输入的4位数据,并判断显示在哪一位上。当P6和P5位都为1时,显示在LED的第4位;当P6和P5分别为1、0,显示在LED的第3位;当P6和P5分别为0、1,显示在LED的第2位;当P6和P5都为0,显示在LED的第1位。当四次输入完成后,需要停止输入操作,此时控制开关的P7为0。

二、硬件设计

1、选择芯片8253A

1)芯片8253A在本设计中的作用

8253A在本实验具有分频器的作用,对输入的脉冲进行分频。

2)8253A的功能分析

8253A是一种可编程的定时器/计数器芯片,它可用于计数、分频、定时器等的方面。其分频工作的功能:CLK引脚获得初始频率,此时若GATE为高电平,十六位计数初值寄存器中的数据装入计数执行单元CE中,它对CLK脉冲计数,每出现一个CLK脉冲,计数对执行单元CE的值减小。当减为0时,通过OUT输出指示信号,表明计数执行单元已为0。这时OUT输入的信号频率是CLK频率的1/N。

3)8253A的技术参数

表1 8253A的技术参数

数据名称符号测试条件MAX MIN 单位

输入低电压VIL 0.8 -0.5 V

输入高电压VIH VCC+0.5 2.4 V

输出低电压VOL 0.45 2.4 V

输出高电压VOH V

输入负载电流IIL ±10 ΗA

输出浮动电流IOFL VIN=VCC∽0V ±10 ΗA

电源电流VCC VOUT= VCC∽0.45V 140 MA 技术参数介绍:输入低电平电压范围是-0.5∽0.8 V,输出低电压0.45∽2.4 V,输入高电平电压2.4∽VCC+0.5 V。而测试条件:VIN=VCC∽0V,VOUT= VCC∽0.45V,当输入低电平电压在上述范围内时,8253A才可以接受数据,当输出电压在上述范围内时,8253A输出才有效。

2、选择芯片8255A

1)8255A在本设计中的作用

8255A在本设计中起并行传输接口作用,负责将从逻辑开关得到的数据送到LED 显示器上显示出来。

2)8255A的功能分析

8255A是一种通用的可编程并行I/O接口芯片。在本设计中,8255A设置为方式0,在方式0下,CPU采用无条件读写方式与8255A交换数据,8255A的PC口的低四位用于位选择,与LED的数位选择相连,因本设计中要求的分频系数在2∽1000,所以要用16位开关输入,把开关输入的二进制数转为16进制时,四位十六进制数,用四位LDE 数码管,74LS373用于段选择。在方式0下,8255A的每个口都作为基本的输入/输出口,其中C口设置为输出方式,A和B口设置为输入口。8255A在方式0时,CPU可以采用无条件读/写方式与8255A交换数据。

3)8255A技术参数

表2 8255A技术参数

参数名称符号测试条件MAX MIN

输入低电压VIL O.8 -0.5V

输入高电压VIH VCC 2.0V

输入低电压(数据端口)V OL IOL=2.5mA 0.45V

输入低电压(外部端口)V OL IOL=1.7mA 0.45V

输入高电压(数据总线)V OH IOH=-400mA 2.4V

输入高电压(外部端口)V OH IOH=-200mA 2.4V

达林顿驱动电流TDAR REXT=750,VEXT=1.5V -0.4mA 1.0mA

电源电流ICC 120 mA

输入负载电流IIL I= VCC∽0V 10 mA -10 mA

输出浮动电流IOFL VOUT= VCC∽0V 10 mA -10 mA 技术参数介绍:由于8255A芯片的达林顿驱动电流为4.0m A,而LED的驱动电流为25mA,PCI板卡中集成了74LS244芯片,用来将8255A的驱动电流放大,驱动LED工作。

3、LED显示器

1) LED在本设计中的作用:实现分频系数的显示。

2) LED的功能分析

七段LED显示器通过汇编语言控制,可以控制在哪几位数位上,哪几个发光二极管亮,从而实现数字的显示。其工作原理是:如果发光二极管共阳极,则输入为0,则发光;当为1时,不发光。反之,如果发光二极管共阴极,则输入1为发光,0时为不发光。发光二极管是一种外加电压超过额定电压时发生击穿,并因此能产生可发光的器件。数码显示器通常有多个发光二极管来组成,七段或八段笔画来显示器。七段代码的各位用作a-g和DD输入。当段组合发光时,便会显示某一个数码管或字符。

3)LED的技术参数:

表3 LED技术参数及LED数码显示真值表

PCW LF Vr Ir If p 对应变量散射颜色BT235 70 25 5 ≥1.5 ≤2.5 200 SEL-10 红

BT144 100 40 5 ≥0.5 ≤2.5 565 绿

BT134 100 40 5 ≥0.5 ≤2.5 585 蓝定义的十六进制发光二极管显示的数字

3FH 00111111 0

06H 00000110 1

5BH 01011011 2

4FH 01001111 3

66H 01100110 4

6DH 01101101 5

7DH 01111101 6

07H 00000111 7

7FH 01111111 8

6FH 01101111 9

77H 01110111 A

7CH 01111100 B

46H 01000110 C

5EH 01011110 D

7BH 01111011 E

71H 01110001 F

技术参数介绍:驱动电流为25mA.

4、逻辑开关

1)逻辑电平开关在本设计中的作用

逻辑电平开关在本设计中作为输入器件,通过其输入的二进制数值来表示分频

系数。

逻辑开关的设置代表的十六进制数

0000 0000 0H

0001 0001 1H

0010 0010 2H

0011 0011 3H

0100 0100 4H

0101 0101 5H

0110 0110 6H

0111 0111 7H

1000 1000 8H

1001 1001 9H

1010 1010 0AH

1011 1011 0BH

1100 1100 0CH

1101 1101 0DH

1110 1110 0EH

1111 1111 0FH

2)逻辑开关的功能分析

逻辑开关可作为数值的输入器件,也可以表示逻辑值。拨上时为+5V,拨下时为0V,分别代表“1”和“0”。

3)逻辑开关的技术参数

表4 逻辑开关的技术参数

5、硬件总线逻辑图及其说明

图5 逻辑图

说明:本设计以STAR ES598PCI单板开发机为基础,图中PCI板卡与8255A及8253A 间的数据线和控制线已连接好,接线的部分有: PA、PB与逻辑开关之间的连线、以及LED显示器、逻辑开关与电源和GND之间的连线。

值得注意的是:

①8255A的片选信号CS与8255A、8253A的片选信号相连,同时地址锁存的地址线A0、A1分别与8255A、8253A的地址线A0、A1相连。片选信号选择的地址空间范围是04B0~04BF,其中偶地址空间有效。8255A控制端口地址为04A6,PA口的为04A0,PB 口的为04A2,PC口的为04A4。

②接线顺序,每一根线两边的端口要严格对应,因为16位二进制开关表示一个16位的二进制数,16位的二进制数分成连续的4部分,其中每部分对应4位二进制数,对应4位LED显示。

③哪怕只有一根线接错,也会打乱各设备之间的对应关系,从而导致实验结果和数据、现象的不正确。其结果可能不会显示或显示为乱码等,严重时会损坏设备,而且接线时不能带电操作。

三、控制程序设计

1、程序流程图

图6程序流程图

2、控制程序设计思路说明

本程序主要功能分为初始化、读开关量、写操作。

①初始化主要实现写8253A,8255A方式控制字。

②读开关量主要实现从PA、PB口读入开关量并储存在一个16位的内存空间,需要是从其中将数据取出。

③写操作通过两个循环完成。第一次循环写低8位,第二次循环写高8位。

在写操作中需要完成的工作有:分两次写一个8位的数据,先写低4位,再写高4位。位选码初始化为0FEH,并用循环左移控制不同LED显示器的亮灭,每位显示mS 循环显示。

16位二进制数据分两次显示,先显示低8位,再显示高8位,然后进行8253A分频。

当16位二进制数据处理完后,程序跳到读操作再次循环。

3、控制程序

COM_ADD DW 00F3H ;控制口偏移量PA_ADD DW 00F0H ;PA口偏移量

PB_ADD DW 00F1H ;PB口偏移量

PC_ADD DW 00F2H ;PC口偏移量COM_ADD1 DW 00E3H ;8253A控制口偏移量

P0_ADD DW 00E0H ;通道0

P1_ADD DW 00E1H ;通道1

P2_ADD DW 00E2H ;通道2 ssengment db

3fh,06h,5bh ,4fh,66h ,6dh,7dh,27h, 7fh,6fh, 77h,7ch,39h,5eh,79h,71h shu db 00h,00h,00h,00h;4个内存单元用于保存输入结果,要显示的数据值

.code

START: mov ax,@data

mov ds,ax

nop

call initpci

call modifyaddress;将偏移地址转化为实地址

mov al,10001001b; c口输入,a,b口输出,b口段选,a口位选

mov dx,COM_ADD

out dx,al

mov dx, COM_ADD1 ;8253A 初始化

mov ax,036h ;通道0

out dx,ax mov ax,0b6h ;通道2 控制发光二极管

out dx,ax

loop3: mov dx,PC_ADD ; 检查pc口,pc7=1?

in al,dx

and al,80h ; 80h=10000000b

cmp al,80h

je xishu ;等于则设置初值,响应输入,产生分频系数loop4: mov dx,PC_ADD

in al,dx

and

al,10h ;00010000b判断pc5是否为1

cmp al,10h

jz write ;将数据写入8253A

call xianshi ;调用显示程序

jmp loop3

write: mov bx,offset shu

; 数据写入8253A函数

mov ax,[bx]

and ax,000fh

; 000fh=00001111b

mov bp,ax

mov ax,[bx]

and ax,0f00h

; 0f00h=11110000b

mov cl,4

shr ax,cl

add bp,ax

mov ax,[bx+2]

;内存单元地址后移一位,低八位数据

and ax,000fh

; 000fh=00001111b

mov cl,8

shl ax,cl

add bp,ax

mov ax,[bx+2]

;内存单元地址后移一位

and ax,0f00h

; 0f00h=11110000b mov cl,4 shl ax,cl add bp,ax

mov dx,P0_ADD

;8253A 通道0地址

mov ax,24h out

dx,ax ;写入通道0计数初值低八位 mov ax,0f4h out dx,ax ;写入通道0计数初值高八位

mov

dx,P2_ADD

;8253A 通道2地址

mov ax,bp out dx,al

;将开关数据作为计数初值写入通道2

mov al,ah out dx,al

xishu: ; 写入初值

mov bx,offset shu mov dx,PC_ADD

; 送pc 口地址 in al,dx

mov ah,al and ax,0f60h ;取输入的四位数据,屏蔽后四位数据

cmp al,0h ;判断显示位,al 控制位选择,ah 控制段选择 je s4 ; 检测是低8位的低4位 cmp al,20h ;

20h=00100000b

je s3 ; 检测是

低8位的高4位 cmp al,40h

;

40h=01000000b

je s2 ; 检测是高8位的低4位 cmp al,60h

;

60h=01100000b jne s5 ; 检测是高8位的高4位

s1: inc bx s2: inc bx s3: inc bx

s4:

mov

byte

ptr

[bx],ah ; 保存数据 s5: mov dx,PC_ADD

mov

al,0ffh ;关闭led

out dx ,al call xianshi jmp loop4 xianshi proc

; 数码管显示子程序

loop1: mov si,offset shu

mov cx,4 mov

ah,11111110b ; 设置位选码, LED 显示

loop2: mov al, byte ptr [si]

mov

bx,offset

ssengment ; 取偏移地址 xlat ; 段码:查数据段表,[al+bx]->al 数据转换 mov

dx,PB_ADD ; 送PB 口地址 段选

out dx,al mov al,ah

call delay

mov

dx,PA_ADD ; 送PA口

地址位选

out dx,al

mov

al,0ffh ; 关闭显示

out dx,al

add

si,1 ; 指针下移

rol ah,1

;设置下次显示的位选码,

此处显示全为0

loop

loop2 ; 循环

ret

xianshi endp

delay

proc ;延迟子程

序,实现延时的功能。

push

cx ; 将cx 的内

容保存入栈

mov

cx,10h ; 设置循环

次数

loop5:

nop ; 空操

loop loop5 ; 循环延时

pop

cx ; 出栈

ret

delay endp

InitPCI PROC NEAR

; PCI初始化程序 MOV AH,00H MOV AL,03H INT 10H

;清屏

MOV AH,0B1H

MOV AL,01H

INT 1AH

CMP AH,0

JZ InitPCI2

LEA DX,msg0

InitPCI1: MOV AH,09H

INT 21H

JMP Exit

InitPCI2: MOV AH,0B1H

MOV AL,02H

MOV CX,Device_ID

MOV DX,Vendor_ID

MOV SI,0

INT 1AH

JNC InitPCI3 ;是否存在STAR ES598PCI板卡

LEA DX,msg1

JMP InitPCI1

InitPCI3: MOV DI,PCIBAR3

MOV AH,0B1H

MOV AL,09H

INT 1AH ; 若存在,则读取STAR ES598PCI板卡的基地址

JNC InitPCI4

LEA DX,msg2

JMP InitPCI1

InitPCI4: AND CX,0FFFCH

MOV

IO_Bit8_BaseAddress,CX

RET

InitPCI ENDP

ModifyAddress PROC NEAR;修改内存单元地址程序

ADD COM_ADD,CX

ADD PA_ADD,CX

ADD PB_ADD,CX

ADD PC_ADD,CX

ADD COM_ADD1,CX

ADD P0_ADD,CX

ADD P1_ADD,CX

ADD P2_ADD,CX

RET

ModifyAddress ENDP

Exit: ;退出程序

MOV AH,4CH

INT 21H

END START

四、上机调试过程

1、硬件调试

(1)按总逻辑图接线,接线时必须仔细,否则会导致实验结果不正确。

(2)编译、连接、运行控制程序,观察显示结果,并记录纠正。

2、软件调试

(1)写出设计思路,并画出程序流程图。

(2)程序结构上发生了改变,由于源程序结构上面不符合下位机的运行规范,所以导致程序编译无错误却无法链接成功,把定义的各个常量直接放在代码段中此问题就得到了解决,其它几个方面在联机调试中给出。

3、联机调试

在联机调试中,程序已经能够链接成功可以的运行了,但是并不能达到设计系统所要求的目的,在调试过程中发现的问题有:读不出字型,显示灯不亮等情况。(1)原因分析:

LED显示器显示不清晰的原因是因为在显示过程中位选码一直送出,在显示是产生干扰所至。

闪烁问题是因为在显示两位16进制数的字型码是时间间隔过长。人眼睛的分辨率在50H Z左右,所以每位显示时间应缩短,具体把延时循环常数改为10h.分频系数过大,需要很长时间才能显示结果,所以以为灯不亮。

(2)调试结果及问题:

调试结束后通过对逻辑开关置数,可以在LED显示器上显示相应二进制数的十六进制数的字型码。题目要求用到小键盘输入分频系数,但由于实验仪器的更新做起来比较复杂,并且征求老师的意见,最终采用小键盘输入。

用二进制开关,程序中等待时间过长,所以要改变计数初值以及循环次数。

五、设计结果分析及问题讨论

1、课程设计结果及分析

本次实验结果基本上符合了课程设计的要求,实现了由二进制开关输入数据,并转换为十六进制数的字型码输出,循环显示编码结果。

二进制开关状态及LED输出结果可以参见逻辑开关真值表。对于分频的结果可

以直接从外接的示波器看出波形,调节从逻辑开关输入数据的大小,可以改变示波器的波形;也可以通过发光管显示及闪烁的快慢,比较不同输入分频系数的效果。

2、问题讨论

虽然设计时思路及方法是正确的,但还是遇到了一些具体的问题。

(1)硬件部分:

①输入输出方面:实验中分频系数输出芯片可以有多种选择,最初选择用两片8255A来实现该功能,但考虑到:实验要求——16位数据输入口,8位段选码输出口,4位位选码输出口,只要28个I/O端口。两片8255共48个端口,不能满足设计要求,只用一片8255A。8255A与8251A芯片,都是可编程输入输出接口芯片。但是:8255A为可编程并行接口,具有传输速度快效率高等优点,而8251A是串行的,综合考虑,选用8255A好。

②分频方面:定时器芯片有8253A和555芯片,两者都可用于计时和产生矩形波。但是8253A芯片可编程,555芯片不行,而且设计要求分频系数由小键盘任意输入一分频系数,故选择8253A芯片。本设计中刚开始是使8253A的输出接到一个LED 灯,观察其闪烁的频率来检验分频的效果,结果是灯变化基本看不出来,这是因为频率太快,人的眼睛是分辨不出来的,所以要用示波器观察起效果。

(2)软件部分:

程序设计开始只采用寄存器间交换数据实现,从而增加了大量的寄存器间交换数据的指令和出入栈的指令,此外还大量引用了子程序的调用,产生了大量的冗余代码。这样不但浪费了大量的操作时间还给程序阅读带来了不便。改进后的程序采用申请内存变量的方法,有效的减少了数据交换的次数,并且采用循环处理的方式有效的缩减了代码的长度。这样提高了程序的效率,同时便于阅读。

①8253A方面:将其初始化为方式2或方式3,方式3输出为方波,便于用方波观察波形,所以选择是通道0,则控制字为36H。端口2用于输入,端口3用于输出。先读低八位,后读高八位。分频系数的输入,首先取一个字,需要对32位进行操作,从低到高分别取32位的低16位,再从低16位的低8位中选择高4位,32位的低16位的高8位的高4位,32位的高16位的低8位的高4位,32位的高16位的高8位的高4位。将取到的数通过逻辑移动形成一个16位的开关量,如果需要输出则通过8253A的通道2显示在LED 上。

②8255A方面:其工作方式设定为方式0,即PA、PB、PC三个口都能够进行输入输出操作。8255A的方式选择控制字为92H,即A,B口方式0,输入,C口输出。分频系数的输入由外部逻辑开关输入。判断能否进行输入(PC7是否等于1),如果等于则进入输入模块,读取输入的4位数据,并判断显示在哪一位上。当P6和P5位都为1时,显示在LED的第4位;当P6和P5分别为1、0,显示在LED的第3位;当P6和P5分别为0、1,显示在LED的第2位;当P6和P5都为0,显示在LED的第1位。当四次输入完成后,需要停止输入操作,此时控制开关的P7为0。

3、收获、体会和建议

本课程设计既涉及到硬件方面,又与软件方面紧密结合,通过准备、设计和实验,在知识的积累和应用两个方面,解决问题和动手实践的能力得到了提高。

①在芯片选取以及逻辑图的设计方案时思索多次才确定下来,锻炼了自己思考问题和知识的应用能力。

②在写控制程序时,有一些指令程序代码不熟悉,查阅了很多相关的资料,其中对着汇编课本看的最多,并且将不同的程序段整合起来,进行编译连接运行等操作,从而形成了思路,画出流程图,最终应用。

③应用时根据结果,判断出错的地方,再结合软件和硬件进行更正。当用8253A 的输出接到一个LED灯,观察其闪烁的频率来检验分频的效果,结果是灯变化基本看不出来,这是因为频率太快,人的眼睛是分辨不出来的,所以要用示波器观察起效果。编程的过程,是不断积累知识和经验的好方法,提高了汇编语言编程的水平,将自己所写的程序应用到了具体的实验环境中,根据显示的结果,进行准确的定位,并且实现了预期的效果,加深了自己对单板机及各部分芯片的理解。

④在编写实验报告的过程中,运用了如PROTEL绘图软件绘制电路图;按照课程设计报告的格式要求,总结实验的设计、编写、运行、排错、分析、总结等方面的能力。可以说在很多方面,对自己都有不同程度的提高。

总之,这次课程设计对于我有很大的帮助,通过课程设计,我更加深入地理解了微机原理课程上讲到的各种芯片的功能,以及引脚的作用,同时加深了对于主要芯片的应用的认识,同时在试验室的环境里熟悉了汇编程序的编写过程和运行过程,还提高了自己的动手能力。特别感谢实验老师的悉心指导。

对课程设计的建议:

本次课程设计的实验相对比较容易实现,而且经过自己的思考、老师的指导以及翻阅相关资料,形成了程序和实验台电路的接线方法,根据相关实验现象进行排错分析。但是做完实验,我对编程控制各个模块和芯片的具体运作还有点模糊。

希望老师根据试验室的环境布置一些更加实用的课程设计题目,并给我们更多的实验时间,这样能够激发更多同学的创新能力。老师还可以多给我们讲一讲各类芯片的实际应用,这样可以让我们对各种芯片有一个更加贴切的感受。

设计者:刘伟

完成时间:2008年12月

分频器设计实验报告

竭诚为您提供优质文档/双击可除分频器设计实验报告 篇一:n分频器分析与设计 一、实验目的 掌握74190/74191计数器的功能,设计可编程计数器和n分频器,设计(n-1/2)计数器、分频器。 二、实验原理 分频是对输入信号频率分频。1、cD4017逻辑功能 2、74190/74191逻辑功能 3、集成计数器级联 当所需计数器模数超过所选计数器最大计数状态时,需要采取多片计数器级联。方法分为异步级联和同步级联。4、集成计数器的编程 在集成计数器的时序基础上,外加逻辑门电路等,反馈集成计数器的附加功能端,达到改变计数器时序的目的。可采用复位编程和置数编程两种。5、多片74190/74191计数器级联 可根据具体计数需求和增减需求,选用74190或74191,

选择不同功能、同步或异步设计等。 6、74190/74191计数器编程 由于没有复位端,因此只能使用置数编程,置数端置为0即可异步置数。可根据需求设计n进制加法或减法计数器。 n与译码逻辑功能如下。 7、74191组成(n-1/2)分频器电路如下图: u3 计数器的两个循环中,一个循环在cp的上升沿翻转;另一个是在cp的下降沿翻转,使计数器的进制减少1/2,达到(n-1/2)分频。 三、实验仪器 1、直流稳压电源1台 2、信号发生器1台 3、数字万用表1台 4、实验箱1台 5、示波器1台 四、仿真过程 1、按照cD4017和74191功能表验证其功能。 2、74191组成可编程计数器 (1)构成8421bcD十进制加法计数器,通过实验验证正确性,列出时序表。设计图如下 仿真波形如下 (2)构成8421bcD十进制减法计数器,通过实验验证正确性,列出时序表。设计图如下: 仿真波形如下

VHDL数字系统课程设计报告-5分频器的设计

安康学院HDL数字系统课程设计报告书 课题名称:占空比为1:1的奇数分频器设计 姓名: 学号: 院系: 专业: 指导教师: 时间:

课程设计项目成绩评定表设计项目成绩评定表

课程设计报告书目录 设计报告书目录 一、设计目的 (1) 二、设计思路 (1) 三、设计过程 (1) 3.1、系统方案论证 (1) 3.2、程序代码设计 (2) 四、系统调试与结果 (4) 五、主要元器件与设备 (5) 六、课程设计体会与建议 (5) 6.1、设计体会 (5) 6.2、设计建议 (6) 七、参考文献 (6)

一、设计目的 1、了解EDA软件在电子设计当中的重要作用。 2、熟悉并掌握QuartusⅡ开发软件的基本使用方法。 3、运用ModelSim软件对分频器进行仿真测试。 二、设计思路 对于实现一个占空比为1:1的5倍奇数分频,首先经过上升沿触发进行模5计数,计数选定到2进行输出时钟翻转,然后经过4再次进行翻转得到一个占空非1:1奇数5分频时钟。再者同时进行下降沿触发的模5计数,到和上升沿触发输出时钟翻转选定值相同值时,进行输出时钟翻转,同样经过4时,输出时钟再次翻转得到占空比非1:1的5分频时钟。两个占空比非1:1的5分频时钟进行相或运算,得到占空比为1:1的5分频时钟。 要设计占空比为50%的奇数(n)倍分频器,可以先分别设计从时钟上升沿、下降沿开始的占空比为(n-1)/2n的分频器A,B。将A与B相或结果就是占空比为50%的奇数倍分频器。因为A,B产生的信号的高电平持续时间均比低电平持续时间少一个时钟周期,B相对A来说可以说是延时了半个时钟,那么A与B进行或运算,则结果的高电平持续时间增加了半个时钟周期,而低电平持续时间则减少了半个时钟周期。因此占空比达到50%。 三、设计过程 3.1系统方案论证 奇数倍(2N+1)分频: (1)使用模为2N+1的计数器,让输出时钟在X-1(X在0到2N-1之间)和2N时各翻转一次,则可得到奇数分频器,但是占空比并不是50%(应为 X/(2N+1))。得到占空比为50%的奇数分频器的基本思想是:将得到的上升沿触发计数的奇数分频输出信号CLK1,和得到的下降沿触发计数的相同(时钟翻转值相同)奇数分频输出信号CLK2,进行相或运算。如图1所示. 图 2

分频器的设计2014-1-10 10.29.8

武汉理工大学《微机原理与接口技术》课程设计报告书

号:
0121105830129
课 程 设 计
题 学 专 班 姓
目 院 业 级 名
分频信号发生器的分析与设计 自动化学院 电气工程及自动化 电气 1107 班 成涛 陈静 教授
指导教师
2014 年
01 月
09 日

武汉理工大学《微机原理与接口技术》课程设计报告书
课程设计任务书
学生姓名: 指导教师: 题 目: 成涛 专业班级: 电气 1107 班 陈静 教授 工作单位: 自动化学院 分频信号发生器的分析与设计
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰 写等具体要求) 1. 设:有一输入方波信号 f0(<1MHz) 。要求输出信号:f1=f0/N,N 通过键盘 输入。 2. 画出简要的硬件原理图,编写程序。 3. 撰写课程设计说明书。 内容包括:摘要、 目录、 正文、 参考文献、 附录 (程 序清单) 。正文部分包括:设计任务及要求、方案比较及论证、软件设计说明(软 件思想,流程,源程序设计及说明等) 、程序调试说明和结果分析、课程设计收 获及心得体会。
时间安排: 12 月 26 日----- 12 月 28 日 查阅资料及方案设计 12 月 29 日----- 01 月 0 2 日 编程 01 月 03 日-----0 1 月 07 日 调试程序 01 月 08 日----- 01 月 09 日 撰写课程设计报告
指导教师签名: 系主任(或责任教师)签名:
年 年
月 月
日 日

分频器设计_可控型

现代科技的发展对信号源提出了越来越高的要求,要求信号源的频带宽、频率分辨率高、频率稳定度高、相位噪声和杂散很低、能程控等.频率合成技术是产生大量高精度频率信号的主要技术,频率合成器是一种相位锁定装置,是通讯、雷达、仪器仪表、高速计算机和导航设备中的一个重要组成部分。频率合成器是可由一个工作范围在G地范围的锁相环构成.在高频范围内工作的锁相环是整个系统中功耗最大的部分之一,因此对锁相环的低功耗研究对降低整个系统的功率损耗有着重要的意义.分数分频频率合成器则是近年来出现的一种新技术,它与传统的整数分频频率合成器相比具有频率分辨率高、相位噪声低等优点。前置分频器位于高频锁相环的反馈部分.由于工作频率很高,前置分频器也是锁相环中功耗最大的部分之一。低功耗的前置分频器设计可以很大程度上降低整个锁相环的功率损耗. 目录 摘要 ................................................................................................................ 错误!未定义书签。Abstract ........................................................................................................... 错误!未定义书签。目录 .. (1) 引言 (1) 一、分频器设计 (2) 1.1、分频器的系统介绍 (2) 1.2、前置放大器的设计 (3) 二、前置分频器单元结构 (3) 2.1、TSPC结构 (3) 2.2、传统结构 (4) 2.3、转换器 (5) 三、小数分频器中预分频器的设计 (5) 3.1、小数分频器相位杂散的分析 (5) 3.2、可编程预分频器结构 (6) 结论 (6) 参考文献 (8) 引言 所谓频率合成,又称频率综合,简称频综,是由一个(或几个)具有低相位噪

数电课程设计报告数字钟的设计

数电课程设计报告数字钟的设计

数电课程设计报告 第一章设计背景与要求 设计要求 第二章系统概述 2.1设计思想与方案选择 2.2各功能块的组成 2.3工作原理 第三章单元电路设计与分析 3.1各单元电路的选择 3.2设计及工作原理分析 第四章电路的组构与调试 4.1遇到的主要问题 4.2现象记录及原因分析 4.3解决措施及效果 4.4功能的测试方法,步骤,记录的数据 第五章结束语 5.1对设计题目的结论性意见及进一步改进的意向说明5.2总结设计的收获与体会 附图(电路总图及各个模块详图) 参考文献

第一章设计背景与要求 一.设计背景与要求 在公共场所,例如车站、码头,准确的时间显得特别重要,否则很有可能给外出办事即旅行袋来麻烦。数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确度和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。数字钟是一种典型的数字电路,包括了组合逻辑电路和时序电路。 设计一个简易数字钟,具有整点报时和校时功能。 (1)以四位LED数码管显示时、分,时为二十四进制。 (2)时、分显示数字之间以小数点间隔,小数点以1Hz频率、50%占空比的亮、灭规律表示秒计时。 (3)整点报时采用蜂鸣器实现。每当整点前控制蜂鸣器以低频鸣响4次,响1s、停1s,直到整点前一秒以高频响1s,整点时结束。 (4)才用两个按键分别控制“校时”或“校分”。按下校时键时,是显示值以0~23循环变化;按下“校分”键时,分显示值以0~59循环变化,但时显示值不能变化。 二.设计要求 电子技术是一门实践性很强的课程,加强工程训练,特别是技能的培养,对于培养学生的素质和能力具有十分重要的作用。在电子信息类本科教学中,课程设计是一个重要的实践环节,它包括选

实验一 QUARTUS II入门和分频器设计

实验报告 课程名称EDA技术与VHDL设计 实验项目Quartus II入门 实验仪器计算机、Quartus II 系别信息与通信工程学院 专业电子信息工程 班级/学号电信1201 / 2012010970 学生姓名张宗男 实验日期 成绩 指导教师

实验一 QUARTUS II入门和分频器设计 一、实验目的 1.掌握QUARTUS II工具的基本使用方法; 2.掌握FPGA基本开发流程和DE2开发板的使用方法; 3.学习分频器设计方法。 二、实验内容 1.运用QUARTUS II 开发工具编写简单LED和数码管控制电路并下载到DE2 实验开发板。2.在QUARTUS II 软件中用VHDL语言实现十分频的元器件编译,并用电路进行验证,画出仿真波形。 三、实验环境 1.软件工具:QUARTUS II 软件;开发语言:VHDL; 2.硬件平台:DE2实验开发板。 四、实验过程 1.设计思路 (1)、 18个开关控制18个LED灯,通过低位四个开关的‘1’‘0’控制LED灯上7段灯的显示(2)、 实现10分频IF(count="1001") THEN count<="0000"; clk_temp<=NOT clk_temp; 达到9的时候,把“0000”给到cout,然后clk_temp 信号翻转,从而实现10分频。 2.VHDL源程序 (1)、 LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY e_zhangzongnan IS PORT(SW :IN STD_LOGIC_VECTOR(0 TO 17); HEX0 :OUT STD_LOGIC_VECTOR(0 TO 6);

基于VHDL的分频器设计[开题报告]

开题报告 电子信息工程 基于VHDL的分频器设计

三、课题研究的方法及措施 由于本课题所设计的分频器基于EDA技术,应用VHDL硬件语言设计完成的,因此选择合适的硬件解决原理对分频器性能至关重要的,为了满足不同系统功能需求的分频,本课题将阐述不同原理,不同分频器,同种分频不同原理的设计方案。 占空比可控的整数分设计方案,原理为计数器为带预置数的计数器,其设计的特殊之处在于:可以根据需要,调整数据的位宽,而且计数的初始值是从l开始的,此处计数初始值的设定是设计的一个创新,这样做的目的是为了配合后面比较器的工作,计数器的输出数据作为比较器的输入,比较器的另一输入作为控制端,控制高低电平的比例,从而达到占空比可调的目的。原理图如图1所示。 图1 占空比可控的原理图部分 小数分频的基本原理是采用脉冲吞吐计数器和锁相环技术先设计两个不同分频比的整数分频器,然后通过控制单位时间内两种分频比出现的不同次数来获得所需要的小数分频值。如设计一个分频系数为lO.1的分频器时。可以将分频器设计成9次10分频,1次11分频这样总的分频值为如式1所示。 F=(9×10+lxl 1)/(9+1)=10.1 (式1) 从这种实现方法的特点可以看出,由于分频器的分频值不断改变.因此分频后得到的信号抖动较大。当分频系数为N-0.5(N为整数)时,可控制扣除脉冲的时间,以使输出成为一个稳定的脉冲频率。而不是一次N分频.一次N-1分频。图2给出了通用小数分频器的电路组成。 图2通用小数分频器的电路组成 改进的小数分频设计方案,将两个整数分频器由一个整数分频器和一个半整数分频器代替,结果在如上分析的两个性能方面都有所提高。利用参数化的设计思想和VHDL描述语言与原理图输入方法相结合的方式,设计并实现了一种抖

VHDL非整数分频器设计实验报告

非整数分频器设计 一、 输入文件 输入时钟CLK: IN STD_LOGIC 二、 设计思路 1. 方法一:分频比交错 (1) 确定K 值 先根据学号S N 确定M 和N :为了保证同学们的学号都不相同,取学号的后四位,即N S =1763 ()mod 1920(mod 17)0 17mod 17 S S S N N if N then M else M N =+=== 由以上公式,得N=(1763 mod 19)+20=35 M=(1763 mod 17)=12 然后根据下式计算分频比K 的值: 8()9N M M K N -+= = =8.34285714 (2) 确定交错规律 使在35分频的一个循环内,进行12次9分频和23次8分频,这样,输出F_OUT 平均为F_IN 的8.34285714分频。为使分频输出信号的占空比尽可能均匀,8分频和9分频应‘交替’进 (3) 设计框图:要求同步时序设计

(4)代码 在实体内定义两个进程(PROCESS P1和PROCESS P2),一个进程控制输出8/9分频,一个进程控制35分频周期比例输出。控制器输出FS_CTL信号控制输出是8分频还是9分频,分频器输出C_ENB信号来控制35分频计数器计数。 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; ENTITY DIV IS--定义实体,实体名DIV PORT(F_IN: IN STD_LOGIC;--输入时钟信号 F_OUT: OUT STD_LOGIC--输出时钟信号 ); END DIV; ARCHITECTURE A OF DIV IS SIGNAL CN1: INTEGER RANGE 0 TO 7;--8分频计数器 SIGNAL CN2: INTEGER RANGE 0 TO 8;--9分频计数器 SIGNAL CN: INTEGER RANGE 0 TO 34;--整体计数器 SIGNAL C_ENB: STD_LOGIC;--整体计数器时钟驱动信号 SIGNAL FS_CTL: STD_LOGIC;--控制8、9分频比例信号,高电平8分频,低电平9分频 BEGIN P1:PROCESS(F_IN)--8、9分频计数进程 BEGIN IF (F_IN'EVENT AND F_IN='1') THEN IF(FS_CTL='0') THEN--9分频 IF CN2=8 THEN--计数 CN2<=0; ELSE CN2<=CN2+1; END IF; IF CN2>4 THEN--控制输出,占空比0.5 F_OUT<='1'; ELSE F_OUT<='0'; END IF; IF CN2=8 THEN--控制整体计数器驱动信号 C_ENB<='1'; ELSE C_ENB<='0'; END IF; ELSE IF CN1=7 THEN--8分频计数,同上 CN1<=0; ELSE CN1<=CN1+1; END IF; IF CN1>3 THEN F_OUT<='1'; ELSE F_OUT<='0'; END IF; IF CN1=7 THEN C_ENB<='1'; ELSE C_ENB<='0'; END IF; END IF; END IF; END PROCESS P1; P2:PROCESS(C_ENB)--整体计数进程 BEGIN IF (C_ENB'EVENT AND C_ENB='1') THEN--由驱动信号驱动 IF CN=34 THEN--计数 CN<=0; ELSE CN<=CN+1; END IF; IF (CN=34 OR CN=2 OR CN=5 OR CN=8 OR CN=11 OR CN=14 OR CN=17 OR CN=20 OR CN=23 OR CN=26 OR CN=29 OR CN=32) THEN FS_CTL<='0'; ELSE FS_CTL<='1'; END IF;--8、9分频比例分配 ELSE CN<=CN; END IF; END PROCESS P2; END A;

3分频器的设计

三分频器的设计 时钟输入端(clkin)首先反向和不反向分别接到两个D触发器的时钟输入端,两个D触发器的输出接到一个二输入或非门的输入端,或非门的输出反馈到前面两个D触发器的D输入端,并且或非门的输出后面接一二分频器,得到占空比为50%的三分频波形。 图1:图形设计 VHDL程序: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity fen3 is port (clkin : in std_logic; --时钟输入 qout1 : buffer std_logic; qout2 : buffer std_logic; qout3 : buffer std_logic; clkout : out std_logic --占空比为1/2的三分频输出 ); end fen3; architecture behave of fen3 is begin qout3<=qout1 nor qout2; process(clkin) begin if clkin'event and clkin='1' then --在上升沿触发 qout1<=qout3; end if;

end process; process(clkin) begin if clkin'event and clkin='0' then --在下降沿触发 qout2<=qout3; end if; end process; process(qout3) variable tem:std_logic; begin if qout3'event and qout3='1' then --二分频tem:=not tem; end if; clkout<=tem; end process; end behave; 图3:仿真结果

EDA 实验2简单分频时序逻辑电路设计 实验报告

时序电路设计 实验目的: 1.掌握条件语句在简单时序模块设计中的使用。 2.学习在Verilog模块中应用计数器。 实验环境: Windows 7、MAX+PlusⅡ10等。 实验内容: 1.模为60的8421BCD码加法计数器的文本设计及仿真。 2.BCD码—七段数码管显示译码器的文本设计及仿真。 3.用For语句设计和仿真七人投票表决器。 4.1/20分频器的文本设计及仿真。 实验过程: 一、模为60的8421BCD码加法计数器的文本设计及仿真: (1)新建文本:选择菜单File下的New,出现如图5.1所示的对话框,在框中选中“Text Editor file”,按“OK”按钮,即选中了文本编辑方式。 图5.1 新建文本 (2)另存为V erilog编辑文件,命名为“count60.v”如图5.2所示。 (3)在编辑窗口中输入程序,如图5.3所示。

图5.2 另存为.V编辑文件图5.4 设置当前仿真的文本设计 图5.3 模为60的8421BCD码加法计数器的设计代码

(4)设置当前文本:在MAX+PLUS II中,在编译一个项目前,必须确定一个设计文件作为当前项目。按下列步骤确定项目名:在File菜单中选择Project 中的Name选项,将出现Project Name 对话框:在Files 框内,选择当前的设计文件。选择“OK”。如图5.4所示。 (5)打开编译器窗口:在MAX—plusⅡ菜单内选择Compiler 项,即出现如图5.5的编译器窗口。 图5.5 编译器窗口 选择Start即可开始编译,MAX+PLUS II编译器将检查项目是否有错,并对项目进行逻辑综合,然后配置到一个Altera 器件中,同时将产生报告文件、编程文件和用于时间仿真用的输出文件。 (6)建立波形编辑文件:选择菜单File下的New选项,在出现的New对话框中选择“Waveform Editor File”,单击OK后将出现波形编辑器子窗口。 (7)仿真节点插入:选择菜单Node下的Enter Nodes from SNF选项,出现如图5.6所示的选择信号结点对话框。按右上侧的“List”按钮,在左边的列表框选择需要的信号结点,然后按中间的“=>”按钮,单击“OK”,选中的信号将出现在波形编辑器中。 图5.6 仿真节点插入

分频器的设计

首先讲一下单元: 一般情况下,我们对单元按频率会划分为超高音,高音,中高音,中音,重低音,低音,超低音 超高音:負責22kHz以上的頻率 高音:負責5000Hz~22kHz頻率、 中音:負責1500~5000Hz頻率 低音:負責1500Hz以下頻率 超低音(增加)負責200Hz以下頻率 也有网友提出其她的划分标准 以A音(C调的“哆来咪法嗦啦西”的“啦”音,频率为440赫兹)为基准音,以倍频的形式向下三个八度向上五个八度,把全音域分为八个八度,一个个八度就就是音响上常说的一个倍频程(1oct)。具体的划分就是这样的: 55-110赫兹,110-220赫兹,220-440赫兹,440-880赫兹,880-1760赫兹,1760-3520赫兹,3520-7040赫兹,7040-14080赫兹,共八段(八个八度)。这样就很清晰的瞧出频段的划分了。110赫兹以下-超低频; 110-220赫兹-低频; 220-440赫兹-中低频; 440-880赫兹-低中频; 880-1760赫兹-中频; 1760-3520赫兹-中高频; 3520-7040赫兹-高频; 7040赫兹以上-超高频。 还有两种频段划分方法 以“E”音划分 -20 次低频 20-40 极低频 40-80 低频下段 80-160 低频上段 160-320 中频下段 320-640 中频中段

640-1280 中频上段 1280-2560 高频下段 2560-5120 高频中段 5120-10240 高频上段 10240- 极高频 以“C”划分 -63 极低频 63-125 低频下段 125-250 低频上段 250-500 中频下段 500-1K 中频中段 1K-2K 中频上段 2K-4K 高频下段 4K-8K 高频上段 8K- 极高频 分频器的主要元件:电阻,电感,电容 电阻在分频器中的作用:调整灵敏度 电感:其特性就是阻挡较高频率,只让较低的频率通过电容:其特性与电感刚好相反,也就就是阻挡频率通过

EDA数控分频器的设计报告

数控分频器的设计 1、实验目的: 学习数控分频器的设计、分析和测试方法。 2、实验原理: 数控分频器的功能就是当在输入端给定不同输入数据时,将对输入的时钟信号有不同的分频比,数控分频器就是用计数值可并行预置的加法计数器设计完成的,方法是将计数溢出位与预置数加载输入信号相接即可,详细设计程序如例下文所示。 1) VHDL及语句分析 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DVF IS --定义实体DVF PORT ( CLK : IN STD_LOGIC; --时钟输入 D : IN STD_LOGIC_VECTOR(7 DOWNTO 0); --7位预置数 FOUT : OUT STD_LOGIC ); --输出的频率 END DVF; ARCHITECTURE one OF DVF IS --定义结构体one SIGNAL FULL : STD_LOGIC; --定义信号full BEGIN P_REG: PROCESS(CLK) --进程P_REG中CNT8从预置数D开始 逐步累加到255后,FULL置1;再将 CNT8置为D,循环以获得一个新的周期 脉冲序列FULL,即产生新的频率V ARIABLE CNT8 : STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN IF CLK'EVENT AND CLK = '1' THEN IF CNT8 = "11111111" THEN CNT8 := D; FULL<='1'; ELSE CNT8 := CNT8 + 1; FULL <= '0'; END IF; END IF; END PROCESS P_REG ; P_DIV: PROCESS(FULL) --进程P_DIV中,FOUT是占空比为50%的周期

分频器的设计

分频器的设计 一、课程设计目的 1.学会使用电路设计与仿真软件工具Hspice,熟练地用网表文件来描述模拟电路,并熟悉应用Hspice内部元件库。通过该实验,掌握Hspice的设计方法,加深对课程知识的感性认识,增强电路设计与综合分析能力。 2.分频器大多选用市售成品,但市场上出售的分频器良莠不齐,质量上乘者多在百元以上,非普通用户所能接受。价格在几十元以下的分频器质量难以保证,实际使用表现平庸。自制分频器可以较少的投入换取较大的收获。 二.内容 分频器-概述 分频器是指使输出信号频率为输入信号频率整数分之一的电子电路。在许多电子设备中如电子钟、频率合成器等,需要各种不同频率的信号协同工作,常用的方法是以稳定度高的晶体振荡器为主振源,通过变换得到所需要的各种频率成分,分频器是一种主要变换手段。早期的分频器多为正弦分频器,随着数字集成电路的发展,脉冲分频器(又称数字分频器)逐渐取代了正弦分频器,即使在输入输出信号均为正弦波时也往往采用模数转换-数字分频-数模转换的方法来实现分频。正弦分频器除在输入信噪比低和频率极高的场合已很少使用。

分频器-作用 分频器是音箱中的“大脑”,对音质的好坏至关重要。功放输出的音乐讯号必须经过分频器中的各滤波元件处理,让各单元特定频率的讯号通过。要科学、合理、严谨地设计好音箱之分频器,才能有效地修饰喇叭单元的不同特性,优化组合,使得各单元扬长避短,淋漓尽致地发挥出各自应有的潜能,使各频段的频响变得平滑、声像相位准确,才能使高、中、低音播放出来的音乐层次分明、合拍,明朗、舒适、宽广、自然的音质效果。 在一个扬声器系统里,人们把箱体、分频电路、扬声器单元称为扬声器系统的三大件,而分频电路对扬声器系统能否高质量地还原电声信号起着极其重要的作用。尤其在中、高频部分,分频电路所起到的作用就更为明显。其作用如下: 合理地分割各单元的工作频段; 合理地进行各单元功率分配; 使各单元之间具有恰当的相位关系以减少各单元在工作中出现的声干涉失真; 利用分频电路的特性以弥补单元在某频段里的声缺陷; 将各频段圆滑平顺地对接起来。 分频器-分类 1)功率分频器:位于功率放大器之后,设置在音箱内,通过LC滤波网络,将功率放大器输出的功率音频信号分为低音,中音和高音,分别送至各自扬声器。连接简单,使用方便,但消耗功率,出现音频谷

实验六Verilog设计分频器计数器电路答案

实验六V e r i l o g设计分频器/计数器电路 一、实验目的 1、进一步掌握最基本时序电路的实现方法; 2、学习分频器/计数器时序电路程序的编写方法; 3、进一步学习同步和异步时序电路程序的编写方法。 二、实验内容 1、用Verilog设计一个10分频的分频器,要求输入为clock(上升沿有效),reset(低电平复位),输出clockout为4个clock周期的低电平,4个clock 周期的高电平),文件命名为。 2、用Verilog设计一异步清零的十进制加法计数器,要求输入为时钟端CLK (上升沿)和异步清除端CLR(高电平复位),输出为进位端C和4位计数输出端Q,文件命名为。 3、用Verilog设计8位同步二进制加减法计数器,输入为时钟端CLK(上升沿有效)和异步清除端CLR(低电平有效),加减控制端UPDOWN,当UPDOWN 为1时执行加法计数,为0时执行减法计数;输出为进位端C和8位计数输出端Q,文件命名为。 4、用VERILOG设计一可变模数计数器,设计要求:令输入信号M1和M0控制计数模,当M1M0=00时为模18加法计数器;M1M0=01时为模4加法计数器;当M1M0=10时为模12加法计数器;M1M0=11时为模6加法计数器,输入clk 上升沿有效,文件命名为。 5、VerilogHDL设计有时钟时能的两位十进制计数器,有时钟使能的两位十进制计数器的元件符号如图所示,CLK是时钟输入端,上升沿有效;ENA是

时钟使能控制输入端,高电平有效,当ENA=1时,时钟CLK才能输入;CLR 是复位输入端,高电平有效,异步清零;Q[3..0]是计数器低4位状态输出端,Q[7..0]是高4位状态输出端;COUT是进位输出端。 三、实验步骤 实验一:分频器 1、建立工程 2、创建Verilog HDL文件 3、输入10分频器程序代码并保存 4、进行综合编译 5、新建波形文件 6、导入引脚 7、设置信号源并保存 8、生成网表 9、功能仿真 10、仿真结果分析 由仿真结果可以看出clockout输出5个clock周期的低电平和5个clock 的高电平达到10分频的效果,设计正确。 实验二:十进制加法计数器(异步清零) 1、建立工程 2、创建Verilog HDL文件 3、输入加法计数器代码并保存 4、进行综合编译 5、新建波形文件 6、导入引脚 7、设置信号源并保存 8、生成网表 9、功能仿真 10、仿真结果分析

分频器的制作

利用一个软件帮你设计一下,高人请指点 ============= 分频器设计============= 您选择的是二阶(-12dB/oct)分频网络 分频点=3500 Hz 低音单元分频点阻抗=8 Ω 高音单元分频点阻抗=8 Ω +────L1──┬──┐ ││+ C1 Bass ││- - ───────┴──┘ + ────C2──┬──┐ ││- L2 High ││+ - ───────┴──┘ L1 = 0.68 mH C1 = 5.29 uF L2 = 0.40 mH C2 = 3.09 uF 理论上是这样了,楼上的没错。看参数5寸单元有90DB的灵敏度有点不可信,我推荐的分频是-12dB在-3DB交叉的,看元件就是C1=C2 L1=L2,记得银笛FQ1就是C1=C2=4.7UF,电路很简单就4个元件,如果喇叭是8欧分频点就是3K。没有别的原因,就是这样的的电路是理论值,也是看得明白的,日后高音要衰减,或者加RC补偿,或者改分频点都很方便。分频器正在找链接,找到了发给你 分频器所使用的电感线圈一般分为空芯线圈和铁芯线圈两大类;而铁芯线圈又分为真铁芯和铁氧体芯两类。 传统的分频器由电容电感以及高音衰减电阻R等元器件组成。如图L1、C1组成低通滤波器作用是只保留音频信号中的低频部分去驱动低音扬声器单元。L2、C2组成高通滤波器作用是只保留音频信号中的高频部分去驱动高音单元。 图例

2计算 公式……L=R/6.28xf,式中R等于分频点上喇叭阻抗值,f等分频频率。假如分频点选3000Hz:实测中低频喇叭阻抗为8Ω L=8Ω/6.28X3000hz=0.43毫亨 电容C=1/6.28×f×R C=1/6.28×3000×8=1/150720=1÷150720=6.6μf

译码器和分频器实验报告

VHDL硬件描述语言实 验报告 实验一:十六进制7段数码显示译码器 实验二:十分频器设计 姓名:xxx 学号:xxx 班级:xxxx 专业:集成电路工程类

实验一:十六进制7段数码显示译码器一.实验目的 主要是初步学会硬件描述语言训练,即VHDL程序设计。通过利用该语言来实践电路的设计,掌握设计文件的编译,设计电路的波形仿真分析。 二、实验器材 QuartusII软件 三、实验原理 7段数码管是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能做十进制BCD译码,然而数字系统中的处理和运算都是二进制,所以输出表达都是十六进制的,为了满足十六进制数的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD中来实现。本实验中的7段译码管输出信号LED7S的7位分别接数码管的7个段,高位在左,低位在右。

四、实验内容 完成一个十六进制7段数码显示译码器的程序设计,包括编辑、编译、综合、适配、仿真,引脚及硬件测试,并且将信号引出,在数码管上显示出来。 五、实验步骤: 1.打开Quartus Ⅱ,选菜单File→New Project Wizard, 在弹出的New Project Wizard对话框中选择存入D盘中的hr文件夹中,工程命名为hr,然后点击下一步, 直到后面没有了之后,点击FINISH。之后按File→New

中VHDL File。然后在这个文件中输入程序,程序输入 完成后,先保存在hr文件夹中,然后检测,找到错误 改正。 2.程序文件存盘。选择菜单File→Save As, 将此原理图 文件存于刚建立的目录D:\hr中。 3.绘制一位十进制计数器原理图。选择File→New中 Vector Waveform File然后在波形图的左边空白地 方双击左键两次,对话框中选择Node Finder在选择 List,之后导入到右边,点击OK。之后绘制好电路图,保存在同一个文件里面。 4.仿真测试。全程编译后,启动仿真器,点击processing|start simulation直至出现 simulation was successful,仿真结束。观察仿真结果。 时序仿真图:

数控分频器的设计

实验四数控分频器的设计 一、实验目的: 1.学习数控分频器的设计、分析和测试方法,锻炼分析Verilog(VHDL)语言的能力。 二、原理说明: 数控分频器的功能就是当在输入端给定不同输入数据时,将对输入的时钟信号有不同的分频比,对原时钟进行占空比为50%的分频。在实验板选择50M 时钟,对其进行2~15分频,分频系数以拨码键盘控制,并用数码管进行显示(十六进制形式)。 三、实验内容: 1、根据由顶向下的设计原则,进行顶层建模。 分频系数分为奇数分频和偶数分频,因些包括Evn_Div(偶数分频)和Odd_Div(奇数分频)模块,数码管显示为SEG7_LUT,采用类似查找表的方式完成。 2、偶数分频 偶数分频模块比较简单,假设分频系数为N,只需要在计数器计到N/2时,将输出时钟反转即可。

仿真图如下: 3、奇数分频 奇数分频相对偶数分频比较麻烦,主要是对原时钟的上升沿和下降沿进行计数,通过两个计数器得到上升沿时钟和下降沿时钟,对这两个时钟进行与操作可得到奇数分频。

仿真图如下: 4、数码管显示 数码管显示模块应用case语句即可完成。

5、分频选择 分频系数有两种,一是偶数,另一个是奇数,因此可通过分频系数的最低位来进行选择,iDIV[0]既作为奇、偶分频模块的使能输入,又可作为输出时钟选择线。 6、顶层模块 将上述几个模块例化即可(注意iDiv[0]的连接方式)。 引脚: input CLOCK_50;//原时钟 input RST;//复位信号 input [3:0] iDIV;//分频系数 output oCLK;//输出时钟 output [6:0] oSEG;//数码管输出

实验六verilog设计分频器计数器电路答案

实验六 Verilog设计分频器/计数器电路 一、实验目的 1、进一步掌握最基本时序电路的实现方法; 2、学习分频器/计数器时序电路程序的编写方法; 3、进一步学习同步和异步时序电路程序的编写方法。 二、实验内容 1、用Verilog设计一个10分频的分频器,要求输入为clock(上升沿有效),reset (低电平复位),输出clockout为4个clock周期的低电平,4个clock周期的高电平),文件命名为。 2、用Verilog设计一异步清零的十进制加法计数器,要求输入为时钟端CLK(上升沿)和异步清除端CLR(高电平复位),输出为进位端C和4位计数输出端Q,文件命名为。 3、用Verilog设计8位同步二进制加减法计数器,输入为时钟端CLK(上升沿有效)和异步清除端CLR(低电平有效),加减控制端UPDOWN,当UPDOWN为1时执行加法计数,为0时执行减法计数;输出为进位端C和8位计数输出端Q,文件命名为。 4、用VERILOG设计一可变模数计数器,设计要求:令输入信号M1和M0控制计数模,当M1M0=00时为模18加法计数器;M1M0=01时为模4加法计数器;当M1M0=10时为模12加法计数器;M1M0=11时为模6加法计数器,输入clk上升沿有效,文件命名为。 5、VerilogHDL设计有时钟时能的两位十进制计数器,有时钟使能的两位十进制计数器的元件符号如图所示,CLK是时钟输入端,上升沿有效;ENA是时钟使能控制输入端,高电平有效,当ENA=1时,时钟CLK才能输入;CLR是复位输入端,高电平有效,异步清零;Q[3..0]是计数器低4位状态输出端,Q[7..0]是高4位状态输出端;COUT是进位输出端。 三、实验步骤 实验一:分频器 1、建立工程

FPGA实验一:简单分频器的设计

实验报告 课程名称:_____FPGA 实验______指导老师:__竺红卫/陈宏__成绩:__________________ 实验名称:___实验一:简单分频器的设计____实验类型:_FPGA 实验_同组学生姓名:__ 一、实验目的和要求(必填) 1. 熟悉 Xilinx ISE 软件,学会设计、仿真、综合和下载; 2. 熟悉实验板电路设定频率的方法。 二、实验内容和原理(必填) 实验内容: 根据实验板上晶振的输入频率 50MHz ,如果直接用这么高的时钟频率来驱动 LED 的闪烁,人眼将无法分辨。因此本实验着重介绍如何通过分频计数器的方式将 50MHz 的输入频率降低为人眼可分辨的频率(10Hz 以下),并在实验板的 LED0~LED7上显示出来。 LED 照片如下图: 实验原理: 实验板在滑动开关的上面有8 个独立的贴片LED 。 LED 一端接地,另一端通过390 欧的限流电阻接到Spartan-3E 上。要点亮一个LED ,向相应的控制位置输出高电位。 三、主要仪器设备(必填) 1. 电脑一台; 2. 实验板一块,XilinxSpartan-3E ; 3. 实验板电源一只; 4. 实验板连接电脑的下载线一根。 四、实验步骤和现象 1.新建Project 和Verilog Module 打开电脑桌面上的 Xilinx ISE14.1 软件,选择 project →new project 建立新项目,输入 project name 。

核对选择Spartan3E 和XC3S500E 和FG320 的封装形式。 跳出下面的选择框。

选择New Source,并在下面的选择框中选Verilog Module,填写刚才的new project name。 跳出下面的选择框。点击NEXT。

课程设计—分频器的制作

电子技术课程设计报告 学院: 专业班级: 学生姓名: 学号: 指导教师: 完成时间: 成绩: 评阅意见: 评阅教师日期 分频器的制作设计报告一. 设计要求

把1000HZ的信号分成500Hz,100Hz的信号,用拨动开关控制。 发挥部分:1、200Hz信号的产生2、倍频信号的产生。 二. 设计的作用、目的 1、掌握运用中规模集成芯片设计分频器的方法。 2、掌握使用与非门、555单稳态产生倍频信号的方法。 三.设计的具体实现 1、单元电路设计(或仿真)与分析 1、分频信号的产生: 电路图如下74ls192是同步十进制可逆计数器,具有双时钟输入,并具有异步清零等功能。 在此电路中,计数器处于加计数状态,输入脉冲1000Hz由5脚输入,用清零法组成进制可变的计数器,并通过单刀双掷开关控制。 仿真结果图如下:

①当开关拨到1档时,上面频率计数器计输入信号频率为1000Hz,下面频率计数器计数频率为500Hz信号。 ②当开关拨到2档时,上面频率计数器计输入信号频率为1000Hz,下面输出频率计数器显示100Hz信号。

2、200Hz信号的产生: 电路图如下74ls192是同步十进制可逆计数器,具有双时钟输入,并具有异步清零等功能。 仿真结果图如下: 在此电路中,计数器处于加计数状态,输入脉冲1000Hz由5脚输入,用清零法组成进制可变的计数器,2脚即输出200Hz信号。

2、倍频信号的产生: 倍频信号原理图如下,输入信号由最左端输入方波(频率大于1000Hz并且峰峰值大于3v小于5v效果好)其中第一个与非门连接成非门使用,起着对输入信号倒相的作用。这样,当有一个方波脉冲信号输入时,由C1、R1组成的微分电路将在脉冲信号的前沿产生一个正向微分脉冲信号,同时在方波下降沿处产生负向脉冲,另一路经过反相后,C2、R2微分电路产生负向脉冲(另一路产生正向脉冲同时)和负向脉冲,经过二极管滤除正向脉冲作为555单稳态的2 脚触发端输入信号,而555单稳态3脚输出倍频后的方波。 仿真结果图如下:

倍频电路与分频电路的设计

倍频电路与分频电路的 设计 文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)

课程设计说明书 课程名称:模拟电子技术课程设计 题目:倍频电路与分频电路的设计 学生姓名: 专业: 班级: 学号: 指导教师: 日期:年月日 一、设计任务与要求 1.设计一倍频电路,能完成2倍频、4倍频(甚至更多)功能。且这些倍频能通过拨 可用晶振来完成);动开关转换。(振荡电路自行设计、制作,振荡频率应不低于11MH Z 2.设计一分频电路,能完成1/2分频、1/4分频(甚至更低)功能。且这些分频能通过拨 可用晶振来完成)。动开关转换。(振荡电路自行设计、制作,振荡频率应不低于11MH Z 二、方案设计与论证 随着通信技术的日益发展,倍频技术应用的领域也日益增长。例如CPU的倍频,最初CPU的速度与系统总线的速度是一样的,但随着CPU的速度要求越高,相应的倍频技术也就得到了迅速的发展。其工作原理是使系统总线工作在低频状态,而CPU的运行速度可以通过倍频技术来提升。改变频率的方法有很多种,本文只讨论几种:傅里叶法,锁相环法及乘法器与滤波器法。

方案一、傅里叶法:这是一种最简单的变频方式,它采用了傅里叶级数。任何一个周期信号都能表示为其基波和其谐波的和,如果将变换振荡电路输出的正弦波为方波,那它可以用一下的公式表示: 接着就需要选择正确的谐波,接着可以通过一个带通滤波器来选择所需的谐波。缺陷:自适用于低频。 方案二、锁相环法:在这个方法中,其输出频率不是直接是基准频率的输出,而是通过一个电压控制的振荡电路输出,它是通过一个相位比较器和基准电路频率同步。要被比较的频率是要除以倍频因子。由于频率的分割,压控振荡电路必须产生一个乘以n的频率。此过程便实现了频率的改变。局限:在大的频率范围内容易实现,起抖动差。 方案三、乘法器和滤波器法:此方法是,首先建立一个振荡电路,使其产生正弦波,而后通过一个乘法器,使其实现倍频,再通过一个滤波器,选择我们需要的频率,从而实现倍频。分频是通过JK触发器实现,其原理是利用JK触发器的保持及翻转功能,实现分频,再通过一个滤波整流电路,得到所需的基波。其大致框图如下图(1): 三、单元电路设计与参数计算 1、LC三点式正弦波振荡电路原理图如下图(2)所示,其中包括输入滤波电路和输出滤波电路,消除噪音信号。其产生的正弦波频率主要与C1、C6和L3相关。计算公式如下: 图(2)

相关主题
文本预览
相关文档 最新文档