原理图:
程序代码:
#include"reg51.h"
#include"intrins.h"
#include"LCD1602.H"
/*****************宏定义********************/
#define uchar unsigned char
#define uint unsigned int
sbit P20=P2^0;
sbit P21=P2^1;
uchar flag=0; //高低电平标志
bit direction=0; //方向标志
static uchar constant=5; //可以改变占空比
/****************函数声明****************/
void delay(uchar i);
void reverse(void); //反转子函数
/****************定时器t0***************/
void time0(void) interrupt 1 using 1
{
static uchar i;
i++;
//频率为固定的1kHZ左右,只是占空比发生变化
if(i<=constant)
flag=1;
if(i<=10&&i>constant) // constant=5,可以改变占空比
flag=2; //初