找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2584|回复: 2
打印 上一主题 下一主题
收起左侧

51单片机定时器产生任意占空比PWM

[复制链接]
跳转到指定楼层
楼主
ID:263971 发表于 2017-12-19 21:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg52.h> //头文件
sbit output=P1^0; //输出端
unsigned int num=1; //辅助计时
void Init(void) //初始化函数
{
//对于定时器一般初始化需要六步
TMOD=0x01;
TL0 = 0x33;               //设置定时初值 //50ms
TH0 = 0xFE;              //设置定时初值
EA=1;
ET0=1;
TR0=1;
}
main()
{
Init();
while(1)
{
if(num<=4)output=1; //使占空比为a
else output=0;
}
}
void Timer_0(void) interrupt 1 //中断函数
{
TL0 = 0x33;               //设置定时初值
         TH0 = 0xFE;              //设置定时初值
num++;
if(num>=40)num=1;
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:282110 发表于 2018-2-4 13:11 | 只看该作者
占空比要设置百分30该怎么写啊
回复

使用道具 举报

板凳
ID:282110 发表于 2018-2-4 13:11 | 只看该作者
如果占空比设置百分30要怎么写啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表