Testprogram for TMC2209-Library. Uses Speed-Control via VACTUAL instead of Step/Dir

Dependencies:   TMCStepper mRotaryEncoder-os

Files at this revision

API Documentation at this revision

Comitter:
charly
Date:
Sat Dec 11 16:44:13 2021 +0000
Parent:
9:babbfb61d347
Commit message:
baremetal profile

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed_app.json Show annotated file Show diff for this revision Revisions of this file
--- 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);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed_app.json	Sat Dec 11 16:44:13 2021 +0000
@@ -0,0 +1,11 @@
+{
+    "requires": ["bare-metal"],
+    "target_overrides": {
+      "*": {
+        "target.c_lib": "small",
+        "target.printf_lib": "minimal-printf",
+        "platform.minimal-printf-enable-floating-point": false,
+        "platform.stdio-minimal-console-only": true
+      }
+    }
+}