标题: 单片机可以直接输出一个正弦基波调制出的正弦波吗? [打印本页]

作者: Mr.Ddd    时间: 2020-9-6 00:54
标题: 单片机可以直接输出一个正弦基波调制出的正弦波吗?
单片机可以直接输出一个基波是正弦波调制出来的正弦波信号吗?频率和幅值可调的那种,之前有用数字电位器把单片机输出的正弦波调制成正弦波,但是由于要求输出的信号频率太高,数字电位器的寿命远远达不到要求,所以想问一下各位大佬有没有办法让单片机直接输出一个这样的信号。
另外FPGA这个方案我正在学,算法那边有点慢。
有没有大佬可以给个方案,谢谢呀!

作者: wulin    时间: 2020-9-6 08:25
没有内置DA硬件的MCU不能直接输出正弦波信号。
作者: #include51.h    时间: 2020-9-6 08:44
可以的,有很多芯片带DA,坛了里有例子与仿真,你可以下下来看看
作者: Mr.Ddd    时间: 2020-9-7 08:40
wulin 发表于 2020-9-6 08:25
没有内置DA硬件的MCU不能直接输出正弦波信号。

用的是stm32,自带有DA模块,我知道怎么输出一个正弦波,但是不知道怎么输出一个正弦信号调制过的正弦,大佬能给个思路吗?谢谢!
作者: Mr.Ddd    时间: 2020-9-7 08:41
#include51.h 发表于 2020-9-6 08:44
可以的,有很多芯片带DA,坛了里有例子与仿真,你可以下下来看看

论坛里的程序我看了,但是还是不知道怎么输出一个正弦信号调制过的正弦。能给点提示吗?谢谢!
作者: lovexulu    时间: 2020-9-7 13:42
缺个算法吧。。。。。
作者: angmall    时间: 2020-9-7 19:20
stm32 用dac输出正弦波

http://www.51hei.com/bbs/dpj-172477-1.html


事先在正弦波上找500个点存在一个数组里,然后当每一个时钟到来的时候,dac就会输出电压值。

   void sin_Generation(void)   {u16 n;for(n=0;n<tableSize;n++)   {sinTable[n] = (sin(2*PI*n/tableSize)+1)*2047;}        

经过线性转换后,数字输入会转换为 0 到 VREF+ 之间的输出电压。各 DAC 通道引脚的模拟输出电压通过以下公式确定:  
DACoutput =Vref*dor/4095

作者: yzwzfyz    时间: 2020-9-8 16:37
对于单片机:
1、有基波频率(所需要的正弦波)和调制频率,理论上就可以计算出PWM脉冲。
2、电压是不可调的。

作者: liaoym    时间: 2020-9-18 10:52
用的是stm32,自带有DA模块,我知道怎么输出一个正弦波,但是不知道怎么输出一个正弦信号调制过的正弦。------我想请问“正弦信号调制过的正弦”是什么意思,是指频率可变吗?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1