我正在尝试使用带有 ATmega32-A 微控制器的可编程波形发生器 AD9833 生成正弦波。(MCLK = 8MHz 时钟频率)。我正在使用 USART 通信,所以如果我在超级终端中改变频率或相位,那么波形频率和相位必须改变。我为此编写了小代码,如下所示。
但从上面的代码我正在生成正弦波。如果我输入频率,那么波形频率也会完全改变,但我试图改变相位,那么这就是问题所在。如果我进入相位为 90,那么它会改变 10 度,它不会改变 90。我不知道它为什么会这样产生以及我犯了什么错误?我错过了什么吗?仅相位问题。
提前致谢。
如果我想输入相位的浮点值,例如 2.5 度,我必须改变什么。在函数中将“无符号整数阶段”转换为“浮点阶段”。如果我这样尝试,“<<”与浮点数不兼容。如果我想以 35.8 度进入相位,我必须做什么。请建议我。
提前致谢。