Elektrik und Elektronik

RE: Hilfe zu Mobatools Servo ansteuern Dcc

 von mondmann25 , 12.01.2021 17:16

Hallo Franz-Peter,
ich habe keinen Drehencoder dran und das define auskommentiert siehe Code.
Oder braucht man unbedingt einen Encoder?
Welche Encoder verwendest Du?
Die Encoder (KY-040 360 Degrees Dreh-Encoder) die ich habe haben keinen Taster dran.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
 
//#define ENCODER_DOUBLE  // Eigenschaften des Drehencoders (Impulse per Raststellung)
 

// vom Anwender änderbare Parameter um den Zubehördecoder an die verwendete HW anzupassen
 
// Beispiel für Variante mit Licht-Ausfahrsignal mit Vorsignal, mit Betriebsmode Led an Pin 13 (interne Led)
// für Arduino Nano
 
//----------------------------------------------------------------
// Hardwareabhängige Konstante ( nicht per CV änderbar)
//----------------------------------------------------------------
// Eingänge analog: ( Bei Nano und Mini - Versionen kann hier auch A7 und A6 verwendet werden, um mehr
// digital nutzbare Ports freizubekommen.
// beim UNO sind A7+A6 nicht vorhanden! )
//#define FIXMODE NORMALMODE // Ist dieses define aktiv, wird der Betriebsmode fest gesetzt, betrModeP wird dann
// nicht gelesen und ignoriert. Mögliche Werte:
// NORMALMODE, POMMODE, INIMODE, ADDRMODE
const byte betrModeP = A5; // Analogeingang zur Bestimmung des Betriebsmodus. Wird nur beim
// Programmstart eingelesen!
const byte resModeP = A4; // Rücksetzen CV-Werte + Mittelstellung Servos
 
// Eingänge digital (die Ports A0-A5 lassen sich auch digital verwenden): ---------
 
// Drehencoder zur Servojustierung ...........
//#define ENCODER_AKTIV // Wird diese Zeile auskommentiert, wird der Encoder nicht verwendet.
// Die Encoder-Ports werden dann ignoriert, und können anderweitig
// verwendet werden.
const byte encode1P = A3; // Eingang Drehencoder zur Justierung.
const byte encode2P = A2;
// ............................................
//-------------------------------------------------------------------------------------------------------
// Betriebswerte ( per CV änderbar ) Diese Daten werden nur im Initiierungsmodus in die CV's geschrieben.
// Der Initiierungsmodus lässt sich per Mode-Eingang aktivieren oder er ist automatisch aktiv, wenn keine
// sinnvollen Werte im CV47 stehen.
//-------------------------------------------------------------------------------------------------------
const int DccAddr = 6; // DCC-Decoderadresse
const byte iniMode = 0x50 | AUTOADDR /*| ROCOADDR*/; // default-Betriebsmodus ( CV47 )
const int PomAddr = 50; // Adresse für die Pom-Programmierung ( CV48/49 )
// mit LocoNet-Schnittstelle ist dies die LocoNetId
#define NOACK // Diese Zeile aktivieren, wenn keine HW zum CV auslesen vorhanden ist
// ( kein Ack-Pin ) Der in Interfac.h definierte Pin wird dann zwar als OUTPUT
// gesetzt, kann aber für beliebige Funktionen in der Tabelle unten genutzt werden
 

// Ausgänge: mit NC gekennzeichnete Ausgänge werden keinem Port zugeordnet. Damit können Ports gespart werden,
// z.B. wenn bei einem Servo kein Polarisierungsrelais benötigt wird
const byte modePin = 13; // Anzeige Betriebszustand (Normal/Programmierung) (Led)
 
#define STATICRISE (250/50 << 4) // Softled riseTime = 250
#define COILMOD NOPOSCHK|CAUTOOFF
#define SERVOMOD SAUTOOFF|NOPOSCHK|SDIRECT
#define STATICMOD CAUTOOFF|BLKSOFT|BLKSTRT|STATICRISE // Wechselblinker mit beiden Leds an beim Start
const byte iniTyp[] = { FSERVO, FSERVO, FSERVO };
const byte out1Pins[] = { 3, 4, 5 }; // output-pins der Funktionen
const byte out2Pins[] = { NC, NC, /*gn*/NC };
const byte out3Pins[] = { NC, NC, /*ge*/ NC };

const byte iniFmode[] = {SERVOMOD, SERVOMOD, SERVOMOD };
const byte iniPar1[] = { 30, 30, 30 }; //Endlage Servo
const byte iniPar2[] = { 150, 150, 150 };// Endlage Servo
const byte iniPar3[] = { 8, 8, }; //Geschwindigkeit bei Servos
const byte iniPar4[] = { 0, 0, 0 }; // nur für Lichtsignale!
 

mondmann25
Beiträge: 29
Registriert am: 28.01.2012

Themen Überblick

Betreff Absender Datum
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 08.11.2020
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 09.11.2020
RE: Hilfe zu Mobatools Servo ansteuern Dcc MoBa_Alfred 10.11.2020
RE: Hilfe zu Mobatools Servo ansteuern Dcc MicroBahner 10.11.2020
RE: Hilfe zu Mobatools Servo ansteuern Dcc MicroBahner 11.11.2020
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 11.11.2020
RE: Hilfe zu Mobatools Servo ansteuern Dcc MicroBahner 11.11.2020
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 12.11.2020
RE: Hilfe zu Mobatools Servo ansteuern Dcc MicroBahner 13.11.2020
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 11.01.2021
RE: Hilfe zu Mobatools Servo ansteuern Dcc MicroBahner 11.01.2021
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 12.01.2021
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 12.01.2021
RE: Hilfe zu Mobatools Servo ansteuern Dcc MicroBahner 13.01.2021
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 05.02.2021
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 06.02.2021
RE: Hilfe zu Mobatools Servo ansteuern Dcc MicroBahner 06.02.2021
RE: Hilfe zu Mobatools Servo ansteuern Dcc mondmann25 07.02.2021
 

Xobor Einfach ein eigenes Forum erstellen
Datenschutz