STC15单片机控制舵机程序-智能报警系统

#include "STC15F2K60S2.h"  
#include "INTRINS.H"


#define uchar unsigned char
#define uint unsigned int


uint a;
sbit pwm=P0^0;
sbit IN1=P0^1;
sbit IN2=P0^2;
sbit flage=P1^1;
sbit beep=P1^2;


void init()


{


a=200;
p10=0;

TMOD=0x11;

TH0=(65536-100)/256;

TL0=(65536-100)%256;

EA=1;

ET0=1;


}


void main()


{
P0M0=0x00;
P0M1=0x00;
P1M0=0x00;
P1M1=0x00;
init();
IN1=0;
IN2=1;
TR0=1;
flage=1;
       pwm=1;


while(1) ;


}


void timer0()interrupt 1 //定时器0为0.1ms一个周期


{


TH0=(65536-100)/256;

TL0=(65536-100)%256;

if( flage==1)
 
{
  beep=1;
if(a>195) //产生周期为20ms,高电平为0.5ms,舵机会转到0度  

pwm=1;//如果想反转方向,就需把第一个p10=0,第二个p10=-1

else

pwm=0;

 a--;

if(a<1)a=200; 
}
else
{
beep=0;
if(a>180) //产生周期为20ms,高电平为2.0ms,舵机会转到135度  

pwm=1;

else

pwm=0;

aa--;

if(a<1)a=200; 
}






}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值