PIC单片机中PWM怎么实现DA转换

PIC单片机中PWM怎么实现DA转换,第1张

PWM是通过改变占空比来改变输出电压的有效值的,即改变输出电压的大小

假设单片机的电源电压为5V,并假设输出高电平也为5V

当PWM的占空比为100%时,输出电压有效值为5V,当占空比为0时,输出电压有效值为0V,当占空比为50%时,输出电压有效值为25V,以此类推当然以上为理论上的值,实际使用时PWM频率要适当高些,同时在输出并上个电容,让输出电压较平稳而不至于真的是个脉冲

当然,这种DA的精度是不高的,用于要求不高的场合,如果要求精度较高的时候,要用到外部DA芯片,关于这个,见参考文献P286,这里有详细的线路与程序,及其原理说明等。

那个芯片用的是串行的方式通信的。对于速度不是很高的51来说 几乎不用考虑延时的问题。SCLK是时钟线,每次时钟线由低电平跳变成高电平的时候芯片读取DIN数据线的电平状态,作为当前位的数据,这样你给SCLK10个上升沿,每个上升沿给10位数据中的一位数据,这样十次完成以后芯片就输出了

#include<reg51h>

void  main()

{

    while(1) {

      P1++;

    }

}

即可。

比如8位的AD转换吧,转换0~5V为数字量信号,就是把5V分成256份,每份是5/256,这个也就是精度,最小一份就是5/256 V,002V左右,比如输入信号为5V,就占了256份,AD输出结果换成16进制就是0xff,比如说输入是31V,就占了31/(5/256)=15872份,所以输出结果只能是158份,0x9e,就偏差了072份,就是0725/256=0014V,就偏差了0014V左右,如果10位的AD转换,每份就是5/1024,精度也就高了很多,反过来DA转换也是一样的,不明白可以继续问

以上就是关于PIC单片机中PWM怎么实现DA转换全部的内容,包括:PIC单片机中PWM怎么实现DA转换、求单片机与10位串行DA转换方法、单片机DA转换产生三角波的c语言程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10214595.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存