|
发表于 2018-11-29 11:04:18
|
显示全部楼层
int IN1 = 7; //IN1
int IN2 = 6; //IN2
int IN3 = 5; // IN3
int IN4 = 4; // IN4
int beep= 3; //铚傞福鍣ㄨ礋鏋�
char time = 0, i = 0, count = 0;
void setup()
{
//鍒濆鍖栫數鏈洪┍鍔↖O涓鸿緭鍑烘柟寮�
pinMode(IN1, OUTPUT); // PIN 7
pinMode(IN2, OUTPUT); // PIN 6
pinMode(IN3, OUTPUT); // PIN 5
pinMode(IN4, OUTPUT); // PIN 4
pinMode(beep, OUTPUT); //PIN 3
digitalWrite(beep, HIGH);
Serial.begin(9600);//璁剧疆娉㈢壒鐜囦负9600
}
/*******************************鍥涚浉鍏媿***********************************/
void Coil_A()
{
digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH);
}
void Coil_AB()
{
digitalWrite(IN1, LOW); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH);
}
void Coil_B()
{
digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, HIGH); digitalWrite(IN4, HIGH);
}
void Coil_BC()
{
digitalWrite(IN1, HIGH); digitalWrite(IN2, LOW); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH);
}
void Coil_C()
{
digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, HIGH);
}
void Coil_CD()
{
digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, LOW); digitalWrite(IN4, LOW);
}
void Coil_D()
{
digitalWrite(IN1, HIGH); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW);
}
void Coil_DA()
{
digitalWrite(IN1, LOW); digitalWrite(IN2, HIGH); digitalWrite(IN3, HIGH); digitalWrite(IN4, LOW);
}
/*******************************************************************/
void beep_once()//铚傞福鍣ㄥ搷涓�
{
digitalWrite(beep, LOW);
delay(100);
digitalWrite(beep, HIGH);
}
void loop()
{
unsigned long now_time = micros(); //鑾峰彇褰撳墠鐨勭郴缁熻繍琛屾椂闂撮暱搴�
while ((micros() - now_time) < 14648); // 60 000 000us/4096
switch (i)
{
case 0: Coil_A(); i++; break;
case 1: Coil_AB(); i++; break;
case 2: Coil_B(); i++; break;
case 3: Coil_BC(); i++; break;
case 4: Coil_C(); i++; break;
case 5: Coil_CD(); i++; break;
case 6: Coil_D(); i++; break;
case 7: Coil_DA(); i = 0; break;
default: break;
}
count++;
if (count == 68)//涓�璁℃椂锛屾樉绀哄苟铚傞福鍣ㄥ搷涓�笅
{
count = 0;
time++;
if (time == 60)
time = 0;
Serial.print("second: " ) ;
Serial.print(time, DEC) ;
Serial.println("s" ) ;
beep_once();
}
} |
|