final

Dependencies:   DISCO_L475VG_IOT01A_wifi

Committer:
ascension2
Date:
Wed Aug 21 07:25:27 2019 +0000
Revision:
2:a460007a35c7
Parent:
1:98939393d0db
Child:
3:32b328935a54
44

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ascension2 0:dc1150daf908 1 #include "mbed.h"
ascension2 0:dc1150daf908 2 ////////// motor (window) //////////
ascension2 0:dc1150daf908 3 DigitalOut M1_a(A1);
ascension2 0:dc1150daf908 4 DigitalOut M1_b(A2);
ascension2 0:dc1150daf908 5 PwmOut M1_en(D3);
ascension2 0:dc1150daf908 6 ////////// motor (blind) //////////
ascension2 0:dc1150daf908 7 DigitalOut M2_a(A3);
ascension2 0:dc1150daf908 8 DigitalOut M2_b(A4);
ascension2 0:dc1150daf908 9 PwmOut M2_en(D4);
ascension2 0:dc1150daf908 10
ascension2 1:98939393d0db 11 int motor1_state;
ascension2 1:98939393d0db 12 int motor2_state;
ascension2 2:a460007a35c7 13 int window_state;
ascension2 2:a460007a35c7 14 int blind_state;
ascension2 0:dc1150daf908 15 void MotorControl();
ascension2 1:98939393d0db 16
ascension2 1:98939393d0db 17 void motor1Stop();
ascension2 1:98939393d0db 18 void motor1CW(float speed);
ascension2 1:98939393d0db 19 void motor1CCW(float speed);
ascension2 1:98939393d0db 20
ascension2 1:98939393d0db 21 void motor2Stop();
ascension2 1:98939393d0db 22 void motor2CW(float speed);
ascension2 1:98939393d0db 23 void motor2CCW(float speed);
ascension2 0:dc1150daf908 24
ascension2 0:dc1150daf908 25
ascension2 0:dc1150daf908 26 void MotorControl()
ascension2 0:dc1150daf908 27 {
ascension2 0:dc1150daf908 28
ascension2 0:dc1150daf908 29 }
ascension2 0:dc1150daf908 30
ascension2 1:98939393d0db 31 void motor1CW(float speed)
ascension2 0:dc1150daf908 32 {
ascension2 2:a460007a35c7 33 motor1_state=1;
ascension2 2:a460007a35c7 34 window_state=1;
ascension2 0:dc1150daf908 35 M1_a=1;
ascension2 0:dc1150daf908 36 M1_b=0;
ascension2 0:dc1150daf908 37 M1_en.write((speed/100));
ascension2 2:a460007a35c7 38 M2_en.period(1.0f);
ascension2 2:a460007a35c7 39 wait(1);
ascension2 2:a460007a35c7 40 motor1Stop();
ascension2 0:dc1150daf908 41 }
ascension2 0:dc1150daf908 42
ascension2 1:98939393d0db 43 void motor1CCW(float speed)
ascension2 0:dc1150daf908 44 {
ascension2 2:a460007a35c7 45 motor1_state=0;
ascension2 2:a460007a35c7 46 window_state=0;
ascension2 0:dc1150daf908 47 M1_a=0;
ascension2 0:dc1150daf908 48 M1_b=1;
ascension2 0:dc1150daf908 49 M1_en.write((speed/100));
ascension2 2:a460007a35c7 50 M2_en.period(1.0f);
ascension2 2:a460007a35c7 51 wait(1);
ascension2 2:a460007a35c7 52 motor1Stop();
ascension2 0:dc1150daf908 53 }
ascension2 0:dc1150daf908 54
ascension2 1:98939393d0db 55 void motor1Stop()
ascension2 0:dc1150daf908 56 {
ascension2 0:dc1150daf908 57 M1_a=0;
ascension2 0:dc1150daf908 58 M1_b=0;
ascension2 2:a460007a35c7 59 motor1_state=2;
ascension2 1:98939393d0db 60 }
ascension2 1:98939393d0db 61 void motor2CW(float speed)
ascension2 1:98939393d0db 62 {
ascension2 2:a460007a35c7 63 motor2_state=1;
ascension2 2:a460007a35c7 64 blind_state=1;
ascension2 1:98939393d0db 65 M2_a=1;
ascension2 1:98939393d0db 66 M2_b=0;
ascension2 1:98939393d0db 67 M2_en.write((speed/100));
ascension2 2:a460007a35c7 68 M2_en.period(1.0f);
ascension2 1:98939393d0db 69 //wait(1);
ascension2 1:98939393d0db 70 //motorStop();
ascension2 1:98939393d0db 71 }
ascension2 1:98939393d0db 72
ascension2 1:98939393d0db 73 void motor2CCW(float speed)
ascension2 1:98939393d0db 74 {
ascension2 2:a460007a35c7 75 motor2_state=0;
ascension2 2:a460007a35c7 76 blind_state=0;
ascension2 1:98939393d0db 77 M2_a=0;
ascension2 1:98939393d0db 78 M2_b=1;
ascension2 1:98939393d0db 79 M2_en.write((speed/100));
ascension2 1:98939393d0db 80
ascension2 1:98939393d0db 81 }
ascension2 1:98939393d0db 82
ascension2 1:98939393d0db 83 void motor2Stop()
ascension2 1:98939393d0db 84 {
ascension2 1:98939393d0db 85 M2_a=0;
ascension2 1:98939393d0db 86 M2_b=0;
ascension2 2:a460007a35c7 87 motor2_state=2;
ascension2 0:dc1150daf908 88 }