Deep Sky Nachführung Fotografie

Hallo zusammen.

Ich bin nun auch etwas weiter gekommen. Die Sache mit dem DS3231 Modul hat mich irgendwie angesprochen.

Modul hatte ich daheim.

Nun habe ich, zugegeben aus zwei Programmen, eins gemacht. Da ich des Programmierens noch nicht mächtig bin habe ich es mir anhand von zwei beispielen zusammen kopiert.

Es gibt ja haufenweise Tutorials, auch auf deutsch, die ich so einigermaßen verstehe.

Jetzt habe ich einen Sketch der bewirkt dass eine LED im Takt vom DS3231 blinkt.

Praktisch könnte ich nun den LED Pin als Step für den Treiber hernehmen und der Schrittmotor würde bei jedem Interupt CHANGE eine step machen.

Wie kann ich das nun auf meine benötigte stepzeit, Frequenz oder Drehzahl umrechnen?
Dazu bräuchte ich euch.

Hier noch der Sketch

gruß nic

// RTC DS3231 SQW Ausgang auf 1 Hz einstellen mit +-2ppm.
// Optional können auch 1,024kHz, 4,096kHz, 8,192kHz
// ausgegeben werden.
//
// Matthias Busse 8.11.2016 Version 1.0

const int hzPin = 2;
const int ledPin = 6;
volatile int hzState = 0;

#include "Wire.h"
#define DS3231_ADDRESSE 0x68
void setup() {
  Wire.begin();
  Serial.begin(115200);
  sqw1HzDS3231();
  
  pinMode(ledPin, OUTPUT);
  pinMode(hzPin, INPUT);
  attachInterrupt(0, pin_ISR, CHANGE);
}
void loop() {
 //nix zu tun
}
void sqw1HzDS3231() {
  // 1 Hz Rechteck ausgeben am SQW Ausgang  
  Wire.beginTransmission(DS3231_ADDRESSE);
  Wire.write(0x0e); // DS3231 Register zu 0Eh
  Wire.write(B01100011); // Register schreiben
  Wire.endTransmission();
}
void pin_ISR() {
  hzState = digitalRead(hzPin);
  digitalWrite(ledPin, hzState);
}