❶ 单片机输出正弦波,那个数据表的数据是怎样计算得到的有具体的计算过程最好!
直接用三角函数计算
如周期20 ms,半个周期10 ms ,将半个周期分成100个时间段,则每个时间段为100us
半个周期 相当于180度 那么每个时间段对应的角度 180/100=1.8 度
那么在任意时刻对应的角度1.8*n
直接sin(1.8*n)即可得出某个时刻的三角函数 值
将这个数值再乘以DA的最大数字量,8位是256,10位是1024
即可得到单片机要送往DA转换器的数字量
❷ 单片机怎么输出高频正弦波,例如200K
200K频率不低了。
可以考虑两种方法:
1、利用大容量的RAM(注意看清楚,RAM),先把正弦波数据存在里面(利用excel计算好,一个周期,比如256个点的数据),然后不断读取这些存储单元,把结果送高速DA输出。
2、利用类似AD9850,AD9851这类的DDS(数字频率合成)芯片,直接输出。
前者在一些技术力量不是很强,对成本要求很高的仪器研发部门经常用到。后者其实就是平常使用的DDS函数信号发生器里面的做法了。
推荐后者,控制起来比较简单,市面上有模块直接卖,大概70-100块,看芯片型号,输出1MHz是没问题的。
❸ 51单片机怎么输出6路PWM正弦波
先用软件使其输出6路PWM方波,每路上再用LC滤波网络滤除高频部分,保留基波,就是正弦波输出了!
手打不易,如有帮助请采纳,谢谢!!
❹ 单片机如何输出正弦波
令单片机输出高、低电平,可以形成不同脉宽的脉冲波,
再经过 RC 电路平滑滤波,就会出现不同高低电压的信号。
这就可以近似实现正弦波或其它波形。
❺ 单片机或者 FPGA能不能通过设计程序 输出正弦波 锯齿波以及其他波形
用51单片机或者FPGA完全可以实现正弦波的输出,具体的方法有:
1.你说的查表法,就是在ROM里面建一个表格,只需要四分之一正弦波的数据就可以了,然后用DA输出;
2.用PWM波的方法,就是用单片机的定时计数器输出不同占空比的方波,后端用合适的低通滤波器滤波,就能产生不同幅值的模拟信号正弦波,低通滤波器将方波的高频部分滤掉,PWM波的占空比越大,输出的模拟信号幅值就越高;
3.使用DDS技术,一块DDS芯片中主要包括频率控制寄存器、高速相位累加器和正弦计算器三个部分。频率控制寄存器可以串行或并行的方式装载并寄存用户输入的频率控制码;而相位累加器根据
dds频率控制码在每个时钟周期内进行相位累加,得到一个相位值;正弦计算器则对该相位值计算数字化正弦波幅度(芯片一般通过查表得到)。DDS芯片输出的一般是数字化的正弦波,因此还需经过高速D/A转换器和低通滤波器才能得到一个可用的模拟频率信号
❻ 用单片机利用dac0832产生三角波方波和正弦波
首先需要建立一个产生三角波、方波和正弦波的波表,然后定时将波表里的数据通过端口刷新至dac0832,然后0832的模拟输出端口即可输出想要的波形,通过控制波表数值的刷新频率即可调整输出频率。
❼ 如何用8051单片机输出正弦波形
有2种方法:
1,用SPWM技术,在单片机中用正弦波表控制PWM脉宽,输出部分直接简单RC滤波即可得到正弦波。
2,用方波直接RC得到近似的正弦波。