Testprogram for TMC2209-Library. Uses Speed-Control via VACTUAL instead of Step/Dir
Dependencies: TMCStepper mRotaryEncoder-os
Diff: main.cpp
- Revision:
- 10:376299814a3b
- Parent:
- 9:babbfb61d347
diff -r babbfb61d347 -r 376299814a3b main.cpp
--- a/main.cpp Thu Dec 02 20:30:09 2021 +0000
+++ b/main.cpp Sat Dec 11 16:44:13 2021 +0000
@@ -12,14 +12,15 @@
*/
-DigitalOut ledCW(LED1); // Show rotation clockwise
-DigitalOut ledCCW(LED2); // Show rotation counterclockwise
+DigitalOut ledCW(LED1); // Show rotation clockwise // Gren LED LD3
+DigitalOut ledCCW(NC); // Show rotation counterclockwise // no more LEDs on L432
//Virtual serial port over USB with 15200 baud 8N1
static BufferedSerial host(USBTX, USBRX,115200);
//mRotaryEncoder(PinName pinA, PinName pinB, PinName pinSW, PinMode pullMode=PullUp, int debounceTime_us=1000)
-mRotaryEncoder wheel(p16, p17, p18,PullUp,3000); // default 1500
+mRotaryEncoder wheel(D2, D3, D6,PullUp,3000); // default 1500
+ //D7, D8 not available on L432KC with default solder bridges
// hardware parameters:
// MOTOR Steps per Revolution ( 1/8 Microsteps, 200Steps per Rev / 1.8 degrees per FullStep)
@@ -30,15 +31,15 @@
#define DRIVER_ADDRESS 0b00 // TMC2209 Driver address according to MS1 and MS2
#define R_SENSE 0.11f // R-Sense in OHM. Match to your driver
#define MICROSTEPS 256 // # of microsteps
-#define RMSCURRENT 1000 // RMS current of Stepper Coil in mA
-#define MAXSPEED 5000 // Maximaum speed (5000 with RMS800 @12V/0.6Amax)
+#define RMSCURRENT 800 // RMS current of Stepper Coil in mA
+#define MAXSPEED 5500 // Maximaum speed (5500 with RMS800 @12V/0.6Amax)
// A TMCStepper-object with UART and given address and R-Sense
//RX, TX, RS, Addr
-TMC2209Stepper stepper(p14, p13, R_SENSE, DRIVER_ADDRESS);
+TMC2209Stepper stepper(D0, D1, R_SENSE, DRIVER_ADDRESS);
-InterruptIn diag(p21);
-DigitalOut enn(p22);
+InterruptIn diag(D12);
+DigitalOut enn(D11);
volatile bool enc_pressed = false; // Button of rotaryencoder was pressed
volatile bool enc_rotated = false; // rotary encoder was totaded left or right
@@ -81,7 +82,7 @@
int main()
{
printf("\r\nConnected to mbed\r\n");
-
+ printf("This is Mbed OS %d.%d.%d.\n", MBED_MAJOR_VERSION, MBED_MINOR_VERSION, MBED_PATCH_VERSION);
//Intitiallize RotaryEncoder
// call trigger_sw() when button of rotary-encoder is pressed
wheel.attachSW(&trigger_sw);