Der AVR-/ARDUINO-Faden

Der chaotische Hauptfaden

Moderatoren: Heaterman, Finger, Sven, TDI, Marsupilami72, duese

xanakind
Beiträge: 12537
Registriert: So 11. Aug 2013, 21:55

Re: Der AVR-/ARDUINO-Faden

Beitrag von xanakind »

Danke, ich werde das mal testen.
Was ist nicht verstehe:
Ich habe einen funktionierenden mit meinem MKII ausgelesen und die beiden Files (Flash / EEPROM) 1:1 auf die reparierten gebrant.
Da müsste doch der funktionierende Bootloader gleich mit drauf sein?
xanakind
Beiträge: 12537
Registriert: So 11. Aug 2013, 21:55

Re: Der AVR-/ARDUINO-Faden

Beitrag von xanakind »

Tatsache!
Ich habe nun das Hex-File über ISP gebrannt.
Danach kann ich mein Testfile (Blink LED) über die adruino Oberfläche ganz normal hochladen.

Dankeschön! :D
bastelheini
Beiträge: 1663
Registriert: So 11. Aug 2013, 13:55

Re: Der AVR-/ARDUINO-Faden

Beitrag von bastelheini »

Vielleicht kann ein Wissender nochmal die Fuse mit der Bootsektorgröße prüfen. Nicht dass da was falsch ist und einem später gegens Bein läuft.
Benutzeravatar
Torpert
Beiträge: 1414
Registriert: Mo 12. Aug 2013, 22:40
Wohnort: Saarland
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Torpert »

Ich habe gerade die Einfachheit von micropython und die Power des Raspi Pico zusammen entdeckt :o
Ist vielleicht ein alter Hut für viele von euch, aber wer wie ich noch mit atmega8 und Co. rumdoktert und mit c nie warm wurde: probiert den mal aus :P

Der Chip hat 2 Kerne, die von micropython unterstützt werden. Ich kann ganz faul 2 threads parallel laufen lassen. Einer sammelt die Eingänge ein und der andere wertet und gibt aus. Ist vielleicht nicht die effizienteste Vorgehensweise, aber die Hardware ist offenbar schnell genug um das zu kompensieren. Und ganz ohne Gehirnakrobatik :)
ch_ris
Beiträge: 3029
Registriert: Mo 30. Nov 2015, 10:08

Re: Der AVR-/ARDUINO-Faden

Beitrag von ch_ris »

bastelheini hat geschrieben: So 14. Nov 2021, 21:27 Vielleicht kann ein Wissender nochmal die Fuse mit der Bootsektorgröße prüfen. Nicht dass da was falsch ist und einem später gegens Bein läuft.
kann xanakind ja nur selber. die default fuses stehen in der boards.txt und sind gleich für neu/alt.
Benutzeravatar
Torpert
Beiträge: 1414
Registriert: Mo 12. Aug 2013, 22:40
Wohnort: Saarland
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Torpert »

Ich habe mir einen Tiny 2040 von Pimoroni zum Probieren geholt:
IMG_20211119_122235.jpg
Funktioniert auf Anhieb mit der identischen Micropython-Firmware vom Raspi Pico :)

Er ist schön klein und hat einen USB-C Stecker. Dafür kostet er auch das Doppelte vom Raspi ;)

Ich habe noch einen Adafruit QT Py 2040 hier, aber noch nicht ausprobiert:
IMG_20211119_115211.jpg
Benutzeravatar
erwin
Beiträge: 709
Registriert: Do 15. Aug 2013, 08:57
Wohnort: 68642 Bürstadt
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von erwin »

Arduino Spezialist Gesucht

Hallo ich suche jemand der mir Merlin auf ein MKS Base V 1.4 Board auf spielt
Es ist für ein 3D Drucker
Benutzeravatar
Cubicany
Beiträge: 3543
Registriert: Sa 15. Feb 2020, 17:48
Wohnort: Soest

Re: Der AVR-/ARDUINO-Faden

Beitrag von Cubicany »

Also ich verstehe das mit Millis immer noch nicht.

Wir haben ein Programm, was mit Delays arbeitet und das soll auf millis umgeschrieben werden.

Das Ausgangsprogramm ist das:

#define ICPin 3 // Pin Einlesen IC
#define RelaisPin 5 // Pin Schalten Relais

void setup() {
// put your setup code here, to run once:
pinMode(ICPin,INPUT);
pinMode(RelaisPin,OUTPUT);
digitalWrite (RelaisPin, LOW);
}

void loop() {
// put your main code here, to run repeatedly:
digitalWrite (RelaisPin, HIGH);
if (digitalRead(ICPin)==HIGH)
{
delay (650); //Wartezeit bis Relais abgeschaltet wird
digitalWrite (RelaisPin, LOW);
delay (20000);
}
}

Also kein Hexenwerk.

Wir werten eine positive Flanke eines ICs aus, setzen ein Relais am Anfang auf AN, dann wenn das Signal
kommt, wird das Relais nach 650 ms abgeschaltet und nach 20 Sekunden wieder an.

So funktioniert das schon mal, aber da der Arduino später noch was parallel machen soll, sollen die Zeiten
durch millis ersetzt werden.

Ich verstehe nicht mal im Ansatz, wie dasmit millis geht, daher bringen Tipps wie "Lies da und da." nichts.
Benutzeravatar
Später Gast
Beiträge: 1680
Registriert: Di 5. Apr 2016, 22:03
Wohnort: Karlsruhe
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Später Gast »

millis() gibt die Millisekunden seit boot an und ist eine unsigned int. Wenn du die Zeit messen willst speicherst du zum Startpunkt den Wert von millis() in einer globalen unsigned int.

millis() läuft davon unberührt weiter. Wenn du jetzt die Differenz der beiden Werte bildest hast du die seit Startpunkt abgelaufene Zeit in Millisekunden.

Das packst du dann in einen vergleich.

Also zu Beginn
Startpunkt =millis();

Und dann if(millis()-Startpunkt>1000){ do something;}

Dann musst du noch dafür sorgen, dass die erste Zeile nicht dauernd aufgerufen wird, sonst sind Startpunkt und millis ja immer identisch.
MSG
Beiträge: 2182
Registriert: Fr 9. Nov 2018, 23:24
Wohnort: Nähe Dieburg

Re: Der AVR-/ARDUINO-Faden

Beitrag von MSG »

Cubicany hat geschrieben: Mi 24. Nov 2021, 13:19Also ich verstehe das mit Millis immer noch nicht.
Das macht nichts. Deswegen wurde es ja hier im Thread schon durchgekaut ;-)

Ich hatte da ein Vorschlag gemacht viewtopic.php?p=354321#p354321 und prompt wurde ich auf Fehler in meiner Logik hingewiesen (siehe den Beitrag drunter, danke nochmal an dieser Stelle :-) )
Benutzeravatar
Toni
Beiträge: 2523
Registriert: Di 13. Aug 2013, 18:24

Re: Der AVR-/ARDUINO-Faden

Beitrag von Toni »

erwin hat geschrieben: Mo 22. Nov 2021, 07:45 Arduino Spezialist Gesucht

Hallo ich suche jemand der mir Merlin auf ein MKS Base V 1.4 Board auf spielt
Es ist für ein 3D Drucker
Ich hatte damals das RAMPS 1.4 mit Marlin bespielt, das sollte kompatibel sein. Aufspielen war das kleinste Problem: Arduino auf dem PC installieren, USB-Kabel dran, ATMega2560 auswählen, Marlin-Projekt öffnen, Upload, fertig.
Für mich war es wie die Pest Marlin an meinen Drucker anzupassen ohne dass es dabei wegen falschen Anpassungen unkompilierbar wird...

Hast du schon die richtige Marlin Version für deinen Drucker?
IPv6
Beiträge: 2166
Registriert: Fr 17. Mär 2017, 22:05

Re: Der AVR-/ARDUINO-Faden

Beitrag von IPv6 »

Später Gast hat geschrieben: Mi 24. Nov 2021, 13:50 ...einer globalen unsigned int.
Sorry fürs Klugscheißen:
unsigned long bitte, damit es der selbe Datentyp ist wie die Funktion millis() zurückgibt und beide gleichermaßen überlaufen. Sonst gibt es Probleme nach ein paar Wochen Betrieb.
Jannyboy
Beiträge: 1406
Registriert: So 11. Aug 2013, 14:49
Wohnort: Kreis Augsburg

Re: Der AVR-/ARDUINO-Faden

Beitrag von Jannyboy »

Unsigned int geht auch, solange keine Zeitspanne länger als unsigned int ist.

Nur vorsichtig muss man sein... uint kann je nach Architektur unterschiedliche Größen haben. Zwischen 2 und 8 bzw. 16 Byte. Ganz sicher schreibt man uint32_t.

Grüße Jan
Benutzeravatar
Hightech
Beiträge: 11306
Registriert: So 11. Aug 2013, 18:37

Re: Der AVR-/ARDUINO-Faden

Beitrag von Hightech »

Cubicany hat geschrieben: Mi 24. Nov 2021, 13:19 So funktioniert das schon mal, aber da der Arduino später noch was parallel machen soll, sollen die Zeiten
durch millis ersetzt werden.
Das ist blödfug.
Wenn man eine Zeit präzise haben will und nebenbei anderes Zeug machen will nimmt man einen Timer und einen Interrupt.
Benutzeravatar
Später Gast
Beiträge: 1680
Registriert: Di 5. Apr 2016, 22:03
Wohnort: Karlsruhe
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Später Gast »

IPv6 hat geschrieben: Mi 24. Nov 2021, 21:37
Sorry fürs Klugscheißen:
unsigned long.
Nee ich sorry, du danke!

Bin grad etwas neben der Spur und schreib vom Schmierfon, hab natürlich unsigned long gemeint. :oops:
Wenn man zum Platzsparen ne kleinere Variable nehmen will sollte man schon sicherstellen, dass die nicht überläuft, sonst Bug, das hätte ich dann dazugeschrieben.
Benutzeravatar
Hightech
Beiträge: 11306
Registriert: So 11. Aug 2013, 18:37

Re: Der AVR-/ARDUINO-Faden

Beitrag von Hightech »

Unsigned long macht nach 50 Tagen einen Überlauf.
Wenn der Aparillo dann im richtig/falschen Moment die millis nimmt, bleibt das Relais sehr lange an, oder das Programm bleibt 50 Tage in der Warteschleife.
Benutzeravatar
Später Gast
Beiträge: 1680
Registriert: Di 5. Apr 2016, 22:03
Wohnort: Karlsruhe
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Später Gast »

Hightech hat geschrieben: Do 25. Nov 2021, 07:43 Unsigned long macht nach 50 Tagen einen Überlauf.
Wenn der Aparillo dann im richtig/falschen Moment die millis nimmt, bleibt das Relais sehr lange an, oder das Programm bleibt 50 Tage in der Warteschleife.
nope.
Durch das bilden der Differenz passiert eben das nicht. Dann läuft das Ergebnis auch über, Ergebnis ist das Gleiche wie ohne Überlauf.
Benutzeravatar
Harley
Beiträge: 1160
Registriert: So 11. Aug 2013, 21:16
Wohnort: Regensburg

Re: Der AVR-/ARDUINO-Faden

Beitrag von Harley »

Ich tu mir das nicht mehr an.
Für 4,50€ bekomme ich einen Raspberry Pi Pico.
Die C++ Jünger bekommen jetzt vermutlich Schnappatmung und grüne und gelbe Punkte im Gesicht.

Ich programmiere seit über 40 Jahren! Habe aber nie professionell in der Oberliga gespielt, weil ich beruflich da recht schnell raus war.
Ich finde es aber sensationell, was heute mit Micropython geht.
Gerade für Anfänger toll. Viele wollen ja gar keine Top-Programmierer werden, sondern blos ein paar kleine Sachen zum Laufen bringen.
In Thonny kann man jeden Befehl sofort ausprobieren, das übertragen des Programmes geht in Windeseile.

Der Pico spielt den Arduino mühelos in allen Disziplinen an die Wand!

Exakte Zeiten z.B.:
Codeschnipsel.jpg
(Auszug aus dem Buch "Messen Steuern und Regeln mit Micropython und RP2040" von H.J. Berndt, absolut empfehlenswert!)

Das stimmt auf die Millisekunde genau!

Man kann den Vergleich auch mit der Funktion time.ticks_diff() machen, dann werden Überläufe automatisch berücksichtigt.
Um Variablendefinitionen braucht man sich auch nicht zu kümmern.

Es gibt auch time.ticks_us und sogar time.ticks_ns !

Messwerte in Datei schreiben, Displays, Sensoren und und und, alles total pillepalle.
Mir kommt es nur noch drauf an, dass es schnell geht und problemlos funktioniert.

Ich bin von Micropython begeistert!
Benutzeravatar
Harley
Beiträge: 1160
Registriert: So 11. Aug 2013, 21:16
Wohnort: Regensburg

Re: Der AVR-/ARDUINO-Faden

Beitrag von Harley »

Kleines Beispiel:

Ich habe 2 Stromzähler mit S0 Ausgang. Einen an der Solaranlage und einen im Zugang zum Haus.
Also Solarertrag und Verbrauch.
Ich will eine 2/4/6 kW Heizpatrone in die Heizung einbauen und den Überschuß in die Heizung pfeffern.
Das muss natürlich sauber gesteuert werden.

Also das S0 Signal (1 Impuls / wh) auswerten. In der Periodendauer steckt die Leistung.
code s0.jpg
Das writer-Modul ist nur wegen der großen Schriftart drin. Ich kann die Fuzzelschrift sonst nicht lesen.
Die 0 und die 10000 in der print-Ausgabe sind dazu da, die Autoskalierung des Kennlinienschreibers in Thonny auszubremsen.
Die 30ms Pause ist nur drin, damit man die LED sehen kann (S0-Impuls-Kontrolle)
Der Pico macht in der Hauptschleife genau nichts (immer nur 100S pennen).
Die Gaudi ist Interruptgesteuert.

Mach das Alles mal auf die Schnelle mit nem Arduino ...

So sieht das dann aus:
P1070041.JPG
ch_ris
Beiträge: 3029
Registriert: Mo 30. Nov 2015, 10:08

Re: Der AVR-/ARDUINO-Faden

Beitrag von ch_ris »

Weil ich meinen Uno für was anderes brauche,hab ich mir einen Nano als ISP programmer zurecht gemacht.
Bin dem Bauvorschlag gefolgt und hab eine rgb LED eingebaut zur Status Anzeige.
die leuchtet jetz rot grün und blau, unabhängig davon ob ein Vorgang klappt oder nicht, weil zb gar nix dran hängt.
was soll der quatsch? oder bin ich zu doof?
ich sag erst mal: Nutzlos, schade um die led und die widerstände :(
Benutzeravatar
Cubicany
Beiträge: 3543
Registriert: Sa 15. Feb 2020, 17:48
Wohnort: Soest

Re: Der AVR-/ARDUINO-Faden

Beitrag von Cubicany »

Wie genau funktioniert das am Arduino denn mit dem Timer und Interrupt?

Da steigt es bei mir komplett aus.

Habe schon Videos gesehen und was dazu gelesen, aber absolut keine Ahnung, wie das gehen soll.

Gibt es da irgendwo was, was man verstehen kann, was nicht auf Englisch daher kommt?
Benutzeravatar
Hightech
Beiträge: 11306
Registriert: So 11. Aug 2013, 18:37

Re: Der AVR-/ARDUINO-Faden

Beitrag von Hightech »

Gehe in „Shop deiner Wahl“
Kaufe Buch „ Arduino für Anfänger „
Kaufe Buch „Avr für Dummies“
Lese die Tutorials für den AVR Atmega auf Micrikontroller. net

So wie wir alle das getan haben, in dieser oder anderer Reihenfolge.

Mehr kann man dazu erstmal nichts sagen,
Wenns dann klemmt, gerne nochmal hier fragen.
Benutzeravatar
Fritzler
Beiträge: 12579
Registriert: So 11. Aug 2013, 19:42
Wohnort: D:/Berlin/Adlershof/Technologiepark
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Fritzler »

Cubicany hat geschrieben: Fr 26. Nov 2021, 10:11 was nicht auf Englisch daher kommt?
Lern Englisch, sonst musst du garnicht erst anfagen mit Mikrocontrollern!
MSG
Beiträge: 2182
Registriert: Fr 9. Nov 2018, 23:24
Wohnort: Nähe Dieburg

Re: Der AVR-/ARDUINO-Faden

Beitrag von MSG »

Cubicany hat geschrieben: Fr 26. Nov 2021, 10:11Gibt es da irgendwo was, was man verstehen kann, was nicht auf Englisch daher kommt?
Hier ein gutes Video von GreatScott https://www.youtube.com/watch?v=IdL0_ZJ7V2s ist zwar auf Englisch, aber er selbst ist Deutscher. Und er erklärt meiner Ansicht nach so, dass man es versteht.
Benutzeravatar
Cubicany
Beiträge: 3543
Registriert: Sa 15. Feb 2020, 17:48
Wohnort: Soest

Re: Der AVR-/ARDUINO-Faden

Beitrag von Cubicany »

Ak, ok, dann kann man damit schon was anfangen.

Noch was:

Das ganze Konstrukt soll später Wechselspannung schalten. Also einfach ein und aus.
Die Relais haben bereits Freilaufdioden und Kapazität auf der 5V DC Seite verbaut.

Nun ist es aber so, dass der Arduino selbst mit dem Delay Programm regelmäßig hängen bleibt.

Also muss die Wechselspannung irgendwie den Controller aus dem Takt bringen.

Wie kann man das am besten entstören?
Benutzeravatar
Hightech
Beiträge: 11306
Registriert: So 11. Aug 2013, 18:37

Re: Der AVR-/ARDUINO-Faden

Beitrag von Hightech »

Dafür brauchen wir einen Schaltplan, um das bewerten zu können.
Benutzeravatar
Cubicany
Beiträge: 3543
Registriert: Sa 15. Feb 2020, 17:48
Wohnort: Soest

Re: Der AVR-/ARDUINO-Faden

Beitrag von Cubicany »

Hightech hat geschrieben: Fr 26. Nov 2021, 13:01 Dafür brauchen wir einen Schaltplan, um das bewerten zu können.
Mache ich daheim in einer ruhigen Minute mal fertig.
Benutzeravatar
Cubicany
Beiträge: 3543
Registriert: Sa 15. Feb 2020, 17:48
Wohnort: Soest

Re: Der AVR-/ARDUINO-Faden

Beitrag von Cubicany »

Also das Programm mit dem Timer läuft immer noch nicht wie es soll.

Denn es ist irgendwie egal, was ich als Zeiten eintrage.

Hier, vielleicht ja jemand den Fehler:

Code: Alles auswählen

#define ICPin 3 // Pin Einlesen IC
#define RelaisPin 5 // Pin Schalten Relais
long int timer=0;

void setup() {

  // put your setup code here, to run once
pinMode(ICPin, INPUT_PULLUP);
pinMode(RelaisPin,OUTPUT); 
digitalWrite (RelaisPin, HIGH);

 TCCR0A=(1<<WGM01);    //Set the CTC mode  
  OCR0A=0xF9; //Value for ORC0A for 1ms

  TIMSK0|=(1<<OCIE0A);   //Set the interrupt request
  sei(); //Enable interrupt

 

  TCCR0B|=(1<<CS01);    //Set the prescale 1/64 clock
  TCCR0B|=(1<<CS00);

}
void loop()
{
                //if (digitalRead(3)==HIGH)
               // {
                               if(timer>=10000)
                               {
              timer=0;
                                               digitalWrite (RelaisPin, LOW);
                               if(timer>=10000)
                               { 
               timer=0;
                               }
                                               digitalWrite (RelaisPin, HIGH);
}//}
                               ISR(TIMER0_COMPA_vect)
                               {    //This is the interrupt request
                               timer++;
                               }
Ich bin nach 3 Stunden davor sitzen nicht mehr in der Lage, irgendwas darin zu erkennen.
ch_ris
Beiträge: 3029
Registriert: Mo 30. Nov 2015, 10:08

Re: Der AVR-/ARDUINO-Faden

Beitrag von ch_ris »

sorry, ich bin da zu faul zu. ich nehm einfach millis, oder wenn aus irgendwelche spezial Gründe nicht möglich, eine Timerone/two...Lib.
andreas6
Beiträge: 4149
Registriert: So 11. Aug 2013, 15:09

Re: Der AVR-/ARDUINO-Faden

Beitrag von andreas6 »

Ohne jetzt das Programm zu testen, ich habe schlicht kein Umfeld dazu. Aber hier sind ein paar schlechte Angewohnheiten drin.
Oben wird ICPin und RelaisPin definiert. Später werden teilweise wieder numerische Angaben verwendet. Murks! Nach der Definition sind ausschließlich die definierten Konstanten zu verwenden. Sonst kann man sich diese nämlich sparen und nur auf Zahlen setzen. Nur wird der Code dann komplett unlesbar.
Die gewünschte Logik innerhalb von loop() ist nicht gegeben. Vermutlich sind Klammern entfernt worden und dann nach Syntaxmeckereien planlos ans Ende angefügt worden. Hier empfehle ich erneut den Einsatz des ursprünglichen Quellcodes - der muss mal funktioniert haben.
Die Lesbarkeit des Codes geht gegen Null, dabei sind das nur wenige Zeilen. Korrekte Einrückung und Klammerung sind für die Übersicht notwendig. Ein für die Programmierung geeigneter Editor kann dabei sehr helfen.
Ansonsten lernt es sich deutlich einfacher ohne Timer, viele Grundfunktionen brauchen den nicht. Register durchzählen und auswerten ist viel einfacher und besser zu durchschauen.

MfG. Andreas
Benutzeravatar
Fritzler
Beiträge: 12579
Registriert: So 11. Aug 2013, 19:42
Wohnort: D:/Berlin/Adlershof/Technologiepark
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Fritzler »

Ja, solch schlechten Code sieht man echt selten.

Es sollte wirklich BEVOR irgendwie weitergemacht wird ein Buch konsultiert werden.
Das führt sonst einfach zu nichts, da ist nichtmal das grundlegendste Verständnis der Klammersetzung vorhanden.
Benutzeravatar
Cubicany
Beiträge: 3543
Registriert: Sa 15. Feb 2020, 17:48
Wohnort: Soest

Re: Der AVR-/ARDUINO-Faden

Beitrag von Cubicany »

Ich muss zur Ehrenrettung dazu sagen, dass das nicht mein Code ist.

Ich habe da mit wem per Mail Kontakt gehabt und wir haben uns den Code immer
hin und her gemailt und es gab nie einen wirklich funktionierenden Stand.

Tja, muss ich mir morgen mit gaaanz viel Muße nochmal rein tun.
ch_ris
Beiträge: 3029
Registriert: Mo 30. Nov 2015, 10:08

Re: Der AVR-/ARDUINO-Faden

Beitrag von ch_ris »

du musst erstmal n vernünftigen editor haben. notepad++ zb. und den text formatieren. dauert eine Tastenkombination. im Grunde das gleiche was ich bei dem mathe Problem geschrieben hab. so wie oben stellst du dir selber ein bein.

edit. np++ hab ich schon ewig, nervt aber seit längerer Zeit. -> PSPad scheint ganz gut.
Zuletzt geändert von ch_ris am Sa 27. Nov 2021, 09:18, insgesamt 2-mal geändert.
Anse
Beiträge: 2278
Registriert: Mo 12. Aug 2013, 21:30
Wohnort: Bühl (Baden)

Re: Der AVR-/ARDUINO-Faden

Beitrag von Anse »

Cubicany hat geschrieben: Fr 26. Nov 2021, 14:17 Hier, vielleicht ja jemand den Fehler:
Es fehlt auf jeden Fall eine geschweifte Klammer zu. Sollte definitiv einen Syntaxfehler bringen.
Vielleicht ist die auch beim wilden Auskommentieren drauf gegangen.
ch_ris
Beiträge: 3029
Registriert: Mo 30. Nov 2015, 10:08

Re: Der AVR-/ARDUINO-Faden

Beitrag von ch_ris »

Cubicany hat geschrieben: Fr 26. Nov 2021, 20:31 Tja, muss ich mir morgen mit gaaanz viel Muße nochmal rein tun.
Und? Hast die Fehler gefunden?
--------------------------
Ich will mir mal einen HV Fuse Doctor bauen um beim Tiny den Reset Pin nutzen zu können.
Wie ist das denn das bei einem verfusten Nano?
Ich las, man müsse zumindest den Quarz ablöten oder den 328p komplett auslöten.
Das macht das absurd für mich, dann brauch ich den entsprechenden Code nicht zu einzubauen.
(Von der Kontaktierungs-Problematik mal ganz abgesehen, aber das wäre noch irgendwie lösbar.)
Benutzeravatar
Cubicany
Beiträge: 3543
Registriert: Sa 15. Feb 2020, 17:48
Wohnort: Soest

Re: Der AVR-/ARDUINO-Faden

Beitrag von Cubicany »

ch_ris hat geschrieben: Di 7. Dez 2021, 10:22
Cubicany hat geschrieben: Fr 26. Nov 2021, 20:31 Tja, muss ich mir morgen mit gaaanz viel Muße nochmal rein tun.
Und? Hast die Fehler gefunden?
Ne, ich nicht, aber der, von dem das kam.

Da musste noch irgendwie ein Flag als Merker rein, mehr habe ich nicht verstanden.
Benutzeravatar
Weisskeinen
Beiträge: 3942
Registriert: Di 27. Aug 2013, 16:19

Re: Der AVR-/ARDUINO-Faden

Beitrag von Weisskeinen »

Code: Alles auswählen

...
if(timer>=10000)
{
	timer=0;
        digitalWrite (RelaisPin, LOW);
	if(timer>=10000)
        { 
        	timer=0;
        }
        digitalWrite (RelaisPin, HIGH);
...
Merkste was? Die zweite verschachtelte if-Abfrage wird nie aufgerufen (warum auch, timer ist ja schon aus Null gesetzt) und wird möglicherweise komplett weg optimiert. Und der Relais-Pin ist so kurz LOW, dass das Relais das nie und nimmer merkt. Was das soll, weiß ich nicht...

Edit: Wenn man variablen im Hauptprogramm und in einer Interruptroutine verändert, sollte man die übrigens noch als volatile deklarieren. Sonst können da ganz seltsame Sachen passieren, je nach Lust und Laune des Compilers...
Benutzeravatar
Toddybaer
Beiträge: 4704
Registriert: Sa 11. Jun 2016, 13:48
Wohnort: Hemmoor

Re: Der AVR-/ARDUINO-Faden

Beitrag von Toddybaer »

Nimmt man bei einem Arduino zur Datenübertragung nun GSM oder LTE Module?
Viele Daten sind das nicht.

LAN und W-LAN gis zwar auch noch, hab ich aber nicht überall zur Verfügung

Kann der Arduino bei einem Interrupt dann auch per Telefon nach hause telefonieren? Oder über einen Lautsprecher eine Sprachnachricht dudeln lassen? (Bleiben sie wo sie sind, die Polizei ist informiert, eine Videoaufnahme wurde gestartet)
Anse
Beiträge: 2278
Registriert: Mo 12. Aug 2013, 21:30
Wohnort: Bühl (Baden)

Re: Der AVR-/ARDUINO-Faden

Beitrag von Anse »

Toddybaer hat geschrieben: Mi 29. Dez 2021, 10:22 Kann der Arduino bei einem Interrupt dann auch per Telefon nach hause telefonieren? Oder über einen Lautsprecher eine Sprachnachricht dudeln lassen? (Bleiben sie wo sie sind, die Polizei ist informiert, eine Videoaufnahme wurde gestartet)
Also mit dem SIM800 Modul habe ich so Sachen schon gemacht. Ist ein schön günstiges Modul. Allerdings würde ich immer zum stillen Alarm raten. Entweder still oder so, das der Täter so einen Schreck bekommt, dass er nicht mehr rum schnüffelt.

Ich vermute mal Du willst was mit Bewegungsmelder machen. Darum der Hinweis: Fast alle im Handel erhältlichen PIR Sensoren arbeiten eher unzuverlässig neben Funkmodulen. Das einzige Modul, welches gut funktioniert, ist mit dem AM132. Wahrscheinlich weil dort die ganze Elektronik in der Blechbüchse integriert ist. Aber auch dort sollte die Versorgungsspannung gut gefiltert werden.
Benutzeravatar
Toddybaer
Beiträge: 4704
Registriert: Sa 11. Jun 2016, 13:48
Wohnort: Hemmoor

Re: Der AVR-/ARDUINO-Faden

Beitrag von Toddybaer »

Stiller Alarm ist schlecht, weil bis ich dann da bin, ist auch schon alles zu spät.

Ich dachte an Reedkontakten unter den Kisten. Als Öffner, alle in Reihe. Wenn jemand dann eine Kiste Hochnimmt, gibs Alarm.
Anse
Beiträge: 2278
Registriert: Mo 12. Aug 2013, 21:30
Wohnort: Bühl (Baden)

Re: Der AVR-/ARDUINO-Faden

Beitrag von Anse »

Ach so ist das. Dann aber vielleicht keine lächerliche Ansage. Eher eine 110 dB Tröte oder so was in der Art.
Oder die Kiste unter Spannung setzten. Harmlos natürlich aber sehr schmerzhaft.
Benutzeravatar
Bastelbruder
Beiträge: 11481
Registriert: Mi 14. Aug 2013, 18:28

Re: Der AVR-/ARDUINO-Faden

Beitrag von Bastelbruder »

Da muß ein (international verständliches) Warnschild mit Gummigesicht und Flasche innen an der Tür hängen. Plötzlich Licht aus, Spot an! Und aus einem unsichtbaren Lautsprecher: dit - - - - ditdit - - - ditditdit - - ditditditdit - diiii. Pschschsch ...
ch_ris
Beiträge: 3029
Registriert: Mo 30. Nov 2015, 10:08

Re: Der AVR-/ARDUINO-Faden

Beitrag von ch_ris »

Code: Alles auswählen

((100/3.6)/(1.95))*(43/16)*26
= 995,37037037037037037037
das ist die Ausgabe vom PC calculator.
Auf dem Nano ausgeführt ergibt das glatt 1000, bzw 1000 ergibt 100.

Code: Alles auswählen

return ((((float) a/ ( b* c)) * d)* 3.6);
Alle Werte sind float ausser a, weiteres casten ändert nix.

das mir der Präzision hab ich schon mal gelesen, daher bin ich eh geizig mit float.
hier ist's mir "egal" das ist nur ein Nebenprojekt.

Anderes Problem hab ich mit dem Tiny gehabt.
Der Main Loop ruft eine Methode mit switch, die wiederum eine Methode mit switch aufruft.
Die Methoden setzen bzw. ändern ihren case innerhalb des switch.
Das gelang nicht und ergab eine Todesschleife.
Hab den Fehler im Code gesucht wie blöd, aber nix gefunden.
mit flacherer Verschachtelung ging's dann.
möglicherweise...ich hab den Flash gut ausgenutzt, 7+Kb von 8.
weis nich ob das damit was zu tun hat. Ram ist noch gut vorhanden.
Benutzeravatar
Hightech
Beiträge: 11306
Registriert: So 11. Aug 2013, 18:37

Re: Der AVR-/ARDUINO-Faden

Beitrag von Hightech »

Meine Arduinos sterben wie die Fliegen, wenn ich den Vin benutze. Entweder stirbt nur der Spannungsregler oder der legiert durch und der MC ist auch im Arsch!

Vin besser nicht nicht benutzen für Spannung größer 6V.
Benutzeravatar
Toddybaer
Beiträge: 4704
Registriert: Sa 11. Jun 2016, 13:48
Wohnort: Hemmoor

Re: Der AVR-/ARDUINO-Faden

Beitrag von Toddybaer »

Anse hat geschrieben: Do 30. Dez 2021, 13:46 Ach so ist das. Dann aber vielleicht keine lächerliche Ansage. Eher eine 110 dB Tröte oder so was in der Art.
Oder die Kiste unter Spannung setzten. Harmlos natürlich aber sehr schmerzhaft.
Schön wäre auch noch eine Drohne die irgendwo aus den Büchen abhebt und in 10m Höhe über den Bienenstand kreist. Vielleicht sogar mit Videokamera
Benutzeravatar
Später Gast
Beiträge: 1680
Registriert: Di 5. Apr 2016, 22:03
Wohnort: Karlsruhe
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Später Gast »

ch_ris hat geschrieben: So 2. Jan 2022, 07:17 ...
das mir der Präzision hab ich schon mal gelesen, daher bin ich eh geizig mit float.
...
Hast du da evtl nen Link zu?
Ich hab da n Projekt mit schneller und genauer Temperaturmessung, (840sps 16bit ballern in ein Array von 30 Werten, wenn der voll ist, wird der Schnitt ausgegeben, macht rauschfreie 28sps) die mit "double" arbeitet, was ja bei arduino wie float behandelt wird. Da hatte ich mal in der seriellen Ausgabe das runterdividieren vergessen und war über das häufige Auftauchen identischer Werte verwundert. Der PID Regler arbeitet auf +-1K genau, also tadellos, aber das Bessere ist der Feind des Guten. ;-)
Benutzeravatar
Später Gast
Beiträge: 1680
Registriert: Di 5. Apr 2016, 22:03
Wohnort: Karlsruhe
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Später Gast »

Hightech hat geschrieben: So 2. Jan 2022, 09:19 Meine Arduinos sterben wie die Fliegen, wenn ich den Vin benutze. Entweder stirbt nur der Spannungsregler oder der legiert durch und der MC ist auch im Arsch!
Hatte ich bei ner Charge pro minis auch schon. Bei mir klassischer Fall von zu billig gekauft. Bei meinen steigt die Stromaufnahme mit der Eingangsspannung extrem an, was dann zur thermischen Überlastung führt. Resultat: Die Minis liegen wie Blei in der Sortierkiste. 🤷‍♂️
ch_ris
Beiträge: 3029
Registriert: Mo 30. Nov 2015, 10:08

Re: Der AVR-/ARDUINO-Faden

Beitrag von ch_ris »

Später Gast hat geschrieben: So 2. Jan 2022, 14:18 Hast du da evtl nen Link zu?
nee, goock mal avr float precision.
ich denke das ist ein Fall von isso.
Benutzeravatar
Später Gast
Beiträge: 1680
Registriert: Di 5. Apr 2016, 22:03
Wohnort: Karlsruhe
Kontaktdaten:

Re: Der AVR-/ARDUINO-Faden

Beitrag von Später Gast »

Hmm. Meinst du dashier:
.Floats have only 6-7 decimal digits of precision. That means the total number of digits, not the number to the right of the decimal point. Unlike other platforms, where you can get more precision by using a double (e.g. up to 15 digits), on the Arduino, double is the same size as float.
Das hab ich mir beim Schreiben angeschaut und sollte mir eigentlich keine Probleme machen, die Temperaturen sind nur dreistellig, bleiben drei Nachkommastellen, so genau wirds selbst mit der Schnittbildung eher nicht. Muss ich wohl nochmal meinen Stuhlgang konsultieren, als Möchtegernkoter kommt's schon vor, dass ich suboptimal rechnen lasse... :? :P
Bumbum
Beiträge: 280
Registriert: Mi 22. Apr 2015, 19:04

Re: Der AVR-/ARDUINO-Faden

Beitrag von Bumbum »

Hallo,

ich habe heute eine mir unbekannte Zählweise bei einem Gerät entdeckt. Hier mal zwei paar Beispiele:

FF FF 01 --> 80 80 02
FF 80 02 --> 80 81 02

Kennt jemand so etwas und wenn ja: Wie dekodiert man das nach Dezimal?

Viele Grüße
Andreas
Antworten