谁可以给个正弦、方波、三角波、锯齿波发生器VHDL源程序

来源:百度知道 编辑:UC知道 时间:2024/06/14 05:45:23
功能要求:
1、 可产生题目要求的几种波形(频率可调,一个波形周期不少于64点),利用DAC0832输出,用示波器观察。
2、 具有波形选择、起动、停止功能。
3、 利用数码LED管或液晶显示工作状态。

图没法给自己弄

I/V转换波形输出电路
DAC0832为电流输出型转换器,一般要求输出是电压,所以还必须经过一个外接的运算放大器转换成电压。
如图3-23所示为一种用两级运算放大器组成的模拟电压输出电路。从第一个运放输出为单极性模拟电压,从第二个运放输出为双极性模拟电压。如果参考电压为+5V,则点a输出电压为0~-5V,点b输出电压为±5V。
图3-23 I/V转换波形发生电路
波形发生程序:
;******锯齿波图3-24******
ORG 2000H
START: MOV DPTR, #7FFFH
MOV A, #00H
LP: MOVX @DPTR, A
INC A
SJMP LP

图3-24 锯齿波形

;****三角波(图3-25)******
ORG 2030H
START: MOV DPTR,#7FFFH
MOV A,#00H
UP: MOVX @DPTR, A
INC A
JNZ UP
DEC A
DOWN: DEC A
MOVX @DPTR,A
JNZ DOWN
INC A
SJMP UP

图3-25 三角波形
;*****矩形波(图3-26)****
ORG 2070H
START: MOV DPTR, #7FFFH
LP: MOV A, #DATAH
MOVX @DPTR,A
LCALL DELH
MOV A,#DATAL
MOVX @DPTR,A
LCALL DELL
SJMP LP

图3-26 矩形波