51单片机调占空比方波

发布网友 发布时间:2022-04-22 04:20

我来回答

2个回答

热心网友 时间:2023-10-05 09:03

给你提供给一个思路:利用51定时器产生us级别的中断,然后设置两个变量,一个是pwm周期,也就是你说的1/10kHz,另一个是占空比变量,让占空比变量的值是周期寄存器值的一半就可以了这样就是50%占空比的方波,等到你要改占空比或者频率的时候只要改这两个变量就行追问能给一下C程序吗?还有那个占空比根据AD采样结果随时可调怎么办呢?

热心网友 时间:2023-10-05 09:04

频率在10KHZ 1/10KHZ/2=50us

#include<reg52.h>
sbit P1_0=P1^0;

void int_X_T()
{
IE=0x82;
TMOD=0x01;
TH0=(65536-50)/256;
TL0=(65536-50)%256;
TR0=1;
}

void int_x() interrupt 1
{
TH0=(65536-50)/256;
TL0=(65536-50)%256;
P1_0=!P1_0;
}

void main()
{
int_X_T();
while(1);
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com