1546
Composants / Re : Digispark Kickstarter Attiny85
« le: août 27, 2018, 09:14:53 am »
Merci Michel pour toutes ces précisions très utiles.
Dominique
Dominique
Le forum LOCODUINO est consacré aux discussions ayant trait à l'utilisation de l'Arduino dans les automatismes et les animations pour le train miniature. Nous avons eu récemment quelques inscriptions de personnes ayant des projets plus généraux mais surtout inapplicables au train miniature. Si votre projet ou vos questions ne concernent pas le modélisme ferroviaire, ne vous inscrivez pas, vous perdriez votre temps et nous aussi.
Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.
j’ai la led rouge erreur qui clignote.
Concernant les leds de l’inter marche/arrêt et de l’inter lumière elles n’utilisent aucun port de l’arduino mais sont soudées sur les interrupteurs ?C’est un alternative aux leds commandées par logiciel. Les 2 sont possibles
Je souhaiterais pouvoir activer sur la loco du va et vient une fonction déclenchant une annonce de départ ou d’arrivee en gare.Cela existe déjà avec la fonction « lumière ». Tu peux dupliquer les fonctions mTrain.allume() et mTrain.eteint() et les affecter à une autre fonction de la loco.
Pas trop compliqué à programmer ?
void DCCpp::beginMain(uint8_t inOptionalDirectionMotor,
uint8_t inSignalPin, uint8_t inSignalEnable,
uint8_t inCurrentMonitor)
{
int iCurrent = analogRead(A0);
if (iCurrent > gCurrent) {
gCurrent = iCurrent;
if (gCurrent > CurrentMax) { // 400 * 5 = 2000 mA
stop_DCC();
}
}
// affichage courant = la valeur maxi pendant 500 ms
if ((millis() - gCurrentSampleTime) > 500) {
gCurrentSampleTime = millis();
lcd.setCursor(13,1);lcd.print(gCurrent*5);lcd.print(' '); // en mA réels
gCurrent = 0;
}
int iCurrent = analogRead(A0);
if (iCurrent > gCurrent) {
gCurrent = iCurrent;
if (gCurrent > CurrentMax) { // 400 * 5 = 2000 mA
stop_DCC();
}
}
if ((iCurrent == 0) && (mAutomate.auto_etat > 2)) { // perte de consommation
if ((millis() - gCurrentNulTime) > NULCURRENT_TIME) {
mAutomate.auto_etat=INIT; // RAZ automate
mAutomate.LRclignote=true; // led rouge clignote
mTrain.cran_vitesse = 0; // vitesse = 0
mTrain.lumiere=false;
delay(2000);
stop_DCC(); // arrêt DCC
lcd.setCursor(10,1);lcd.print("Faucon");
// panne de courant : faire STOP puis START pour redémarrer
}
} else {
gCurrentNulTime = millis(); // relance tempo
}
For Mega2560 base stations the ESP should be connected to Serial1, for Uno
(or other) boards you must define two pins and set them in Config.h as
WIFI_SERIAL_RX and WIFI_SERIAL_TX.
Once the base station has successfully connected to the ESP it will
attempt to connect to the defined WiFi AP defined in WIFI_SSID using
WIFI_PASSWORD. Upon successfull connection to the WiFi AP DCC++ will
start a server on the ESP8266 with port 2560 (for JMRI) and port 80 for
HTTP and WebSocket. The http server on the ESP8266 provides a two
cab throttle and eventually will provide a more complete interface to
DCC++ base station functionality (define turnouts, sensors, etc).
WiThrottle support is planned in the future with the ESP8266 providing a
listener and interpreter layer for converting to/from DCC++ protocol.
Voila le premier détecteur est monté, si j'ai bien compris les connections se font comme dessinées sur la photo.