用51单片机实现抽水水泵

材料:51单片机+水泵部件
水泵部件

基于51单片机实现抽水功能

 大致原理:我们通过改变波形占空比来控制抽水电机的速度。而改变占空比我们可以通过改变高低电平持续时间来设置。
#include <reg52.h>

//--定义使用的IO口--//
sbit PWM = P1^0;

//--定义一个全局变量--//
unsigned char timer1; 

void Time1Config();


void main(void)
{
	Time1Config();
	while(1)
	{ 
		if(timer1>100)  //PWM周期为100*0.5ms
		{
			timer1=0;
		}
		if(timer1 < 90)	//改变50这个值可以改变直流电机的速度
		{
			PWM=1;
		}
		else
		{
			PWM=0;
		}
	}
	

 }

void Time1Config()
{
	TMOD= 0x10;   
	TH1 = 0xFE; 
	TL1 = 0x0C;

	
	ET1 = 1; 	 //开启定时器1中断
	EA = 1;
	TR1 = 1;	 //开启定时器	
}

void Time1(void) interrupt 3    
{
	TH1 = 0xFE; 
	TL1 = 0x0C;
	timer1++;    
}

为了能够准确的控制高低电平持续时间,这里我用到了定时器。
为了能够控制周期,这个地方我用到了timer1变量。

  • 13
    点赞
  • 106
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值