StepperUNO Library 1.4: Difference between revisions
(→Keypad) |
|||
Line 43: | Line 43: | ||
#define LONG_RELEASED_RST 15 | #define LONG_RELEASED_RST 15 | ||
On a conventional Arduino UNO these LCD keypad will connect the RST button directly to the reset of the arduino. This is a waste in our opinion and we have re-routed this button for using it | On a conventional Arduino UNO these LCD keypad will connect the RST button directly to the reset of the arduino. This is a waste in our opinion and we have re-routed this button for using it on something more useful. | ||
===uint8_t state=== | ===uint8_t state=== |
Revision as of 20:42, 3 March 2021
under construction...
Installation
Download the zip file from Stepper_UNO_v1.0#Files.
Copy the StepperUNO folder in the sketchbook/library directory.
Configuration
Open the config.h file in the library/stepperUNO folder.
Change the KEYPAD_VERSION value as needed. Value should be 0 1 or 2. If you do not know just try one or the other and see how the button reacts.
Function list
Keypad
If the keypad does not reply correctly on the left/right/up/down/select button then a calibration should be performed. Values should be changed in the .h file of the library.
uint8_t ReadKey()
This function should be called as often as possible. Typically inside the main loop. This will update the Keypad.state variable with one of the defined event below.
#define PRESSED_NONE 0 #define PRESSED_RIGHT 1 #define PRESSED_UP 2 #define PRESSED_DOWN 3 #define PRESSED_LEFT 4 #define PRESSED_SELECT 5 #define RELEASED_NONE 6 #define RELEASED_RIGHT 7 #define RELEASED_UP 8 #define RELEASED_DOWN 9 #define RELEASED_LEFT 10 #define RELEASED_SELECT 11
Note this function does not manage the RST button. Use RstReadKey instead.
bool RstReadKey()
Same as above but for the RST button only.
The RST button is a special case. It has its own pin to the arduino mcu.
#define PRESSED_RST 12 #define RELEASED_RST 13 #define LONG_PRESSED_RST 14 #define LONG_RELEASED_RST 15
On a conventional Arduino UNO these LCD keypad will connect the RST button directly to the reset of the arduino. This is a waste in our opinion and we have re-routed this button for using it on something more useful.
uint8_t state
Event state. Will be equal to one of the define listed above once an event has occurred.
uint8_t rst_state
Same as state but for the RST button only.
void closeEvent()
Must be called once all action have been executed for a given event.
void rst_closeEvent()
Must be called once all action have been executed for a given event on the RST button.
Motor Control
void speed(int speed_m1);
Set the motor speed.
speed_m1 must be the delay between each step in milliseconds.
void setDirection(bool dir);
Set the direction.
void enable();
Enable the motor. Holds torque on the motor.
void disable();
Disable the motor. Allows the motor to spin freely.
void step();
Perform one single step.
void stop();
Stop the motor.
uint8_t address;
i2c address of the MCU controlling the motor. Usually 0x04 or 0x05.
void begin(uint8_t _address);
Initialiser to be used in Setup section of Arduino. address parameter is the i2c address of the motor controller. Usually 0x04 or 0x05.
bool running;
Indicates if the motor is running.
bool direction;
Indicates the motor direction.