51单片机设计多功能低频函数信号发生器

上传人:仙*** 文档编号:99284073 上传时间:2022-05-31 格式:DOC 页数:10 大小:404KB
收藏 版权申诉 举报 下载
51单片机设计多功能低频函数信号发生器_第1页
第1页 / 共10页
51单片机设计多功能低频函数信号发生器_第2页
第2页 / 共10页
51单片机设计多功能低频函数信号发生器_第3页
第3页 / 共10页
资源描述:

《51单片机设计多功能低频函数信号发生器》由会员分享,可在线阅读,更多相关《51单片机设计多功能低频函数信号发生器(10页珍藏版)》请在装配图网上搜索。

1、. . . . 51单片机设计多功能低频函数信号发生器 应用89S52单片机和DAC0832进行低频函数信号发生器的设计。本设计能产生正弦波、锯齿波、三角波和方波。这里着重介绍正弦波和锯齿波的生成原理。 ADC0832的介绍:DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路与转换控制电路构成。D0D7:八位数据输入端ILE:数据允许锁存信号/CS:输入寄存器选择信号/WR1:输入寄存器选择信号/XFER:数据传送信号/WR

2、2:DAC寄存器的写通选择信号Vref:基准电源输入端Rfb:反馈信号输入端Iout1:电流输出1Iout2:电流输出2Vcc:电源输入端AGND:模拟地DGND:数字地DAC0832结构: D0D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错); ILE:数据锁存允许控制信号输入线,高电平有效; CS:片选信号输入线(选通数据锁存器),低电平有效; WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存; XFER:数据传

3、输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效; WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR1、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的容打入DAC寄存器并开始D/A转换。 IOUT1:电流输出端1,其值随DAC寄存器的容线性变化; IOUT2:电流输出端2,其值与IOUT1值之和为一常数; Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度; Vcc:电源输入端,Vcc的围为+5V+15V; VREF:基准电压输入线,VREF的围为-10V+10V

4、; AGND:模拟信号地 DGND:数字信号地DAC0832的工作方式:根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式:直通方式、单缓冲方式和双缓冲方式。本设计选用直通方式。 DAC0832工作时序: DAC0832部结构图: 当ILE为1时,只有当/CS、/WR1都为0时输入寄存器才允许输入;当/WR2、/XFER也都为0时,输入寄存器里的信息才能写入DAC寄存器。根据实际电路图我们就可以得到DAC0832工作的时序的程序。如下: P37=0; /P37=CS _nop_(); /P36=WR P36=0; P0=value; (数据端口信号数值

5、0255) P36=1; _nop_(); P37=1;硬件电路: P0口是数据端口,接上拉电阻(其他端口则不用)。电源质量要好,质量越好的电源,芯片工作就越稳定。从LM358运放输出的电压最大峰峰值就是12V所以在二级运放的放大倍数要注意跟基准电压想匹配,否则输出信号会很容易失真。正弦波的生成: DAC0832产生信号的原理可以说是ADC0809AD转换的逆过程,但DAC0832生成的信号是离散的。假设要生成一个Y=Asin(2*pi*f*t)的正弦波。adc0832数据端口给的数据的围是0255一共256个。前0127表示是X轴上方的电压值(也可能是下方)。那么128255是X轴下方的电压

6、值。那么我们可以得到数据端口的数值的具体量,即value=127sin(2*pi*f*t)+127;假设我在X轴上抽样100个点(099),那么value=127sin(pi/50*t)+127; t:099.(这个100位的数组可以用MATALB生成)。也可以抽样更多的点,抽样的点越多,得到的信号越保真,但信号的频率会有所下降。抽样的点越少,失真越大,但频率能成大幅度递增。怎么选择,具体情况具体分析。其他的波形也跟正弦波一样。 程序如下:#includesbit dac_WR=P36;/dac0832的wr端sbit dac_cs=P37;sbit KEY1=P20;sbit KEY2=P2

7、1;bit keyflag;unsigned char i;unsigned char code tab100=127,135,143,151,159,166,174,181,188,195,202,208,214,220,225,230,234,238,242,245,248,250,251,252,253,254,253,252,251,250,248,245,242,238,234,230,225,220,214,208,202,195,188,181,174,166,159,151,143,135,127,119,111,103,95,88,80,73,66,59,52,46,40,3

8、4,29,24,20,16,12,9,6,4,3,2,1,0,1,2,3,4,6,9,12,16,20,24,29,34,40,46,52,59,66,73,80,88,95,103,111,119;void getkey(void)if(KEY1=0) /按键按下后为电电平 RCAP2L+=10; /调节频率 if(CY=1) RCAP2H+=1; if(KEY2=0) RCAP2L-=10; if(CY=1) RCAP2H-=1; void Timer2_Init() T2CON=0x00; TH2=(65536-300)/256;TL2=(65536-300)%256;RCAP2H=0X

9、FE;RCAP2L=0XDA; /稳定在50Hz左右EA=1;ET2=1;TR2=1; void T0_service() interrupt 1TH0=0XEC;TL0=0X77;keyflag=1;void Timer2_service() interrupt 5TF2=0;/清除中断标志位 dac_cs=0;dac_WR=0;P1=tabi;dac_WR=1;i+;dac_cs=1;if(i=100) i=0;void main()Timer2_Init();TMOD=0x01;TH0=0XEC;TL0=0X77;EA=1;ET0=1;TR0=1;while(1) if(keyflag)

10、 keyflag=0; getkey(); 本程序需注意:按键是低电平有效。定时器2中断发送数据给DAC0832,0832在得到一个数据后生成相应的电压值。所以他的中断时间决定信号的频率,调节它的中断时间就能调节信号的频率。其他波形的生成,其他的波形也跟正弦波一样,但锯齿波和三角波可以不用查表法,应用加减计算得到就可以得到。下面介绍的是锯齿波:#include #include sbit DACWR=P36;sbit DACCS=P37;unsigned int i;void DAC_0832(void) DACCS=0;DACWR=0;P0=i;i+=1; /加以操作得到上升的锯齿波DACW

11、R=1;_nop_();DACCS=0;if(i=0xff) i=0x7f; /为什么初值是0x7f,其他的行不行。大家自己动手试试。void main(void)i=0x7f;while(1) DAC_0832(); DAC0832有着致命的一个缺点就是输出的波形里的含有的频率比较杂乱,常常出现过激的现象。如果你需要精确的信号的话,那么你必须在信号输出端就如滤波器。得到干净的低频函数信号。如果要作为信号源的话最好是能就上一级攻放。效果会好很多。虽然DAC0832不是非常专业的函数信号发生芯片,但是它的输出波形的围比较广,常常能输出一些,你意想不到得很有意思的信号曲线。下面发几示波器观察到得曲线:实验室里手机照的,不是太清晰但还能看。10 / 10

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!