用单片机和DA输出正弦波,波形失真

有很多有规律的跳变,找不到原因,那位碰到过这种情况,帮忙分析一下!!!

第1个回答  2009-09-18
忘了喂狗了吧?
数据线缺线。本回答被提问者采纳
第2个回答  2009-09-17
输出正弦波频率过高了吧?低于200HZ的试一试!

单片机输出正弦波滤波后波形失真
我用单片机输出一个正弦波,然后用RC低通滤波器进行滤波,截止频率大于输出信号的最大频率。但是我发现随着频率的升高,输出信号的峰峰值越来越小(从0-3.3变成了1.4-1.8),请问这是怎么回事,是没有加电压跟随器的原因么?

51单片机C语言怎样编写用DA可以出现正弦波
将一个周期的正弦波的幅值量化为0-255,将这256个值 存在程序空间里面,单片机定时依次循环取出这些值送到DA转换器,DA输出后进行低通滤波即能得到正弦波了。如果要节省空间可以利用正弦波形的对称性只需存入1\/4周期的数据再经一个简单算法也可以得到正弦波。

利用单片机怎么产生正弦波信号
1、通过单片机DA来实现,需要通过查表法;2、通过PWM方式实现;不过都需要加硬件滤波电路来实现正弦波的平滑。

如何用51单片机控制DAC0832产生不同频率正弦波,键盘改变频率,求具体的...
假设你把一个正弦波的一周期分成180个点,那么每个点相差是2度,那么每个点是有一个对应的SIN值的,比如SIN0 SIN2 SIN4等。假设1ms发送一个点(即单片机向DA写一个该SIN值所对应的电压大小), 那么写完一个正弦波,要180ms。如果2ms写一个点,这就改变了正弦波的频率了。一周期所分的点越...

基于单片机的信号发生器的设计,输出方波,正弦波,三角波,锯齿波,频率可 ...
正弦波:如果有,以PCA模块为例,可以作为DA使用,使用前根据datasheet配置好PCA。在51头文件中有math.h,里面有sin(X)函数,可以在程序中直接使用,使用前在主函数重要包含math.H这个文件。然后每个点采样输出即可,频率可调可以通过不同方法实现,如果是要做信号发生器,推荐使用一个电位器,通过AD采集...

51 单片机和DAC0832输出方波、矩形波和正弦波由液晶1602显示的C语言程 ...
DA_S1=0; \/\/打开8位输入寄存器 DA_S1=1; \/\/关闭8位输入寄存器 } void sine_out() \/\/正弦波输出 { DAdata=sine_tab[wavecount++];DA_S1=0; \/\/打开8位输入寄存器 DA_S1=1; \/\/关闭8位输入寄存器 } void square_out() \/\/方波输出 { judge=~judge;if(judge==1) DAdata=0x...

利用单片机和DAC0832控制输出方形波,锯齿波,三角波,并通过示波器显示...
\/\/#define DACR XBYTE[0x7fff] \/\/单通道输出,单缓冲就行了。unsigned char i,sqar_num=128; \/\/最大值100,默认值50 unsigned char cho=0; \/\/0:正弦波。1:方波。2:三角波。3:锯齿波。unsigned char num=0;unsigned char TIME0_H=0xff,TIME0_L=0xd9; \/\/定时器0的初值设置...

怎么用单片机产生2路正弦波信号相位相差120度(用2片dac0832)
提供一点思路,用两个定时器产生PWM信号,第一个定时器工作到交流电半周期的三分之二启动第二个定时器。

单片机编程DA输出正弦波为什么上半为平的???求大神指导
第一个可能是你D\/A芯片的基准电压Vref超过了电源电压VDD.第二个可能是你D\/A芯片坏了.还有你的数组里那么多连续的 0xff ,表示这一段时间输出都是最高的,而且电压值是相等的,输出这样的波形也很有可能,你看看电压到了几伏。还有可能是你哪里限制了输出幅度(硬件上)....

用89C51单片机和DAC0832设计函数信号发生器,能产生方波、正弦波、三角...
归根到底就是使用单片机控制送给DAC的数据:矩形波——从0电平直接跳变至最高电平,再直接跳变至0电平;三角波——从0电平等量递增至最高电平,再等量递减至0电平;锯齿波——从0电平递增至高电平,再递减至0电平,且递增和递减量阶不等;幅值就是最高电平,周期就是变化时间。

相似回答
大家正在搜