Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
MotorDriver.cpp@0:c58a5bbd417a, 2021-02-09 (annotated)
- Committer:
- khaiminhvn
- Date:
- Tue Feb 09 23:53:44 2021 +0000
- Revision:
- 0:c58a5bbd417a
First draft
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
khaiminhvn | 0:c58a5bbd417a | 1 | //INCLUDES |
khaiminhvn | 0:c58a5bbd417a | 2 | #include "MotorDriver.h" |
khaiminhvn | 0:c58a5bbd417a | 3 | #include "PinAssignment.h" |
khaiminhvn | 0:c58a5bbd417a | 4 | |
khaiminhvn | 0:c58a5bbd417a | 5 | MotorDriver::MotorDriver() : ena(PIN_ENA),enb(PIN_ENB),intp(PIN_INTP),intn(PIN_INTN) {} |
khaiminhvn | 0:c58a5bbd417a | 6 | |
khaiminhvn | 0:c58a5bbd417a | 7 | //moveForward |
khaiminhvn | 0:c58a5bbd417a | 8 | void MotorDriver::moveForward(int s) |
khaiminhvn | 0:c58a5bbd417a | 9 | { |
khaiminhvn | 0:c58a5bbd417a | 10 | switch(s) |
khaiminhvn | 0:c58a5bbd417a | 11 | { |
khaiminhvn | 0:c58a5bbd417a | 12 | case M1: |
khaiminhvn | 0:c58a5bbd417a | 13 | ena = 1; |
khaiminhvn | 0:c58a5bbd417a | 14 | enb = 0; |
khaiminhvn | 0:c58a5bbd417a | 15 | break; |
khaiminhvn | 0:c58a5bbd417a | 16 | case M2: |
khaiminhvn | 0:c58a5bbd417a | 17 | ena = 0; |
khaiminhvn | 0:c58a5bbd417a | 18 | enb = 1; |
khaiminhvn | 0:c58a5bbd417a | 19 | break; |
khaiminhvn | 0:c58a5bbd417a | 20 | case M_ALL: |
khaiminhvn | 0:c58a5bbd417a | 21 | ena = 1; |
khaiminhvn | 0:c58a5bbd417a | 22 | enb = 1; |
khaiminhvn | 0:c58a5bbd417a | 23 | break; |
khaiminhvn | 0:c58a5bbd417a | 24 | } |
khaiminhvn | 0:c58a5bbd417a | 25 | intp = 1; |
khaiminhvn | 0:c58a5bbd417a | 26 | intn = 0; |
khaiminhvn | 0:c58a5bbd417a | 27 | } |
khaiminhvn | 0:c58a5bbd417a | 28 | |
khaiminhvn | 0:c58a5bbd417a | 29 | //moveBackward |
khaiminhvn | 0:c58a5bbd417a | 30 | void MotorDriver::moveBackward(int s) |
khaiminhvn | 0:c58a5bbd417a | 31 | { |
khaiminhvn | 0:c58a5bbd417a | 32 | switch(s) |
khaiminhvn | 0:c58a5bbd417a | 33 | { |
khaiminhvn | 0:c58a5bbd417a | 34 | case M1: |
khaiminhvn | 0:c58a5bbd417a | 35 | ena = 1; |
khaiminhvn | 0:c58a5bbd417a | 36 | enb = 0; |
khaiminhvn | 0:c58a5bbd417a | 37 | break; |
khaiminhvn | 0:c58a5bbd417a | 38 | case M2: |
khaiminhvn | 0:c58a5bbd417a | 39 | ena = 0; |
khaiminhvn | 0:c58a5bbd417a | 40 | enb = 1; |
khaiminhvn | 0:c58a5bbd417a | 41 | break; |
khaiminhvn | 0:c58a5bbd417a | 42 | case M_ALL: |
khaiminhvn | 0:c58a5bbd417a | 43 | ena = 1; |
khaiminhvn | 0:c58a5bbd417a | 44 | enb = 1; |
khaiminhvn | 0:c58a5bbd417a | 45 | break; |
khaiminhvn | 0:c58a5bbd417a | 46 | } |
khaiminhvn | 0:c58a5bbd417a | 47 | intp = 0; |
khaiminhvn | 0:c58a5bbd417a | 48 | intn = 1; |
khaiminhvn | 0:c58a5bbd417a | 49 | } |
khaiminhvn | 0:c58a5bbd417a | 50 | |
khaiminhvn | 0:c58a5bbd417a | 51 | //stop |
khaiminhvn | 0:c58a5bbd417a | 52 | void MotorDriver::stop() |
khaiminhvn | 0:c58a5bbd417a | 53 | { |
khaiminhvn | 0:c58a5bbd417a | 54 | ena = 0; |
khaiminhvn | 0:c58a5bbd417a | 55 | enb = 0; |
khaiminhvn | 0:c58a5bbd417a | 56 | intp = 0; |
khaiminhvn | 0:c58a5bbd417a | 57 | intn = 0; |
khaiminhvn | 0:c58a5bbd417a | 58 | } |