关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 如何用用DAC0832产生锯齿波电路

如何用用DAC0832产生锯齿波电路

作者:时间:2012-01-06来源:网络收藏

用DAC0832产生锯齿波电路 www.elecfans.com

本文引用地址:http://www.eepw.com.cn/article/161213.htm

波电压发生器
在一些控制应用中,需要有一个线性增长的电压(波)来控制检测过程、移动记录笔或移动电子束等。对此可通过在的输出端接运算放大器,由运算放大器波来实现,其连接图如图9.4所示。
图9.4 用锯齿波

图中的工作于单缓冲方式,其中输入寄存器受控,而DAC寄存器直通。假定输入寄存器地址为7FFFH,锯齿波的程序清单如下:
MOV A, #00H ;取下限值
MOV DPTR,#7FFFH;指向0832口地址
MM: MOVX @DPTR,A;输出
INC A;延时
NOP
NOP
NOP
SJMP MM;反复
执行上述程序就可得到如图9.5所示的锯齿波。

图9.5 D/A 转换产生的锯齿波

几点说明:
(1)程序每循环一次,A加1,因此实际上锯齿波的上升边是由256个小阶梯构成的,但由于阶梯很小,所以宏观上看就如图中所画的先行增长锯齿波。
(2)可通过循环程序段的机器周期数,计算出锯齿波的周期。并可根据需要,通过延时的方法来改变波形周期。若要改变锯齿波的频率,可在AJMP MM指令前加入延迟程序即可。延时较短时可用NOP指令实现(本程序就是如此),需要延时较长时,可以使用一个延长子程序。延迟时间不同,波形周期不同,锯齿波的斜率就不同。
(3)通过A加1,可得到正向的锯齿波,反之A减1可得到负向的锯齿波。
(4) 程序中A的变化范围是0~255,因此得到的锯齿波是满幅度的。如要求得到非满幅锯齿波,可通过计算求的数字量的处置和终值,然后在程序中通过置初值和终值的方法实现。

DIY机械键盘相关社区:机械键盘DIY




评论


相关推荐

技术专区

关闭