设为首页
收藏本站
家园
博客
课程平台
教材专区
主站
开启辅助访问
切换到窄版
登录
|
加入中科因仑
请
登录
后使用快捷导航
没有帐号?
加入中科因仑
搜索
搜索
热搜:
活动
交友
discuz
本版
用户
论坛
BBS
全部帖子汇总
全部技术帖
非技术帖汇总
大赛专区
因仑云商城
产品服务
因仑项目小组
快捷导航
中科因仑“3+1”工程特种兵精英论坛
»
论坛
›
单片机
›
51单片机
›
占空比可调节
返回列表
查看:
1681
|
回复:
0
占空比可调节
[复制链接]
张衍波
张衍波
当前离线
积分
8235
电梯直达
沙发
发表于 2015-4-14 21:51:21
|
只看该作者
|
倒序浏览
|
阅读模式
#include<reg52.h>
#define uchar unsigned char //宏定义无符号字符型
#define uint unsigned int //宏定义无符号整型
uchar b; //中断值
uchar N=0; //占空比计数值
uchar X=50; //占空比初始值百分比
uchar z=0;
uchar key_up;
uchar key_down;
/************************************************************************
按键初始化
*************************************************************************/
sbit P2_0=P2^0;//占空比加
sbit P2_1=P2^1;//占空比减
sbit PWM=P3^7;//控制PWM的占空比输出
/************************************************************************
调速按键扫描函数
*************************************************************************/
void get_key(void)//按键扫描函数
{
while(P2_0==0)//按键加计数标志
{key_up=1;
}
while(P2_1==0)//按键减计数标志
{key_down=1;
}
}
/************************************************************************
定时器中断执行函数
*************************************************************************/
void timer0( ) interrupt 1 //定时器0工作方式1
{
TH0=(65536-1)/256; //重装计数初值
TL0=(65536-1)%256; //重装计数初值
b++;
get_key();
if (key_up==1)
{
if(X!=100)//判断是否计数到100
{
X++;//加一
key_up=0;
}
}
if (key_down==1)
{
if(X!=0)//判断是否计数到0
{
X--;//减一
key_down=0;
}
}
}
/************************************************************************
程序主函数
*************************************************************************/
void main()
{
TMOD=0X01; //定时器中断0
TH0=(65536-2)/256; //定时时间高八位初值
TL0=(65536-2)%256; //定时时间低八位初值
EA=1; //开CPU中断
ET0=1; //开T/C0中断
TR0=1;
/****************************PWM处理部分*********************************************/
while(1)
{
PWM=1;
while(1)
{
b=0;
while(!b);
if (N==X)
PWM=0;
if(N==100)break;
N++;
/*************************************************************************************/
}
N=0;
}
}
/******************************程序结束************************************************/
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有帐号?
加入中科因仑
x
收藏
0
分享
支持
0
反对
0
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
加入中科因仑
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表