Forum: /dev/null I2C "blockiert" Arduino [Endet 31.10.]


von oldeurope O. (Gast)


Lesenswert?

Mir ist aufgefallen, dass wenn ich das I2C-Display anspreche,
andere Funktionen gestört sind.
Das betrifft u.A. den Sinusgererator (für den 25Hz Pilotton).

Ich musste das für die Unterspannungsanzeige mit einer
if-else-millis()-Orgie lösen, die das Display wirklich nur
einmal anspricht wenn die Unterspannung da ist oder eben nicht.
Das stört nicht weiter, da die Anzeige Unterspannung nur im
Fehlerfall auftritt und für eine Periode den Pilotton verbeult.

Wenn ich mir den Audiopegel als Zahlenwert darstellen
lassen will, bekomme ich aber ein Problem, weil dieser Wert
sich ja häufig ändert. wie löst man das?

Der Sketch ist dort hochgeladen:
Beitrag "<rotary.h> mit bool "ein" und Ausschalten."


LG
old.

: Gesperrt durch Moderator
von STK500-Besitzer (Gast)


Lesenswert?

Aus der W. schrieb:
> wie löst man das?

Indem mal mal guckt, wie die I²C-Library funktioniert: Ist si polling- 
oder interrrupt gesteuert?
Ansonsten muss man sich sowas halt selber bauen.
Arduino bedeutet nicht, dass die Funktionen optimal gebaut sind, 
sondern, dass sie akzeptabel funktionieren.
Da kann es auch passieren, dass sie blockierend arbeiten.

von PittyJ (Gast)


Lesenswert?

Mehr als 2 mal die Sekunde braucht man kein Display updaten. Schneller 
liest kein Mensch.

Ansonsten sollte man statt millis() lieber etwas vernüntfiges nehmen und 
gleich auf ein Echtzeitsystem wechseln (FreeRtos).
Oder sich zumindest mit Interrupts anfreunden.

Vielleicht sollte man sich auch im Voraus die Anforderungen klarmachen, 
bevor man anfängt auf einem kleinen Arduino zu prokeln.

von Bernd K. (prof7bit)


Lesenswert?

Wenn Deine I2C-Library blockierend arbeitet dann musst Du dafür sorgen 
daß es die niedrigste Priorität bekommt, sprich alles andere was 
kritisch vom Timing ist muß in einen Interrupt. Dann kann I2C (und 
anderes unkritische Zeug) in der main loop herumtrödeln so sehr es will.

von oldeurope O. (Gast)


Lesenswert?

Gibt es denn für mich die Möglichkeit zumindest den 25Hz Sinus
aus der Blockade rauszunehmen?

LG
old.

von Wolfgang (Gast)


Lesenswert?

PittyJ schrieb:
> Mehr als 2 mal die Sekunde braucht man kein Display updaten. Schneller
> liest kein Mensch.

Das ist doch wohl ein schwaches Argument.

Guck dir mal an, wie das Spektrum eines 25Hz Pilottones aussieht, wenn 
er "nur" 2 mal in der Sekunde verunstaltet wird.

von oldeurope O. (Gast)


Lesenswert?

Bernd K. schrieb:
> sprich alles andere was
> kritisch vom Timing ist muß in einen Interrupt.

Mal davon abgesehen, dass ich dazu nicht fähig bin …
Der 25Hz Sinus muss ja ständig da sein und es würde
nichts anderes mehr funktionieren.

LG
old.

von OMG (Gast)


Lesenswert?

Bernd K. schrieb:
> Wenn Deine I2C-Library blockierend arbeitet dann musst Du dafür sorgen
> daß es die niedrigste Priorität bekommt

Das sagst du einem Arduino-User der es nicht mal schafft seine
Code Kreation übersichtlich zu formatieren?

Wie soll er mit deinen vagen Tips die Auslastung seines Arduinos
auf die Reihe bringen?

von oldeurope O. (Gast)


Lesenswert?

OMG schrieb:
> Das sagst du einem Arduino-User der es nicht mal schafft seine
> Code Kreation übersichtlich zu formatieren?
>
> Wie soll er mit deinen vagen Tips die Auslastung seines Arduinos
> auf die Reihe bringen?

Eben. Ist ein Luxusproblem, die Pegelanzeige im Display
ist nicht wirklich nötig.
Für mich ist der Code übrigens so übersichtlich.
Der Journalstreifenstiel a la Registrierkasse von stefanus
ist gut gemeint aber nicht so meins.

Ich werde sowieso die LM13700 für die ALC über einen PWM-Pin steuern.
(Anders kann ich das gar nicht. Das Glück ist mit die Dummen.)

LG
old.

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Mal davon abgesehen, dass ich dazu nicht fähig bin …
> Der 25Hz Sinus muss ja ständig da sein und es würde
> nichts anderes mehr funktionieren.

Dann pack die Erzeugung des Sinus in einen Timer-Interrupt. Wie machst 
Du das überhaupt? DDS mit Lookuptabelle und ADC? Tu das in nen 
Timer-Interrupt und fertig!

von Wolfgang (Gast)


Lesenswert?

Aus der W. schrieb:
> Der 25Hz Sinus muss ja ständig da sein und es würde
> nichts anderes mehr funktionieren.

Hier siehst du ein Beispiel, wie du dich an den Timer0-Interrupt, der 
auch für millis() den Takt bereit stellt, einklinken kannst.
https://learn.adafruit.com/multi-tasking-the-arduino-part-2/timers

Dann kannst du im 1ms Takt einen Software DDS-Generator für die 
25Hz-Ausgabe aktualisieren.

von Peter D. (peda)


Lesenswert?

Aus der W. schrieb:
> Mir ist aufgefallen, dass wenn ich das I2C-Display anspreche,
> andere Funktionen gestört sind.
> Das betrifft u.A. den Sinusgererator (für den 25Hz Pilotton).

Das passiert eben, wenn man alles in der Mainloop hintereinander 
klatscht und keine Interrupts verwendet.
Packe den Sinus einfach in einen Timerinterrupt, dazu sind Interrupts ja 
da.

von Maxim B. (max182)


Lesenswert?

Aus der W. schrieb:
> Mir ist aufgefallen, dass wenn ich das I2C-Display anspreche,
> andere Funktionen gestört sind.

Dann solltest du I2C-LCD-Lib ankucken, warum das passiert. Somit lernst 
du auch etwas. Das erleichtert dir die Zukunft.

Es könnte auch Problem mit der Schaltung sein: z.B. Lib wartet auf Busy, 
aber Pin R/~W ist fest an GND und somit kein Lesen aus LCD überhaupt 
möglich. Dann wartet Lib so lange, bis irgendein Mechanismus für 
Fehlerbehandlung die Versuche zu lesen umgeht. Selbstverständlich macht 
Mikrocontroller während diesen Leseversuchen nichts anderes und somit 
ist das Programm blockiert.

: Bearbeitet durch User
von oldeurope O. (Gast)


Lesenswert?

Maxim B. schrieb:
> Somit lernst
> du auch etwas.

Das lerne ich nicht mehr und mir fehlt auch das Talent dazu.
Entweder bekomme ich Hilfe oder eben nicht.

Was ich noch nicht getestet habe ist, ob der Rotaty mit seinen
Interrupts, bei parallelem Display, mir auch den Sinus plattmacht.

LG
old.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Das lerne ich nicht mehr und mir fehlt auch das Talent dazu.
> Entweder bekomme ich Hilfe oder eben nicht.

Falls ich den Thread "richtig" gelesen habe:
Dir wurde gesagt, woran es liegt, und was zu tun ist.

Der Ball ist jetzt bei dir.

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Maxim B. schrieb:
>> Somit lernst
>> du auch etwas.
>
> Das lerne ich nicht mehr und mir fehlt auch das Talent dazu.

Warum beschäftigst Du Dich dann überhaupt mit solchen extrem speziellen 
Tätigkeiten wie µC-Programmierung die nun wirklich normalerweise nur von 
Leuten ausgeübt werden die da irgend nen inneren Drang oder Interesse 
für die Materie haben? Das ist ungefähr so als ob Du sagst Du möchtest 
gerne Deiner Verwandtschaft was auf dem Klavier vorspielem aber Du hast 
keine Lust es zu lernen und auch kein Talent dazu. Ja WTF, warum denn 
dann??? Warum nicht was anderes stattdessen, etwas was Dich auch 
interessiert?

> Entweder bekomme ich Hilfe oder eben nicht.

Die hast Du bekommen. Viele Stichworte zum Googeln und konkrete 
Vorschläge.

von Stefan F. (Gast)


Lesenswert?

Bernd K. schrieb:
> Warum beschäftigst Du Dich dann überhaupt mit solchen extrem speziellen
> Tätigkeiten wie µC-Programmierung

Vermutlich wurde er von einem Arduino Vermarkter dazu gebracht. Die 
erzählen ja der ganzen Welt, dass die Programmierung ganz einfach ist 
und dass man eigentlich gar keine Fachkräfte mehr braucht, weil das jede 
Putzfrau kann.

von oldeurope O. (Gast)


Lesenswert?

Was zu tun ist, habe ich getan. Die Unterspannungsanzeige funktioniert.
Für die Audiopegelanzeige habe ich LEDs, die definitiv besser
sind als eine sich ändernde Zahl auf einem trägen Display.
Jedenfalls weiß ich jetzt weshalb ich mir für die Unterspannungsanzeige
einen Abbrechen musste.
Auch die Lautstärkeeinstellung mit dem Rotary werde ich nicht ausführen,
weil ich eine ALC dafür "programmiere". Natürlich ohne I2C, Interrupt
und wie immer in der void loop.
Und jetzt wird erstmal nur noch gelötet ...

LG
old.

von oldeurope O. (Gast)


Lesenswert?

Bernd K. schrieb:
> Warum beschäftigst Du Dich dann überhaupt mit solchen extrem speziellen
> Tätigkeiten wie µC-Programmierung die nun wirklich normalerweise nur von
> Leuten ausgeübt werden die da irgend nen inneren Drang oder Interesse
> für die Materie haben?

Das was ich mit dem Arduino machen kann ist schon weit mehr als
ich mir je erträumt habe.

> Das ist ungefähr so als ob Du sagst Du möchtest
> gerne Deiner Verwandtschaft was auf dem Klavier vorspielem aber Du hast
> keine Lust es zu lernen und auch kein Talent dazu. Ja WTF, warum denn
> dann??? Warum nicht was anderes stattdessen, etwas was Dich auch
> interessiert?

Was wollt Ihr denn? Ihr baut doch vorgekochte Analogschaltungen
an den Prozessor ohne zu verstehen wie die Analogschaltung
arbeitet? Da kommt doch auch keiner und sagt, Du darfst das
nicht.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Das was ich mit dem Arduino machen kann ist schon weit mehr als
> ich mir je erträumt habe.

Da dann ist ja alles in Ordnung. Hier bist du an die Grenzen gestoßen. 
Ist nicht weiter schlimm.

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Aus der W. schrieb:
> Was wollt Ihr denn? Ihr baut doch vorgekochte Analogschaltungen
> an den Prozessor ohne zu verstehen wie die Analogschaltung
> arbeitet? Da kommt doch auch keiner und sagt, Du darfst das
> nicht.

Du musst nicht von Dir auf andere schließen. Viele haben die Elektronik 
von der Pike an gelernt. Ich spreche hier von einer vollständigen 
Ausbildung oder  ein Studium.

von Maxim B. (max182)


Lesenswert?

Aus der W. schrieb:
> Das lerne ich nicht mehr und mir fehlt auch das Talent dazu.

Das ist nicht schlimm: jemand sollte auch Straßen putzen. Wenn alle 
Akademiker wären, wer sollte das tun?

von oldeurope O. (Gast)


Lesenswert?

Christian H. schrieb:
> Du musst nicht von Dir auf andere schließen. Viele haben die Elektronik
> von der Pike an gelernt. Ich spreche hier von einer vollständigen
> Ausbildung oder  ein Studium.

Und? Bis vor kurzem konntet Ihr weder mit einem XOR eine
Frequenz verdoppeln, noch danach einen Sinus formen.
Also mal den Ball flach halten.

Beitrag "Frequenzverdoppeln 74XXX Gatter ?"

Beitrag "Wie aus Rechteck im Bereich von 100KHz bis 2MHz Sinus machen (5V)."

LG
old.

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Aus der W. schrieb:
> Und? Bis vor kurzem konntet Ihr weder mit einem XOR eine
> Frequenz verdoppeln, noch danach einen Sinus formen.
> Also mal den Ball flach halten.

"Ihr" gleich alle?
Was soll diese Verallgemeinerung?

von oldeurope O. (Gast)


Lesenswert?

Christian H. schrieb:
> "Ihr" gleich alle?

Ja, auch Du bist gemeint.
Hattest zwei Jahre Zeit eine Lösung zu finden.
Und auch der Fehler in der Zeichnung vom selbsternannten
Elektronikkompendium hält sich wacker.
Mit falschem Grundwissen kommt man halt nicht drauf.

LG
old.

von Christian H. (netzwanze) Benutzerseite


Lesenswert?

Aus der W. schrieb:
> Hattest zwei Jahre Zeit eine Lösung zu finden.

Ich wünsche Dir viel Spaß, Dein Problem selber zu lösen.

von oldeurope O. (Gast)


Lesenswert?

Lesen und Verstehen tust Du nicht. Von der Pike an.
Beitrag "Re: I2C "blockiert" Arduino"
Leere Worte, nichts dahinter. Wie so oft.

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Aus der W. schrieb:
> Auch die Lautstärkeeinstellung mit dem Rotary

Um auszuschließen, dass der Rotary mit seinen Interrupts
den Arduino blockiert, habe ich die Displayansteuerung
deaktiviert. Bild.
Die Frequenz lässt sich verstellen, der 25Hz Pilot bleibt
davon unbeeindruckt.
Es liegt also ausschließlich an der <LiquidCrystal_I2C.h>.
Ich werde nach Alternativen dafür suchen und sie testen.

LG
old.

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Ich werde nach Alternativen dafür suchen und sie testen.

Die Alternative lautet: Die Erzeugung der 25Hz muss offensichtlich 
anders implementiert werden da sie in der jetzigen Form unzuverlässig 
ist. Es hat absolut nichts mit I2C zu tun, Du hast falsche Vorstellungen 
davon wie das normalerweise funktionieren und zusammenspielem muss, 
deshalb kommst Du zu falschen Diagnosen. Es ist die 25Hz-Erzeugung die 
hier offensichtlich falsch implementiert ist.

__
PS: Der Code im anderen Thread auf den Du verweist ist ein vollkommen 
unleserlicher Müllhaufen, Du könntest den zumindestens mal halbwegs 
anständig formatieren und einrücken und nen einheitlichen Klammerstil 
anwenden damit man ihn überhaupt ansatzweise lesen kann wenn Du mit uns 
darüber diskutieren möchtest. Es zeugt von einer unaussprechlichen 
Fehleinstellung wenn Du glaubst Du kannst so einen unleserlich 
hingerotzten Müllhaufen ins Forum rotzen um es allen potentiellen 
Helfern extra schwer zu machen weil sie ertmal knietief durch den Müll 
waten müssen um irgendwas darin zu sehen und dann dennoch zu erwarten 
prompt geholfen zu bekommen!

Es ist fast so als ob Du bevor Du Deine Schuhe zum Reparieren der 
Absätze zum Schuhmacher bringst vorher nochmal durch 20cm tiefen Schlamm 
und Matsch und anderen Dreck gestiefelt wärst und sie dann direkt in dem 
massiv verdreckten Zustand dort auf den Ladentisch knallst daß der Dreck 
2 Meter weit in alle Richtungen fliegt anstatt vorher wenigstens mal 
kurz wenigstens den gröbsten Dreck zu entfernen, es würde schon reichen 
sie vor der Tür nochmal kurz ordentlich abzuklopfen, nicht mal das hast 
Du gemacht! Also mach das gefälligst, mach das wenigstens halbwegs grob 
sauber bevor Du das hier vorlegst! Das ist eine Unhöflichkeit 
sondersgleichen! Was ist falsch gelaufen mit euch Arduino-Typen daß ihr 
alle so unterwegs seid, daß ihr selbst so grundlegende Dinge nicht 
merkt?

Wenn es aber so ist daß Du gar keine Hilfe willst dann hör auf Deine 
Selbstgespräche hier zu posten!

: Bearbeitet durch User
von oldeurope O. (Gast)


Lesenswert?

Bernd K. schrieb:
> Die Alternative lautet: Die Erzeugung der 25Hz muss offensichtlich
> anders implementiert werden

Nö, dass betrifft auch andere Funktionen die der Prozessor
ausführen muss. Komisch, dass die Putzfrau das dem
Programmierer erst schreiben muss.

Bernd K. schrieb:
> wenn Du glaubst Du kannst so einen unleserlich
> hingerotzten Müllhaufen ins Forum rotzen um es allen potentiellen
> Helfern extra schwer zu machen weil sie ertmal knietief durch den Müll
> waten müssen um irgendwas darin zu sehen und dann dennoch zu erwarten
> prompt geholfen zu bekommen!

Du erkennst weder das Problem noch die Folgen und hast keine Lösung.
Da wirft der Programmierer halt Nebelkerzen.
Übrigens hat User stefanus hat den Sketch doch für Euch mundgerecht 
bearbeitet. Also meckere nicht rum!

Die Lösung der Putzfrau das Display nur dann anzusprechen wenn
nötig, hat das Problem gelöst. Mag sein, dass es bessere
Alternativen gibt. Die Putzfrau meistert das Ding auch so.

Bernd K. schrieb:
> Wenn es aber so ist daß Du gar keine Hilfe willst dann hör auf Deine
> Selbstgespräche hier zu posten!

Die Programmierer mit Erfolgen zu piesacken und ihnen zu Zeigen,
dass es auch ohne sie geht, macht der Putze durchaus Freude. :)
Die Putzen teilen ihre Erfahrungen im Internet und kommen so
zum Erfolg.

Beitrag "Re: I2C "blockiert" Arduino"

LG
old.

von Wolfgang (Gast)


Lesenswert?

Aus der W. schrieb:
> Nö, dass betrifft auch andere Funktionen die der Prozessor
> ausführen muss.

Die sind aber vielleicht nicht so zeitkritisch wie die saubere 25Hz 
Erzeugung. Hat was mit Priorisierung zu tun ...

Häng das Ding in einen Timer0-Interrupt mit rein und gut ist.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Du erkennst weder das Problem noch die Folgen und hast keine Lösung.
Das sagt der Mann(?), welcher weder das Problem begreift, noch die 
Lösung umsetzen kann.

Denn sonst könnte nicht so ein irriger Ansatz folgen..
Aus der W. schrieb:
> Es liegt also ausschließlich an der <LiquidCrystal_I2C.h>.
> Ich werde nach Alternativen dafür suchen und sie testen.


Klarer Fall:
Problem nicht begriffen.

von Einer K. (Gast)


Lesenswert?

Bernd K. schrieb:
> Was ist falsch gelaufen mit euch Arduino-Typen daß ihr
> alle so unterwegs seid, daß ihr selbst so grundlegende Dinge nicht
> merkt?

Wieder das übliche Arduino Bashing.
Die neurotische Fehlanpassung eines einzelnen wird gegen Arduino 
gerichtet, und alle User in einen Topf geworfen.

Warum versuchst mich mit diesem ***** in einen Topf zu werfen?
Welche Befriedigung verschafft dir das?


Eins kann ich dir versprechen:
Auch in den Arduino Foren wird zu einer lesbaren Formatierung erzogen.
Und solche ***** bekommen dort heftigen Gegenwind, überleben dort nicht 
lange, oder passen sich an.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Klarer Fall:
> Problem nicht begriffen.

Klarer Fall:
Bug in der <LiquidCrystal_I2C.h>.
Das hier darf gar nicht auftreten.
STK500-Besitzer (Gast) hat ja erklärt wo es hakt.

Der AD9850 wird auch seriell angesprochen und das
ohne Auswirkungen auf andere Programmteile.

Arduino Fanboy D. schrieb:
> lesbaren Formatierung

Für mich ist die lesbar. Und wenn ich das kann, können
das andere auch.
Ich weiß nicht aus welcher Dekade Eure Formatierung
stammt. Möglicherweise nutzte man damals Registrierkassen
mit Kassenrolle als Terminal.
Die Arduino-Umgebung erlaubt mehr als 10 Zeichen pro Zeile
und das nutze ich auch der Übersichtlichkeit halber.
Ganze Zeilen für Anmerkungen und Leerzeilen vermeide ich,
Zeilen werden nummeriert um schnell Programmteile zu
finden. Ausschweifende Erklärungen werden unten angehangen.
Da ich einen Sketch erweitert habe, ist das noch nicht
durchgängig so.

LG
old.

von Stefan S. (chiefeinherjar)


Lesenswert?

Aus der W. schrieb:
> Arduino Fanboy D. schrieb:
>> lesbaren Formatierung
>
> Für mich ist die lesbar. Und wenn ich das kann, können
> das andere auch.

Dieser Meinung ist der Joseph G aka bome bei seinem 8-Bit-Retro-Computer 
auch...

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Bug in der <LiquidCrystal_I2C.h>.

Wow! Wie bist du darauf gekommen? Kannst du den Bug zeigen?

> Das hier darf gar nicht auftreten.

Ich hoffe, das ist nicht die einzige Begründung.

Hey, da ist ein Bug und ich weiß das ganz genau, weil er nicht auftreten 
dürfte.

So hast du es hoffentlich nicht gemeint.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Für mich ist die lesbar.

Aus dem Code:
> }}}

Am Ende von Funktionen:
> };

An den linken Rand geklebt.

Aus der W. schrieb:
> Und wenn ich das kann, können das andere auch.
Nicht jeder will sich deine durchgekauten Kaugummi in den Mund stecken.
Meine Sicht: Wer anderen das Lesen erschwert, will keine Hilfe.


Aus der W. schrieb:
> Klarer Fall:
> Bug in der <LiquidCrystal_I2C.h>.
Klarer Fall, Irrtum in der Sache.

Aus der W. schrieb:
> STK500-Besitzer (Gast) hat ja erklärt wo es hakt.
Hat er, du aber seinen Beitrag nicht verstanden.
Und darum geht die Lösung auch an dir vorbei.


Rundrum: Keinerlei Einsicht zu erkennen.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Rundrum: Keinerlei Einsicht zu erkennen.

Bei Dir auch nicht. Und? Mir egal, Hilfe kommt von Dir eh nicht.
Auch nicht mit der Formatierung von stefanus.

Ich komme mit allen Formatierungen zurecht, egal ob der Code so
}}}
oder so
}
 }
  }
geschrieben wurde.
Schaltpläne, auch französische und fritzing sind für mich
kein Problem.

LG
old.

von Sebastian W. (wangnick)


Lesenswert?

Aus der W. schrieb:
> Klarer Fall:
> Bug in der <LiquidCrystal_I2C.h>.
> Das hier darf gar nicht auftreten.
> STK500-Besitzer (Gast) hat ja erklärt wo es hakt.
>
> Der AD9850 wird auch seriell angesprochen und das
> ohne Auswirkungen auf andere Programmteile.

Old, das von dir geschilderte Problem (Störung des 25Hz-Sinus durch 
LiquidCrystal_I2C) ist generell nicht trivial zu beheben. Es stellen 
sich da Fragen nach zum Beispiel den längsten Zeiten von 
Interrupt-Unterdrückung in den Bibliotheken.

Bug ist zudem ein hartes Wort. Es bedeutet ja nicht, nicht den Wünschen 
entsprechend, sondern nicht der Spezifikation entsprechend. Und die 
Arduino-Bibliotheken sind (wie viele andere) notorisch 
unterspezifiziert.

Seriell ist auf dem Atmega328P auch nicht ganz so zeitkritisch wie I2C, 
weil die USART nicht direkt aus UDR sendet sondern UDR zum Senden erst 
in ein shift register kopiert, während die TWI-Unit direkt aus TWDR die 
Bitpegel generiert.

LG, Sebastian

: Bearbeitet durch User
von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Wow! Wie bist du darauf gekommen?
Mit dem Oszilloskop.

> Kannst du den Bug zeigen?
Nein. Aber Der Gast hier könnte das möglicherweise:
Beitrag "Re: I2C "blockiert" Arduino"

LG
old.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Hilfe kommt von Dir eh nicht.
Sie kommt nicht an.
Der Sender kann machen, was er will, wenn der Empfänger taub ist.

Man lese nur, was der STK500-Besitzer gesagt hat, und was du daraus 
gemacht hast.
> Klarer Fall:
> Bug in der <LiquidCrystal_I2C.h>.


Bernd K. (prof7bit) postet die richtige Lösung, und was machst du draus?
> Klarer Fall:
> Bug in der <LiquidCrystal_I2C.h>.

Was soll ich dazu noch sagen?
Außer, dich auf die Diskrepanz hinzuweisen.
Auswerten musst du das gesagte schon selber.



Und ja, Formatierung ist Geschmackssache!
Zwei wesentliche Linien, es gibt:
Den 1TBS und den, wo die zusammengehörigen Geschweiften in einer Spalte 
stehen.
Den ersten kann ich lesen, den zweiten bevorzuge ich selber.
Aber, was du ablieferst ist weit jenseits davon.

Ich kann nur raten, entweder verstehst du den Sinn dahinter nicht, oder 
du verweigerst die Einsicht.

von oldeurope O. (Gast)


Lesenswert?

Sebastian W. schrieb:
> Old, das von dir geschilderte Problem (Störung des 25Hz-Sinus durch
> LiquidCrystal_I2C) ist generell nicht trivial zu beheben. Es stellen
> sich da Fragen nach zum Beispiel den längsten Zeiten von
> Interrupt-Unterdrückung in den Bibliotheken.

Dann ist es ratsam nicht generell ein I2C Display zu verwenden,
sondern nur wenn das aufgrund mangelnder I/O-Pins absolut
notwendig ist. Und dann halt tunlichst darauf achten, das
Display nicht bei jeder loop neu zu beschreiben, was man
beim parallelen Anschluss ja machen darf.

Wenn ich da jetzt keine Lösung gefunden hätte, müsste eben ein
zweiter Atmega, nur für die Audioanwendungen, auf die Leiterplatte.
Wobei ich dann ein größeres Gehäuse ...

LG
old.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
>> Kannst du den Bug zeigen?
> Nein. Aber Der Gast hier könnte das möglicherweise:
> Beitrag "Re: I2C "blockiert" Arduino"

Das Problem wurde dir schon aufgezeigt!
Es ist nicht die LiquidCrystal_I2C.h

Wie das Arduino Wire Lib funktioniert ist dokumentiert(halbwegs) und sie 
liegt im Quellcode vor.

Wie schon gesagt, die Lösung steckt hier:
Beitrag "Re: I2C "blockiert" Arduino"

----

Mach was draus, oder lass es.

von Sebastian W. (wangnick)


Lesenswert?

Aus der W. schrieb:
> Sebastian W. schrieb:
>> Old, das von dir geschilderte Problem (Störung des 25Hz-Sinus durch
>> LiquidCrystal_I2C) ist generell nicht trivial zu beheben. Es stellen
>> sich da Fragen nach zum Beispiel den längsten Zeiten von
>> Interrupt-Unterdrückung in den Bibliotheken.
>
> Dann ist es ratsam nicht generell ein I2C Display zu verwenden,
> sondern nur wenn das aufgrund mangelnder I/O-Pins absolut
> notwendig ist. Und dann halt tunlichst darauf achten, das
> Display nicht bei jeder loop neu zu beschreiben, was man
> beim parallelen Anschluss ja machen darf.

Wenn ich deinen Quellcode richtig verstehe, dann erzeugst du den 
25Hz-Sinus indem du bei jedem Durchlauf durch loop() den Duty-Faktor 
eines PWM-Signals anpasst, richtig?
1
pwmDuty = 128 +126 * sin(micros() * 0.000157);
2
analogWrite(5, pwmDuty); // 25Hz PWM an Pin12 Atmega

Und dabei beobachtest du auf dem Oszilloskop Artefakte, korrekt? Wie 
sieht die Störung des 25Hz-Sinus Analogsignals denn auf dem Oszi genau 
aus?

Es kann nämlich auch an Überlagerungen zwischen der PWM-Frequenz und der 
loop()-Rate liegen ...

LG, Sebastian

von Wolfgang (Gast)


Lesenswert?

Aus der W. schrieb:
> Es liegt also ausschließlich an der <LiquidCrystal_I2C.h>.
> Ich werde nach Alternativen dafür suchen und sie testen.

Eine Alternative wäre, dass du die LCD-Zugriffsorgie weg lässt und durch 
eine kompakte Übertragung von deinen anzuzeigenden Bytes ersetzt.
Dazu legst du dir das Zeugs vorher im Speicher zurecht und schickst dann 
einen Befehl ans LCD. Die Übertragung machst du direkt nachdem der 25Hz 
Generator mit Daten versorgt wurde. Dann jittert das LCD Update aber 
nicht der Generator. Mit dem Logikanalysator klärst du vorher, ob die 
LCD-Übertragung zeitlich zwischen zwei Generator-Updates passt - sollte 
aber bei 400kBit/s auf dem I2C kein Problem sein, solange du nicht 
Kommandos mit langer Ausführungszeit schickst (z.B. Return Home 
Commando)

von Carl D. (jcw2)


Lesenswert?

Sebastian W. schrieb:
> Wenn ich deinen Quellcode richtig verstehe, dann erzeugst du den
> 25Hz-Sinus indem du bei jedem Durchlauf durch loop() den Duty-Faktor
> eines PWM-Signals anpasst, richtig?
>
1
> pwmDuty = 128 +126 * sin(micros() * 0.000157);
2
> analogWrite(5, pwmDuty); // 25Hz PWM an Pin12 Atmega
3
>

Ohne die ständige sin-Berechnung würde es dem AVR doch langweilig 
werden.

von Bernd K. (prof7bit)


Lesenswert?

Sebastian W. schrieb:
> Es stellen
> sich da Fragen nach zum Beispiel den längsten Zeiten von
> Interrupt-Unterdrückung in den Bibliotheken.

Wenn diese I2C-Library allerdings irgendwelche Interrupts blockiert dann 
wäre sie in der Tat fehlerhaft und deren Autor als vollkommen unfähig 
enttarnt und müsste nochmal 4 bis 6 Monate lang in die Ohrfeigenmaschine 
eingespannt werden für die Straftat sowas zu veröffentlichen.

von Einer K. (Gast)


Lesenswert?

Bernd K. schrieb:
> Wenn diese I2C-Library allerdings irgendwelche Interrupts blockiert dann
> wäre sie in der Tat fehlerhaft und deren Autor als vollkommen unfähig
> enttarnt und müsste nochmal 4 bis 6 Monate lang in die Ohrfeigenmaschine
> eingespannt werden für die Straftat sowas zu veröffentlichen.

Die Lib benutzt selber Interrupts, für den Verkehr mit der TWI Einheit.
Wie es auch Serial tut und der Timer für millis() und seine Brüder.
Sperrt sie also nicht. Zumindest nicht lange.
Diese Interruptlaufzeiten scheinen kein Problem zu sein.


Was allerdings blockiert, ist die Wire::endTransmission() Methode.
Während sie auf das Ende der I2C Kommunikation wartet, ist allerdings 
genug Zeit für andere Interrupts.

von Bernd K. (prof7bit)


Lesenswert?

Arduino Fanboy D. schrieb:
> Was allerdings blockiert, ist die Wire::endTrannsmission() Methode.
> Während sie auf das Ende der I2C Kommunikation wartet, ist genug Zeit
> für andere Interrupts.

Dagegen ist ja auch nichts einzuwenden. Blockierende Methoden blockieren 
nun mal, das liegt in der Natur ihrer Sache. Solange sie dabei alle 
anderen Interrupts unbeeinträchtigt lässt ist das auch vollkommen OK.

Man muss halt wissen wie man in seinen Programm mit blockierenden 
Methoden umzugehen hat und wie man den Rest seines Programms dann 
gestaltet damit er immer noch funktioniert.

Im Falle des OP schlage ich vor daß er seine DDS in einem 
Timer-Interrupt verfrachtet, am besten einen der ein ganzzahliges 
Vielfaches von 100Hz (=4*25) ist, dann kann er auch ne simple 
Lookuptabelle für den ersten Quadranten nehmen anstatt den Sinus immer 
und immer wieder zu Fuß auszurechnen.

: Bearbeitet durch User
von Einer K. (Gast)


Lesenswert?

Bernd K. schrieb:
> Man muss halt wissen wie man in seinen Programm mit blockierenden
> Methoden umzugehen hat und wie man den Rest seines Programms dann
> gestaltet damit er immer noch funktioniert.
So ist es wohl....
(aber hier nicht gegeben(?))

Bernd K. schrieb:
> Im Falle des OP schlage ich vor daß er seine DDS in einem
> Timer-Interrupt verfrachtet, am besten einen der ein ganzzahliges
> Vielfaches von 100Hz (=4*25) ist, dann kann er auch ne simple
> Lookuptabelle für den ersten Quadranten nehmen anstatt den Sinus immer
> und immer wieder zu Fuß auszurechnen.
Timer0 läuft mit knapp unter 1000Hz (auf 16MHz AVR Arduinos)
Der hat noch 2 Interruptquellen frei.
Alternativ: Die anderen Timer verwenden...

von oldeurope O. (Gast)


Lesenswert?

Carl D. schrieb:
> Ohne die ständige sin-Berechnung würde es dem AVR doch langweilig
> werden.

Ja, L und R muss er auch ständig aus Summen und Differenzsignal
berechnen.

Mir wird dieser Thread auch langweilig. Es tut sich nichts
bis auf ein paar Trolle, die sich trollen.

Heute habe ich die Unterspannungserkennung und den Taster
auf A1 und den Reset vom AD9850 auf A0 gelegt.
Jetzt habe ich einen PWM-Pin frei für die LS-Steuerung.
Das genügt mir für heute.

Als nächstes versuche ich dann eine Spannung über die
PWM bei gedrücktem Pushbutton Rotary für die Lautstärke
zu bekommen. Als übernächstes den Wert in den Speicher
zu schreiben um ihn beim Wiedereinschalten zu bekommen.
Damit bin ich erstmal beschäftigt. Als Muster zur Orientierung
habe ich ja die Frequenzeinstellung.

Übrigens braucht der AD9850 den Reset nur beim Einschalten.
Die Frequenzeinstellung macht der ohne Reset und kommt
auch nach dem Drehen am Rotary ohne Reset mit der eingestellten
Frequenz. Das zur Info. Ich könnte also auch mit dem bool "start"
einmal die Frequenz schreiben lassen und den Resetpin an GND
löten. Das spart einen Pin.

LG
old.

von Harry L. (mysth)


Lesenswert?

Alters-Starrsinn....

von Peter D. (peda)


Lesenswert?

Aus der W. schrieb:
> Ich musste das für die Unterspannungsanzeige mit einer
> if-else-millis()-Orgie lösen

Du mußtest nicht, sondern Du wolltest es so.
Wenn Du mal die Funktion des Codes beschreiben würdest, könnte man das 
sicher viel einfacher lösen.

Aus der W. schrieb:
> Klarer Fall:
> Bug in der <LiquidCrystal_I2C.h>.
> Das hier darf gar nicht auftreten.

Klarer Fall, daran liegt es also garantiert nicht.

Wie kommt einer bloß darauf, Quelltext als PNG zu posten. Jeder, der 
länger als 3 Tage programmiert, weiß, daß das als Sakrileg empfunden 
wird. Was stört Dich an C oder INO?
Überhaupt zerlegt niemand Zahlen händisch in dezimal, bestenfalls für 
sehr kleine MCs (ATtiny13). Man benutzt z.B. sprintf().

: Bearbeitet durch User
von Jens B. (sio2)


Lesenswert?

PittyJ schrieb:
> Mehr als 2 mal die Sekunde braucht man kein Display updaten.
> Schneller
> liest kein Mensch.
Hat nichts mit dem Prpblem zu tun (der hat keinen plan)
>
> Ansonsten sollte man statt millis() lieber etwas vernüntfiges nehmen und
> gleich auf ein Echtzeitsystem wechseln (FreeRtos).
> Oder sich zumindest mit Interrupts anfreunden.
Ein RTOS jemandem zu empfehlen, der keine Ahnung hat warum lahme 
Operationen anderes blockieren, sehr Sinnfrei
>
> Vielleicht sollte man sich auch im Voraus die Anforderungen klarmachen,
> bevor man anfängt auf einem kleinen Arduino zu prokeln.

Jepp. Einfach nur Jepp.

von Peter D. (peda)


Lesenswert?

PittyJ schrieb:
> Vielleicht sollte man sich auch im Voraus die Anforderungen klarmachen,
> bevor man anfängt auf einem kleinen Arduino zu prokeln.

Das hat nichts mit der Größe zu tun, mit dem falschen Programmaufbau 
bricht auch ein 64Bit 8-Kerner zusammen.

Nur verlangt der Autor, daß jeder Helfende die Funktion des Programmes 
gefälligst aus seinem Kraut und Rüben Code zurück entwickeln soll.
Ohne Beschreibung keine Hilfe, so einfach ist das.

von oldeurope O. (Gast)


Lesenswert?

Aus der W. schrieb:
> Übrigens braucht der AD9850 den Reset nur beim Einschalten.
> Die Frequenzeinstellung macht der ohne Reset und kommt
> auch nach dem Drehen am Rotary ohne Reset mit der eingestellten
> Frequenz.

Da hatte ich den Reset noch nicht an GND gelötet.

> Ich könnte also auch mit dem bool "start"
> einmal die Frequenz schreiben lassen und den Resetpin an GND
> löten. Das spart einen Pin.

Noch besser: Reset vom AD9850 an GND,
die Zeilen den Reset betreffend aus dem Code löschen,
das war es schon.

Der Sketch schiebt beim Start sowieso die Frequenz in den
AD9850 und macht den Reset überflüssig.

LG
old.

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Peter D. schrieb:
> Ohne Beschreibung keine Hilfe, so einfach ist das.

Klick mal auf den link in Zeile 252 du Schlaumeier.

Sebastian W. schrieb:
> Wenn ich deinen Quellcode richtig verstehe

Zeile 254. Im Code. Für Euch kann man sich nur noch fremdschämen.

Leider sind die Zeilennummern nicht in der Codeansicht sichtbar.
Deshalb als PNG. (Bemängele ich nicht zum ersten mal.)

LG
old.

von Carl D. (jcw2)


Lesenswert?

Wieso nennt der sich eigentlich "Aus der Werkstatt",
das ist doch eher "Aus der Anstalt".

Und es liegt nicht an den Röhren, der kann das auch digital.

von yesitsme (Gast)


Lesenswert?

Aus der W. schrieb:
> Klick mal auf den link in Zeile 252 du Schlaumeier.

Ich fange ein Buch auch immer hinten an zu lesen...

*** Der Code bricht einfach mit Einrückungsregeln, die ich gewohnt bin.

z.B. wozu gehören die geschweiften Klammern?
1
lcd.setCursor(0,1); lcd.print(hertz);}}

*** storeMEM() funktioniert erst wenn showFreq() aufgerufen wurde. Ein 
fiese Falle.


*** Copy & Paste Programmierung... Das wird doch sicher alles sehr 
ähnlich verwendet.
1
bool clip;
2
unsigned long cstart; 
3
unsigned long cist;
4
unsigned long causverz = 200; // MF Clippanzeige
5
bool voll;
6
unsigned long vstart; 
7
unsigned long vist;
8
unsigned long vausverz = 500; // MF Vollaussteuerung
9
bool sum;
10
unsigned long sumstart; 
11
unsigned long sumist;
12
unsigned long sumausverz = 1000; // MF Summensignal
13
bool diff;
14
unsigned long diffstart; 
15
unsigned long diffist;
16
unsigned long diffausverz = 1000; // MF Differenzsignal

*** Magische Konstanten wie z.B. -356


-> Das macht es einfach schwer den Code zu lesen.

von oldeurope O. (Gast)


Lesenswert?

yesitsme schrieb:
> z.B. wozu gehören die geschweiften Klammern?

Gehe ich recht in der Annahme, dass Du die Arduino-
Umgebung nicht auf Deinem Rechner hast?

Für das Weitere siehe Seiten 16 und 17,
Kap. 7 Analoger Input - Output im Arduino-
Programmierhandbuch von DK2JK. Gibt es frei im Netz.

LG
old.

von äxl (Gast)


Lesenswert?

Carl D. schrieb:
>> pwmDuty = 128 +126 * sin(micros() * 0.000157);

Allein für diese eine Codezeile würde ich gern mal das listing sehen...

von oldeurope O. (Gast)


Lesenswert?


von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Für das Weitere siehe .....im Arduino-
> Programmierhandbuch von DK2JK. Gibt es frei im Netz.
Da solltest du dir mal die Quellcode Formatierung anschauen.
Der/Die/Das kann das.

Selbst Strg-T macht das besser(als du).

Aus der W. schrieb:
> dass Du die Arduino-
> Umgebung nicht auf Deinem Rechner hast?

Lade dein Programm in die IDE und drücke Strg-T
Kostet nichts und tut kaum weh.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

äxl schrieb:
> Carl D. schrieb:
>>> pwmDuty = 128 +126 * sin(micros() * 0.000157);
>
> Allein für diese eine Codezeile würde ich gern mal das listing sehen...

Da muesste wohl noch ein Additionstheorem mit rein, sonst wird das 
bestimmt zu schnell...

Duck&Wech

WK

von Peter D. (peda)


Lesenswert?

Aus der W. schrieb:
> Klick mal auf den link in Zeile 252 du Schlaumeier.

Da passiert nichts, in einem PNG kann man keinen Link anklicken. Warum 
willst Du es einem immer maximal schwer machen?
Links gehören in das Posting und nicht in irgendwelche Anhänge. Und auch 
immer gleich an den Anfang, damit man sehen kann, worauf sich eine Frage 
bezieht.

Das mit den Zeilennummern stört keinen. Die meisten öffnen einen Anhang 
eh in ihrer Lieblings-IDE und schauen, ob es überhaupt compiliert und 
welche Warnungen es gibt. Du solltest daher immer Zeilennummern angeben, 
auf was sich Deine Frage bezieht.
Aber erstmal AStyle drüber jagen zu müssen, das ist mir dann doch zu 
blöd.

Und ja, die meisten hier haben kein Arduino installiert, können aber 
trotzdem auf C Fragen sehr fundiert antworten und Tips geben. Mit 
Anblaffen wird das aber nix.

von äxl (Gast)


Lesenswert?

Willst Du stereo auf Mittlewelle senden/empfangen?
Was genau hast Du vor?
BTW:
Was sich der Richard AD7C da ausgedacht hat:
die Frequenz als String im EEPROM zu speichern/ zu lesen, ist 
tatsächlich so gewollt?
Diese rx/1000%10 usw für die Darstellung der einzelstellen auch?
Da sieht mir einiges sehr, na - sagen wir mal - "ungelenk" aus.
Das bitgeklappere zum DDS-Chip hin ist notwendig oder lässt sich hier 
die SPI -Schnittstelle verwenden, Ich habe jetzt das Datenblatt des DDS 
Chips nicht gelesen, aber das wird ja wohl eine "normgerechte" 
SPI-Ansteuerung sein, sodass man doch sicher auch die SPI-Hardware des 
Arduinos verwenden kann, oder?

Aus der W. schrieb:
> Das betrifft u.A. den Sinusgererator (für den 25Hz Pilotton).

Du solltes Dir angewöhnen, die Leute ein wenig zu teasern / zu spoilern, 
indem Du beschreibst, was du eigentlich machen willst. Deine 
Ausführungen wirken ansonst sehr aus dem Zusammenhang gerissen, niemand 
wird sich ernsthaft erst einmal durch deinen Blog wühlen wollen...
So könntest du den einen oder anderen, der sich besser in der 
Arduino-Programmierung auskennt, hinterm Ofen vorlocken und bräuchtest 
nicht eingeschnappt mit "entweder ich bekomme Hilfe oder eben nicht" 
reagieren.
Das ist eindeutig der falsche Ansatz und die falsche Basis. Ich, in 
zweiter Generation, der im exessiven AFU-Umfeld aufwuchs, kann da sehr 
gut mit umgehen, weil ich weis, wie die "alten Funkamateure" (bestes 
Beispiel für mich -> Fred ex.DM2CND, ex.Y23ND, sk.DL1RON) ticken und wie 
exentrisch/eigenbrötlerisch/uneinsichtig eben viele von jenem Schlage 
sind/waren und die wahren "Qualitäten" eben oft für andere im 
Verborgenen blieben. Das ist in der Tat sehr schade.
Äxl
DG1RTO

von Hinweis (Gast)


Lesenswert?

Leute, lasst ihn doch einfach sterben. Er weiß sowieso alles besser. Wer 
am laufenden Band gegen alle Hinweise meckert hat verloren. Aus die 
Maus.

von oldeurope O. (Gast)


Lesenswert?

Peter D. schrieb:
> Da passiert nichts, in einem PNG kann man keinen Link anklicken.

Da muss man halt die .ino Datei für öffnen.

Der Einzige User mit Grips hier ist stefanus.

LG
old.

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> Was sich der Richard AD7C da ausgedacht hat:

Ist absolut genial. tnx fr sharing.

LG
old.

von Kalle (Gast)


Lesenswert?

Aus der W. schrieb:
> Der Einzige User mit Grips hier ist stefanus.

Du bist ja richtig lustig.

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> niemand
> wird sich ernsthaft erst einmal durch deinen Blog wühlen wollen...

Vor allen Dingen muss ich den erst noch verfassen.
Freut mich, dass du dich schon im Vorhinein darüber ärgerst, hi hi.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Der Einzige User mit Grips hier ist stefanus.

Ich habe mehr Langeweile als Grips.

von äxl (Gast)


Lesenswert?

http://c-quam.blogspot.com/2015/10/c-quam-pruefsender.html
Was bist du denn für einer?!?


Aus der W. schrieb:
> Freut mich, dass du dich schon im Vorhinein darüber ärgerst, hi hi.


Ich ärgere mich nicht über deinen BLOG, ich bin wohl eher einer der 
jenigen, der Dir versucht, deine sozialen Defizite aufzuzeigen. Und das, 
wie ich finde, auf eine freundschaftlich-nette Art und Weise.
Wenn Du deinen eigenen Blog nicht kennst, mich statt dessen von der 
Seite anblaffst, dann lege ich auf eine weitere Konversation keinen 
Wert. HAM-Spirit hin oder her.
Habe ich nicht nötig. Baue Du weiterhin grüne Leuchtdioden in alte 
Anzeigeröhren ein und such Dir'n anderen Dummen, an dem Du deine 
schlechte Laune auslassen kannst.
Zu blöd, nen IIC-Oled zusammen mit'm 25Hertz DDS laufen zu lassen, aber 
hier die grosse Fresse haben?
Du machst dich hier gerade total lächerlich und stellst dich in ein 
Licht, dessen Du augenscheinlich mehr als gerecht wirst.
Da ich nicht in diesem Schatten stehen mag, bin ich zu diesem Thema 
raus. komplett.

Viel Spaß beim gemeinsamen Hobby. kopfschüttelnd.
Äxl
DG1RTO

von Hugo H. (hugohurtig1)


Lesenswert?

Warum Du nicht einfach per PWM ein 25Hz Rechteck-Signal generierst und 
mit Deiner Rest-Pilotton-Schaltung in einen Sinus umwandelst erschließt 
sich mir nicht. Scheint doch sowieso konstant zu sein, warum also ein 
Sinusgenerator per Programm. Wahrscheinlich bin aber auch ich einer von 
denen ohne Grips :-)

von Kalle (Gast)


Lesenswert?

Oh ein nicht konformer Blog. Gleich den Abmahnanwälten melden.

von Peter D. (peda)


Lesenswert?

äxl schrieb:
> Carl D. schrieb:
>>> pwmDuty = 128 +126 * sin(micros() * 0.000157);
>
> Allein für diese eine Codezeile würde ich gern mal das listing sehen...

Ja, das ist maximal Ressourcen verbrauchend.
Wird jede 1ms ein neuer Wert für 25Hz berechnet, dann sind das nur 40 
Stützstellen. Das geht ganz einfach mit einem Array und die umständliche 
float Sinus-Berechnung entfällt komplett.
1
#include <avr\io.h>
2
3
uint8_t sintab[] = {    0,   20,   39,   58,   75,   90,  103,  113,  121,  125,
4
                      127,  125,  121,  113,  103,   90,   75,   58,   39,   20,
5
                        0,  -20,  -39,  -58,  -75,  -90, -103, -113, -121, -125,
6
                     -127, -125, -121, -113, -103,  -90,  -75,  -58,  -39,  -20,
7
                   };
8
9
void int_1ms(void)      // to be called from the 1ms interrupt
10
{
11
  static uint8_t step25;
12
  if (step25 >= 40)
13
    step25 = 0;
14
  OCR0A = 128 + sintab[step25];
15
  step25++;
16
}

Man sieht auch sehr schön, daß nur eine Viertelwelle berechnet werden 
muß. Der Rest ergibt sich durch Spiegelung bzw. Vorzeichenumkehr. Man 
könnte daher die Tabelle auch auf 10 Einträge reduzieren und die beiden 
Subtraktionen in Echtzeit machen.
Durch den Aufruf im Timerinterrupt gibt es auch keinen Jitter mehr durch 
andere Tasks.

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> lege ich auf eine weitere Konversation keinen
> Wert.

Das freut mich sehr. :)

Hugo H. schrieb:
> Warum Du nicht einfach per PWM ein 25Hz Rechteck-Signal generierst und
> mit Deiner Rest-Pilotton-Schaltung in einen Sinus umwandelst erschließt
> sich mir nicht. Scheint doch sowieso konstant zu sein, warum also ein
> Sinusgenerator per Programm.

Der Semir hat mir netterweise einen Sinus geschenkt.
Warum soll ich dann einen Reckteck nehmen?
Je harmonischer der Pilotsinus ist, desto besser
ist das. Die Oberwellen landen ja im Differenzsignal.

LG
old.

von oldeurope O. (Gast)


Lesenswert?

Peter D. schrieb:
> Das geht ganz einfach mit einem Array

Danke Dir, werde ich demnächst mal testen.
Wird eher zum WE passieren.

LG
old.

von Einer K. (Gast)


Lesenswert?

Oh manno...
Das mit der Tabelle kam in diesem Thread schon gefühlte 100 mal vor!
Bei "Sinus und µC" muss das doch das erste sein, was einem da einfällt.

Am Rande:
Wie kann jemand (du) so arrogant sein und dann das Prinzip einer "Lookup 
Table" nicht kennen.
Ob es da wohl noch mehr Lücken gibt?
Ob du dir da wohl mit deiner eigenen Einstellung (Halsstarrigkeit) im 
Wege rum stehst?

von Joachim B. (jar)


Lesenswert?

Peter D. schrieb:
> Da passiert nichts, in einem PNG kann man keinen Link anklicken. Warum
> willst Du es einem immer maximal schwer machen?
> Links gehören in das Posting und nicht in irgendwelche Anhänge. Und auch
> immer gleich an den Anfang, damit man sehen kann, worauf sich eine Frage
> bezieht.

ich hatte mir mal die Mühe gemacht, in den Quellen war keine falsche 
Einrückung weder in der Arduino IDE noch in Notepad++

Ich frage mich so langsam auch was uns der TO da mitteilen will
Links in PNG, kein Bezug auf was er meint.....

trolliger oder "do**er" gehts ja kaum noch

Irgendwann wird ihn JEDER ignorieren weil es die Mühe nicht lohnt!

PS: lcd.setCursor(0,1); lcd.print(hertz);}}

habe ich an keiner Stelle gefunden

: Bearbeitet durch User
von Bernd K. (prof7bit)


Lesenswert?

Joachim B. schrieb:
> PS: lcd.setCursor(0,1); lcd.print(hertz);}}
>
> habe ich an keiner Stelle gefunden

Im ersten Post ist ein Link auf einen anderen Thread, dort wiederum in 
dessen ersten Post ist Code angehängt, um den geht es. Dort kommt die 
obige Zeile drin vor und auch tausend andere Verbrechen gegen die 
Leserlichkeit, der ganze Code ist eine Serie von Faustschlägen ins 
Gesicht eines jeden wohlwollenden Lesers.

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Bernd K. schrieb:
> Im ersten Post ist ein Link auf einen anderen Thread, dort wiederum in
> dessen ersten Post ist Code angehängt, um den geht es. Dort kommt die
> obige Zeile drin vor und auch tausend andere Verbrechen gegen die
> Leserlichkeit.

da soll einer drauf kommen "OMG"

Joachim B. schrieb:
> Irgendwann wird ihn JEDER ignorieren weil es die Mühe nicht lohnt!

von Eric B. (beric)


Lesenswert?

Peter D. schrieb:
> ... Das geht ganz einfach mit einem Array und die umständliche
> float Sinus-Berechnung entfällt komplett.
...
> Man sieht auch sehr schön, daß nur eine Viertelwelle berechnet werden
> muß.

Perle für die Schweine...

von äxl (Gast)


Lesenswert?

Peter D. schrieb:
> Durch den Aufruf im Timerinterrupt gibt es auch keinen Jitter mehr durch
> andere Tasks.
Du hast vergessen, (ihm) aufzuzeigen, wie er die Routine in den 
Timerint. bekommt, aufdass diese auch alle 1msek aufgerufen wird... Den 
Rotary Encoder kann man da auch gleich mit reinbasteln, wenigstes ein 
Flag setzen.

von Einer K. (Gast)


Lesenswert?

äxl schrieb:
> aufzuzeigen, wie er die Routine in den
> Timerint

Aus meiner Wühkiste:
1
/**
2
 * 
3
 * Timertick Interrupt
4
 * 
5
 * Genutzt wird die Arduino Voreinstellung des Timers
6
 * 
7
 * Intern arbeitet der uebliche AVR Arduio mit Timer0 Overflow Interrupts, 
8
 * um die Werte für millis(), delay() usw zu erzeugen. Leider koennen wir 
9
 * darum diesen Overflow Interrupt nicht für eigene Zwecke nutzen.
10
 * 
11
 * Der Vorteiler wird auf 64 gesetzt und da Timer0 ein 8 Bit Timer ist,
12
 * erfolgt alle (16000000/64/256)ms ein Compare Interrupt.
13
 * Bei einem Uno, also alle 0,977ms
14
 * Bei einem 8MHz Pro Mini alle 1,953ms
15
 * 
16
 * Hier am Beispiel eines UNO
17
 * Der genutzte Kanal kann auch weiterhin für PWM verwendet werden, erzeugt 
18
 * dann aber bei Wertänderungen einen Jitter im ISR Timimg
19
 * 
20
 */
21
22
23
24
volatile unsigned int ticks = 0;
25
26
void setup() 
27
{
28
  DDRB   |= _BV(PB5);  
29
  OCR0A   = 42;        // Wert ist egal
30
  TIMSK0 |= _BV(OCIE0A);
31
  TIFR0  |= _BV(OCF0A);
32
}
33
34
void loop() {}
35
36
37
ISR(TIMER0_COMPA_vect)
38
{
39
    if(++ticks>=1000U) 
40
    {
41
      PINB = _BV(PB5); // toggle pin
42
      ticks=0;
43
    }
44
}

von Kastanie (Gast)


Lesenswert?

Sehr interessant, wie hier einem erwiesenen Rotzlöffel geduldig geholfen 
wird.
Respekt an alle, die sich die fremde Spucke aus dem Gesicht wischen und 
höflich weiterhelfen.

von Einer K. (Gast)


Lesenswert?

Kastanie schrieb:
> und höflich weiterhelfen.
Der spuckt und pieselt gegen den Wind.

Irgendeinem anderen mag der Thread allerdings helfen.
Sowohl auf fachlichen, als auch auf sozialem Gebiet.

Meine Oma sagte damals schon:
> Selbst den größten Idioten kann man gebrauchen.
> Und sei es auch nur als abschreckendes Beispiel.

von Joachim B. (jar)


Lesenswert?

Kastanie schrieb:
> Sehr interessant, wie hier einem erwiesenen Rotzlöffel geduldig geholfen
> wird.

stimmt,
manchmal hat man Langeweile oder muss den Kopf von eigenen Problemen 
ablenken.

Andererseits ist es nicht ausgeschlossen das Hilfe nicht dem Rotzlöffel 
hilft sondern anderen die den Thread finden.

von äxl (Gast)


Lesenswert?

Ich finds kacke, wie sich manche hier benehmen dürfen.
Das vorweg.
Sehr ärgerlich finde ich, dass die Riege der Funkamateure durch dieses 
unempathische Verhalten eines einzelnen OM verunglimpft wird. Dabei 
kenne ich aus jenem Kreis genug, die ihr hohes Bildungsniveau auch im 
sozialen Umfeld mitführen. Andererseits kenne ich jetzt wenigstens 
einen, bei dem das nicht so ist. Also: #isso; Haken drann.
Sehr befremdlich, dass ein durchaus interessantes Thema (AM-Stereo hatte 
ich noch nicht  auf dem Schirm - scheint ja aber eh vorbei zu sein) bei 
mir jetzt gleich negativ besetzt ist.

Aber: ich kehre wieder zum Tagesgeschäft zurück, ich bin noch nicht in 
Rente...

Gruß
Äxl

PS:
kann man das benötigte Sendesignal nicht direkt im µC erzeugen?

von oldeurope O. (Gast)


Lesenswert?

Kastanie schrieb:
> Sehr interessant

wie viele Hasser sich hier trollen.

LG
old.

von Einer K. (Gast)


Lesenswert?

Ein Autofahrer hört im Radio:
> "Ein Geisterfahrer auf der A44!"

Sagt der Fahrer:
> "Was? Einer? Hunderte!"

von Bernd K. (prof7bit)


Lesenswert?

äxl schrieb:
> PS:
> kann man das benötigte Sendesignal nicht direkt im µC erzeugen?

Es wird wahrscheinlich leichter wenn man einen µC mit DAC wählt und 
nicht mit PWM als DAC-Ersatz rummachen muss. Dann könnte man wohl 
irgendwas erzeugen das man nachher nur noch hochmischen muss, das müsste 
noch im Rahmen der Leistungsfähigkeit eines nicht allzu lahmen µC sein 
sag ich mal so aus dem Bauch raus. SSB genauso.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

äxl schrieb:
> PS:
> kann man das benötigte Sendesignal nicht direkt im µC erzeugen?

Ich lehn' mich mal etwas aus dem Fenster und sag': Das koennte 
wahrscheinlich sogar der ATMega328 machen. Wenn man den z.B. mit 16MHz 
takten wuerde, koennte ich mir vorstellen mit dem ADC 2 (Audio-)Kanaele 
mit jeweils 15.625kHz Abtastrate und 8 bit zu digitalisieren, die dann 
entsprechend zu matrizieren, und den ganzen anderen C-QUAM Affenzirkus 
zu machen und dann mit einer niedrigen ZF von vielleicht z.B. 39.0625kHz 
mit ein paar Bit parallel auf ein R2R Netzwerk gehen, danach halt 
filtern und hoch mischen. Wenn die Pins ausreichen koennt' man 
vielleicht sogar in der ZF-Lage mit I und Q Komponente rausgehen und mit 
einem komplexen Mischer sich das Auftreten von Spiegelfrequenzen 
schenken/abschwaechen.
Wenn man die ganze Signalverarbeitung in einem (Timer-)IRQ-Handler 
macht, bleibt sogar noch bisschen CPU-Power uebrig um Displays, I2C- und 
SPI-Peripherie zu bedienen...
Hab's aber nur mal schnell ueberschlagen - wie gut der ADC sich so 
hurtig umschalten laesst, dass ein Stereosignal dabei rumkommt, muesst' 
man mal ausprobieren. Assembler sollt' man halt koennen. Und digitale 
Signalverarbeitung.

Gruss
WK

von Hugo H. (hugohurtig1)


Lesenswert?

Dergute W. schrieb:
> ADC sich so
> hurtig umschalten laesst, dass ein Stereosignal dabei rumkommt

Der ADC gibt nichts raus der vergleicht/misst nur.

Hast Du den Thread verfolgt?

von W.A. (Gast)


Lesenswert?

äxl schrieb:
> Du hast vergessen, (ihm) aufzuzeigen, wie er die Routine in den
> Timerint.

Wozu, kann man doch zurückblättern und nachlesen ...

Wolfgang schrieb:
> Hier siehst du ein Beispiel, wie du dich an den Timer0-Interrupt, der
> auch für millis() den Takt bereit stellt, einklinken kannst.
> https://learn.adafruit.com/multi-tasking-the-arduino-part-2/timers

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Hugo H. schrieb:
> Der ADC gibt nichts raus der vergleicht/misst nur.
Das glaube ich nicht, Tim.

> Hast Du den Thread verfolgt?
Das glaube ich schon, Tim.

Gruss
WK

von Hugo H. (hugohurtig1)


Lesenswert?

Dergute W. schrieb:
> Das glaube ich nicht, Tim.

Glauben heißt nicht(s) Wissen - passt also :-), Weka.

"Tim" scheint einer eher labilen Phantasie zu entspringen ... :-) - hast 
Du irgendwelche Probleme?

: Bearbeitet durch User
von Sebastian W. (wangnick)


Lesenswert?

Aus der W. schrieb:
> Sebastian W. schrieb:
>> Wenn ich deinen Quellcode richtig verstehe
> Zeile 254. Im Code. Für Euch kann man sich nur noch fremdschämen.

Ok, ich hab mir den ganzen Thread noch einmal durchgelesen und gebe zu, 
dass ich mit
> Old, das von dir geschilderte Problem (Störung des 25Hz-Sinus durch
> LiquidCrystal_I2C) ist generell nicht trivial zu beheben. Es stellen
> sich da Fragen nach zum Beispiel den längsten Zeiten von
> Interrupt-Unterdrückung in den Bibliotheken.
auf dem Holzweg war.

Ich muss gestehen, dass ich mir beileibe nicht vorstellen konnte, dass 
jemand die Chuzpe *) besässe, seine Verzerrung einer nicht nebenläufig 
erzeugten Sinus-Schwingung durch den zwischenzeitlichen Aufruf von 
einfach länger dauernden Bibliotheksroutinen eben diesen Routinen als 
"Bug" anzulasten.

LG, Sebastian

*) lt. Wikipedia "eine Mischung aus zielgerichteter, intelligenter 
Unverschämtheit, charmanter Penetranz und unwiderstehlicher 
Dreistigkeit"

von oldeurope O. (Gast)


Lesenswert?

Dergute W. schrieb:
> Ich lehn' mich mal etwas aus dem Fenster ...

Ich bin froh, wenn ich irgendwann mal eine FL2K-Lösung
dafür hinbekomme …
Ist bisher daran gescheitert von gnuradio in win10 auf
fl2k zu kommen. Habe ich momentan auch keine Lust zu.

Meine jetzige Lösung, die ich gerade zum 2.Mal aufbaue,
sieht so aus: Neues C-QUAM Verfahren entwickelt,
welches einen Phasenmodulator für CQU erlaubt.
(Das hatte ich für den "Butter Cookies TX" entwickelt.)

Arduino --> AD9850 wird mit (L-R)*(L+R+1), das ist der Kniff
und wird Niederfrequent generiert, Pulsweitenmoduliert.
(Unmittelbare PM über das Register kann ich nicht, es ist
auch fraglich ob das qualitativ mit der geringen Bitbreite
geht.)

Für PWM besitzt der AD9850 einen ausgezeichneten Komparator.
Ein Toggelflipflop macht aus der PWM --> PM.
(Motorola erzeugt übrigens diese, mit (L-R)*(L+R+1) modulierte
PM, hochfrequent. Das muss man erkennen.)
Diese Phasenmodulierte Frequenz wird wieder verdoppelt und
ergibt den C-QU-Träger in TTL. Von 100KHz bis 2MHz, wie man
im Sketch sieht. Dann kommt die AM dazu --> CQUAM.

LG
old.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Aus der W. schrieb:
> Ich bin froh, wenn ich irgendwann mal eine FL2K-Lösung
> dafür hinbekomme …
> Ist bisher daran gescheitert von gnuradio in win10 auf
> fl2k zu kommen. Habe ich momentan auch keine Lust zu.

Ja, das sind dann natuerlich die Superluxusloesungen. Mitm 328er waere 
natuerlich nur 8-bit Audio sinnvoll und mangels DAC der ZF-Out auch 
bisschen krueckig... Aber ist ja eh "nur Mittelwelle" ;-)

Gruss
WK

von oldeurope O. (Gast)


Lesenswert?

Dergute W. schrieb:
> Mitm 328er waere
> natuerlich nur 8-bit Audio sinnvoll und mangels DAC der ZF-Out auch
> bisschen krueckig...

Deshalb auch analog mit Arduino und AD9850 Comfort.
Da gibt es keine Abstriche bei.

LG
old.

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Aus der W. schrieb:
> Als nächstes versuche ich dann eine Spannung über die
> PWM bei gedrücktem Pushbutton Rotary für die Lautstärke
> zu bekommen.

Das hat geklappt. :) Ein Pushbutton-Rotary passt noch auf die
Frontplatte neben dem Display. Für ein gutes Tandempoti
ist zu wenig Platz in dem Gehäuse, welches ich verwenden möchte.
Anbei auch die aktuelle ino.

> Als übernächstes den Wert in den Speicher
> zu schreiben um ihn beim Wiedereinschalten zu bekommen.
> Damit bin ich erstmal beschäftigt. Als Muster zur Orientierung
> habe ich ja die Frequenzeinstellung.

LG
old.

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Auf dem Spannungsversorgungsboard habe ich noch Platz für das
elektronische Tandempoti mit dem LM13700N gefunden, welches
vom Arduino gesteuert wird. Ist etwas eng geworden ...
Oben die 3,5mm Klinke ist der Stereo-Audio-Eingang.

LG
old.

von F. F. (foldi)


Lesenswert?

Aus der W. schrieb:
> Was zu tun ist, habe ich getan.

Du bist eigentlich an einem Punkt, an den du auf C umsteigen solltest.
Die Arduino libs sind oft in c oder c++ geschrieben, dabei hoffnungslos 
aufgeblasen, was du für dein konkretes Projekt alles gar nicht brauchst.
Hier schrieb jemand, dass sie funktionieren, aber nicht optimal sind.
Es macht hinterher auch mehr Spaß, weil du dann auch z.B. deinen Code 
sehr einfach auf einen anderen, vielleicht auf einen Tiny, Controller 
portieren kannst.

Arduino ist sicher gut für den Anfang, aber irgendwann ist es erstmal 
eine Sackgasse, weil dir dann das elementare Verständnis fehlt.
Wenn du dann ein tieferes Verständnis hast, kannst du sicher das eine 
oder andere Projekt damit vielleicht schneller verwirklichen.
In jedem Fall bist du persönlich schon an die Grenze von Arduino 
gestoßen.
Du musst nun etwas mehr über den Controller lernen, wie dieser arbeitet 
und das kannst du besser mit C und mit dem Atmel Studio. Im Simulator 
kannst du dann z.b. sehen wie die Register stehen, was dein Befehl 
auslöst.

Auch wenn du dich jetzt noch sträubst, du kommst nicht drum rum.

von Bernd K. (prof7bit)


Lesenswert?

F. F. schrieb:
> Du bist eigentlich an einem Punkt, an den du auf C umsteigen solltest.

Er hat doch schon geschrieben daß er sich nicht mit der Materie 
auseinandersetzen will. Er will nur Legosteine zusammenstecken. Und wenn 
wie im vorliegenden Fall die Noppen zufällig auf der anderen Seite sind 
ist natürlich Lego schuld an der Misere, denn das Umdrehen des Bausteins 
und richtig herum einsetzen würde schon den Rahmen sprengen. Also nimmt 
er Heißkleber. So versteh ich das.

: Bearbeitet durch User
von Dergute W. (derguteweka)


Lesenswert?

Moin,

F. F. schrieb:
> Auch wenn du dich jetzt noch sträubst, du kommst nicht drum rum.

Doch, das glaube ich schon. Man muss auch mal akzeptieren, dass jemand 
lieber mit Heisskleber rumbatzelt, als mit einer Programmiersprache.
Da find' ich nix verwerfliches dran.

Gruss
WK

von Einer K. (Gast)


Lesenswert?

F. F. schrieb:
> Du bist eigentlich an einem Punkt, an den du auf C umsteigen solltest.

Irrtum in der Sache!

Das Problem liegt hier:
Der TO hat einen Stock so weit im Hintern, dass er sich daran 
verschluckt.

F. F. schrieb:
> Hier schrieb jemand, dass sie funktionieren, aber nicht optimal sind.
Wer?
Ich würde sagen, dass hier der Nachweis geführt wurde, dass die Arduino 
Libs nicht das Problem sind, sondern die innere Einstellung des TO.

Und da kann auch kein Atmelstudio was gegen machen.


---

Und überhaupt, warum sollte man vom modernen C++ auf C umsteigen 
wollen/sollen?
Damit gewinnt man nun wirklich keinen Blumentopf.

F. F. schrieb:
> Auch wenn du dich jetzt noch sträubst, du kommst nicht drum rum.
Auch da irrst du dich.

von F. F. (foldi)


Lesenswert?

Arduino Fanboy D. schrieb:
> Und überhaupt, warum sollte man vom modernen C++ auf C umsteigen
> wollen/sollen? Damit gewinnt man nun wirklich keinen Blumentopf.

Ne muss er nicht, keiner, aber du weißt wo dieses Thema hin führt.
Viele Programme und somit Beispiele für Mikrocontroller sind nun mal in 
C geschrieben (Assembler hier außen vor gelassen; c-hater, deine 
Beschwerde wird schon hier förmlich zur Kenntnis genommen) und nur 
deshalb habe ich zunächst C angeführt.

Natürlich kann man auch weiter Heißkleber nehmen, aber ich denke das 
Interesse kommt ganz von alleine.
Das war was ich damit ausdrücken wollte.

von oldeurope O. (Gast)


Lesenswert?

F. F. schrieb:
> Die Arduino libs sind oft in c oder c++ geschrieben, dabei hoffnungslos
> aufgeblasen, was du für dein konkretes Projekt alles gar nicht brauchst.

Das ist nicht mein Bier. Mir wurde gesagt: Nimm ein I2C-Display,
da hast Du weniger Verdrahtungsaufwand und zusätzliche Ein-
Ausgänge frei. Offenbar gibt es unbekannte Nebenwirkungen.

Wichtig ist, dass die libs funktionieren.
Ich bin da einfach nur Nutzer.
Die Mehrzahl der Nutzer wird wohl kein Problem mit der I2C lib
für das Display haben, deshalb wird der Bug wohl nicht gefixt werden.

Nun mal mein Autovergleich:
Der mehr als zufriedene Nutzer eines Dieselfahrzeuges hört im ÖR,
dass sein Diesel eine Dreckschleuder sei und glaubt das sofort.
Jetzt ist er plötzlich unzufrieden, will Geld und klagt rum.
Tatsächlich versucht der Hersteller noch irgendwelche Änderungen,
damit alle wieder glücklich sind.
Davon seit Ihr weit entfernt.
Da kommt Niemand und sagt im übertragenen Sinne:
Autofahrer lerne erstmal Doppelplus-Zeh bevor Du ein neues
Auto kaufst.

Für größere Projekte nehme ich dann halt den Mega und klemme das
Display wieder parallel an. Wo es geht versuche ich libs zu
vermeiden. Den meisten analogen Kram kann ich selbst an den
Arduino über die Analogeingänge bzw. PWM-Ausgänge hängen.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Wichtig ist, dass die libs funktionieren.

Tun sie doch auch - einzeln. Dass zusammengewürfelte Software in 
Kombination oft Probleme macht, ist nicht neu. An solchen Punkten 
erkennt man halt, wie tief ein Programmierer in die Materie einsteigen 
kann. Da trennt sich die Spreu vom Weizen.

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> ist nicht neu.

Ist neu. Ich bin mir auch sicher, dass der Bug behoben werden
kann, wenn willige Arduino Programmierer darauf aufmerksam werden.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich bin mir auch sicher, dass der Bug behoben werden kann

na dann mach' es! Du hast schließlich Interesse daran.

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Aus der W. schrieb:
>> Ich bin mir auch sicher, dass der Bug behoben werden kann,
>> wenn willige Arduino Programmierer darauf aufmerksam werden.
>
> na dann mach' es! Du hast schließlich Interesse daran.

Ich bin kein Programmierer. Bist Du einer?

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich bin kein Programmierer. Bist Du einer?

Ja, aber das nützt dir nichts.

von Einer K. (Gast)


Lesenswert?

F. F. schrieb:
> Natürlich kann man auch weiter Heißkleber nehmen, aber ich denke das
> Interesse kommt ganz von alleine.
> Das war was ich damit ausdrücken wollte.

Klar, C++ ist Heißleber, und Heißkleber ist scheiße, warum noch gleich?
Weil Heißkleber eben scheiße ist.


Lies dir dieses noch mal durch:

Aus der W. schrieb:
> Ich bin mir auch sicher, dass der Bug behoben werden
> kann, wenn willige Arduino Programmierer darauf aufmerksam werden.

Der hat immer noch nicht begriffen, das die LCD Lib nicht sein Problem 
ist.
Wie kommst du {Autor: F. F. (foldi)} auf die absurde Idee, das ein Atmel 
Studio, oder C daran was ändern können?

Absurd!
Einfach absurd, die Annahme.

F. F. schrieb:
> aber du weißt wo dieses Thema hin führt.
Warum fängst du dann damit an?

Ich möchte mal behaupten, dass alle hier, außer du und der TE begriffen 
haben, worum es geht. Wo es "wirklich" klemmt.
Und das hat ganz sicher nichts mit C oder C++ oder einer beliebigen IDE 
zu tun.

von Stefan F. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Der hat immer noch nicht begriffen, das die LCD Lib nicht sein Problem
> ist.

Ja, offensichtlich. Eigentlich fehlt jetzt nur noch, den Entwickler der 
LCD Lib zu beschimpfen.

von oldeurope O. (Gast)


Lesenswert?

Etwas Zeit zur Nachbesserung sollte man schon geben,
bevor man schimpft.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Etwas Zeit zur Nachbesserung sollte man schon geben,

Erwartest du jetzt im Ernst, dass der Autor oder jemand anderes die 
Bibliothek (nur für dich) ändert?

Da kannst du lange warten.

von oldeurope O. (Gast)


Lesenswert?

Ich denke, es wird bald eine neue lib  oder ein Update dafür geben.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich denke, es wird bald eine neue lib oder ein Update dafür geben.

Du bist echt schräg drauf. Was rauchst du?

von Harry L. (mysth)


Lesenswert?

Aus der W. schrieb:
> Ich denke, es wird bald eine neue lib  oder ein Update dafür
> geben.
>
> LG
> old.

Wozu?
Der Code tut exakt das, was er soll und genau wie beschrieben.

Der "Bug" sitzt 50 cm vor dem Monitor.

von oldeurope O. (Gast)


Lesenswert?

Harry L. schrieb:
> Wozu?

Damit man einen Sketch nicht umkrempeln muss, wenn man
ein serielles Display verwenden will.

[Ironie]
> Der Code tut exakt das, was er soll und genau wie beschrieben.
>
> Der "Bug" sitzt 50 cm vor dem Monitor.

Klar der User und die Autofahrer sind schuld.
Programmierer sind unfehlbare Götter. [/Ironie]

LG
old.

von Stefan F. (Gast)


Lesenswert?

Der Mann veräppelt uns doch!

von Einer K. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Der Mann veräppelt uns doch!
Nö, er hat nur keine Kompetenz auf diesem Gebiet.
Siehe Kompetenzlevel 1
In: https://de.wikipedia.org/wiki/Kompetenzstufenentwicklung
Aber die Nase ganz weit oben.






Der "Bug" sitzt 50 cm vor dem Monitor.
Auf Level 8 im OSI Schichtenmodell.

von Trollblocker (Gast)


Lesenswert?

Warum wird der Troll seit Tagen gefüttert?

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Der Mann veräppelt uns doch!

Von mir gibt es als Lösung einen funktionierenden Sketch.
Umständlich aber läuft.
Und von Euch? Unausgegorene Vorschläge die bisher zu nichts führten.

LG
old.

von Einer K. (Gast)


Lesenswert?

Dann verharre weiterhin in deinem Irrtum.
Denn die Einsicht kann nur in deinem Kopf entstehen.

von Joachim B. (jar)


Lesenswert?

Stefanus F. schrieb:
> Der Mann veräppelt uns doch!

das habe ich auch öfter gedacht, kaum zu glauben das er ein RFS 
Techniker ist, Zitat Goldblum, "es gibt nicht was ein Fernsehtechniker 
nicht kann", bis dahin glaubte ich das weil ich keinen so komischen 
Kollegen kennengelernt hatte.

von Einer K. (Gast)


Lesenswert?

Joachim B. schrieb:
> kaum zu glauben

Ach, da mache dir mal keine Sorgen.
Dieses Maß der Borniertheit, hat nichts mit dem Berufsstand RFS 
Techniker zu tun.

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Offenbar gibt es unbekannte Nebenwirkungen.

Nein, alle Wirkungen sind allgemein bekannt und gut dokumentiert. Wie 
man das in seiner Software berücksichtigt ist ebenfalls bekannt, nur Dir 
offensichtlich nicht, aber nur weil Du etwas nicht kennst und auch 
nichts darüber lernen willst wird es noch lange nicht "unbekannt".

Und jetzt hör endlich auf hier so kindisch rumzutrotzen. das ist doch 
vollkommen lächerlich.

> deshalb wird der Bug wohl nicht gefixt werden.

Nein, diese Lib ist vollkommen in Ordnung, Deine Firmware hat einen Bug. 
Das wurde Dir aber schon lang und breit erklärt, inklusive Code der das 
fixt. Vollkommen lächerlich was Du hier abziehst.

: Bearbeitet durch User
von oldeurope O. (Gast)


Lesenswert?

Eine Beleidigung reiht sich an die Nächste.
Schaukeln sich gegenseitig hoch.

von oldeurope O. (Gast)


Lesenswert?

Bernd K. schrieb:
> Das wurde Dir aber schon lang und breit erklärt,

> Das wurde behauptet.

inklusive Code der das
> fixt.

Unvollständige Brocken. Und lies nochmal den Startbeitrag.
Eine Problemlösung ist das noch lange nicht, wenn nur der
Sinus während der Anzeigeänderung sauber bleibt.

Man muss schon etwas an der I2C Sache ändern, wenn nicht
das Nächste Problem in den Startlöchern stehen soll.
Beitrag "Re: I2C "blockiert" Arduino"

Der Modulator läuft auch ohne Anzeige der Stellung des
elektronischen Potis oder einer Pegelanzeige.
(Sauber Einpegeln geht sowieso nur mit den LEDs.)
Kommt Zeit kommt Lösung dafür, ich habe damit Zeit.

LG
old.

von oldeurope O. (Gast)


Lesenswert?

Offenbar gibt es diverse I2C libs für das Display.

https://forum.arduino.cc/index.php?PHPSESSID=nph3ge5n8g5av6l91l6b8dbon2&topic=449451.msg3092231#msg3092231

Ich werde demnächst mal eine andere, aktuellere lib testen.

LG
old.

von Franz M. (elmo64)


Lesenswert?

Aus der W. schrieb:
> Eine Beleidigung reiht sich an die Nächste. Schaukeln sich gegenseitig hoch.

Und du bist daran gaaaaanz unschuldig.

> Kommt Zeit kommt Lösung dafür, ich habe damit Zeit.

Trollblocker schrieb:
> Warum wird der Troll seit Tagen gefüttert?


Aus der W. schrieb:
> Man muss schon etwas an der I2C Sache ändern, wenn nicht
> das Nächste Problem in den Startlöchern stehen soll.

Dann tu das!
Oder benutze eine andere Lib.

Dir wurden bereits Gründe für deine Probleme erklärt und 
Lösungsmöglichkeiten
vorgeschlagen.

Nun ist DEINE Initiative gefragt.

Dein Verhalten wird hier niemanden dazu bewegen Code für dich zu 
schreiben.
Du solltest vielleicht ein Unternehmen beauftragen - gegen Geld, 
versteht sich.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Offenbar gibt es diverse I2C libs für das Display.
>
> 
https://forum.arduino.cc/index.php?PHPSESSID=nph3ge5n8g5av6l91l6b8dbon2&topic=449451.msg3092231#msg3092231
>
> Ich werde demnächst mal eine andere, aktuellere lib testen.



Es ist nicht schlimm, wenn deine Kompetenzen auf anderen Gebieten 
liegen.

Es ist aber unschön anzusehen, wie jemand, dessen Programmierkompetenzen 
schwächer ausgebildet sind, als die so mancher Putzfrau, die getätigte 
Aussage, dass die LCD Lib hier unschuldig ist, in den Wind schlägt.

Keine dieser Libs wird dein Problem lösen.

So wie dir auch die Kenntnis über eine LUT fremd war, ist es auch mit 
dem denken in Nebenläufigkeiten. Und damit hapert es dann auch beim 
herstellen eben genau dieser Nebenläufigkeiten.

Das alte Mantra:
> Ich benötige ein Zeitraster.
> Dann verwende ich einen Timer.
Ist noch nicht in deinen Hirnwindungen verankert.

Wenn das einmal sitzt, dann gibts auch keine Probleme mehr mit dem I2C 
Display.


Tipp:
> Der Kopf ist rund,
> damit das denken die Richtung ändern kann.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Unvollständige Brocken.

Natürlich. Erwartest du, dass hier jemand deine Arbeit für dich 
erledigt?

> Man muss schon etwas an der I2C Sache ändern

Nein, der Fehler steckt im Gesamtkonzept. Die I²C Sache könnte man auch 
ändern, aber nicht ohne das Programm insgesamt anders zu strukturieren. 
Wie, das wurde Dir von mehreren Leuten ausreichend erklärt. Wenn du das 
nicht verstehst, dann ist das schade und nicht unser Fehler.

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> nicht unser Fehler

Sobald Du in dieser Gruppe auftrittst, bist Du ein anderer Mensch.

A. M. schrieb:
> Oder benutze eine andere Lib.

Ach da schau her!

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Nein, der Fehler steckt im Gesamtkonzept.

Als ob das Sketch-Konzept davon abhängt, ob man
ein paralleles oder serielles Display verwendet.

Das ist der Witz des Abends.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Der Witz des Abends ist, dass du immer noch knallhart den eigentlichen 
Fehler leugnest.

Der Fehler ist, dass die Zeit, die für die Kommunikation mit dem Display 
drauf geht, die Erzeugung des Signals beeinträchtigt. Das darf schon 
nicht sein. Völlig egal, welche Schnittstelle verwendet ist und wie 
schnell oder langsam sie ist.

Denn kein Display kann ganz ohne Zeitbedarf kommunizieren. Ein 
schnelleres (paralleles) Display macht das Problem nicht weg, sondern 
nur kleiner.

Der eigentliche Fehler liegt in der Art und Weise wie dein Programm das 
Signal generiert. Das muss unabhängig von anderen Threads deines 
Programms werden. Multitasking und Timer-Interrupts sind hier die 
Zauberwörter, mit denen du dich befassen solltest.

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Erwartest du, dass hier jemand deine Arbeit für dich
> erledigt?

ARBEIT? Das ist hier Hobby. Auch wenn ich mal für einen User
eine Simu (Ltspice) anfertige oder ans laufen bringe,
so mach ich das sehr gerne.
Wir haben da wohl sehr unterschiedliche Einstellungen zur
Hilfe im Forum, deshalb passt das nicht.
______________________________________________________________

Fortschritt am Modulator:
Ich mache gerade das Sallen-Key für die VCAs fertig.

LG
old.

von spess53 (Gast)


Lesenswert?

Hi

>Wir haben da wohl sehr unterschiedliche Einstellungen zur
>Hilfe im Forum, ...

An welcher Stelle hast du schon mal hier im Forum geholfen?

MfG Spess

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> ARBEIT? Das ist hier Hobby.

Wenn ich etwas nicht selber machen kann oder will, und dass dann von 
jemand anderem machen lasse, dann ist das für denjenigen normalerweise 
Arbeit.

Für mich bedeutet Arbeit nicht zwangsläufig Beruf, sondern eher eine 
Tätigkeit, die man nicht zur reinen Freude macht. Arbeit ist für mich 
auch Gartenpflege, Putzen, Waschen, Kochen, Kindererziehung.

Wenn ich deinen Quelltext verbessern würde (oder die Lib), dann würde 
ich das nur tun, um mir etwas zu meinem knappen Gehalt dazu zu 
verdienen. Das wäre dann für mich eindeutig Arbeit.

Angenommen, die Lib wäre fehlerhaft:

Der Autor der Lib hat diese vielleicht im Rahmen seines Hobbies bei 
irgendeiner Bastelei geschrieben. Wenn der Mensch beim nächsten Projekt 
auf das gleiche Problem stößt, wird er es wahrscheinlich verbessern und 
veröffentlichen.

Darauf kannst du warten.

Was allerdings wohl kaum passieren wird ist, das jemand anderes diesen 
Code für dich verbessert. Das müsste dann schon aus sportlichem Ehrgeiz 
oder endloser Langeweile heraus passieren. Die Wahrscheinlichkeit, geht 
jedoch gegen Null weil zu viele Faktoren zusammen treffen müssten:

1) jemand müsste auf das gleiche Problem stoßen
2) mit einer gleichen oder zumindest fast gleichen Anwendungen
3) und der Kompetenz, es zu verbessern
4) und der dazu nötigen Zeit
5) und der dazu nötigen Lust
6) und er müsste sein Werk veröffentlichen
7) und du müsstest auf diese Veröffentlichung aufmerksam werden

Da kannst du gleich darauf hoffen, im Lotto Millionär zu werden.

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Wenn ich deinen Quelltext verbessern würde (oder die Lib), dann würde
> ich das nur tun, um mir etwas zu meinem knappen Gehalt dazu zu
> verdienen. Das wäre dann für mich eindeutig Arbeit.

Ich sagte ja schon:

Aus der W. schrieb:
> Wir haben da wohl sehr unterschiedliche Einstellungen zur
> Hilfe im Forum, deshalb passt das nicht.

Stefanus F. schrieb:
> Was allerdings wohl kaum passieren wird ist, das jemand anderes diesen
> Code für dich verbessert. Das müsste dann schon aus sportlichem Ehrgeiz
> oder endloser Langeweile heraus passieren. Die Wahrscheinlichkeit, geht
> jedoch gegen Null weil zu viele Faktoren zusammen treffen müssten:
>
> 1) jemand müsste auf das gleiche Problem stoßen
> 2) mit einer gleichen oder zumindest fast gleichen Anwendungen
> 3) und der Kompetenz, es zu verbessern
> 4) und der dazu nötigen Zeit
> 5) und der dazu nötigen Lust
> 6) und er müsste sein Werk veröffentlichen
> 7) und du müsstest auf diese Veröffentlichung aufmerksam werden

In meinem Bereich mache ich das. Und wenn es keine
Programmierer mit meiner Einstellung gäbe, hätten wir
kein Arduino.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich sagte ja schon: Wir haben da wohl sehr unterschiedliche Einstellungen

Ja, sieht so aus. Macht nichts, Vielfalt ist gut.

Ich würde Dir empfehlen, dich nicht zu sehr auf eine Lib zu versteifen. 
Die ist nämlich nicht schlecht oder fehlerhaft.

In deinem Fall muss die Lösung darin bestehen, das Konzept des Programms 
zu ändern.

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Ich würde Dir empfehlen, dich nicht zu sehr auf eine Lib zu versteifen.

Tue ich auch nicht. Ich werde jetzt mal die ALC "programmieren".
Damit muss ich mir dann auch keine Gedanken machen, wie man
den letzten VCA-Spannungswert speichert.
Die Arduino-ALC bietet deutlich mehr als eine rein analoge
mit RC-Zeitkonstante.
Sie wird genau das tun, was Mensch am Poti machen würde.

LG
old.

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Und wenn es keine
> Programmierer mit meiner Einstellung gäbe, hätten wir
> kein Arduino.

Wenn es nur Programmierer mit Deiner Einstellung gäbe säßen die alle 
noch vor dem Rechenschieber und würden sich beschweren daß noch keiner 
den Computer erfunden hat! Bzw. sie wüßten gar nicht daß es den in einer 
anderen Realität gegeben hätte und würden sich dann halt über irgendwas 
anderes beschweren. Zum Beispiel daß die Zahlen alle auf dem Kopf 
stehen. Und den Vorschlag ihn einfach richtig rum zu halten würden sie 
ignorieren und stattdessen vom Hersteller verlangen den "Bug" zu fixen 
während sie sich notdürftig Brillen konstruieren mit denen man alles um 
180° verdreht sieht.

: Bearbeitet durch User
von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Bernd K. schrieb:
> Wenn es nur Programmierer mit Deiner Einstellung

Nicht meine Einstellung zum Programmieren, sondern zur
Analogtechnik.

Aus der W. schrieb:
> Fortschritt am Modulator:
> Ich mache gerade das Sallen-Key für die VCAs fertig.

Ist fertig, Siehe Bild. Jetzt kommt der passende ALC-Sketch.
So macht das Freude. :)

Die Leiterplatte unten ist der Ersatz für den Pushbutton-Rotary
auf den ich noch warte.

LG
old.

von äxl (Gast)


Lesenswert?

"Ach, ich mach lieber was anderes" "Bleibt der Ton eben verzerrt" "Einer 
wird sich schon finden"
Zu piepen echt...
Du bist eben der einzige, der n DDS mit sin() in der Main erzeugt und 
sich am Ende wundert, das es 'hoplert'. Der Pilotton hoplert auch, wenn 
Du ne UART-Ausgabe machen würdest oder Befehle auf der seriellen 
empfangen wollen würdest oder auf ne Eingabe warten wölltest. also: 
immer quasi.
Aber schimpfen.
Schnell noch ein Foto "seht her - ich bin nicht ganz blöd, ich kann 
'einen ALC' löten".
Etwas mehr Demut wäre schon angebracht. Kein Problem, wenn man etwas 
nicht kann. Dann aber auch dazu stehen, Hilfe annehmen, sich 
interessiert zeigen und sich wenigstens ansatzweise mit der Thematik 
beschäftigen.
Stattdessen poltert Du hier hier durch die Gegend. Langsam muss ich 
wirklich schmunzeln. Erinent mich an den Typen, der im Dunkeln sein 
2Euro Stück unter der Strassenlaterne sucht, obwohl er genau weiss, es 
100 Meter weiter verloren zu haben. Problem: dort ist es dunkel und er 
würde es dort ohne Licht nicht finden.
gg
Viel Spass noch weiterhin. Sehr unterhaltsam.
ÄxlDG1RTO

von Peter D. (peda)


Lesenswert?

äxl schrieb:
> Erinent mich an den Typen, der im Dunkeln sein
> 2Euro Stück unter der Strassenlaterne sucht, obwohl er genau weiss, es
> 100 Meter weiter verloren zu haben. Problem: dort ist es dunkel und er
> würde es dort ohne Licht nicht finden.

Sehr schön und treffend.

von Peter D. (peda)


Lesenswert?

Aus der W. schrieb:
> Für größere Projekte nehme ich dann halt den Mega und klemme das
> Display wieder parallel an. Wo es geht versuche ich libs zu
> vermeiden.

Nein, das bringt genau 0,nix.
Dein Problem ist, zu erkennen, welches sind zeitkritische Tasks, die in 
einen Interrupt gehören und welche nicht.

von Einer K. (Gast)


Lesenswert?

äxl schrieb:
> Stattdessen poltert Du hier hier durch die Gegend

Ich nenne ein solches Verhalten mittlerweile "rumtrumpen".
Denn der Trump verhält sich ähnlich.

-------

Seit 40 oder 50 Jahren bestehende Style Guides werden mit einem 
Fingerschnippen beiseite gewischt.

Hier stehen sicherlich weit über 300 Mannjahre Programmiererfahrung als 
Berater zur Seite. Die Beratung wird nicht verstanden und der jeweilige 
Überbringer mit Häme überschüttet.

Die Schuld wird überall gesucht, wirr argumentiert, aber das eigene 
Denken nicht im geringsten angezweifelt.

---------

Es ist zum fremdschämen....

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> "Ach, ich mach lieber was anderes" "Bleibt der Ton eben verzerrt" "Einer
> wird sich schon finden"
> Zu piepen echt...
> Du bist eben der einzige, der n DDS mit sin() in der Main erzeugt und
> sich am Ende wundert, das es 'hoplert'.

Was lügst Du denn hier rum?
Erstens bin ich nicht der Einzige und zweitens arbeiten
die Sketche, welche ich hier gepostet habe, ufb.

Das zur Richtigstellung.

äxl schrieb:
> Schnell noch ein Foto

Freut mich, dass Die Veröffentlichungen von mir, solche Typen
wie Dich, ärgern. Dann mache ich alles genau richtig.

von Joachim B. (jar)


Lesenswert?

Aus der W. schrieb:
> zweitens arbeiten
> die Sketche, welche ich hier gepostet habe

dann ist doch alles gut, warum dann dieser Thread?

Aus der W. schrieb:
> Mir ist aufgefallen, dass wenn ich das I2C-Display anspreche,
> andere Funktionen gestört sind.

ja kenne ich, mir fällt auch auf das was gestört ist wenn ICH Fehler 
mache :)

: Bearbeitet durch User
von Eric B. (beric)


Lesenswert?

Arduino Fanboy D. schrieb:
> Seit 40 oder 50 Jahren bestehende Style Guides werden mit einem
> Fingerschnippen beiseite gewischt.
>
> Hier stehen sicherlich weit über 300 Mannjahre Programmiererfahrung als
> Berater zur Seite. Die Beratung wird nicht verstanden und der jeweilige
> Überbringer mit Häme überschüttet.
>
> Die Schuld wird überall gesucht, wirr argumentiert, aber das eigene
> Denken nicht im geringsten angezweifelt.

Er könnte sofort in die Elektronik-Entwicklung der Automobilindustrie 
einsteigen. Läuft genau so! :-D SCNR

von oldeurope O. (Gast)


Lesenswert?

Joachim B. schrieb:
> dann ist doch alles gut, warum dann dieser Thread?

Das steht, wie so oft, im Startbeitrag.

Bis eine Lösung kommt, nutze ich den Thread um den
Bastelfortschritt zu dokumentieren.

LG
old.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Hier stehen sicherlich weit über 300 Mannjahre Programmiererfahrung als
> Berater zur Seite.

Guter Witz zum Wochenanfang. :)))

von Hff (Gast)


Lesenswert?

Das lässt sich leicht umgehen... .
Leider nicht mit den fertigen Libs. ...

Dein sin() verbrennt zu viel Takte

Deine i2c lib arbeitet mit delays...


Hier hilft nur ein i2c per polling oder ISR mit Low priority
Und dein DDS müsste mit lookuptable und ISR Update umgebaut werden.

Dann kannst den uC in den Schlaf legen und Trotzdem funktioniert alles 
^^

Anders gesagt... Werf die i2c und dds Libs weg und schreib sie selbst 
neu

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Etwas Zeit zur Nachbesserung sollte man schon geben,
> bevor man schimpft.

Das ist aber sehr freundlich von Dir - wie viel hast Du denn für die Lib 
bezahlt?

von spess53 (Gast)


Lesenswert?

Hi

>Bis eine Lösung kommt, nutze ich den Thread um den
>Bastelfortschritt zu dokumentieren.

Wem?

MfG Spess

von oldeurope O. (Gast)


Lesenswert?

Hff schrieb:
> Deine i2c lib arbeitet mit delays...

Danke für die Info.
Ach duch schei …
delay steht bei mir seit den ersten Gehversuchen mit Arduino
auf der "niemals verwenden" Liste.
Das man sich delay dann doch noch über eine lib reinholen kann,
ist dann schon bitter.

"Delay" rauswerfen war übrigens meine erste Modifikation am
VFO-Sketch hier.

LG
old.

von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> Hff schrieb:
>> Deine i2c lib arbeitet mit delays...
>
> Danke für die Info.
> Ach duch schei …
> delay steht bei mir seit den ersten Gehversuchen mit Arduino
> auf der "niemals verwenden" Liste.
> Das man sich delay dann doch noch über eine lib reinholen kann,
> ist dann schon bitter.
>
> LG
> old.


bringt nichts es zu vermeiden wenn man die libs nicht kennt

da es zig diverse libs gibt... hier eine davon :
1
uint8_t I2C::sendByte(uint8_t i2cData)
2
{
3
  TWDR = i2cData;
4
  unsigned long startingTime = millis();
5
  TWCR = (1<<TWINT) | (1<<TWEN);
6
  while (!(TWCR & (1<<TWINT)))
7
  {
8
    if(!timeOutDelay){continue;}
9
    if((millis() - startingTime) >= timeOutDelay)
10
    {
11
      lockUp();
12
      return(1);
13
    }
14
       
15
  }
16
  if (TWI_STATUS == MT_DATA_ACK)
17
  {
18
    return(0);
19
  }
20
  uint8_t bufferedStatus = TWI_STATUS;
21
  if (TWI_STATUS == MT_DATA_NACK)
22
  {
23
    stop();
24
    return(bufferedStatus);
25
  }
26
  else
27
  {
28
    lockUp();
29
    return(bufferedStatus);
30
  } 
31
}


das "timeOutDelay" kann man auf 0 setzen ...
aber das wird dann für die geräte witzig

es gibt hier also je nach menge der I²C Daten lange schleifen mit immer 
wiederholenden warteschleifen

man kann sowas auch per polling betreiben und zwischendurch immer was 
anderes tun .. oder per ISR


oder man legt fest das die anderen aufgaben durch eine
ISR priorisiert werden ( DDS )

dann kann man die warteschleifen ggf tollerieren

von oldeurope O. (Gast)


Lesenswert?

hfhd schrieb:
> man kann

Bis ich so etwas kann, bleibe ich  bei meiner Lösung.
Ich möchte den Modulator erstmal fertig machen und der ALC-Sketch
ist noch nicht komplett.

LG
old.

von Stefan F. (Gast)


Lesenswert?

I²C Implementierungen sind häufig blockierend, egal ob mit delay() oder 
anderen Warteschleifen. Ich würde sie deswegen nicht herabwerten. Man 
muss das immer Kontext der Anwendung sehen, für die das ursprünglich 
entwickelt wurde.

von Dumpfbacke (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Hier stehen sicherlich weit über 300 Mannjahre Programmiererfahrung als
> Berater zur Seite. Die Beratung wird nicht verstanden und der jeweilige
> Überbringer mit Häme überschüttet.

Der TO erwartet auch keine Beratung, sondern eine sofortige Lösung 
seines persönlichen Problems. Die Forengemeinschaft hat sofort alles 
wegzulegen und den Arduino-Sketch des TO so umzuschreiben, dass er genau 
das macht, was der TO wünscht. Das ganze natürlich nicht gegen 
Bezahlung.

von Sven K. (quotschmacher)


Lesenswert?

ich persönlich würe ja alles zeitkritische in eine isr verschieben und 
zeitintensive berechnungen versuchen durch look-up-tables oder andere 
optimierungen zu ersetzen. ich glaube das hatte hier noch keiner 
vorgeschlagen.

von Bernd K. (prof7bit)


Lesenswert?

Sven K. schrieb:
> ich glaube das hatte hier noch keiner
> vorgeschlagen.

Das war eigentlich das zentrale Element aller Antworten von Anfang an, 
in epischer Breite ausgearbeitet, begründet und sogar mit 
funktionierenden Codebeispielen garniert, oder versteh ich den Witz grad 
irgendwie nicht?

von Dergute W. (derguteweka)


Lesenswert?

Karl Valentin schrieb:
> "Es ist schon alles gesagt, nur noch nicht von allen"

SCNR,
WK

von Sven K. (quotschmacher)


Lesenswert?

Bernd K. schrieb:
> oder versteh ich den Witz grad
> irgendwie nicht?

ich hätte den sarkasmus durchaus deutlicher kennzeichnen können - das 
stimmt schon. aber so könnte der threadstarter vielleicht denken es ist 
eine ernstgemeinte antwort und denkt vielleicht darüber nach.

von Einer K. (Gast)


Lesenswert?

hfhd schrieb:
> dann kann man die warteschleifen ggf tollerieren
Genau!
Das ist der Punkt.
Das ist zu tolerieren.


Bedingt aber eben, dass der 25Hz Sinus asynchron zu loop() erzeugt 
werden will.

Aber das geht nicht in den Schädel des TO.

Ihm hat keine Kompetenz um überhaupt in die LCD Lib zu schauen, aber 
genug um zu beurteilen, dass sie kaputt ist.

Hff schrieb:
> Anders gesagt... Werf die i2c und dds Libs weg und schreib sie selbst
> neu
Unfug, da nicht das Problem.

Aus der W. schrieb:
> Bis eine Lösung kommt, ....
Kannst du warten bis du schwarz wirst.
Der Lösungsweg steht ein Dutzend mal hier im Thread.
Du bist es, der sie umsetzen muss.
Du wartest also auf dich selber.

von oldeurope O. (Gast)


Lesenswert?

Sven K. schrieb:
> ich persönlich würe ja alles zeitkritische in eine isr

da in dem Sketch eigentlich fast alles zeitkritisch ist,
wünsche ich viel Spaß beim Verschieben.

von Helmut S. (helmuts)


Lesenswert?

Der AVR mit seiner simplen Interrupt-Architektur hat halt seine Grenzen. 
Die Summe des Verweilens in den Interrupt-Routinen ergibt den 
schlimmsten Fall bezüglich zetlicher Unsicherheit.
Viel besser sind da Prozessor-Architekturen die Interrupt-Ebenen(levels) 
haben. Da bekommt die zeitkritischste Routine den höchsten Level. Die 
kann dann immer alle anderen Interrupts unterbrechen. Die zeitliche 
Unsicherheit liegt dann bei der Befehlsdauer vom längsten Befehl(einige 
Takte).

: Bearbeitet durch User
von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Aber das geht nicht in den Schädel des TO.

Wann geht denn in Deinen Schädel, dass es da noch andere
Zeitkritische Dinge gibt? Kannst Du den Sketch nicht nachvollziehen?
Verstehst Du die Abläufe da nicht? Anders kann ich mir Deine
wenig hilfreichen Antworten nicht erklären.

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> da in dem Sketch eigentlich fast alles zeitkritisch ist,

Warum hast Du die Sachen dann überhaupt erst in die main loop gepackt 
wenn es zeitkritisch ist?

> wünsche ich viel Spaß beim Verschieben.

Wo ist das Problem? Es ist doch alles eine einzige lange Wurst, Du 
schneidest die zeitkritischen Teile raus aus der Wurst und packst sie in 
einen Interrupt. Fertig.

von Sven K. (quotschmacher)


Lesenswert?

aber wenn ich so viele zeitkritische sachen habe - optimiere ich dann 
nicht mal irgendwo? es fängt ja schon bei der benutzung von 
"digitalWrite()" an... das ist glaube ich die langsamste funktion zum 
setzen / löschen eines pins die ich kenne.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Arduino Fanboy D. schrieb:
>> Aber das geht nicht in den Schädel des TO.
>
> Wann geht denn in Deinen Schädel, dass es da noch andere
> Zeitkritische Dinge gibt? Kannst Du den Sketch nicht nachvollziehen?
> Verstehst Du die Abläufe da nicht? Anders kann ich mir Deine
> wenig hilfreichen Antworten nicht erklären.

Dein Programm sieht aus, wie ein Haufen gebrauchter zugeschissener 
Unterhosen.
Da wühl mal schön selber drin rum.
Oder zeige was ansprechend formatiertes.

> dass es da noch andere Zeitkritische Dinge gibt?
Kann ja sein ..
Ein Problem nach dem anderen ...

Aber wenn man bei der ersten Hürde schon so abkackt, die Flinte in den 
Sand steckt, und den Kopf ins Korn wirft, dann sehe ich schwarz für 
deine 25Hz

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Während Ihr blöd rummotzt, habe ich die ALC fertig gemacht.
Ein absolutes Highlight. Ist definitiv ein "must have" am Modulator.
Der Sketch ist einfach nur genial geworden. :)

Ich werde noch eine Pilottonabschaltung bei monophonen
Sendungen programmieren.
Pilot an, Pilot aus, kann ich mir ja problemlos im Display
anzeigen lassen.

LG
old.

von leo (Gast)


Lesenswert?

Aus der W. schrieb:
> Ein absolutes Highlight.

Yep. Eine ganze Seite globale Variable sah ich schon sehr lange nicht 
mehr.

leo

von Stefan F. (Gast)


Lesenswert?

leo schrieb:
> Eine ganze Seite globale Variable sah ich schon sehr lange nicht
> mehr.

Und die Formatierung. Formidable!

von Hugo H. (hugohurtig1)


Lesenswert?

Stefanus F. schrieb:
> Und die Formatierung. Formidable!

Da schließe ich mich an - Gratulation! Immer wieder erfrischend, so 
etwas zu sehen :-)

Ich frage mich nur, ob es wohl manchen Zeitgenossen körperliche 
Schmerzen verursacht, wenn sie die "Automatische Formatierung" 
anklicken?

Wenn ich schon am Lästern bin :-) - scharf ist diese Sequenz (fast 
genial):
1
if (d < -50 || d > 50){diff = HIGH;} //Differenzsignal
2
else {diff = LOW;}
3
if (diff == LOW)                                                // MonoFlop für Differenzsignalanzeige
4
   {diffist = millis();
5
    if (diffist - diffstart > diffausverz)
6
       {boolblau = LOW;}}
7
else{diffstart = millis(); boolblau = HIGH;}
8
    if ((boolblau && ein) == HIGH){digitalWrite(ledblau,HIGH);}
9
    else {digitalWrite(ledblau,LOW);}

: Bearbeitet durch User
von Äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> Freut mich, dass Die Veröffentlichungen von mir, solche Typen
> wie Dich, ärgern. Dann mache ich alles genau richtig.

äxl schrieb:
> Sehr unterhaltsam.

warum sollte es mich ärgern, wenn Du dich hier zum Hampelmann 
machst?

Mit Verlaub: ich bin hier schon ne Weile mit dabei, um gut zu wissen, 
wie es hier läuft.
Aber eben auch, wie es eben genau NICHT läuft. Nämlich so, wie Du es 
hier feierst.
Das beste:
Am Ende schreibt Dir doch ein gelangweilter dein Programm fix und 
fertig.
Nur, um deine Reaktion darauf zu testen.
Also: weitermachen ;)

Axel Rühl
DG1RTO

von Zeno (Gast)


Lesenswert?

Aus der W. schrieb:
> Während Ihr blöd rummotzt,....

Mal ganz ehrlich, Deine Formatierung des Quelltextes ist schon 
Augenkrebs. Wenn Du damit zurecht kommst Deine Sache, aber bei dieser 
Formatierung darfst Du keine Hilfe erwarten. Den Quelltext zu lesen tut 
man sich nicht freiwillig an.

von oldeurope O. (Gast)


Lesenswert?

Äxl schrieb:
> Am Ende schreibt Dir doch ein gelangweilter dein Programm fix und
> fertig.

Das Programm ist fertig und läuft. Es kommen nur noch weitere Updates.
Die ALC ist es wert nachgemacht zu werden, auch für andere Modulatoren.

Ihr kommt mir vor wie Analphabeten, die einen Text nicht
lesen können, sich aber zum Aussehen äußern.

Zeno schrieb:
> bei dieser
> Formatierung darfst Du keine Hilfe erwarten

Die Formatierung ist eine Ausrede wie Schaltbild angeblich
unleserlich oder so. Bekannt. Gähn.

LG
old.

von Platinen Frickler (Gast)


Lesenswert?

Ich bin immer noch der Meinung, daß I2C zum Betrieb des LCDs eine 
unglückliche Wahl war. Wenn es schon seriell sein soll, wäre HW SPI die 
günstigere Lösung zu unblockierendem Betrieb. Mit einem 8MHz getaktetem 
HC164 SR wäre ein Byte in einer einzigen us übertragen. So etwas ließe 
sich elegant in eine Timer getakteten ISR verstecken wo es niemand 
bemerkt. Mit einem gepufferten ISR LCD Treiber liefe die LCD Bedienung 
total im Hintergrund. Derselbe Timer ISR könnte die Pilotton Werte aus 
einer LUT im Flash beisteuern. Der ganze Code wäre so super einfach auf 
diese Art und der uC würde sich in der Haupt Loop langweilen oder könnte 
die DDS Bedienung elegant ermöglichen.

Ich habe schon den Eindruck, daß man das arme Pferd von hinten 
aufzäumte...

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Die Formatierung ist eine Ausrede wie Schaltbild angeblich
> unleserlich oder so. Bekannt. Gähn.

Zeig doch bitte mal ein selbst entwickeltes Schaltbild oder gar 
zusätzlich ein Layout - das wäre wirklich mal interessant - nur so, zum 
Vergleich :-)

von oldeurope O. (Gast)


Lesenswert?

Platinen Frickler schrieb:
> Ich bin immer noch der Meinung, daß I2C zum Betrieb des LCDs eine
> unglückliche Wahl war.

Spielt in diesem Sketch keine Rolle mehr.

Hugo H. schrieb:
> wenn sie die "Automatische Formatierung"
> anklicken?

Mach es doch für Dich wenn es Dir hilft, den Inhalt zu verstehen.

LG
old.

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Mach es doch für Dich wenn es Dir hilft, den Inhalt zu verstehen.

Vielleicht würde es Dir helfen zu verstehen, was Du da programmiert 
hast.

von Mr. Popcorn (Gast)


Lesenswert?

Kann man den Thread nicht mal schließen?

Der "Meister" kapiert's eh nicht mehr und niemand will seine Löthaufen 
sehen, für die er "seine Lösung" gefunden hat.
Wenn's doch eh für ihn funzt -> zu damit.

"Man kann einem Menschen nichts lehren, man kann ihm nur helfen, es in 
sich selbst zu entdecken" - Galileo Galilei

von Äxl (Gast)


Lesenswert?

könnte zu, stimmt.
andererseits ist es auch amüsant, weil jeden zweite offenbar "neue" 
Leute auf diesen Thread stossen. Ich find gut, dass wir jetzt nicht mehr 
bis Freitags warten müssen.
Auch will ich den sehen, der nicht alles liest, sondern ihm stattdessen 
den 25Hz Pilotton in die ISR packt, den Rest glattzieht und alles noch 
schön formatiert und sich wundert, weshalb das noch niemand getan hat. 
Denn "so blöd kann doch keiner sein" gg
Schönen Abend
Äxl

von Äxl (Gast)


Lesenswert?

...jeden zweiten Tag...
(sry)

von oldeurope O. (Gast)


Lesenswert?

Äxl schrieb:
> könnte zu, stimmt.

Ja, das tut weh den Baufortschritt zu sehen, wenn man selbst
so etwas nicht kann oder nicht mitmachen will.
Ich mache einen anderen Thread auf und ein Blog
dazu kommt auch. Es gibt eben Motzer und Macher hier im Forum.

LG
old.

von Carl D. (jcw2)


Lesenswert?

Aus der W. schrieb:
> Es gibt eben Motzer und Macher hier im Forum.

Und vereinzelt auch Rumheuler.

von oldeurope O. (Gast)


Lesenswert?

Carl D. schrieb:
> Und vereinzelt auch Rumheuler.

Beitrag "Arduino ALC"

Ist auch zum Heulen, dass der Pushbutton Rotary noch nicht
eingetroffen ist. Möchte endlich die Frontplatte fertig
machen ...

Aus der W. schrieb:
> Ich mache einen anderen Thread auf

Da würde das passen:
https://www.mikrocontroller.net/forum/codesammlung

LG
old.

von yesitsme (Gast)


Lesenswert?

Hmm... man könnte auch ein Rechtecksignal erzeugen und durch einen 
Tiefpass leiten... dann braucht man keinen bösen ISR.

von Carl D. (jcw2)


Lesenswert?

Aus der W. schrieb:
> Carl D. schrieb:
>> Und vereinzelt auch Rumheuler.
>
> Beitrag "Arduino ALC"
>
> Ist auch zum Heulen, dass der Pushbutton Rotary noch nicht
> eingetroffen ist. Möchte endlich die Frontplatte fertig
> machen ...
>
q.e.d.

von oldeurope O. (Gast)


Lesenswert?

yesitsme schrieb:
> Hmm... man könnte auch ein Rechtecksignal erzeugen

Wegen eines I2C Displays auf das man nur einmal beim Einstellen
der Frequenz schaut und welches sich nach 20 Minuten eh abschaltet?

Der Sinus vom Semir bleibt. Ist absolut top,
alles andere wäre ein technischer Rückschritt.

LG
old.

von yesitsme (Gast)


Lesenswert?

Dann ist das ja auch kein Problem, wenn sich beim Einstellen der 
Frequenz die Frequenz ändert und zusätzlich auch kurz der Sinus verdellt 
ist.

Warum wird hier Seitenlang über kein Problem diskutiert?

von Mr. Popcorn (Gast)


Lesenswert?

yesitsme schrieb:
> Warum wird hier Seitenlang über kein Problem diskutiert?

Weil manch Einer ein Podium benötigt...

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Der Sinus vom Semir bleibt.

Paranoia? Angstzustände?
Werde mal wach!
Dir will doch keiner deinen Sinus weg nehmen.
Egal welches Etikett da drauf klebt.

War da nicht was wg. Aussetzern, beim Betrieb mit I2C Displays?
Das ist es doch, wo du das Handtuch wirfst, versagst, und deine 
neurotische Fehlanpassung ausleben musst....

Keiner will deinen ineffektiven Sinus haben....
Den kannste gerne behalten.

von yesitsme (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> War da nicht was wg. Aussetzern, beim Betrieb mit I2C Displays?

Die sind doch irrelevant, wie wir gerade gelernt haben.

von Zeno (Gast)


Lesenswert?

Aus der W. schrieb:
> Zeno schrieb:
>> bei dieser
>> Formatierung darfst Du keine Hilfe erwarten
>
> Die Formatierung ist eine Ausrede wie Schaltbild angeblich
> unleserlich oder so. Bekannt. Gähn.

Ne Dein Quelltext ist schlichtweg unleserlich. Du vergißt anscheinenden, 
das jeder der Dir helfen soll sich erst mal in Deine "Denke" hinein 
versetzen muß, um überhaupt erst einmal zu verstehen was Du da machst.
Fremde Gedankenzüge nachvollziehen ist schon schwer genug und wenn man 
dann noch den Quelltext auseinander puzzeln muß wird es noch schwerer. 
Da hat man dann ganz schnell keine Lust mehr.
Es kann doch wohl nicht so schwer sein, z.B. alle if Schleifen in einem 
einheitlichen Stil zu formatieren. Es ist auch eine Frage der 
Höflichkeit, das man denen, von denen man Hilfe haben möchte, das Leben 
- sprich lesen des Sourcecodes - nicht unnötig erschwert.
Aber offensichtlich willst Du keine Hilfe haben.

von Äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> wenn man selbst
> so etwas nicht kann oder nicht mitmachen will.

#issklar ;)

von Peter D. (peda)


Lesenswert?

Aus der W. schrieb:
> Der Sinus vom Semir bleibt. Ist absolut top,
> alles andere wäre ein technischer Rückschritt.

Vorsicht. Du riskierst, daß sich Deine Leser totlachen.
Deinen schrägen Code will definitiv kein anderer verwenden. Du muß also 
nicht mehr weiter posten.
Eine Beschreibung und den dazu gehörenden Schaltplan willst Du ja nicht 
posten.
Es gibt zwar auch guten Code, der weitgehend selbst erklärend ist, aber 
Deiner ist davon meilenweit entfernt. In der Firma dürfte ich sowas 
nicht abgeben. Die würden mich sofort zum Drogentest schicken und ihn 
natürlich komplett wegschmeißen.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Die Formatierung ist eine Ausrede wie Schaltbild angeblich
> unleserlich oder so. Bekannt. Gähn.

Faule Sau!

von Stefan F. (Gast)


Lesenswert?

Platinen Frickler schrieb:
> Mit einem gepufferten ISR LCD Treiber liefe die LCD Bedienung
> total im Hintergrund

Ja, hätte hätte Fahrradkette. Wenn man ein Pferd braucht, dann aber ein 
Maultier verwendet, muss man eben mit den Unterschieden leben.

von Stefan F. (Gast)


Lesenswert?

Äxl schrieb:
> Auch will ich den sehen, der nicht alles liest, sondern ihm stattdessen
> den 25Hz Pilotton in die ISR packt, den Rest glattzieht und alles noch
> schön formatiert und sich wundert, weshalb das noch niemand getan hat.

Meinst du Falk?

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Zeno schrieb:
> if Schleifen

Dich muss man wohl auch samt dem alten Opa hier mit einem K&R Buch 
durchs Ghetto jagen...

von Dumpfbacke (Gast)


Lesenswert?

Peter D. schrieb:
> Deinen schrägen Code will definitiv kein anderer verwenden. Du muß also
> nicht mehr weiter posten.

Doch, es wird jemand verwenden. Und zwar einfach irgendwelche 
Ausschnitte in sein Programm kopieren und sich dann aufregen, dass eine 
Lib fehlerhaft ist und die ganze Welt unfähig sei.

Aus der W. schrieb:
> wenn man selbst
> so etwas nicht kann oder nicht mitmachen will.

Das hat etwas mit Anstand zu tum. Ich muss nicht überall mitmachen, auch 
wenn ich es mit einem Fingerschnips machen könnte. Ja, in diesem Fall 
bin ich mir zu fein dazu.

von oldeurope O. (Gast)


Lesenswert?

yesitsme schrieb:
> Warum wird hier Seitenlang über kein Problem diskutiert?

Siehe 3. Absatz im Startbeitrag.

LG
old.

von oldeurope O. (Gast)


Lesenswert?

Peter D. schrieb:
> Eine Beschreibung und den dazu gehörenden Schaltplan willst Du ja nicht
> posten.

Ich habe nur Schaltungsteile in LTspice. Welchen Schaltungsteil
möchtest Du denn sehen? Ich kann Dir auch einen Screenshot
davon hochladen.

LG
old.

von yesitsme (Gast)


Lesenswert?

Also doch ein Problem...

Ich habe Schrauben und einen Hammer. Ich will ein Bild aufhängen.

Gut, kann ich schon so machen, aber vernünftig und richtig geht anders.

von oldeurope O. (Gast)


Lesenswert?

Nur blöde Sprüche, Beleidigungen, Lügen und falsche Unterstellungen.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich kann Dir auch einen Screenshot davon hochladen.

Ist auf jeden Fall viel besser, als gar keinen Plan zu sehen.

von yesitsme (Gast)


Lesenswert?

Aus der W. schrieb:
> Nur blöde Sprüche, Beleidigungen, Lügen und falsche Unterstellungen.

Du benutzt eine Funktion im loop() die absolute präzision benötigt. Aber 
dein loop() benötigt eine unbekannte und variable Laufzeit. Das passt 
nicht so recht zusammen.

Im Thread sind einige Lösungsideeen, aber alle werden von dir als falsch 
zurückgewiesen. Was erwartest du dann für Antworten?

von oldeurope O. (Gast)


Lesenswert?

yesitsme schrieb:
> Was erwartest du dann für Antworten?

Eine mit .ino am Ende. (Ich lach mich grad weg.)
Ordentlich als Anhang mit Codeansicht und nicht
irgendwie in den Beitrag kopiert.
Habe ich Euch oft genug gezeigt. Da
Beitrag "Arduino AM-Stereo ALC automatische Pegel Modulationsgradeinstellung"
z.B..

LG
old.

PS: Der Sinus ist nicht verhandelbar.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Eine mit .ino am Ende. (Ich lach mich grad weg.)

Ich fühle mich gerade wie der einzige nüchterne in einer Gruppe 
bekiffter und besoffener Freunde: Was gibt es da zu lachen?

von Funk Schlüssel (Gast)


Lesenswert?

Aus der W. schrieb:
> yesitsme schrieb:
>> Was erwartest du dann für Antworten?
>
> Eine mit .ino am Ende.

So, jetzt kann der Thread geschlossen werden.

*.ino*

von Eric B. (beric)


Lesenswert?

Aus der W. schrieb:
> Ist auch zum Heulen, dass der Pushbutton Rotary noch nicht
> eingetroffen ist. Möchte endlich die Frontplatte fertig
> machen ...

Oh, das kommt auch noch?! Das wird lustig! Ich freu mich schon auf die 
Diskussionen zur Entprellung! :-D händereib *Popcornsuch*

: Bearbeitet durch User
von yesitsme (Gast)


Lesenswert?

Aus der W. schrieb:
> PS: Der Sinus ist nicht verhandelbar.

Damit gibt es keine Lösung.

von oldeurope O. (Gast)



Lesenswert?

Eric B. schrieb:
> Ich freu mich schon auf die
> Diskussionen zur Entprellung!

Dann gebe ich mal den Startschuss. Ich meine C20 genügt dafür.
Funktioniert auch ufb.
R18 ist hoffentlich der maximale Widerstand im gedrückten Zustand
nach GND.
Schaltbild anbei, in der 20191014g .ino Zeilen 100 bis 115.

LG
old.

von hfhd (Gast)


Lesenswert?

yesitsme schrieb:
> Damit gibt es keine Lösung.

damit gibts ja auch kein Problem ^^

von äxl (Gast)


Lesenswert?

okay, okay:
wofür das ganz sein soll, hab ich ja nun mitbekommen.
Ein Stereo-Prüfsender für Mittelwelle, für den es offensichtlich auch 
mal Empfangsgeräte gab.
Ich finde es nur schade bis beschämend, wenn man sich auf diese Art und 
Weise derart selbst ins "aus" schiesst. So bleibt die Neugierde und der 
Bastelspaß natürlich komplett aussen vor. Gut, ich habe eh keinen 
entsprechend ausgestatten Empfänger hierfür.
Also Darius merke: wie man in den Wald hineinruft.
Ich dachte eigentlich, als erwachsener Mann hat man das drauf. Aber du 
scheinst ja generell ein rechter Stänkerfritze zu sein, der schnell mal 
die Beherrschung verliert. Man kann das auf anderen Plattformen sehr gut 
herauslesen. Das finde ich, wie bereits mehrfach erwähnt, sehr schade. 
Nicht nur für Dich.
wofür brauchst Du die ALC eigentlich? Hing das mit dem DDs zusammen, der 
bei höheren Frequenzen kleinere Amplituden ausgab oder war es die 
Modulation, die Du einregeln möchtest?
Leider gehen hier solche technischen Details komplett unter, weil du 
stattdessen versuchst, dich hier erneut profiliern zu müssen. Musst Du 
nicht! Jeder hat hier seine Kernkompetenzen. Sicher auch Du. Das sich 
die Interessen nicht immer zu 100% decken, gibt Dir nicht das Recht, 
hier so auszuteilen und rechthaberisch daherzukommen. Wenn das deine Art 
ist, dann bitte.
Aber nicht hier, sondern im Röhrenforum oder meinetwegen auf deinem 
Solinger 2-Meter Relais unter deinesgleichen.
letzte Frage;
Schaltplan zum Projekt?
Ich bin auch eher der Analogfreund, als der c-Programmierer.
Mir wurde bislang immer geholfen. komisch...

von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich meine C20 genügt dafür.

bei einem drehendecoder ?  .. - nein -

da nicht das signalprellen dein einzigstes Problem sein wird

von oldeurope O. (Gast)


Lesenswert?

hfhd schrieb:
> drehendecoder

Zeile 4 und Zeilen 193-->207.
Beitrag "Arduino AM-Stereo ALC automatische Pegel Modulationsgradeinstellung"

äxl schrieb:
> okay, okay:

Habe nur den Anfang gelesen.
Zuviel Text für einen Beitrag und gespickt mit Beleidigungen.
Troll dich.

LG
old.

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Troll dich.

hier trollt nur einer...

von Bernd K. (prof7bit)


Lesenswert?

Zeno schrieb:
> Du vergißt anscheinenden,
> das jeder der Dir helfen soll

Er will doch gar nicht daß ihm jemand hilft, er will doch hier nur sein 
Geltungsbedürfnis befriedigen und den Mist ausscheiden der ihm durch 
seinen Kopf schwimmt.

von oldeurope O. (Gast)


Lesenswert?

Einen Schaltungsschnipsel erklärt und ihr spuckt Gift und Galle.

Aus der W. schrieb:
> Peter D. schrieb:
>> Eine Beschreibung und den dazu gehörenden Schaltplan willst Du ja nicht
>> posten.
>
> Ich habe nur Schaltungsteile in LTspice. Welchen Schaltungsteil
> möchtest Du denn sehen? Ich kann Dir auch einen Screenshot
> davon hochladen.

Ärgerlich, wenn das Gegenüber entgegen der Behauptung bereitwillig
Fragen beantwortet, gelle?

LG
old.

von Stefan F. (Gast)


Lesenswert?

Dein Beitrag mit dem Schaltungs-schnipsel muss verloren gegangen sein. 
Ich sehe hier keinen.

von oldeurope O. (Gast)


Lesenswert?


von äxl (Gast)


Lesenswert?

Bernd K. schrieb:
> und den Mist ausscheiden der ihm durch
> seinen Kopf schwimmt.

Das muss ja nicht einmal "Mist" sein.
Aber wer konstruktive Kritik mit Beleidung verwechselt, wer nicht in der 
Lage ist, zwischen den Zeilen zu lesen und nicht einmal ansatzweise zu 
erkennen vermag, dass man - zurück auf technischem Niveau - nun doch 
einmal ganz genau wissen will, worum es eigentlich geht eben um (durch 
die Blume) Support anzubieten...
Dem muss nicht geholfen werden. Dem nicht!
Eine zusammenhängende Dokumentation gibt es nicht. Sonst wäre die gleich 
oben mit beim ersten Post mit dabei gewesen.
Anstatt den Forenteilnehmern etwas "Honig ums Maul zu schmieren", 
erreicht er mit seiner feinfühligen Art exakt das Gegenteil. schon 
witzig.
Ich hab jetzt aber auch keine Lust mehr, mich mit der Sache 
auseinanderzusetzen, auch wenn ich sehr wohl (wie viele andere auch) zu 
denen zähle, die "sowas" hier wirklich aus dem Ärmel schütteln. Auch, 
wenn meine Kernkompetenzen eher im analogen, bzw. im HF-Bereich liegen..

Dann werd' ich mich mal trollen. hehe ;)

von Einer K. (Gast)


Lesenswert?

Aus dem Nico Semsrott seinen Unglückskeksen:
> Alle sagen: Das geht nicht!
> Einer wusste das nicht und probierte es aus.
> Und: Es ging nicht.

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> Eine zusammenhängende Dokumentation gibt es nicht.

Die kommt, wenn das Gerätchen halbwegs fertig ist.
So wie bei anderen Projekten auch in meinen Blogs.
Da kannst Du dich dann drüber weiter ärgern.
Unleserlich, Formatierung usw.
Geht mir am Allerwertesten vorbei, hi hi.

äxl schrieb:
> Anstatt den Forenteilnehmern etwas "Honig ums Maul zu schmieren"

Nein. Das mache ich garantiert nicht.

äxl schrieb:
> Dann werd' ich mich mal trollen. hehe ;)

Ja, dann versuche es mal mit einem neunen Nick.
Ich denke, man wird dir das gestatten.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
>> Alle sagen: Das geht nicht!

Mach Dich nicht über den Semir lustig. Ich kenne in diesem
Forum niemanden, der ihm fachlich das Wasser reichen könnte.
Und ich bin hier schon viele Jahre dabei.

LG
old.

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Mach Dich nicht über den Semir lustig

und du könntest nicht gemeint sein?

von äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> Arduino Fanboy D. schrieb:
>>> Alle sagen: Das geht nicht!
>
> Mach Dich nicht über den Semir lustig.

niemand macht sich hier lustig. okay - ich verliere langsam den respekt.

meinen nick ändern? weshalb? wen söllte ich da fragen und warum?
wissen doch alle, wer ich bin.

Aus der W. schrieb:
> Da kannst Du dich dann drüber weiter ärgern.

nochmal. ich ärgere mich in keinster weise über deine technischen 
abhandlungen. ich bin mit solchen sachen groß geworden. ich ärgere mich 
über deine glashaussitzende elfenbeinturmhäusige art und weise. ich 
ärgere mich auch nicht, ich verstehe es nur nicht. jeder hier hätte dir 
helfen können, wollen usw. ich wollte dir nur zeigen, warum das niemand 
bislang tat. hätte längst fertig sein können alles

von oldeurope O. (Gast)


Lesenswert?

Sven K. schrieb:
> und du könntest nicht gemeint sein?

https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154185#pid154185
Siehe Signatur.
Und der Sinus ist nicht verhandelbar.

äxl schrieb:
> ich verliere langsam den respekt

Du bist also noch ins negative steigerungsfähig.
Das Peinliche an der Sache ist dein Afu Rufzeichen.
Bist der 2. OM der mir "sehr unangenehm" im Netz daherkommt.

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Das Peinliche an der Sache

Das einzige was hier peinlich ist bist Du. Leider merkst Du das nicht.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Semir machts also auch nicht in einer IRQ?
Dann kann er genausowenig programmieren wie du ;)

Vor allem jedesmal den Sinuswert neu ausrechnen, AUAAA!
Zudem: sin() arbeitet mit floats, das is jetz nich grade so geil auf 
einem 8Bitter.

von oldeurope O. (Gast)


Lesenswert?

Mw E. schrieb:
> Semir machts also auch nicht in einer IRQ?

Schau dir doch einfach seinen Sketch an statt dumm zu fragen.

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Nö ;)

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> jeder hier hätte dir
> helfen können

never.
Aber ihr dürft euch gerne weiter über meinen Erfolg ärgern, hi hi.

Bernd K. schrieb:
> Das einzige was hier peinlich ist bist Du. Leider merkst Du das nicht.

Boah eh jetzt hast du es mir aber gegeben. hahahahah

von Einer K. (Gast)


Lesenswert?

Mw E. schrieb:
> Semir machts also auch nicht in einer IRQ?
> Dann kann er genausowenig programmieren wie du ;)

Nicht, oder nicht gut, programmieren zu können, ist nicht schlimm.
Denn es ist der natürliche Anfangszustand eines jeden Menschen.

Ebenso natürlich ist es, dass Anfänger krüppelige Lösungen entwickeln.

Und, so wie ich den Semir lese, würde er gerne einen besseren Weg 
beschreiten, sofort, wenn er ihn denn sieht.

von Platinen Frickler (Gast)


Lesenswert?

Aus der W. schrieb:
> Und der Sinus ist nicht verhandelbar.

Siegmund Freud hätte wahrscheinlich seine Freude mit der Bewandtnis vom 
Begriff Sinus...

Um Licht in die Sache zu bringen gibt es hier eine Abhandlung über das 
"Streitobjekt":-)
http://www.sprachlog.de/2011/10/28/der-mythos-vom-tal-zwischen-den-bruesten/

von oldeurope O. (Gast)


Lesenswert?

Platinen Frickler schrieb:
> Freud hätte

Ach Leute, das ist doch nichts gegen den hier:

äxl schrieb:
> Anstatt den Forenteilnehmern etwas "Honig ums Maul zu schmieren",

Der Screenshot von dem Beitrag bekommt bei mir einen Ehrenplatz.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Da kannst Du dich dann drüber weiter ärgern.
> Geht mir am Allerwertesten vorbei, hi hi.

Ist es Sinnvoll, sich für künftige Hilfestellungen bereits jetzt so 
undankbar zu zeigen?

>Ach Leute, das ist doch nichts gegen den hier:
>> Anstatt den Forenteilnehmern etwas "Honig ums Maul zu schmieren",

Es täte Dir gut, zu erkennen, in welcher Lage du hier bist. Wer ist hier 
der Bittsteller?

> Aber ihr dürft euch gerne weiter über meinen Erfolg ärgern, hi hi.

Kann es sein, das du Verwirrung stiftende Substanzen eingenommen hast?

> Und der Sinus ist nicht verhandelbar.

Dann eben nicht. Ich habe inzwischen das Gefühl, dass uns von Anfang an 
nur verarschen wolltest, um Unruhe zu stiften.

von MeierKurt (Gast)


Lesenswert?

Aus der W. schrieb:
>
> Der Screenshot von dem Beitrag bekommt bei mir einen Ehrenplatz.

Der ganze Thread hätte einen Ehrenplatz bei dir verdient.
Rubrik "Glanzleistungen eines Kommunikationstalentes"
Weil: >250 Beiträge und noch kein bisschen schlauer.

von MeierKurt (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Nicht, oder nicht gut, programmieren zu können, ist nicht schlimm.
> Denn es ist der natürliche Anfangszustand eines jeden Menschen.
>
Und gemeinhin auch der Endzustand.

> Ebenso natürlich ist es, dass Anfänger krüppelige Lösungen entwickeln.
>
Nur hält nicht jeder Anfänger seine Lösung für so genial, dass die 
Ursachen dabei auftretender Probleme grundsätzlich nicht bei sich oder 
gar seiner Lösung gesucht werden.

> Und, so wie ich den Semir lese, würde er gerne einen besseren Weg
> beschreiten, sofort, wenn er ihn denn sieht.

Klar, kann er: Wetterbedingter Tipp: Arbeit im (eigenen) Garten soll 
echt entspannend sein - ausserdem ist dort die Luft meist besser als im 
Bastelkeller.

von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> never.
> Aber ihr dürft euch gerne weiter über meinen Erfolg ärgern, hi hi.

welchen?
das Problem bsteht weiterhin.

6. setzen

von äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> äxl schrieb:
>> jeder hier hätte dir
>> helfen können
>
> never.
> Aber ihr dürft euch gerne weiter über meinen Erfolg ärgern, hi hi.

Ist das wirklich so tief verwurzelt bei Dir,kennst Du es eventuell nicht 
anders?
Hier ärgert sich niemand über deine Erfolge, warum auch.
Wir feiern hier ganz andere Sachen. Aber es ist doch schön für dich, 
wenn Du in deiner Welt vorankommst.

Aus der W. schrieb:
> Das Peinliche an der Sache ist dein Afu Rufzeichen.
> Bist der 2. OM der mir "sehr unangenehm" im Netz daherkommt.

Du bist der erste OM, der mir unangenehm aufällt.
Ich habe mit "honig ums Maul" nur versucht, eine Sprache zu finden, die 
Du verstehst. ging daneben. auch gut.
Anstatt dein Potenzial zu nutzen, machst Du hier die Leute von der Seite 
an.
nicht nur hier...

von äxl (Gast)


Lesenswert?

>äxl schrieb:
>> Anstatt den Forenteilnehmern etwas "Honig ums Maul zu schmieren",

>Der Screenshot von dem Beitrag bekommt bei mir einen Ehrenplatz.

>LG
>old.

weshalb fertigst Du Screenshots von Beiträgen an? Ähm - ist wirklich in 
Ordnung bei Dir?

Aus der W. schrieb:
> äxl schrieb:
>> jeder hier hätte dir
>> helfen können
>
> never.

Allein dieses "never" ist ungezogen und absolut unangebracht und 
respektlos.
Das ist in meinen Augen eine Beleidigung aller hier.
Eine Entschuldigung wäre angebracht.

von Peter D. (peda)


Lesenswert?

Aus der W. schrieb:
> https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154185#pid154185

https://radio-bastler.de/forum/showthread.php?tid=8756&pid=155265#pid155265

"HALLO oldeurope.

Schon mal was davon gehört das man nett anfragen kann wenn man ein 
Problem hat?
Dieses Vollkaskodenken das einem die Lösungen einfach vorgesetzt werden 
ist absolut dreist und kaum zu überbieten. Wenn man selbst zu 
"ungeschickt" für eine Implementierung ist, sollte man sich mit solchen 
Sätzen zurückhalten. "Mich wundert...." ... wie kann man von seinem 
Projekt nur so überzeugt sein und denken das plötzlich alle springen nur 
weil der liebe Herr ein Problem hat!

Otto."

Ohne Worte.


https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154787#pid154787

"    Semir schrieb:
    Die Methode mit den XOR Gatter die Frequenz zu verdoppeln kenne ich.


Das ist ja sensationell. In meinem Bekanntenkreis und im Internet kennt 
das nämlich niemand."

Semir scheint ein sehr entspannter Mensch zu sein, daß er solchen 
Hochmut stillschweigend ignoriert.

In wieviel anderen Foren benimmst Du Dich denn auch noch daneben?

: Bearbeitet durch User
von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Ist es Sinnvoll, sich für künftige Hilfestellungen bereits jetzt so
> undankbar zu zeigen?

Wer hilft, bekommt Dank:
Beitrag "Re: <rotary.h> mit bool "ein" und Ausschalten."

Hier gibt es keine Hilfe von Euch, also auch keinen Dank.
Ich beantworte aber gerne weiter Eure fragen zum Projekt.
Egal wie ekelig verabscheuungswürdig ihr bei mir rüberkommt.

Honig und Dank benötige ich dafür nicht.

Es ist natürlich immer besser anonym anzufragen.
Momentan bin ich dafür sogar freigeschaltet.
Aber bei dem Thema fliege ich sofort auf.

hfhd schrieb:
> das Problem bsteht weiterhin.

Das Problem spielt einfach keine Rolle mehr.
Das nennt man Plan B.
Den sollte man immer parat haben, wenn man hier Arduino-Fragen stellt.
Ganz unerfahren bin ich ja nicht hier im Forum.

von F. F. (foldi)


Lesenswert?

Als ich gerade diesen "Schaltungsschnipsel" gesehen habe, kam eine Frage 
in mir auf.
Wie hoch belastet so ein ADC eigentlich die Quelle?

von oldeurope O. (Gast)


Lesenswert?

F. F. schrieb:
> Als ...

wie ein Gate von einem MOSFET also nur statisch.

LG
old.

von äxl (Gast)


Lesenswert?

Hier muss doch niemand "danke" sagen...
Bei mir ist das normalerweise so:
Jemand hat etwas am wirbeln, kommt nicht weiter und zieht mich mit 
seinem Projekt in seinen Bann. Aus purer Neugierde sagt man sich dann:
"okay - witzige Sache, kenn ich garnicht, zeig mal her"
oder
"hey, cool. Hab ich auch schon einaml angefangen, sowas zu stricken. Hab 
ich aber damal anders gemacht, am Ende. Probier' dieses und jenes mal 
aus".
Dafür gibt es hier reichlich Beispiele.
Es geht eben auch ein wenig darum, andere für "seine Sache" zu 
begeistern.
Dazu liefert man aber eben nen Schaltplan, einen Link aufs 'Projekt', so 
vorhanden, oder ne andere aussagekräftige Doku.
Das ist hier kein Wettstreit, keine Leistungsschau oder dergleichen.
Wenn ich statt dessen erstmal hier im Forum oder per Suchmaschine alle 
Einzelbaustellen zusammensuchen soll, um mir ansatzweise ein Bild von 
dem machen zu können, was du eigentlich vor hast und auf (anfangs noch 
freundliche) Nachfrage solch aggressive Reaktionen erleben darf...
Es nimmt Dir niemand etwas weg, niemand will besser sein, als Du, 
niemand neided Dir etwas.
Es sind nur alle angepisst. Und Du tust so (als einzigster), als 
wüsstest Du nicht, warum.

Ich find's meegacool, dass sich Leute Gedanken gemacht haben, auf 
Mittelwelle in stereo zu senden, bin erstaunt, das sich das in Ami-Land 
auch etabliert zu haben scheint und bin auf der anderen Seite auch 
erstaunt, dass das komplett an mir vorbei gegangen ist.

Normalerweise würde ich schon an der digitalen Basebandaufbereitung 
sitzen.
nundenn: machen wir was anderes...

von Einer K. (Gast)


Lesenswert?

F. F. schrieb:
> Wie hoch belastet so ein ADC eigentlich die Quelle?
Google kaputt?
Datenblatt!
ca 1k bis 100K

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> Hier muss doch niemand "danke" sagen...

Muss nicht, aber ich mach das gerne. Viele Helferlein
freuen sich drüber.

von Eric B. (beric)


Lesenswert?

Aus der W. schrieb:
> Hier gibt es keine Hilfe von Euch, also auch keinen Dank.

Die Hilfe gab es schon mehrfach am Anfang. Nur wolltest du die nicht 
annehmen... kopfschüttel

von äxl (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> F. F. schrieb:
>> Wie hoch belastet so ein ADC eigentlich die Quelle?
> Google kaputt?
> Datenblatt!
> ca 1k bis 100K

Man schreibt bei Atmel, dass man nicht über 10K Eingangimpedanz gehen 
soll, damit der S&H Kondensator ausreichend schnell umgeladen werden 
kann.
ich nehm immer 150K in Reihe und 10K nach GND. Macht 1zu16 
Spannungsteiler. Reicht idR von der genauigkeit locker aus und man kann 
das Ergebnis (bis 36Volt am Eingang) gut weiterverarbeiten. 77K zu 11k 
sind dann 1 zu 8. Die 77K muss man sich dann zurechtbasteln ;)

von F. F. (foldi)


Lesenswert?

Arduino Fanboy D. schrieb:
> Google kaputt?
> Datenblatt!
> ca 1k bis 100K

Ne, aber du weißt es doch aus dem Kopf. :-)

Ich wollte eigentlich auf was anderes hinaus.

Nicht nur, dass der TO hier fürchterlich unhöflich und überheblich ist, 
es fängt schon bei seiner Messung an.
Wenn man seiner Zeichnung folgt, dann misst er da auch nur Mist.
Bin hier von einer 12V Batterie ausgegangen.
Wenn nun der ADC zwischen 1k und 100k seine Quelle belastet, misst er 
ungefähr zwischen 375mV und 2,3V an seinem Pin.
Also der TO muss sich mit weit mehr als nur dem Controller und der 
Programmierung befassen.

@TO
Weißt du, ich bin hier sicher eines der kleinsten Lichter und mein 
Schein reicht nicht weit. Du pisst hier Fachleute an, die bei deinem 
Wissen für dich gottähnlichen Status haben.

: Bearbeitet durch User
von Harry L. (mysth)


Lesenswert?

Der Typ schädigt hier nachhaltig den Ruf aller Funkamateure.


Zum fremd-schämen.

In den >40J, die ich lizenziert bin hab ich so eine Borniertheit noch 
nicht erlebt...

von oldeurope O. (Gast)


Lesenswert?

Bleibe dabei, rein statische Last.
Habe den Atmega eben auf das UNO Board gesteckt und
mit dem DMM zwischen A1 und GND und A1 und 5V gemessen.
Erstere 0V, Letztere lag bei 40mV.

Macht 1250Meg Belastungswiderstand. Also vernachlässigbar.


äxl schrieb:
> ich nehm immer 150K in Reihe und 10K nach GND.

Meine Werte sind sogar niederohmiger, weil ich
wissen will ob Ripples durchbrechen.

Nun foldi und ufuf?

LG
old.

von F. F. (foldi)


Lesenswert?

Aus der W. schrieb:
> Nun foldi und ufuf?

Du bist echt die Härte.
Ich dachte immer weniger als Null Ahnung geht nicht ...

Aber dein unglaubliches Selbstbewusstsein ist erstaunlich.

von oldeurope O. (Gast)


Lesenswert?

Harry L. schrieb:
> Der Typ schädigt hier nachhaltig den Ruf aller Funkamateure.
>
> Zum fremd-schämen.

Ist ja ein Ding.
Genau das denke ich auch von dem anderen Typ.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Hier gibt es keine Hilfe von Euch, also auch keinen Dank.

Du bist ein undankbarer ... (Mensch), das kann man mit positiven Worten 
gar nicht ausdrücken.

> Ich beantworte aber gerne weiter Eure fragen zum Projekt.

Wie großzügig von Dir. Meinst du, irgendjemand will von Dir etwas 
lernen? haha hahaha hahahaha!

von Trollblocker (Gast)


Lesenswert?

Wenn ihr den Typen oldeuropa für so bekloppt und dreist haltet warum 
füttert ihr ihn weiterhin. Ihr seit selbst Schuld wenn ihr ihm Nahrung 
gebt. Einfach nicht mehr antworten und der Spuk hat ein Ende.

von Stefan F. (Gast)


Lesenswert?

> Es ist natürlich immer besser anonym anzufragen.
> Momentan bin ich dafür sogar freigeschaltet.

Geil was? Du bist ein VIP. Du bist einer der wenigen Ausgewählten, die 
hier anonym posten dürfen. Prost!





Völlig merkbefreit.

Aus der W. schrieb:
> wie ein Gate von einem MOSFET also nur statisch.

Das ist fachlich falsch. Siehe Datenblatt des jeweiligen ADC.

Arduino Fanboy D. schrieb:
> Google kaputt? ca 1k bis 100K

Das ist auch falsch. Lies selber das Datenblatt!

Aus der W. schrieb:
> Bleibe dabei, rein statische Last.
> Macht 1250Meg Belastungswiderstand. Also vernachlässigbar.

Immer noch sehr falsch.

Für diejenigen, die zu faul zum Lesen sind: Der ADC (vermutlich jeder) 
belastet die Quelle kapazitiv.

von Stefan F. (Gast)


Lesenswert?

Was ist eigentlich mit deiner Webseite 
http://oldeuropesblogs.blogspot.com/ passiert? Warst du so vom Erfolg 
überrascht, dass du schon nach einem einzigen Beitrag ins Koma gefallen 
bist?

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Um hier mal ein bisschen fachlich auch was Neues reinzubringen:
Dem Gesamtunternehmen angemessen faende ich es, wenn die 25Hz Pilot aus 
einer RSM (Ruf- und Signalmaschine) generiert werden wuerden.
Vorteile: Die Frequenz ware unabhaengig vom I2C-Bus, der Pegel wuerde 
sicher ausreichen. Das Rastermass der Anschluesse ermoeglicht auch 
aelteren Personen eine Bestueckung ohne Sehhilfe. Faellt die RSM mal 
runter vom Labortisch, findet man sie auch deutlich leichter als so 
einen ollen µController. Aus Versehen verschlucken oder einatmen ist bei 
einer RSM auch viel schwerer moeglich.
Also viele gute Gruende...

Duck & wech
WK

von Wolfgang (Gast)


Lesenswert?

Aus der W. schrieb:
> F. F. schrieb:
>> Als ...
>> Wie hoch belastet so ein ADC eigentlich die Quelle?
>
> wie ein Gate von einem MOSFET also nur statisch.
>
> LG
> old.

Wenn man jegliche dynamischen Effekte ignoriert, trifft das die Sache. 
Ein realer MOSFET hat mindestens eine Gatekapazität, ebenso wie ein ADC 
beim Samplen gerne eine Ladung zum Umladen, z.B. im Multiplexer des µC 
schluckt.

von oldeurope O. (Gast)


Lesenswert?

Wolfgang schrieb:
> Wenn man

Danke.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Ist ein Gate-Kondensator keine elektrostatische Last?

Du hast da Begriffe zusammen und durcheinander gemixt.

Der ADC stellt im wesentlichen eine kapazitive Last dar. So nennt man 
das.

von Carl D. (jcw2)


Lesenswert?

Aus der W. schrieb:
> Bleibe dabei, rein statische Last.
> Habe den Atmega eben auf das UNO Board gesteckt und
> mit dem DMM zwischen A1 und GND und A1 und 5V gemessen.
> Erstere 0V, Letztere lag bei 40mV.
>
> Macht 1250Meg Belastungswiderstand. Also vernachlässigbar.
>
>

Und welchen "Innenwiderstand" hat eine Langdrahtantenne bei dieser Art 
von Messung? Warum da manche viele viele Watt Leistung reinstecken 
können, hmm!?

Wenn gewusst hätte, wie ahnungslos man dabei sein darf, hätte ich auch 
vor 40Jahren auch eine AFu-Lizenzprüfung mitgemacht.

Für den Blinden, der den Einäugigen mit der sin()-Loop anhimmelt:
μC's laufen so schnell, da kann man glatt Hochfrequenz zu sagen.

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Viele Helferlein
> freuen sich drüber.

Zähl die doch bitte mal auf :-). Du bist nur ein verknitterter 
Amateur(!)funker in Rente und suchst hier ein Publikum. Ist ja auch gut, 
dann kommst Du Dir nicht so "in Rente" vor :-). Erinnert mich an die 
Rentner, die vorzugsweise Freitag abends an der Kasse im Supermarkt 
Diskussionen führen :-/.

Das wars.

.ino

: Bearbeitet durch User
von Zeno (Gast)


Lesenswert?

Mw E. schrieb:
> Dich muss man wohl auch samt dem alten Opa hier mit einem K&R Buch
> durchs Ghetto jagen...

Dir sollte man mal Anstand  bei bringen. Da scheint bei Dir ein 
erheblicher Mangel zu bestehen.

von Einer K. (Gast)


Angehängte Dateien:

Lesenswert?

Stefanus F. schrieb:
> Arduino Fanboy D. schrieb:
>> Google kaputt? ca 1k bis 100K
>
> Das ist auch falsch. Lies selber das Datenblatt!

Is klar....

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Zeno schrieb:
> if Schleifen

Zeno schrieb:
> Dir sollte man mal Anstand  bei bringen.

Du bräuchtest erstmal ein C-Buch Herr if Schleife ;)
http://if-schleife.de/

von Zeno (Gast)


Lesenswert?

Mw E. schrieb:
> Zeno schrieb:
>> if Schleifen
>
> Zeno schrieb:
>> Dir sollte man mal Anstand  bei bringen.
>
> Du bräuchtest erstmal ein C-Buch Herr if Schleife ;)

Nö brauch ich ganz bestimmt nicht und schon gar nicht wenn's so ein 
ungehobelter Erbsenzähler wie Du meint das ich das bräuchte. Hätte man 
sicher auch anders formulieren können, hat aber trotzdem offen jeder, 
außer Dir, verstanden was ich damit sagen wollte.

von Thomas Z. (usbman)


Lesenswert?

75 Beiträge an einem Tag. Ihr macht euch.

Thomas

von oldeurope O. (Gast)


Lesenswert?

Was meinst wie viele Beiträge das Schaltbild vom VCA für die ALC 
generiert?

von yesitsme (Gast)


Lesenswert?

Aus der W. schrieb:
> Eine mit .ino am Ende.

Warum soll ich mir die Arbeit machen wenn bislang alle Lösungsideeen als 
falsch angesehen werden?


> (Ich lach mich grad weg.)

Verschluck dich nicht dabei.

von oldeurope O. (Gast)


Lesenswert?

Peter D. schrieb:
> "    Semir schrieb:
>     Die Methode mit den XOR Gatter die Frequenz zu verdoppeln kenne ich.
>
> Das ist ja sensationell. In meinem Bekanntenkreis und im Internet kennt
> das nämlich niemand."
>
> Semir scheint ein sehr entspannter Mensch zu sein, daß er solchen
> Hochmut stillschweigend ignoriert.

Wenn er DIE Schaltung kennen würde, hätte er einen anderen
Phasenschieber, der frequenzunabhängig den Träger-Sinus
um 90 Grad verschiebt ohne die Trägerfrequenz zu teilen.

Sein CQUAM-Modulator würde dann auch von Lang- bis Grenzwelle arbeiten 
können.
Aber was nicht ist, kann ja noch werden.
Was er dafür braucht?
Den Code aus den Zeilen 169-170 und einen halben LM13700. :)

LG
old.

Beitrag #6004536 wurde von einem Moderator gelöscht.
von Hugo H. (hugohurtig1)


Lesenswert?

Na, Du bist immer noch so ein verbitterter Amateur(!)Funker (obwohl der 
Moderator das wieder mal löschen wird) - viel Spaß noch :-)

von PCEngine (Gast)


Lesenswert?

Interessant was man alles so findet, wenn man nach seiner 
Internetpräsenz sucht. Unser lieber Freund ist schon in so manchem Forum 
als Unruhestifter bekannt (radio-bastler.de, elektronik kompendium.de, 
Dampfradioforum ? etc..). Und jetzt kommts, er hat einen Blog, wo er 
diese Auseinandersetzungen dokumentiert und sich als Opfer darstellt. 
Sein ganz eigener Pranger: http://forenfalle.blogspot.com/2014/ und 
http://commentatroehrenbude.blogspot.com/ . Erinnert mich irgendwie an 
den Zeitgenossen der hier ständig Trollthreads mit Zensurvorwürfen 
gepostet hat.

Hier sind die ganzen Blogs aufgezählt, die er erstellt hat (29!): 
https://www.blogger.com/profile/13556508511413250969

Damit kann sich jeder ein Bild machen mit wem wir es hier zu tun haben.

von Hugo H. (hugohurtig1)


Lesenswert?

Der Typ mag fachlich (analog) kompetent sein - aber eine mc-Leuchte ist 
er eindeutig nicht!

von FvA (Gast)


Lesenswert?

Hört doch bitte endlich auf mit dem Gezanke!
Das Thema ist beendet und führt nur tiefer in den Abgrund.

von oldeurope O. (Gast)



Lesenswert?

Hugo H. schrieb:
> obwohl der
> Moderator das wieder mal löschen wird

Ist dann halt so.
Kommt sowieso in den nächsten cquam-Blog.
Vielleicht schon an diesem WE.

Anbei die Schaltung vom besagten Frequenzverdoppler.
Für den Komparator möchte ich demnächst mal einen
MAX941 testen. (Die Simu dafür steht auch schon,
leider war noch keine Mitbestellmöglichkeit bei RS möglich.)

Unten mittig ist ein Integrator. Dieser wird vom Arduino
auf frequenzunabhängige Ausgangsamplitude eingestellt.
Ein Integrator macht genau 90 Grad plus Laufzeit.
Aus einem Rechteck wird ein Dreieck und ein Sinus
bleibt ein Sinus. Deshalb ist diese Stufe für Semir's
CQUAM-Modulator als Phasenschieber ideal.


Viel Spaß oder Ärger, je nach dem auf welche Einstellung man dazu hat,
beim Simulieren.

LG
old.

von Äxl (Gast)


Lesenswert?

Da steckt ja nun n Haufen Arbeit drin.
Steht ja außer Frage.

Jetzt gib uns bitte n Link, wo wir nachlesen können, weshalb man da die 
Frequenz verdoppeln muss.

von oldeurope O. (Gast)


Lesenswert?

Äxl schrieb:
> Jetzt gib uns bitte n Link, wo wir nachlesen können, weshalb man da die
> Frequenz verdoppeln muss.

Beitrag "Arduino CQUAM"

Bis 2MHz arbeitet der Komparator im AD9850 sehr ordentlich.
Deshalb kann ich den nicht von 2MHz bis 4MHz arbeiten
lassen um nach dem Toggel-Flip-Flop auf Sollfrequenz zu sein.
Auch hätte ich dann keine Reserve mehr beim Phasenhub
was zum Aussetzen des Trägers führt. Und zu nicht-linearer
Modulation, weil man dann in den Bereich der Kappen des Sinus
kommt.

LG
old.

von Äxl (Gast)


Lesenswert?

http://c-quam.blogspot.com/

Ich Probier mal hier zu lesen.
Deine wohlgemeinten Ausführungen sind mir zu sehr aus dem Zusammenhang 
gerissen. Komparator im DDS-Chip? Lässt der die Phase springen?
Sorry. Bin ich vorerst außen vor.

von oldeurope O. (Gast)


Lesenswert?

Äxl schrieb:
> Komparator im DDS-Chip?

Ja. Der Komparator ist im AD9850-Modul an dem Poti.
Ich zeige Dir das morgen, bin heute wenig am Rechner.

LG
old.

von PittyJ (Gast)


Lesenswert?

Aus der W. schrieb:
> bin heute wenig am Rechner.

Das macht doch Hoffnung.

von oldeurope O. (Gast)


Lesenswert?

Äxl schrieb:
> Ich Probier mal hier zu lesen.

Da die Motorola pdf in einem Link nicht mehr da ist,
noch etwas Lesestoff anbei.

Falls der Upload nicht legal sein sollte, bitte ich
die Moderatoren diesen Beitrag löschen. Ich kann das
nicht beurteilen.

LG
old.

[Mod: Anhang gelöscht]

: Bearbeitet durch Moderator
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Aus der W. schrieb:

> Falls der Upload nicht legal sein sollte, bitte ich
> die Moderatoren diesen Beitrag löschen. Ich kann das
> nicht beurteilen.

Stell Dich bitte nicht dümmer an, als Du bist. Das Copyright stand auf 
der ersten Seite. Außerdem ist es überhaupt nicht angebracht, das einen 
Moderatoren "prüfen" zu lassen.

Wenn Du es nicht weißt, ob Du gegen Urheberrechte verstößt, dann lass es 
einfach. Die Verantwortung auf andere abzuschieben mit der Begründung 
"ich bin zu blöd dafür, das zu entscheiden", ist eine Unverschämtheit 
sondergleichen.

P.S.
Warum stellst Du nicht einfach einen Link rein aufs Dokument?

: Bearbeitet durch Moderator
von äxl (Gast)


Lesenswert?

Den NF-Kram hab ich gefunden. Wo steht denn nun bitte etwas zum DDS und 
seinem Komparator? Sorry - das ist alles sehr unübersichtlich und ...

von Bernd K. (prof7bit)


Lesenswert?

Frank M. schrieb:
> Das Copyright stand auf
> der ersten Seite. Außerdem ist es überhaupt nicht angebracht, das einen
> Moderatoren "prüfen" zu lassen.

Wird aber jetzt Gesetz: Der Uploader darf sich dann dumm stellen und ist 
pauschal aus dem Schneider und der Seitenbetreiber hat alle 
Prüfpflichten und evtl. Ärger am Hals.

von Stefan F. (Gast)


Lesenswert?

Bernd K. schrieb:
> der Seitenbetreiber hat alle
> Prüfpflichten und evtl. Ärger am Hals.

Aber das ist doch in der Praxis nicht wirklich umsetzbar.

Dazu bräuchte man einen automatischen Filter (ähnlich Virescanner), der 
fortlaufend mit Signaturen von geschützten Dokumenten gefüllt wird.

Bei Filmen und Musik scheint mir das noch machbar, weil diese 
Informationen über wenige Firmen gebündelt werden. Aber Copyright auf 
Dokumente und Fotos betrifft per Gesetz automatisch jedes Dokument von 
jedem Menschen. Wer und wie wird die Filter mit den dazu nötigen Daten 
befüllen? Und wie kann die Software vernünftig fair-use behandeln?

von Wolfgang (Gast)


Lesenswert?

Stefanus F. schrieb:
> Aber das ist doch in der Praxis nicht wirklich umsetzbar.

Das interessiert den Gesetzgeber aber nicht. :-(

von Bernd K. (prof7bit)


Lesenswert?

Stefanus F. schrieb:
> Aber das ist doch in der Praxis nicht wirklich umsetzbar.

Ja, das merken die jetzt auch hab ich gelesen. Erst in Brüssel dafür 
stimmen entgegen aller Expertenratschläge und entgegen dem Willen des 
Wählers und jetzt stehen sie da und rätseln dumm rum wie sie diesen 
undurchdachten Krampf bis 2021 in nationalem Recht implementieren sollen 
ohne dabei das halbe Internet lahmzulegen.

Hätten diese Trottel nur mal auf die Warnungen derer gehört die sich mit 
sowas auskennen. Aber die sind genauso beratungsresistent wie unser 
Threaderöffner hier, Expertenmeinungen werden in den Wind geschossen, 
der dumme Kopf muss durch die Wand.

: Bearbeitet durch User
von Äxl (Gast)


Lesenswert?

https://forums.qrz.com/index.php?threads/ad9850-1-dac-to-comparator-connections.575016/
Hier hab ich endlich was zu diesem Komparator gefunden.
Wird denn nun das "AM-Stereo" an den SIN Ausgängen abgenommen oder wird 
da tatsächlich der Rechteck nochmal mit der phasenmodulierten NF 
verfrühstückt?
Ich vermisse immernoch einen vernünftigen, auf DEIN Projekt 
zugeschnittenen, Workflow, Blockschaltbild oder sowas. Die 
Blockschaltbilder I und Q Modulator Matrix usw kennen wir jetzt.
Wo steht denn nun was zum HF-Teil? Zum Gesamtaufbau?
Man kann übrigens die Phasenmodulation auch im DDS-Chip machen (lassen), 
oder lese ich das falsch?

von oldeurope O. (Gast)


Lesenswert?

So, bin wieder zurück, dafür kommt jetzt ein langer Beitrag.

Ich hoffe Ihr hattet Zeit genug Euch die Datei herunterladen.
Es liegt leider nicht in meiner Macht, wie weit die
Moderatoren die zulässige Zeitspanne zum Prüfen ausschöpfen.
In der Regel warten sie bis zu ein paar Tagen.
Ich glaube nicht, dass der Upload unzulässig ist.

Äxl schrieb:
> Hier hab ich endlich was zu diesem Komparator gefunden.

Ich meine der Hyperlink in meinem Beitrag ist da aufschlussreicher.

Klicke dort: AD9850
Dann erscheint eine Bauteil Information. Das hat der
Forenbetreiber netterweise so eingerichtet.

https://www.radio-bastler.de/forum/showthread.php?tid=8756&pid=154787#pid154787

Dort ist ein Bild, das zeigt wie man mit dem AD9850 PWM machen kann.
(Dank meines Forenfalle-Blogs könnt Ihr die Anhänge dort frei sehen
und lesen. So wie hier.)
Auch Deine weiteren Fragen beantwortet der Thread dort.

Für eine Zusammenhängende Doku werde ich einen Blog verfassen.
So wie für den Butter Cookies TX. Eigentlich wollte ich warten,
bis ich den MAX941 Komparator getestet habe. Aber auf Grund
des großen Interesses werde ich diesem Blog Priorität einräumen.
Freut Euch drauf.

Frank M. schrieb:
> Warum stellst Du nicht einfach einen Link rein aufs Dokument?
Meine Antwort:
Aus der W. schrieb:
> Da die Motorola pdf in einem Link nicht mehr da ist.


Äxl schrieb:
> Man kann übrigens die Phasenmodulation auch im DDS-Chip machen (lassen),
> oder lese ich das falsch?

Das mache ich ja auch. Du meinst sicher über das PM-Register digital
und nicht über den Komparator analog.
Natürlich kannst Du mit meinem NF-Verfahren so einen cqu-Träger
generieren. Der hätte dann auch unmittelbar Sinusform.
Für die AM gibt es einen VCA mit dem Du dann analog cquam machen
kannst. Soweit ich das verstehe geht die AM-Modulation damit
nur analog.

LG
old.

von yesitsme (Gast)


Lesenswert?

Ist das Semirs Sinus-code von dem hier geschwärmt wird?
https://radio-bastler.de/forum/showthread.php?tid=9265

Das kann der schon so machen, weil der µc sonst nichts macht.

Würde ich trotzdem anders machen, weil das micros() alle 70 Minuten 
überläuft, was dann als Knacken im Pilotton landet.

von oldeurope O. (Gast)


Lesenswert?

yesitsme schrieb:
> weil das micros() alle 70 Minuten
> überläuft, was dann als Knacken im Pilotton landet.

Danke für die Info.
Das Knacken ist wie lang?
So lang wie ein Loopdurchlauf? Oder gar nur eine µsek. ?
Der Knack kommt dann an Pin 8 des OP-Amp nicht an.

Lässt sich aber auch überlaufsicher machen, so wie die
Monoflops im Sketch.

LG
old.

von yesitsme (Gast)


Angehängte Dateien:

Lesenswert?

Ich bin gerade zu müde um mir Gedanken über die Dauer zu machen... 
Könnte an der Stelle des Überlaufes aber so aussehen.

Da Semirs Implementation nicht verhandelbar ist, bin ich da raus.

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

yesitsme schrieb:
> micros() alle 70 Minuten

Warum eigentlich micros und nicht millis?
Ich habe das einfach mal gemacht, siehe Zeile 171.
Der Sinus müsste dann aus 40 Stützstellen bestehen.

Knackt dann alle 50 Tage. ;)

Da war doch was …

Peter D. schrieb:
> Wird jede 1ms ein neuer Wert für 25Hz berechnet, dann sind das nur 40
> Stützstellen.

Auch.

LG
old.

von yesitsme (Gast)


Lesenswert?

millis() läuft zu langsam und korrigiert das durch einen gelegentlichen 
Sprung von 2 ms.

Vielleicht für den Pilotton nicht relevant.

von Äxl (Gast)


Lesenswert?

.. nur mal nebenbei - thema ist ja durch

F. F. schrieb:
>
> ...
> Wie hoch belastet so ein ADC eigentlich die Quelle?

Aus 2004 ;) hab' ich eben gefunden. grins
Mir scheint, ich bin hier fast der Stubenälteste, oder? :)))
Beitrag "Eingangsimpendanz ADC Mega16"

von äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> https://www.radio-bastler.de/forum/showthread.php?tid=8756&pid=154787#pid154787
>
> Dort ist ein Bild, das zeigt wie man mit dem AD9850 PWM machen kann.
> (Dank meines Forenfalle-Blogs könnt Ihr die Anhänge dort frei sehen
> und lesen. So wie hier.)
> Auch Deine weiteren Fragen beantwortet der Thread dort.

Kommt bissl spät, oder?
Salamitaktik wird sowas hier gern bezeichnet.
Diese ganzen Informationen (noch scheinen sie nicht vollständig zu sein, 
erwarte ich - eigentlich alles hier - am Anfang des ersten Posts.
Aber: ich laufe Gefahr, mich zu wiederholen.

Nungut. der DDS gibt also Rechteck aus, das Pulsweitenverhältnis 
modulierst Du auf dem DDS-Bord mit dem modifizierten IQ Gemisch 
(L-R)*(L+R+1) ?

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> siehe Zeile 171

hast du selber mal auf "codeansicht" geklickt? da steht NIE eine 
zeilennummer dabei... das macht das ganze sehr mühselig nachvollziehbar. 
evtl. könntest du die entsprechenden zeilen ja in code-tags im beitrag 
packen.

von äxl (Gast)


Lesenswert?

https://elektronikbasteln.pl7.de/images/volker/2-Elektronik/Sinus-Generator-DDS-AD9850/ad9850-sketch.txt

Es ist schon erstaunlich, was dieser Arduino-Sketch für einen weiten weg 
nahm, um endlich hier bei uns im Forum zu landen ;)

Zur Modulation nochmals:
https://elektronikbasteln.pl7.de/ad9850-sinus-dds-atmega328-arduino.html
Hier wird AM-Modulation über den "R_SET" Pin des DDS gemacht. Ist deine 
Modulation der Betriebsspannung der "PA" damit obsolet?

Oder ist gar das jetzt dein Aufbau?
https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154168#pid154168

Wie gesagt: Da du es nicht schaffst, alle deine Baustellen zu bedienen, 
wie es scheint, warte ich erst einmal ab, ob es sich lohnt, hier weiter 
Zeit und Hirn reinzustecken. Es kann niemand in deinen Kopf hineinsehen.
Denn Doku gehört in erster Linie dazu (lerne man wohl im Studium) und 
ist unbestritten eine der grössten Baustellen im Prjekt...
So wird das hier nix. jedenfalls nicht mit mir.
Im Augenblick scheint es MIR so, als fände die C-QAM Aufbereitung 
"rechts" auf der HF-Seite vom DDS statt und nicht "links" im 
NF-Baseband.

bis dahin
Äxl

von äxl (Gast)


Lesenswert?

Sven K. schrieb:
> das macht das ganze sehr mühselig nachvollziehbar.

leider alles hier in diesem Faden. Schade drum. Gerade weil die 
Kernkompetenzen hier im Forum - anders als im RBF (Radio-Bastel-Forum) - 
exakt passen. Aber: selbst schulz.

Drei Tage sind auch um, das interesse lässt eh nach, wie es scheint.
Das der Pilotton holpert, stört nun auch nicht mehr weiter.

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Sven K. schrieb:
> hast du selber mal auf "codeansicht" geklickt? da steht NIE eine
> zeilennummer dabei... das macht das ganze sehr mühselig nachvollziehbar.

Das ärgert mich auch kolossal. Habe mich schon oft genug
drüber beklagt.
Ich sehe nicht mehr ein Codeschnipsel oder Screenshots
anzufügen, nur weil die Forenbetreiber keine Codeansicht
mit Zeilennummern hinkriegen.

Macht halt die ino-Datei auf, und dann habt Ihr alles was Ihr braucht.

äxl schrieb:
> Nungut. der DDS gibt also Rechteck aus, das Pulsweitenverhältnis
> modulierst Du auf dem DDS-Bord mit dem modifizierten IQ Gemisch
> (L-R)*(L+R+1) ?

Ich moduliere Q mit (L-R)*(L+R+1).
Motorola macht das mit dem "IQ Gemisch"
Das ist der prinzipielle Unterschied zwischen meinem und
dem Motorola Exciter.
Die Motorola pdf hast Du runterladen können?

äxl schrieb:
> Kommt bissl spät, oder?

Spielst Du blinde Kuh?
Die Hyperlinks findest Du in der ino.
Und die gab es hier schon bevor ich den Thread aufgemacht habe.

yesitsme schrieb:
> millis() läuft zu langsam und korrigiert das durch einen gelegentlichen
> Sprung von 2 ms.
>
> Vielleicht für den Pilotton nicht relevant.

Du bist gut. :) Das macht sich als kleine DC-Level
Schwankung auf dem Oszilloskop bemerkbar.
Man muss dafür schon genau hinsehen.

Ich habe mehr signifikante Stellen beim Multiplikator verwendet,
dadurch treffe ich die Frequenz noch genauer.
Ist die Stellenzahl oder die Zahl der Signifikanten Stellen
für den, ich denke mal Float-Wert, begrenzt?
Ich verstehe das bei DK2JK so, dass man 8 Stellen verwenden darf.

LG
old.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Das ärgert mich auch kolossal.

Kopiere es halt in einen Texteditor.

> Ich sehe nicht mehr ein Codeschnipsel oder Screenshots
> anzufügen, nur weil die Forenbetreiber keine Codeansicht
> mit Zeilennummern hinkriegen.

Du bist hier derjenige, der um Hilfe bittet. Wenn dir das zu blöd ist, 
dann suche woanders Hilfe.

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Du bist hier derjenige, der um Hilfe bittet.

Ich habe unabhängig vom Thema gezeigt, wie
man von micros auf millis umstellt.
Ich dachte das könnte interessant sein und
und Tatsache, es gibt Leser  die das hier interessiert.

Von meiner Seite gibt es nur noch Codeanhänge

Aus dem Zusammenhang gerissene Codeschnipsel
helfen nicht.

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Aus dem Zusammenhang gerissene Codeschnipsel
> helfen nicht.

naja... man kann sich die zeile in den zwischenspeicher packen, geht in 
die codeansicht und sucht die entsprechende zeile mit strg+f

von oldeurope O. (Gast)


Lesenswert?

Sven K. schrieb:
> naja... man kann

Ja, kann man alles machen. Ich bevorzuge diese
altbewährte Methode:
https://www.kirche-entdecken.de/hauptraum/die-liedtafel/


LG
old.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Stefanus F. schrieb:
> Du bist hier derjenige, der um Hilfe bittet. Wenn dir das zu blöd ist,
> dann suche woanders Hilfe.

Also ich seh' hier niemanden, der um Hilfe bittet. Ich seh' hier nur die 
ueblichen Verdaechtigen, die um permanente Demuetigung bitten, und die 
auch prompt erhalten ;-)

Gruss
WK

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich dachte das könnte interessant sein

Ist es ja auch. Wir und die Leute die nach uns kommen, freuen uns über 
jeden Tipp.

> Von meiner Seite gibt es nur noch Codeanhänge
> Aus dem Zusammenhang gerissene Codeschnipsel helfen nicht.

gut

von äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> äxl schrieb:
>> Kommt bissl spät, oder?
>
> Spielst Du blinde Kuh?
> Die Hyperlinks findest Du in der ino.
> Und die gab es hier schon bevor ich den Thread aufgemacht habe.

Schnauzen Sie mich nicht voll, sondern bringen Sie endlich ne ordentlich 
geführte Dokumentation. Offenbar scheinen es zwei Parallelentwicklungen 
zu geben..
Sie beschweren sich, dass es keine Zeilennummern in der Codeansicht gibt 
und regen sich tierisch auf deswegen.
Mir geht es hier ganz genauso. Ich finde von ihren Gedanken überall 
alles mögliche weit verstreut im Netz. Da sind auch nirgendwo 
Zeilennummern.
Da steigt doch niemand hinter, man weiss doch garnicht, was denn nun 
aktueller Stand bei Ihrem Projekt ist.
Und: letztmalig und Bierernst gemeint.

Gewöhnen Sie sich einen anderen Ton an, wenn Sie mit mir schreiben! 
Fahren Sie den anderen ruhig über den Mund und leben sich aus, wenn Sie 
das brauchen.
Mit mir werden Sie in Zukunft respektvoll umgehen oder garnicht.
Ich mag das überhaupt nicht!

Das war dann wohl deutlich genug, hoffe ich!

Es ist unser aller Zeit, die wir hier nur darauf verwenden, Ihnen alle 
Informationen aus der Nase zu ziehen. Am Ende kommt nichts dabei herum, 
weil niemand nichts genaues weiß.
Sehr effizient...

von äxl (Gast)


Lesenswert?

Beitrag "Re: I2C "blockiert" Arduino"
Vielleicht könnten Sie auf meine Fragen eingehen?

von oldeurope O. (Gast)


Lesenswert?

Was war das denn?! Ich kugel mich vor Lachen.

äxl schrieb:
> Ich finde von ihren Gedanken überall
> alles mögliche weit verstreut im Netz.

Das gefällt mir.

äxl schrieb:
> Mit mir werden Sie in Zukunft respektvoll umgehen oder garnicht.

gar nicht. Was nicht bedeutet, dass ich dann doch mal einen
Punkt aufgreife und dauauf eingehe, wenn ich das für sinnvoll halte.

Viel Spaß beim Blinde Kuh spielen.
_____________________________________________________________________

Da fällt mir gerade ein, es gibt ein Blockschaltbild in Gnu-Radio:
https://www.radio-bastler.de/forum/showthread.php?tid=12946&pid=157237#pid157237
#38

LG
old.

von äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> Da fällt mir gerade ein, es gibt ein Blockschaltbild in Gnu-Radio:
> https://www.radio-bastler.de/forum/showthread.php?tid=12946&pid=157237#pid157237
> #38

Ich kenne diesen Link
Sie scheinen überhaupt nicht zu begreifen, worauf Ich eigentlich hinaus 
will. Wie deckt sich das Blockschaltbild mit Ihrem jetzigen Aufbau? Was 
hat GNU Radio denn nun auf einmal mit dem Arduino zu tun?

Wir lassen das hier besser.

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Ich hatte früher mal ein Schaltbild bei einem
Schaltungsdienst angefordert. Das hat ein paar
Wochen gedauert weil die das erst noch kopieren
und binden mussten und mit der Arbeit kaum nachkamen.
Is halt so.

Da konnte ich auch nicht kommen mit hey Respekt und so.
Du musst dich jetzt halt mal in Geduld üben.

von äxl (Gast)


Lesenswert?

Ich möchte Ihre Schaltung weder nachbauen noch anderweitig nutzen.
Also nochmal: gähn

Wenn ich in einem Forum um Hilfe frage, so hab ich alle relevanten 
Informationen vorzualten, die einer Lösung meines Problems dienlich sein 
könnten. Bin ich dazu nicht in der Lage, muss ich mein Defizit an dieser 
Stelle eingestehen und mir das eben für's nächte Mal merken.
Für Blockschaltbilder und GNURadio ist ja auch ausreichend Zeit 
vorhanden, wenn man sich die rege Beteilung in den anderen Foren 
ansieht.
Sie machen die Dokumentation doch nicht für mich oder für uns, sondern 
für sich selbst.
Also: mir ist es egal - ich habe es auf die erwachsene Art probiert und 
bin Ihnen sogar im Wortfall ein klein wenig entgegengekommen, in der 
Hoffnung, sie verstünden diese Sprache ein wenig besser. Offenbar ist 
dem nicht so.
Jetzt bin ich aber mal gespannt, was denn jetzt wieder im falschen Hals 
landet.

Ich für meinen Fall benötige nun keinen zusammenhängenden Pläne mehr. 
Weder linksseitig noch rechtsseitig der DDS-Baugruppe. Ich erwarte von 
niemandem Dinge, von denen ich weiss, das er sie nicht liefern kann. Ich 
wollte Sie nicht blosstellen, sorry.

von MeierKurt (Gast)


Lesenswert?

äxl schrieb:
[...]

... ein Riesenaufwand.
Für was eigentlich genau?
Naja, vileleicht ist das die falsche Frage...

von oldeurope O. (Gast)


Lesenswert?

Ich sehe gerade, hier:
https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154787#pid154787
ist die AD9850 Modifikation zu sehen. Ist schon fast ein Fritzing-Plan.

äxl schrieb:
> Ich für meinen Fall benötige nun keinen zusammenhängenden Pläne mehr.

Aha, der Typ gibt sich nicht mit Schaltplänen der Baugruppen
zufrieden, sondern will einen zusammenhängenden Plan.
Den bekommst du nicht mal vom Arduino UNO.

äxl schrieb:
> Ich
> wollte Sie nicht blosstellen, sorry.

Ach daher weht der Wind. Du machst hier die "nie zufriedene
Meckerziege" in der Hoffnung mich bloßzustellen zu können.
Träum weiter. Wie tief willst du eigentlich sinken?

äxl schrieb:
> Wie deckt sich das Blockschaltbild mit Ihrem jetzigen Aufbau? Was
> hat GNU Radio denn nun auf einmal mit dem Arduino zu tun?

So ist mein Aufbau.  Signal Source und Steudler ersetze
ich durch Arduino mit AD9850 + (PWM-->PM Converter)*.

LG
old.

*Also PM erstmal analog.

von yesitsme (Gast)


Lesenswert?


von Carl D. (jcw2)


Lesenswert?

Aus der W. schrieb:
> Ich sehe gerade, hier:
> https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154787#pid154787
> ist die AD9850 Modifikation zu sehen. Ist schon fast ein Fritzing-Plan.
>

Interessant ist vor allem der letzte Post in diesem Thread, der zur 
Verlagerung des Projekt nach hier geführt zu haben scheint. Semir, der 
mit dem sin(x) und zugleich der Moderator, scheint nicht mehr der beste 
Freund zu sein.

von oldeurope O. (Gast)


Lesenswert?

Carl D. schrieb:
> Semir, der
> mit dem sin(x) und zugleich der Moderator, scheint nicht mehr der beste
> Freund zu sein.

Nie gewesen:

https://radio-bastler.de/forum/showthread.php?tid=8252&pid=94796#pid94796
#32
Das bedeutet aber nicht, das man nicht miteinander reden bzw.
schreiben kann. Zumindest gilt das von meiner Seite.


LG
old.

von oldeurope O. (Gast)


Lesenswert?

yesitsme schrieb:
> Aus der W. schrieb:
>> Den bekommst du nicht mal vom Arduino UNO.
>
> https://www.arduino.cc/en/uploads/Main/arduino-uno-schematic.pdf

Danke für das Beispiel, genau das meinte ich.

Acht Einzelschaltungen!

LG
old.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> genau das meinte ich.

Du hast offensichtlich ein Problem damit, Texte zu verstehen, nicht nur 
mit Schaltplänen.

Der Plan vom UNO ist völlig ok.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Der Plan vom UNO ist völlig ok.

Meiner auch. Bei mir hast Du gleich noch eine lauffähige
LTspice Simu dabei. Deshalb habe ich auch Einzelschaltungen,
weil die für die Simu erforderlichen Parameter unterschiedlich
sind.

Jemand der nicht simulieren will, kann sich ja mit copy und paste
alles auf ein "Blatt" ziehen, dann sieht das so aus wie das
UNO Schaltbild.

LG
old.

von Hugo H. (hugohurtig1)


Lesenswert?


von oldeurope O. (Gast)


Lesenswert?

Hugo H. schrieb:
> https://radio-bastler.de/forum/showthread.php?tid=8756&pid=155265#pid155265

Vorsicht: Das Fritz ist leider nur mono.

https://radio-bastler.de/forum/showthread.php?tid=8756&pid=155295#pid155295

Ich benutze inzwischen ein Smartphone als Internetradio.
Die gibt es fürn Appel und  n Ei in der Bucht gebraucht.
Damit ist die Internetradio-Sache als Zuspieler gelöst.

LG
old.

von Roland F. (rhf)


Lesenswert?

Hallo,
Aus der W. schrieb:
> Danke für das Beispiel, genau das meinte ich.
>
> Acht Einzelschaltungen!

https://content.arduino.cc/assets/UNO-TH_Rev3e_sch.pdf

Besser?

rhf

von oldeurope O. (Gast)


Lesenswert?

Roland F. schrieb:
> Besser?

???

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Meiner auch.

boah - bist du wirklich so ignorant? oder schwer von begriff? es geht 
nicht darum, dass alle leitungen auf einem schaltplan durchgehend 
verbunden sind. es geht darum, dass du nicht von anfang an alle 
notwendigen informationen geliefert hast, sondern alles hier über 100 
beiträge und 7 foren verteilt ist. daraus kann man sich kein gesamtbild 
zusammenstellen, und eventuell auch nicht deine frage korrekt 
beantworten. selbst bei deinem 30 mal verlinkten code fehlen die 
inkludierten dateien -> auch nciht vollständig!

von oldeurope O. (Gast)


Lesenswert?

Sven K. schrieb:
> boah - bist du wirklich so ignorant? oder schwer von begriff? es geht
> nicht darum, dass alle leitungen auf einem schaltplan durchgehend
> verbunden sind. es geht darum, dass du nicht von anfang an alle
> notwendigen informationen geliefert hast,

Startbeitrag lesen.

> sondern alles hier über 100
> beiträge und 7 foren verteilt ist. daraus kann man sich kein gesamtbild
> zusammenstellen, und eventuell auch nicht deine frage korrekt
> beantworten.

Ihr wolltet wissen, was ich mir da gerade baue.
Hat mit meiner Frage im Startbeitrag nichts zu tun.
Das ist hier Entertainment.

> selbst bei deinem 30 mal verlinkten code fehlen die
> inkludierten dateien -> auch nciht vollständig!

Du meinst diesen Sketch?
Beitrag "Re: I2C "blockiert" Arduino"
Welche Datei fehlt Dir?
Ich gebe sie Dir gern.



Roland F. schrieb:
> Besser?

Frag mal den, der zusammenhängende Schaltbilder wünscht.

LG
old.

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Startbeitrag lesen.

hab ich. da fängt es doch an. der code ist in einem anderen thread. wie 
dort auch schon angemerkt wurde, fehlt die rotary.h. ich will die 
überhaupt nicht haben, ich will dir nur deutlich machen, dass du dich 
eventuell nicht ganz korrekt verhalten könntest und nicht alle anderen.

von oldeurope O. (Gast)


Lesenswert?

Sven K. schrieb:
> hab ich. da fängt es doch an. der code ist in einem anderen thread.

Zwei Mausklicks entfernt. Inzwischen gibt es in diesem Thread Updates.

> wie
> dort auch schon angemerkt wurde, fehlt die rotary.h. ich will die
> überhaupt nicht haben,

sondern:

> ich will dir nur deutlich machen, dass du dich
> eventuell nicht ganz korrekt verhalten könntest und nicht alle anderen.

So ekelhaft wie du werde ich mich hoffentlich niemals verhalten.

von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> Ihr wolltet wissen, was ich mir da gerade baue.

was sicher nicht uninteressant ist

> Hat mit meiner Frage im Startbeitrag nichts zu tun.

Diese wurde ja auch schon mehrfach geklärt wie das zu lösen ist

> Das ist hier Entertainment.

richtig.
und wen interessiert das?
Außer das du damit deinen eigenen Thread zerbombst

von Gibts ja nicht (Gast)


Lesenswert?

Hab gerade zur Belustigung ein bisschen hier im Thread gelesesen...

Arduino Fanboy D. schrieb:

> Ich möchte mal behaupten, dass alle hier, außer du und der TE begriffen
> haben, worum es geht. Wo es "wirklich" klemmt.
> Und das hat ganz sicher nichts mit C oder C++ oder einer beliebigen IDE
> zu tun.



Genau das hier ist es, der Typ will keine Hilfe und kapiert 
Nullkommanull. Jeder der hier reinließt schnallt es sofort!

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Aus der W. schrieb:
> Das ist hier Entertainment.

... und zwar zur Belustigung eines Einzelnen.

Ich würde den Lesern hier im Thread dringend dazu raten, sich einfach 
mal zurückzulehnen und auch zurückzuhalten.

Die einzige Absicht des TOs ist hier mittlerweile, diejenigen 
Pawlowschen Hunde, die immer wieder auf seine Buzzwords reagieren, mit 
dem Nasenring durch die Arena zu ziehen.

Sag jetzt nicht jeder: "Das wusste ich doch!". Dann wundere ich mich, 
dass hier viele sich Tag für Tag nicht zügeln konnten.

P.S.
Wenn hier nicht wieder zum Thema zurückgefunden wird - und zwar auf 
sachlicher Basis - kann dieser Thread demnächst geschlossen werden oder 
zumindest nach /dev/null mit beschränkter Lebensdauer wandern. Das 
sollte sich hier jeder zu Herzen nehmen. Wenn keiner mehr willens ist, 
etwas zum Thema zu schreiben... umso besser. Das macht die Entscheidung 
leichter.

: Bearbeitet durch Moderator
von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
>> ich will dir nur deutlich machen, dass du dich
>> eventuell nicht ganz korrekt verhalten könntest und nicht alle anderen.
>
> So ekelhaft wie du werde ich mich hoffentlich niemals verhalten.

wenn dir das hier zu blöd ist ..
dann wundere dich nicht warum keiner mehr sinnvolle Antworten gibt

mach deinen tollen blog mit Link zu dem Beitrag hier...

in fast allen anderen Foren kommt man rgendwie auf das selbe ..
das du mit deinem Ego nirgends reinpasst.

und überall steht das du mit deinem "Vollkaskodenken" nicht wirklich 
viel erreichen wirst.


vieleicht liegt das aber auch an den anderen mrd. menschen ..
nur nicht an dir

von oldeurope O. (Gast)


Lesenswert?

hfhd schrieb:
> Diese wurde ja auch schon mehrfach geklärt wie das zu lösen ist

Theoretisch, ja. Wobei da keine Einigkeit herrscht.
Da fehlt noch ein Schaltbild äh Sketch als Erklärung.

hfhd schrieb:
> Außer das du damit deinen eigenen Thread zerbombst

Man lernt dabei immer. Beispielsweise wie man die
ominöse Zahl in Zeile 171 berechnet:

Multiplikator = 2*PI/40  // für millis() und 40ms Periodendauer

Damit hätte ich mich sonnst nie befasst und der Semir hat ein
Geheimnis draus gemacht.

Frank M. schrieb:
> beschränkter Lebensdauer wandern

Danke für den Hinweis.
Eben mit `Microsoft print to pdf´ gespeichert.
Das hänge ich dann im nächsten cquam-Blog unten an.

LG
old.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Aus der W. schrieb:
> Danke für den Hinsweis.
> Eben mit `Microsoft print to pdf´ gespeichert.
> Das hänge ich dann im nächsten cquam-Blog unten an.

Das kannst Du meinetwegen auch als Riesen-Plakat in einer Großstadt 
Deiner Wahl aufhängen - das tangiert mich peripher.

Für Dich gilt übrigens dasselbe: Halte Dich ausschließlich an Dein 
selbst gewähltes Thema aus dem Eröffnungsbeitrag. Sonst mache ich den 
Thread dicht.

: Bearbeitet durch Moderator
von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> hfhd schrieb:
>> Diese wurde ja auch schon mehrfach geklärt wie das zu lösen ist
>
> Theoretisch, ja. Wobei da keine Einigkeit herrscht.
> Da fehlt noch ein Schaltbild äh Sketch als Erklärung.

Da ich kein Arduino selbst nutze ... kann ich mit einer .ino nicht 
dienen

Deine Berechnung im loop ist momentan eine variable Samplefrequenz
Das geht solange gut , wie die SR hoch genug ist und dabei nicht gestört 
wird.
Deine LCD Ausgabe ( auch eine andere Funktion die ein paar ms blcokiert 
würde das selbe tun... ) blockiert das eben.


Anstatt deine PWM unregenmäßig zu füttern musst du überlegen wie man das 
sehr gleichmäßig mit einer samplefrequenz tun kann.

Such dir eine Samplefrequenz das der 25Hz sauber genug erzeugt wird.
Damit lässt deinen Timer laufen.
bei jedem Interrupt schiebst du einen aktuellen wert in die PWM

das schafft rechenkraft für andere sachen
wenn man das per Timer macht , kommt das 99,9998% zur selben Zeit
also kein knacksen und kein ploppen.

Da du den DDS nur bei einer Frequenz betreibst ...
ist eine neuberechnung mit sin() gannicht notwendig.

notwendig ist das nur wenn du verschiedene Frequenzen haben möchtest.

dein 25Hz ist 40ms lang.
Wenn du nun 256 Stützstellen nimmst um den Sinus abzubilden,
ist das ein array[256] ...

bei 256 Stützstellen wären das 156,25ns Timerinterrupt
pro Timerinterrupt nimmst du einen neuen Wert.

[pseudocode]

uint8_t sinus[256]={xxxxxxxxxxx};

ISR(TIMER1){
   static uint8_t i = 0;
   PWMREG = sinus[i++];
}


> hfhd schrieb:
>> Außer das du damit deinen eigenen Thread zerbombst
>
> Man lernt dabei immer. Beispielsweise wie man die
> ominöse Zahl in Zeile 171 berechnet:
>
> Multiplikator = 2*PI/40  // für millis() und 40ms Periodendauer
>
> Damit hätte ich mich sonnst nie befasst und der Semir hat ein
> Geheimnis draus gemacht.

Kreisfrequenz ... Sinus ... passt schon zusammen

von Einer K. (Gast)


Lesenswert?

Frank M. schrieb:
> Wenn hier nicht wieder zum Thema zurückgefunden wird - und zwar auf
> sachlicher Basis
Ja komm....
Ich will mal nicht so sein...

Das "Wie?" man beliebig geformte Töne mit einem Nano generiert, findet 
sich hier:
https://playground.arduino.cc/Code/PCMAudio/
62,5Khz PWM und 8000 Stützstellen pro Sekunde.
Halbwegs gut erklärt, so dass auch der dümmste kapiert, wie es geht.

Das einzige Problem wäre, wie man da eine Sinustabelle unterbringt.
Aber das bekommt der TO schon hin. ;-)


Ansonsten gibts ja auch noch die Nano Nachbauten mit MD328-D µC.
Die haben 2 mal Hardware DAC und etwas andere Timer und andere 
Takterzeugung.
(eine gute Gelegenheit, das lesen von Chinesischen Datenblättern zu 
üben)

von oldeurope O. (Gast)


Lesenswert?

Danke für den guten Willen aber

hfhd schrieb:
> Da ich kein Arduino selbst nutze ... kann ich mit einer .ino nicht
> dienen

hilft mir das nicht weiter, weil ich das nicht umsetzen kann.

hfhd schrieb:
> das schafft rechenkraft für andere sachen

Ich dachte, durch millis() statt micros() , nur noch
ein Tausendstel der Rechenleistung für den Sinus zu benötigen.

Ich merke aber keinen Unterschied.

hfhd schrieb:
> Deine LCD Ausgabe ( auch eine andere Funktion die ein paar ms blcokiert
> würde das selbe tun... ) blockiert das eben.

Offensichtlich nur die LCD-Ausgabe.
Ich habe ja jetzt die ALC und die LEDs zur Pegelanzeige sowieso.
Wenn sich eine Lösung findet, lasse ich mir den Wert für die
Steuerspannung der ALC-VCAs anzeigen. Sonnst eben nicht.
Dann besteht ja noch das Problem, dass die Berechnung der
VCA-Spannung für die ALC auch betroffen ist. Es hilft also
leider nicht allein den Pilot-Sinus sauber zu halten.

LG
old.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Offensichtlich nur die LCD-Ausgabe.

Nur weil es dir da auffällt, ist es dennoch nicht des Pudels Kern.
Und durch stete Wiederholung wirds auch nicht wahrer. Du glaubst nur 
selber fester daran, das ist der einzige Effekt.

Aber das willst du ja alles gar nicht hören, denn du bist ja viel 
schlauer und kompetenter, als wir alle.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Aus der W. schrieb:
>> Offensichtlich nur die LCD-Ausgabe.
>
> Nur weil es dir da auffällt, ist es dennoch nicht des Pudels Kern.

Da das Problem ohne die LCD-Ausgabe nicht feststellbar ist,
ist das des Pudels Kern.

Das kann nicht sein, dass man wegen des I2C Displays aus
dem zwei Zeilen Code einen Roman manchen muss.
Und die anderen Probleme mit der Pegelrechnung sind
dann auch noch nicht gelöst.

Ein I2C-Display ohne delays ist die Lösung.
Dafür wurden hier ja schon Theoretische Vorschläge gebracht.

LG
old.

von Hff (Gast)


Lesenswert?

Aus der W. schrieb:
> hilft mir das nicht weiter, weil ich das nicht umsetzen kann.
>
> hfhd schrieb:
>> das schafft rechenkraft für andere sachen
>
> Ich dachte, durch millis() statt micros() , nur noch
> ein Tausendstel der Rechenleistung für den Sinus zu benötigen.
>
> Ich merke aber keinen Unterschied.

Weil du das Prinzip hinter der Sinuserzeugung nicht verstanden hasst.

Der Loop wird identisch oft aufgerufen ...
Egal ob millis, micros ... Ultras oder sonstwas...

Der Durchlauf der Loop ist aber nicht konstant.
Je nach dem welchervteil durchlaufen wird dauert das unterschiedlich 
lange

Und selbst DAS hast du damit noch nicht verstanden.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Aus der W. schrieb:
> Da das Problem ohne die LCD-Ausgabe nicht feststellbar ist,
> ist das des Pudels Kern.

TO: "Wenn ich meine Oma an die Hand nehme, muss ich langsamer gehen."

Antwort: "Dann klemm sie doch über die Schulter, dann bist Du schneller"

TO: "Da das Problem ohne Oma nicht feststellbar ist, ist das des Pudels 
Kern. Die Oma ist schuld!".

von Hff (Gast)


Lesenswert?

Aus der W. schrieb:
> Das kann nicht sein, dass man wegen des I2C Displays aus
> dem zwei Zeilen Code einen Roman manchen muss.
> Und die anderen Probleme mit der Pegelrechnung sind
> dann auch noch nicht gelöst.
> Ein I2C-Display ohne delays ist die Lösung.
> Dafür wurden hier ja schon Theoretische Vorschläge

Doch ist es.


Weil der gute programmierer weiß das eine LCD Ausgabe oder auch Bytes 
schubsen und auf Flags warten  eben Zeit Brauch.

Daher macht er zeitkritische Dinge so daß sie deterministisch sind...
Das das Verhalten der kritischen Komponente vorhersehbar ist.

Bei dem bulimie-code da oben ... Wundert mich nichts mehr.

Das ist mangels Unwissenheit zusammenkopiert .

Klar wäre es schön wenn I2C  oder UART .. oder SPI
Daten egal welcher Länge in 0,nix versenden würde ohne das man warten 
muss.

Aber die Peripherie ist nunmal so...
Das muss man einplanen

Eben durch Wissen

von oldeurope O. (Gast)


Lesenswert?

Hff schrieb:
> Weil der gute programmierer weiß

Bin ich aber nicht und nachher ist man immer schlauer.
(Das sollte eigentlich in einem Tutorial dazu angesprochen werden.)
Wenn was zeitkritisch ist, wird das Display eben parallel
betreiben oder sehr spartanisch angesprochen.

Hff schrieb:
> Und selbst DAS hast du damit noch nicht verstanden.

Hast Du verstanden, dass der I2C auch ohne den Sinus
Probleme macht?


Frank M. schrieb:
> TO: "Wenn ich meine Oma an die Hand nehme, muss ich langsamer gehen."

Nich TO, sondern Moderator. Weia!

Hff schrieb:
> Der Loop wird identisch oft aufgerufen ...
> Egal ob millis, micros ... Ultras oder sonstwas...

Gut, gehe ich wieder au micros().

Hff schrieb:
> Klar wäre es schön wenn I2C  oder UART .. oder SPI
> Daten egal welcher Länge in 0,nix versenden würde ohne das man warten
> muss.

Ja, Zwischen dem Arduino und dem AD9850 geht das tatsächlich.

LG
old.

von Hff (Gast)


Lesenswert?

Aus der W. schrieb:
> Hff schrieb:
> Weil der gute programmierer weiß
>
> Bin ich aber nicht und nachher ist man immer schlauer.
> Wenn was zeitkritisch ist, wird das Display eben parallel
> betreiben oder sehr spartanisch angesprochen.
>
> Hff schrieb:
> Und selbst DAS hast du damit noch nicht verstanden.
>
> Hast Du verstanden, dass der I2C auch ohne den Sinus
> Probleme macht?
>
> LG
> old.

Das löst dein Problem immer noch nicht... Es verschiebt es nur

Wärst du anfangs nicht so herablassend und überheblich dahergekommen 
hätte das schon längst jemand durch arduino geklimpert.


Ich und auch viele andere HABEN verstanden das ohne I2C
Dein Code erstmal funktioniert.

Wir alle haben versucht dir zu erklären WARUM das so ist.


Wenn du denkst parallel funktioniert alles wunderbar, dann zu das.
Aber auch hier wirst du feststellen das bei längeren Texten es zum 
holpern des Sinus kommt.

Such parallel kannst du nicht einfach die Bits durchschieben.
Pins toggeln und kurz warten  musst du auch hier.


Wenn du dann eine LCD lib mit Timer findest ..
Verschiebst du das Problem nochmals.



Wie gesagt...  Alle wollten helfen.

von Hff (Gast)


Lesenswert?

Aus der W. schrieb:
> Ja, Zwischen dem Arduino und dem AD9850 geht das tatsächlich.

Weil wieviele Daten abgerufen werden?

2-4 Bytes bei 400khz.


Ein String mit 20zeichen + Adressen sind aber bedeutends mehr.
Die Zeit ist hier einfach das entscheidende.

Schau für mit dem oszi deinen 25hz Sinus an wenn du etwas auf dem LCD 
ausgibst...

Dann weißt du was ich meine

von oldeurope O. (Gast)


Lesenswert?

Hff schrieb:
> Wärst du anfangs nicht so herablassend

Hast du noch alle aufm Kronleuchter?

Der MAX941 ist eben mit UPS gekommen. Das WE ist gerettet.
Das I2C Problem ist jetzt erstmal aufgeschoben.

LG
old.

von oldeurope O. (Gast)


Lesenswert?

Hff schrieb:
> Schau für mit dem oszi deinen 25hz Sinus an wenn du etwas auf dem LCD
> ausgibst...

Bei dem parallel angeklemmten LCD passiert nichts mit dem Sinus.

LG
old.

von Hff (Gast)


Lesenswert?

Aus der W. schrieb:
> Hff schrieb:
> Wärst du anfangs nicht so herablassend
>
> Hast du noch alle aufm Kronleuchter?
>
> Der MAX941 ist eben mit UPS gekommen. Das WE ist gerettet.
> Das I2C Problem ist jetzt erstmal aufgeschoben.
>
> LG
> old.

Dann ist ja alles gut

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Hast du noch alle aufm Kronleuchter?

Spiegel zur Hand gehabt?

Aus der W. schrieb:
> Auf dem parallel angeklemmten LCD passiert nichts mit dem Sinus.

Das ist allen klar, dass auf dem LCD nichts passiert :-)

von Hff (Gast)


Lesenswert?

Aus der W. schrieb:
> Hff schrieb:
> Schau für mit dem oszi deinen 25hz Sinus an wenn du etwas auf dem LCD
> ausgibst...
>
> Bei dem parallel angeklemmten LCD passiert nichts mit dem Sinus.
>
> LG
> old.

Perfekt.

Problem gelöst

von Hugo H. (hugohurtig1)


Lesenswert?

Hugo H. schrieb:
> Das ist allen klar, dass auf dem LCD nichts passiert :-)

Das -> Es

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Das kann nicht sein, dass man wegen des I2C Displays aus
> dem zwei Zeilen Code einen Roman manchen muss.

1:
Das ist nicht nur "wegen" dem I2C.
(Aber das passt ja nicht in deinen Schädel)
Sondern wegen dem Prinzip.

2:
Deine "2 Semir Zeilen" sind komplexer, als du offensichtlich begreifst.
Da steckt derbe Rechenaufwand hinter.
Rechenzeitverplemperung in Reinform.

3:
Der "Roman" benötigt nur eine Handvoll Takte.
Der ist rasend schnell.

4:
Der Sinus ist erheblich sauberer, mit dem "Roman".

Zu: 4
Vergleiche die PWM Frequenz!
Du: ca 980Hz
Roman: 62,5kHz

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Das ist

Lass mal den Sinus außen vor, das Problem tritt ja auch ohne den
Sinus auf.

Also nix Sinus nix Roman nix Zwozeilen.

Der Sinus hat keinen Einfluss auf das Problem.
Ihr habt Euch da total verrannt.

Arduino Fanboy D. schrieb:
> Zu: 4
> Vergleiche die PWM Frequenz!
> Du: ca 980Hz
> Roman: 62,5kHz

Dann nehme ich natürlich die 980Hz für den 25Hz Sinus.

Kann das sein, dass deine Tipps alle irgendwie ein Satz mit X sind?

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Ihr habt Euch da total verrannt.

Du lebst in einer anderen Welt :-) Nicht "Ihr habt Euch" sondern "Ich 
habe mich"

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Dann nehme ich natürlich die 980Hz für den 25Hz Sinus.
Ja, weil du nicht alle Streusel auf dem Kuchen hast.

Aus der W. schrieb:
> Kann das sein, dass deine Tipps alle irgendwie ein Satz mit X sind?
Ja!
Das stimmt wohl.
Und der Grund ist offensichtlich.

Du bist mir in allen Dingen überlegen.
Ins Besondere, in Sachen Arduino, C/C++, Zeitabhängigkeiten und 
nebenläufige Programmiertechniken.

von Hugo H. (hugohurtig1)


Lesenswert?

Arduino Fanboy D. schrieb:
> Du bist mir in allen Dingen überlegen.

Korrekt - er kann deutlich besser "dummes Zeug reden" :-) Old-...was 
auch immer

von Hugo H. (hugohurtig1)


Lesenswert?

Arduino Fanboy D. schrieb:
> Aus der W. schrieb:
>> Dann nehme ich natürlich die 980Hz für den 25Hz Sinus.
> Ja, weil du nicht alle Streusel auf dem Kuchen hast.
>
> Aus der W. schrieb:
>> Kann das sein, dass deine Tipps alle irgendwie ein Satz mit X sind?
> Ja!
> Das stimmt wohl.
> Und der Grund ist offensichtlich.
>
> Du bist mir in allen Dingen überlegen.
> Ins Besondere, in Sachen Arduino, C/C++, Zeitabhängigkeiten und
> nebenläufige Programmiertechniken.

Scharf - ich kann lesenswert um +1 hochsetzen - aber nicht lesenswert um 
-2 heruntersetzen. Ein Schelm, wer böses dabei denkt ... :-)

von Einer K. (Gast)


Lesenswert?

Hugo H. schrieb:
> Scharf - ich kann lesenswert um +1 hochsetzen - aber nicht lesenswert um
> -2 heruntersetzen.

Dann hat sich der Thread ja doch noch gelohnt.
Wenigstens einer glücklicher.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Ja!
> Das stimmt wohl.

Der arme foldi weiter oben …


Leute Ihr seid keine Idioten, weil Ihr einmal keine Hilfe
geben konntet. Da fällt niemandem ein Stein aus der Krone.
Im vorangegangenen Thread konntet Ihr mir helfen,
danke stefanus. Gleicher Sketch übrigens.

Ich werde mir den VCA-Spannungswert bei betätigem Taster
anzeigen lassen.

Mit dem Sinus vom Semir bin ich sehr zufrieden,
ein Glück, dass ich den bekommen habe.
Sonnst hätt ich jetzt n Rechteck.
Bei win10 ist mir auch total egal was dahinter steckt.
Funktioniert einfach und wenn nicht kommt ein Update.
Ich bin User sowohl bei win10 als auch bei Arduino.
Doppelplus-Zeh interessiert mich nicht.

LG
old.

von bulimie-code (Gast)


Lesenswert?


von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> Leute Ihr seid keine Idioten, weil Ihr einmal keine Hilfe
> geben konntet.

vielmehr wolltest du sie nicht annehmen.

bzw. wolltest du einen fertiegn scetch


wenn ich interesse am Projekt hätte würde ich das schnell  hinklatschen 
..
mit funktionierendem code natürlich


aber das Projekt ist bei mir soweit am thema vorbei  ...
nöe

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> wolltest du einen fertiegn scetch

Ja und?
Wenn Ihr mir eine fehlerhafte Schaltung hinlegt,
bekommt Ihr von mir eine korrigierte Schaltung zurück.
Das ist völlig selbstverständlich.

bulimie-code schrieb:
> vielmehr wolltest du sie nicht annehmen.

[Ironie]Ja klar ich frage hier weil ich keine Hilfe annehmen 
will.[/Ironie]
Merkst Du was Du da für einen Unsinn postest?
Sowas machen Leute, die so tun als ob sie helfen wollen.

LG
old.

von yesitsme (Gast)


Lesenswert?

Aus der W. schrieb:
> Das ist völlig selbstverständlich.

1. Der Schaltplan ist wo?

2. Dein Code ist enthält einige Schwächen 
(https://www.mikrocontroller.net/attachment/highlight/432064)

D.h. es ist sehr schwer die Zusammenhänge zu erfassen. Und ohne die, ist 
es unmöglich, Änderungen zu machen, ohne irgendwas kaputt zu machen.

Und die Lösungsideeen wurden hier alle als Bullshit abgetan.

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> [Ironie]Ja klar ich frage hier weil ich keine Hilfe annehmen
> will.[/Ironie]
> Merkst Du was Du da für einen Unsinn postest?

Aus der W. schrieb:
> Und der Sinus ist nicht verhandelbar.



vorschläge:
mit fast fertigem code

Peter D. schrieb:
> äxl schrieb:
>> Carl D. schrieb:
>>>> pwmDuty = 128 +126 * sin(micros() * 0.000157);
>>
>> Allein für diese eine Codezeile würde ich gern mal das listing sehen...
>
> Ja, das ist maximal Ressourcen verbrauchend.
> Wird jede 1ms ein neuer Wert für 25Hz berechnet, dann sind das nur 40
> Stützstellen. Das geht ganz einfach mit einem Array und die umständliche
> float Sinus-Berechnung entfällt komplett.#include <avr\io.h>
>
> uint8_t sintab[] = {    0,   20,   39,   58,   75,   90,  103,  113,
> 121,  125,
>                       127,  125,  121,  113,  103,   90,   75,   58,
> 39,   20,
>                         0,  -20,  -39,  -58,  -75,  -90, -103, -113,
> -121, -125,
>                      -127, -125, -121, -113, -103,  -90,  -75,  -58,
> -39,  -20,
>                    };
>
> void int_1ms(void)      // to be called from the 1ms interrupt
> {
>   static uint8_t step25;
>   if (step25 >= 40)
>     step25 = 0;
>   OCR0A = 128 + sintab[step25];
>   step25++;
> }
>
> Man sieht auch sehr schön, daß nur eine Viertelwelle berechnet werden
> muß. Der Rest ergibt sich durch Spiegelung bzw. Vorzeichenumkehr. Man
> könnte daher die Tabelle auch auf 10 Einträge reduzieren und die beiden
> Subtraktionen in Echtzeit machen.
> Durch den Aufruf im Timerinterrupt gibt es auch keinen Jitter mehr durch
> andere Tasks.

von oldeurope O. (Gast)


Lesenswert?

yesitsme schrieb:
> D.h. es ist sehr schwer die Zusammenhänge zu erfassen. Und ohne die, ist
> es unmöglich, Änderungen zu machen, ohne irgendwas kaputt zu machen.

Und das obwohl sich stefanus so viel Mühe gemacht hat:
Beitrag "Re: <rotary.h> mit bool "ein" und Ausschalten."


LG
old.

von yesitsme (Gast)


Lesenswert?

Aus der W. schrieb:
> Und das obwohl sich stefanus so viel Mühe gemacht hat:
> Beitrag "Re: <rotary.h> mit bool "ein" und Ausschalten."
>

In irgendeinem irgendwo verlinkten Thread... Und der Code ist immer noch 
aktuell?

> bulimie-code schrieb:
>> fast
>
> Warum nur fast?
>
> Weil Ihr wisst, dass es mit dem Sinus nicht getan ist.

Ohne die Zusammenhänge zu durchschauen... bleibt das Gluelogic schreiben 
dann bei dir.

von F. F. (foldi)


Lesenswert?

Habe jetzt mal einiges zum ADC gelesen.
Sehr interessant ist AN2447.
Solltet ihr einmal lesen.

von Äxl (Gast)


Lesenswert?

bulimie-code schrieb:
> Aus der W. schrieb:
> Leute Ihr seid keine Idioten, weil Ihr einmal keine Hilfe
> geben konntet.
>
> vielmehr wolltest du sie nicht annehmen.
> bzw. wolltest du einen fertiegn scetch
>
> wenn ich interesse am Projekt hätte würde ich das schnell  hinklatschen
> .. mit funktionierendem code natürlich
>
> aber das Projekt ist bei mir soweit am thema vorbei  ... nöe

Genau. Gäbe es eine strukturierte Doku zum aktuellen Stand, hätte ich's 
mal eben zusammengestöpselt und was fertiges hier reingestellt.
Hab ich ja nun oben schon geschrieben.
"Begeistere mich für dein Projekt". (Sinngemäß)
Aber so? ... nöe
Anfangs wurde die Phasenmodulation noch mit einem Transistor 
bewerkstelligt und nun mit einem Johnson-Zähler für die 90Grad?
Da blickt niemand durch. Aber: wir haben Jauch keine Ahnung und es ist 
ja auch garnicht schlimm, wenn wir mal nicht helfen können. Da fällt uns 
natürlich kein Zacken aus der Krone. Natürlich nicht.
Der Typ ist der brüller. Mir soo noch nicht untergekommen ... :)

von Äxl (Gast)


Lesenswert?

Der TO bindet hier wertvolle Ressourcen

von F. F. (foldi)


Lesenswert?

Aus der W. schrieb:
> Der arme foldi weiter oben …

Der Typ, kann man ja sehen, dass er mich auch wieder in "seine" Runde 
ziehen will, möchte hier nur zu seiner Belustigung provozieren.
Der kopiert hier irgendwas zusammen, was er irgendwo gelesen hat.
In Wirklichkeit macht er hier seine Psychologie Studie.
Das ist immer der selbe Troll - schon seit bestimmt mindestens 2 Jahren.

Frank, mach den Laden dicht!

Beitrag #6008001 wurde von einem Moderator gelöscht.
von oldeurope O. (Gast)


Lesenswert?

Ich hätte einen ganz einfachen Sketch mit I2C und Fritzing-
Schaltbild für den UNO, bei dem man das Problem leicht erkennt,
für meine Anfrage erstellen sollen.

Die Vorstellung vom Projekt-Code und den Einzelheiten zum
Projekt stiften nur Verwirrung. Zuviel Input ist auch nicht gut.
Das kann man an den Beiträgen von Äxl sehen.

LG
old.

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich hätte einen ganz einfachen Sketch mit I2C und Fritzing-
> Schaltbild für den UNO, bei dem man das Problem leicht erkennt,
> für meine Anfrage erstellen sollen.

die lösung dafür wäre komplett identisch

- mach den sin() weg
- nutze statdessen eine konstante lookuptable
- und vor allem das ist hierbei das wichtigste ...
  nutze eine Timer ISR zur übergabe der werte an das PWM Register
- quasi nutze Peters vorschlag
- weiter oben stand eine quasi identische variante mit 256 sinuswerten


wenn du das vor 3 tagen getan hättest ,
wäre die ausgabe über I²C oder sogar bitbanging dein geringstes Problem
du könntest dir den string dann sogar morsen lassen und es würde 
nichtstören

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> Aus der W. schrieb:
>> Ich hätte einen ganz einfachen Sketch mit I2C und Fritzing-
>> Schaltbild für den UNO, bei dem man das Problem leicht erkennt,
>> für meine Anfrage erstellen sollen.
>
> die lösung dafür wäre komplett identisch
>
> - mach den sin() weg

Der einfache Sketch hätte keinen Sinus.
Das mit dem Sinus hätte hier gar nicht auftauchen dürfen.
Ihr habt Euch durch den Sinus völlig verrannt.
Obwohl - wie soll man vorher ahnen, dass die Sinuserzeugung
solche Reaktionen triggert?

LG
old.

von bulimie-code (Gast)


Lesenswert?

bulimie-code schrieb:
> - und vor allem das ist hierbei das wichtigste ...
>   nutze eine Timer ISR zur übergabe der werte an das PWM Register

das versucht man dir die ganze zeit zu sagen

die timerISR sorgt für eine konstante ausgabe der werte
unabhängig ob I²C .. oder UART oder ein delayms(1000 )
den loop für eine gewisse zeit totlegen

deswegen Timer ISR

deswegen läuft auch der rotary in einer TimerISR

da diese ja schon da ist ..
könnte man diese mitverwenden um die PWM werte auszugeben

aber leider ist das nicht verhandelbar

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> ir ist aufgefallen, dass wenn ich das I2C-Display anspreche,
> andere Funktionen gestört sind.
> Das betrifft u.A. den Sinusgererator (für den 25Hz Pilotton).
>
> Ich musste das für die Unterspannungsanzeige mit einer
> if-else-millis()-Orgie lösen, die das Display wirklich nur
> einmal anspricht wenn die Unterspannung da ist oder eben nicht.
> Das stört nicht weiter, da die Anzeige Unterspannung nur im
> Fehlerfall auftritt und für eine Periode den Pilotton verbeult.
>
> Wenn ich mir den Audiopegel als Zahlenwert darstellen
> lassen will, bekomme ich aber ein Problem, weil dieser Wert
> sich ja häufig ändert. wie löst man das?

das war dein Problem

wenn du den sinus weglässt ...
existiert das problem mit dem holpernden pilotton nicht

du hast es umgangen/reduziert weil du die anzeige selten änderst

da du aber jetzt die anzeige öfters nutzen möchtest , kommt deine 
tonausgabe durcheinander


richtg?

von oldeurope O. (Gast)


Lesenswert?

Und hast Du auch eine Idee für die Rechenfehler beim Ton,
die in Verbindung mit I2C auftreten?

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> Wenn ich mir den Audiopegel als Zahlenwert darstellen
> lassen will, bekomme ich aber ein Problem, weil dieser Wert
> sich ja häufig ändert. wie löst man das?

man merkt sich den zahlenwert udn aktualisiert das display

so schnell wie möglich:

neuer_wert = holeSpannung();

if( alter_wert != neuer_wert )
{
   alter_wert = neuer_wert;
   updateLCD( neuer_wert );
}

oder ein TimerInterrupt setzt zusätzlich ein Flag alle 500ms

ISR()
{
   if( timer == 500 )
   {
       timer = 0;
       lcd_update = 1;
   }
}



neuer_wert = holeSpannung();

if(( alter_wert != neuer_wert ) && ( lcd_update ) )
{
   alter_wert = neuer_wert;
   updateLCD( neuer_wert );
   lcd_update = 0;
}

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> Und hast Du auch eine Idee für die Rechenfehler beim Ton,
> die in Verbindung mit I2C auftreten?

das ist kein rechenfehler in dem sinne

deine 2 zeilen die deinen sunus machen werden einfach zu spät aufgerufen
die millis funktion gibt einen zeitlich späteren wert zurück

du machst einen Phasensprung

das ist dann hörbar

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> du hast es umgangen/reduziert weil du die anzeige selten änderst

Ja, das ist meine bisherige Lösung.

von bulimie-code (Gast)


Lesenswert?

bulimie-code schrieb:
> Aus der W. schrieb:
>> Und hast Du auch eine Idee für die Rechenfehler beim Ton,
>> die in Verbindung mit I2C auftreten?
>
> das ist kein rechenfehler in dem sinne
>
> deine 2 zeilen die deinen sunus machen werden einfach zu spät aufgerufen
> die millis funktion gibt einen zeitlich späteren wert zurück
>
> du machst einen Phasensprung
>
> das ist dann hörbar

zu spät deswegen weil dein code in der loop() funktion eben noch viele 
andere sachen macht

egal was du an funktionen dazubaust ...
es wird immer die loop() verlangsamen
und damit auch immer irgendwann ein zeitliches Problem mit der sin() 
verursachen

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> Aus der W. schrieb:
>> Und hast Du auch eine Idee für die Rechenfehler beim Ton,
>> die in Verbindung mit I2C auftreten?
>
> das ist kein rechenfehler in dem sinne
>
> deine 2 zeilen die deinen sunus machen werden einfach zu spät aufgerufen
> die millis funktion gibt einen zeitlich späteren wert zurück
>
> du machst einen Phasensprung
>
> das ist dann hörbar

Jetzt bist Du schon wieder beim Sinus. Es ist zum Mäusemelken.
Das Thema Sinus sollte man in diesem Forum tunlichst vermeiden.

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> es wird immer die loop() verlangsamen

Die loop ist schnell genug. Nur der I2C hält sie zeitweilig an.

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> Jetzt bist Du schon wieder beim Sinus. Es ist zum Mäusemelken.
> Das Thema Sinus sollte man in diesem Forum tunlichst vermeiden.

was ist dann dein Problem

Aus der W. schrieb:
>> es wird immer die loop() verlangsamen
>
> Die loop ist schnell genug. Nur der I2C hält sie zeitweilig an.

mit I²C .. NEIN
der loop läuft für DEINE kritischste Komponente zu langsam

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> Die loop ist schnell genug. Nur der I2C hält sie zeitweilig an.

das lässt sich nicht vermeiden

I²C ist hardware .. dein gerät schickt bits raus und dein LCD empfängt 
sie
diesen langen bitstrom muss der µC erstm loswerden

das dauert auch bei 400Khz zu lange
das lässt sich nicht groß vermeiden


wenn du aber eine lösung möchtest:


anstelle des kompletten strings am stück zu senden kannst du byte für 
byte im loop senden


also anstatt

lcd.print("                ");


musst du einen buffer nehmen und
den string  byteweise im loop senden


if( *str )
{
  lcd.print( str )
  str++;
}


damit wird immer nur ein zeichen gesendet

Problem:

dein jetziges

lcd.print("                ");
lcd.print("                ");
lcd.print("                ");
lcd.print("                ");


funktioniert damit nicht mehr

denn du müsstest warten bis der buffer wieder leer ist

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> Aus der W. schrieb:
>> Die loop ist schnell genug. Nur der I2C hält sie zeitweilig an.
>
> das lässt sich nicht vermeiden

Das ist doch mal ne klare Ansage. Danke.

bulimie-code schrieb:
> also anstatt
>
> lcd.print("                ");

Ich bin schon froh, dass ich lcd.print halbwegs hinbekomme.

Also lass ich den Sketch, bis auf weiteres, in dieser Form.

LG
old.

von bulimie-code (Gast)


Lesenswert?

ich weiß nicht warum du dich dagegen sträubst das ganze per ISR  zu 
machen

denn DAS würde genau deine Probleme lösen

so macht man das in der µC welt


man sortiert kritische und unkritische


eine endlosschleife läuft nunmal nicht 100% konstant

hier rein sollte eine statemaschine die aufgaben erledigt die
1: unterbrochen werden können
2: zeitlich nicht konstant sind
3: ...

dinge die zyklich sich wiederholen und eine hohe genauigkeit 
vorraussetzen um überhaupt zu funktionieren
sollte man so auslegen das sie genau das tun
-> ISR


auf einem Cortex würde ich das thema pilotton mit einem timer 
getriggertem PWM per DMA machen
das sind ein paar  zeilen code die ohne jegliche intervention 
funktionieren

ich kann den loop() damit zu 100% plockieren und es würde trotzdem 
funktionieren



das gleiche würde hier passieren wenn du eine Timer ISR nutzen würdest.
im loop kannst du dann sogar

while(1){}

einabuen um den loop() komplett zu blockieren
der ton würde dennoch bei 25Hz stabil laufen


aber irgendwie verstehst du das nicht

ja der Ton funktioniert bei dir und du glaubst es ist nicht das Problem 
..

den I²C auf 1 takt zu beschleunigen ist aber nicht möglich



wenn du jetzt zB ethernet nutzen würdest ...
da wäre das ganze noch schlimmer da niemand weiß wie lange das auf der 
anderen seite wirklich dauert

Was tust du dann ?
machst es nicht weil es doof ist



wenn man aber schon keine wirkliche ahnung von Programmieren hat
dann sollte man sich ggf auch mal was sagen lassen

von oldeurope O. (Gast)


Lesenswert?

Da war doch noch was:

hfhd schrieb:
> das "timeOutDelay" kann man auf 0 setzen ...
> aber das wird dann für die geräte witzig

Es wird nur das I2C Display an den Bus geklemmt.
Kein weiteres Gerät.

In welchem Ordner in welcher Datei müsste ich "auf 0 setzen"?

LG
old.

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> bulimie-code schrieb:
>> Aus der W. schrieb:
>>> Die loop ist schnell genug. Nur der I2C hält sie zeitweilig an.
>>
>> das lässt sich nicht vermeiden
>
> Das ist doch mal ne klare Ansage. Danke.
>
> bulimie-code schrieb:
>> also anstatt
>>
>> lcd.print("                ");
>
> Ich bin schon froh, dass ich lcd.print halbwegs hinbekomme.
>
> Also lass ich den Sketch, bis auf weiteres, in dieser Form.
>
> LG
> old.


wenn du auch dazulernen würdest , würde man dir den code sicherlich auch 
schreiben

aber dein verharren auf deiner meinung ...
ist echt für den helfenden .. schlimm
auch wenn du jetzt wieder anderer meinung bist



... Verwirren sie mich nicht mit Tatsachen , meine Meinung steht fest !

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> Da war doch noch was:
>
> hfhd schrieb:
>> das "timeOutDelay" kann man auf 0 setzen ...
>> aber das wird dann für die geräte witzig
>
> Es wird nur das I2C Display an den Bus geklemmt.
> Kein weiteres Gerät.
>
> In welchem Ordner in welcher Datei müsste ich "auf 0 setzen"?
>
> LG
> old.

gibt eine funktion dafür ...


wenn das delay zu kurz ist , wird das LCD mist anzeigen
auch das LCd brauch zeit um zeichen in den interen RAM zu packen und das 
zeichen zu schreiben

von oldeurope O. (Gast)


Lesenswert?

Zum x.Mal in beliebiger Form:

bulimie-code schrieb:
> auf einem Cortex würde ich das thema pilotton mit einem timer
> getriggertem PWM per DMA machen

Selbst wenn ich den Pilotton so
https://1.bp.blogspot.com/-xMMz85Rmvs0/XOhsTkMcXeI/AAAAAAAABsE/IU-DAXyRiOc0Ym5MfnKqPFqvfJ0pRQyCQCEwYBhgL/s1600/25Hz_Pilot_Gen_HC4060_410p_Resonator_schema_20190524.png
löse, bringt mich das nicht weiter. Die Audioberechnung ist auch
betroffen.

LG
old.

von bulimie-code (Gast)


Lesenswert?

const uint8_t sintab[] = {
0,20,39,58,75,90,103,113,121,125,
127,125,121,113,103,90,75,58,39,20,
0,-20,-39,-58,-75,-90,-103,-113,-121,
-125,-127,-125,-121,-113,-103,-90,-75,-58,
-39,-20 };


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

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

  sei(); //Enable interrupt
}


ISR(TIMER0_COMPA_vect){    //This is the interrupt request
  static uint8_t step25;
   if (step25 >= 40)
     step25 = 0;
 //  OCR0A = 128 + sintab[step25];
   analogWrite(5, 128 + sintab[step25]);
   step25++;
}


pseudocode ...
müsste man schauen ob der pin passt
kenne das gerade nicht

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> wenn du auch dazulernen würdest

das lerne ich nicht dazu. Genau so wie die vielen
Radiosammler die es nie lernen können mit einem
Oszilloskop umzugehen und trotzdem irgendwie
reparieren können.

bulimie-code schrieb:
> würde man dir den code sicherlich auch
> schreiben

An diesem Code könnte ich dann mangels Wissen auch nichts
mehr ändern, ohne den Code kaputt zu machen.
Also lasse ich das so.

LG
old.

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> Die Audioberechnung ist auch
> betroffen.


dann musst du genauer beschreiben was dein Problem ist


bisher war I²C dein problem weil du nicht wusstest wie man öfter das LCD 
aktualisiert und damit nicht den ton kaputt macht

und dein bisheriges LCD schreiben verbeult den ton

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> An diesem Code könnte ich dann mangels Wissen auch nichts
> mehr ändern, ohne den Code kaputt zu machen.
> Also lasse ich das so.

dann hättest du das im eingang schon sagen sollen das du keine ahnung 
vom Programmieren hast

vieleicht hätte das jemand gemacht

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> pseudocode ...
> müsste man schauen ob der pin passt
> kenne das gerade nicht

Das sieht für mich umsetzbar aus. Danke.
Werde das später am Tag mal testen.

LG
old.

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> sagen sollen das du keine ahnung
> vom Programmieren hast

Sieht man das nicht am Sketch?

von bulimie-code (Gast)


Lesenswert?

Aus der W. schrieb:
> Sieht man das nicht am Sketch?

nicht direkt

gibt genug leute die sonwas fabrizieren
oder schlimmeres fabrizieren und zu faul zum aufräumen sind

ich mache auch gern mal was quick&dirty

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Die loop ist schnell genug. Nur der I2C hält sie zeitweilig an.

Na und? Das ist so üblich und stört auch keinen weil man alle 
zeitkritischen Sachen in Interrupts abhandelt. Dafür sind die nämlich 
da.

Die loop ist ausdrücklich nur für niedrigst-priorisierte Abläufe die 
keinerlei Anspruch auf irgendwelche festen Zeiten haben und die auch 
gerne kurz mal blockieren dürfen weil das in der loop keinen stört, denn 
da ist ja per Definition nichts zeitkritisches drin was sich gestört 
fühlen könnte.

von bulimie-code (Gast)


Lesenswert?

Bernd K. schrieb:
> Aus der W. schrieb:
>> Die loop ist schnell genug. Nur der I2C hält sie zeitweilig an.
>
> Na und? Das ist so üblich und stört auch keinen weil man alle
> zeitkritischen Sachen in Interrupts abhandelt. Dafür sind die nämlich
> da.
>
> Die loop ist ausdrücklich nur für niedrigst-priorisierte Abläufe die
> keinerlei Anspruch auf irgendwelche festen Zeiten haben und die auch
> gerne kurz mal blockieren dürfen weil das in der loop keinen stört, denn
> da ist ja per Definition nichts zeitkritisches drin was sich gestört
> fühlen könnte.

ich möchte nichtmal was sagen wenn man keine ahnung von µCs hat

was aber mörder nervt ist die art weiter oben ...

ich weiß auch nicht alles.. weiß mich aber zu behelfen
und wenn ich auch damit nicht weiter komme ,
frag ich gerne hier nach und versuche das weitestgehend zu beschreiben
und ich kann nur dazulernen !!
man muss dann aber auch von anfang an sagen was sache ist


- hab keinen plan vom µC
- code ist zusammenkopiert und tut a,b und c
- funktion d ,e und f gehen aber nicht weil

dann weiß jeder was sache ist und was man dir zumuten kann

hier kommen oft genug trolle,
oder selbsternannte spezies die meinen die weißheit mit der schippe 
gefressen zu haben
oder kiddies die ihre hausaufgaben gemacht haben wollen


deswegen helfen tun alle ...
aber eher auf diese weise das sie dir sagen
was das Problem ist und dich mit der nase drauf schubsen

zu 100% fertigen code rausgeben mach ich auch ungern

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Die Audioberechnung ist auch
> betroffen.

Wie wirkt sich das aus?

von Einer K. (Gast)


Lesenswert?

bulimie-code schrieb:
> Aus der W. schrieb:
>> Sieht man das nicht am Sketch?
>
> nicht direkt

Manchmal ist es schon nicht ganz so einfach, für Fachfremde, Kompetenz 
und Arroganz zu unterscheiden.

Oben erwähnte ich schon mal die 4 Kompetenzstufen:
https://de.wikipedia.org/wiki/Kompetenzstufenentwicklung

Meine Einschätzung:
Unser TO steht in Sachen µC auf Stufe 1
Zeigt hier im Thread keinerlei Bereitschaft sich wenigstens auf Stufe 2 
zu begeben.
Viele hier im Forum, bewegen sich auf Stufe 3 und 4.

Meiner Erfahrung nach, ist eine fachliche, konstruktive und erfolgreiche 
Kommunikation, nur zwischen Leuten auf benachbarten oder gleichen Stufen 
möglich.
Liegt eine Stufe dazwischen, endet es sehr häufig im gegenseitigen 
Frust.

Ich denke mal, dass dieser Thread diese Einschätzungen voll und ganz 
bestätigt.

von yesitsme (Gast)


Lesenswert?

Aus der W. schrieb:
> Ihr habt Euch durch den Sinus völlig verrannt.

Kannst du mal dein reduziertes Beispiel bringen, um das Problem zu 
zeigen?

Vielleicht reden wir dann nicht mehr aneinander vorbei.

von oldeurope O. (Gast)


Lesenswert?

bulimie-code schrieb:
> - code ist zusammenkopiert und tut a,b und c

sogar mit Quellenangaben im Sketch.

von Zeno (Gast)


Lesenswert?

Aus der W. schrieb:
> bulimie-code schrieb:
>> es wird immer die loop() verlangsamen
>
> Die loop ist schnell genug. Nur der I2C hält sie zeitweilig an.

Der I2C hält gar nichts an. Der Controller braucht halt nur Zeit zur 
Abarbeitung der (sequentiellen) Befehle. Dein Sinus hält in diesem Sinne 
den Controller ebenso an, nämlich solange wie er braucht den Sinus zu 
berechnen, Du merkst es bloß nicht.
Da Du aber völlig beratungsresistent bist läßt Du Dir nichts sagen. Auf 
so etwas wie einem µC wird die Sinusfunktion üblicherweise über 
Lookuptable gemacht, weil die am wenigsten Rechenzeit verbraucht. Dazu 
kommt die Sinusberechnung in eine ISR, weil sie dann immer Priorität vor 
allem anderen hat weil dann der Interrupt bestimmt wann gerechnet wird. 
Den interessiert es nämlich einen Scheißdreck ob der Prozessor gerade 
was anderes macht oder nicht, weil er das tut wonach er seinen Namen 
bekommen hat.
Ich tue mich auch mit Interrupts schwer, weil es eben nicht so 
"geradlinig" läuft wie man es normalerweise gewohnt ist zu denken. 
Letztendlich läuft es aber mit Interupts meist besser.
Man könnte sicher auch Deinen Semir-Sinus in einer ISR unterbringen, 
dann würde der nämmlich immer zu bestimmen Zeitpunkten ausgeführt. Ob 
das wirklich geht kann ich in dem speziellen Fall nicht sagen, aber hier 
sind genug Leute unterwegs die da erfahren genug sind und das können. Du 
mußt halt nur bereit sein Dir etwas sagen zu lassen, ansonsten ist eben 
jegliche Hilfestellung völlig sinnlos.

von oldeurope O. (Gast)


Lesenswert?

Hugo H. schrieb:
> Aus der W. schrieb:
>> Die Audioberechnung ist auch
>> betroffen.
>
> Wie wirkt sich das aus?

Ich hatte ursprünglich das Display permanent,
also bei jedem Loopdurchgang, angesprochen.

Dann ist der Pilotton so verbeult, dass der Empfänger
nur sporadisch auf Stereo schaltet.

Zu Deiner Frage:
Wenn ich mit dem Tongenerator L+R auf die Audioeingänge
gebe, die ALC deaktiviere  und eben die Clipgrenze überschreite,
muss die rote led permanent leuchten. Tut sie dann nicht.
Bei nur Links oder nur Rechts muss die Clip LED beim gleichen
Pegel ansprechen. Tut sie dann auch nicht.
Durch das Ansprechen des Displays nur wenn es notwendig ist,
habe ich dieses Problem gelöst. Im "Fehlerfall" wird der
PWM-Wert glücklicherweise gehalten. Das gilt auch für den
frequenzabhängigen Steuerwert für die Intergatoren.

LG
old.

von F. F. (foldi)


Lesenswert?

Arduino Fanboy D. schrieb:
> Meine Einschätzung:
> Unser TO steht in Sachen µC auf Stufe 1
> Zeigt hier im Thread keinerlei Bereitschaft sich wenigstens auf Stufe 2
> zu begeben.
> Viele hier im Forum, bewegen sich auf Stufe 3 und 4.

Habe auch schon länger nichts mehr richtig gemacht. Programmiert schon 
gar nicht. Die Gründe sind um eine weitere Krebserkrankung angewachsen.
Egal, die meisten hier wissen eh was alles passiert ist.

Jedenfalls hast du da völlig recht, mit einem Unterschied. Die meisten 
wollen eine Stufe aufsteigen. Der TO will das offenbar nicht. Er 
wischt alles weg und meint es "muss" doch auch so gehen, wie er sich das 
vorstellt.

Was er nicht kapieren will, ab einen gewissen Punkt muss man einfach 
bereit sein mehr Wissen anzuhäufen. Das ist keine Arroganz der "guten" 
Leute hier, wenn sie das (auf welche Weise auch immer) fordern.

Vor der Herz OP an einem Säugling reicht es nicht nur ein paar Semester 
Medizin studiert zu haben.
Selbst wenn der Thread noch 10 Seiten länger wird, es sind nicht die, 
die dem TO die Ratschläge geben, es liegt am TO, dass es trotzdem nicht 
klappen wird.

In diesem Beitrag bin ich ja etwas über den ADC "gestolpert". Statt hier 
zu lamentieren, habe ich mich in den letzten Tagen da wieder etwas 
eingelesen.
Das ist der übliche Weg, wenn man sich mit µC beschäftigen will.

von Zeno (Gast)


Lesenswert?

Aus der W. schrieb:
> An diesem Code könnte ich dann mangels Wissen auch nichts
> mehr ändern, ohne den Code kaputt zu machen.
> Also lasse ich das so.

Du bist ein völlig hoffnungsloser Fall, weil Du nicht lernen willst - 
das ist der Punkt.
Ich schrieb ja schon das ich mich mit ISR auch schwer tue, aber den Code 
von bulimie-code habe ich schon verstanden. ES gibt nur eine einzige 
Stelle wo ich nicht ganz verstehe warum er das so macht. Das tut hier 
aber nicht zur Sache. Er würde es aber ganz bestimmt erklären, wenn man 
ihn danach fragt.

von oldeurope O. (Gast)


Lesenswert?

F. F. schrieb:
> Habe auch schon länger nichts mehr richtig gemacht.

Hast du denn inzwischen mitbekommen, dass der Widerstand,
den dir ufuf genannt hat, den Spannungsteiler nicht belastet?

_______________________________________________________________

Ich teile Menschen nicht in Stufen und helfe jedem.


LG
old.

von F. F. (foldi)


Lesenswert?

Habe im Anfang schon oft hier richtig was zu hören bekommen. Dann habe 
ich mich aber hingesetzt und die Probleme in kleinere Einheiten zerlegt 
und mich Stück für Stück da dran begeben.
Im Nachhinein kann ich sagen, dass die meisten noch zärtlich mit mit 
umgegangen sind. :-)

von F. F. (foldi)


Lesenswert?

Aus der W. schrieb:
> Hast du denn inzwischen mitbekommen, dass der Widerstand,
> den dir ufuf genannt hat, den Spannungsteiler nicht belastet?

Ich sage doch, ich habe in den letzten Tagen gelesen.
Die AN, die besonders interessant ist, habe ich auch genannt.
Leider geht das nicht beim Tiny10.

Der ADC (laut Microchip) belastet die Quelle nicht, bzw. kaum. Dein 
Teiler war also in Ordnung.

: Bearbeitet durch User
von Einer K. (Gast)


Angehängte Dateien:

Lesenswert?

Zeno schrieb:
> Ob
> das wirklich geht kann ich in dem speziellen Fall nicht sagen, aber hier
> sind genug Leute unterwegs die da erfahren genug sind und das können.

Natürlich geht das!
Bleibt dann aber weiterhin eine fürchterliche Rechenzeit Verplemperung
Und der Sprung beim micros() Überlauf steckt da dann auch noch drin.

Als Basis habe ich das Arduino Blink Beispiel verwendet. Alleine nur, 
damit man sieht, dass sich in loop() noch was tut.
Und damit gleichzeitig die I2C Blockade durch lang laufende delay() 
ersetzt.

Im Log sieht man, dass noch einige Zeit für weitere Nebenläufigkeiten 
übrig bleibt. Immerhin sitzen noch über 60 Tausend yield() Aufrufe pro 
Sekunde drin.
Es bleibt also genug Luft um da ein par I2C Display Ausgaben rein zu 
stricken.

Folgende Nebenläufigkeiten spielen sich dann ab:
1. Es blinkt mit einer LED
2. UART im Hintergrund (per ISR)
3. Timer0 Abhandlung für millis() delay() und deren Brüder (per ISR)
4. Reichlich yield() Aufrufe während der delay() Zeiten
5. Die 25Hz Ausgabe (per ISR)


Gezeigt habe ich das bisher nicht, weil mir der Sinus zu hässlich ist.
Was an den wenigen Stützpunkten und der arg niedrigen PWM Frequenz 
liegt.
Da gibt es die schon benannten besseren Möglichkeiten.

Und weil der TO keinerlei Einsicht zeigt.

Nachtrag:
Die INTERVAL.h ist einfach nur eine Abstraktion des BlinkWithoutDelay 
Prinzips. Tut also wenig zur Sache.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Sprung beim micros() Überlauf

Nimm halt millis()

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Arduino Fanboy D. schrieb:
>> Sprung beim micros() Überlauf
>
> Nimm halt millis()

Bornierter ********* !

Nachtrag:
> und der arg niedrigen PWM Frequenz liegt.
Sorry, die ist schon hoch gesetzt.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Bornierter ********* !

Bei mir ist das auch zackenfrei, wegen des Sallen-Key
unten links im Schaltbild.
https://www.mikrocontroller.net/attachment/431962/darius-cquam-schema-frequenzverdoppler.png

Beitrag "Darius CQUAM Schaltungsteil Frequenzvedoppler"

Deshalb ist die 1KHz PWM auch mehr als gut geeignet,
das hattest du ja auch nicht verstanden und mit einer
blöden Bemerkung quittiert.

von Zeno (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> 5. Die 25Hz Ausgabe (per ISR)

Könnte man da nicht das mikros() weglassen ?

Das könnte man doch auch so schreiben:
1
volatile int i = 0;
2
3
ISR(TIMER0_COMPA_vect)
4
{
5
  i++
6
  if (i >= Wert)
7
  {
8
     i = 0; 
9
  }
10
  OCR2B = 128 + 100 * sin(i * 0.000157);
11
}
12
ISR_ALIAS(TIMER0_COMPB_vect,TIMER0_COMPA_vect);

Die Variable Wert wird mit der Anzahl der Stützstellen-1 belegt und die 
Zeit zwischen zwei Interrupts wird so gewählt, das sie dem zeitlichen 
Abstand der Stützstellen entspricht. Vermutlich müßte dann auch noch der 
Multiplikator (0.000157), der ja nichts anderes als ein Winkelincrement 
darstellt, anpaßt werden. Wie groß das Winkelincrement sein muß ergibt 
sich aus der Anzahl der Stützstellen, der gewünschten Frequenz und dem 
Zeitintervall des Timerinterrupts.
Ob das jetzt elegant ist sei mal dahin gestellt, aber so wäre man auch 
noch die micros() los - wenn's so geht wie mir das gedacht habe.
Eine Lookup wäre aber sehr wahrscheinlich effizienter.

von Roland F. (rhf)


Lesenswert?

Hallo,
Arduino Fanboy D. schrieb:
> Bornierter ********* !

Was soll das?
Akzeptiere einfach das 'Aus der W.' schlicht und einfach keine Lust hat 
sich näher mit der Programmierung von Microcontrollern zu beschäftigen 
und ihm Begriffe wie "Interrupt" und "Nebenläufigkeit" offensichtlich 
nicht zugängig sind.

Und an 'Aus der W.':
'Arduino Fanboy D.' hat dir mit Pilot25Hz.ino ein Gerüst für dein ganzes 
Projekt geliefert, das du nur noch entsprechend ergänzen musst um 
dein(e) Problem zu lösen (und da selbst ich sofort verstanden habe wie 
der "Sketch" funktioniert, kann es nicht besonders schwer sein).

rhf

von Einer K. (Gast)


Lesenswert?

Roland F. schrieb:
> Hallo,
> Arduino Fanboy D. schrieb:
>> Bornierter ********* !
>
> Was soll das?
> Akzeptiere einfach das 'Aus der W.' schlicht und einfach keine Lust hat
> sich näher mit der Programmierung von Microcontrollern zu beschäftigen
> und ihm Begriffe wie "Interrupt" und "Nebenläufigkeit" offensichtlich
> nicht zugängig sind.

Meister!

Der TO selber hat weiter oben schon festgestellt, dass ein Wechsel von 
micros() auf millis() wirkungslos ist.
Das hätte eine "Einsicht" sein können.

Also ist sein Vorschlag:
Aus der W. schrieb:
> Nimm halt millis()
Völlig Sinnfrei.
Gegen seine eigene Feststellung.

Und hier bei der Pilot25Hz.ino sogar derbe kontraproduktiv, da millis() 
sich nur alle 1ms ändert, im Programm aber alle 0,5ms eine neue 
Stützstelle berechnet wird.

Borniert:
eigensinnig
unbelehrbar
unnachgiebig
philiströs
engstirnig
kleingeistig
starrsinnig
verstockt
kleinkariert
verbohrt
vernagelt

So dermaßen vernagelt, dass sogar die selbst gemachten Feststellungen 
abperlen und so nicht zur einer Einsicht werden können.

von oldeurope O. (Gast)


Lesenswert?

Roland F. schrieb:
> 'Arduino Fanboy D.' hat dir mit Pilot25Hz.ino ein Gerüst für dein ganzes
> Projekt geliefert

[Ironie] Ja klar. Ohne ihn würde der Modulator gar nicht laufen. 
[/Ironie]
rotfl
Seine Nebelkerzen, Blendgranaten und Beleidigungen jucken mich nicht.

Der einzige der bisher was beigetragen hat war stefanus,
man kann jetzt bei dunklem Display nicht mehr die Frequenz
verdrehen.

Beitrag "Re: I2C "blockiert" Arduino"

Probiere ich noch aus. Bin gerade dabei den MAX941 als
Komparator im Frequenz-Verdoppler zu probieren. Kann etwas dauern.

LG
old.

von Roland F. (rhf)


Lesenswert?

Hallo,
Arduino Fanboy D. schrieb:
> Meister!

Und was soll das jetzt? Eine solch herablassende Art unterscheidet sich 
nicht wesentlich von der Arroganz des TO.

rhf

von Zeno (Gast)


Lesenswert?

Aus der W. schrieb:
> Der einzige der bisher was beigetragen hat war stefanus,
> man kann jetzt bei dunklem Display nicht mehr die Frequenz
> verdrehen.

Auch wenn ich kein Freund von "Fanboys" (:-)) bin, so muß man dem 
Arduinofanboy schon zugestehen das er Dein Problem im wesentlichen 
gelöst, und zwar auf eine Art und Weise, wie es hier wahrscheinlich 
jeder versteht (s. hier 
Beitrag "Re: I2C "blockiert" Arduino"). Auch 
bulimie-code hat einen verständlichen Lösungsweg aufgezeigt. Insofern 
haben beide einen Beitrag zur Lösung des Problems gezeigt.
Der einzige hier der es nicht verstehen will oder kann bist Du hier - 
warum auch immer. Wenn einer so vernagelt ist wie Du, dann sind alle 
Versuche ihm zu helfen völlig sinnlos, weil sie ins Leere laufen, und 
somit eigentlich verschwendete Lebenszeit.

von oldeurope O. (Gast)


Lesenswert?

Zeno schrieb:
> Auch wenn ich kein Freund

Lach, dein "Freund" hat den Post mit den meisten Beleidigungen
verfasst. Das war es auch.

Roland F. schrieb:
> Arroganz des TO.

Habe mir nochmal den Anfang des Threads durchgelesen.
Woran machst Du das fest? Und lasst die if-Orgie wirklich
auf einen Softwarekönner schließen?

Übrigens hatte ich früher mal hier nach Monoflops gefragt.
Da hatte ich auch diesen ufuf am Hals. Hilfe = Null, dafür
sehr viel Selbstdarstellung.

LG
old.

von Carl D. (jcw2)


Lesenswert?

Wenn ich mir nicht wäre, daß Donald nix von Röhren versteht ...

von Lötlackl *. (pappnase) Benutzerseite


Lesenswert?

Carl D. schrieb:
> Wenn ich mir nicht wäre, daß Donald nix von Röhren versteht ...

Äh, wie meinen?

von Carl D. (jcw2)


Lesenswert?

Wenn ich mir nicht sicher wäre, daß Donald nix von Röhren versteht ...


Nun besser?

von oldeurope O. (Gast)


Lesenswert?

Wird dir genau so wenig gelingen wie Äxl.

von Zeno (Gast)


Lesenswert?

Aus der W. schrieb:
> Zeno schrieb:
>> Auch wenn ich kein Freund
>
> Lach, dein "Freund" hat den Post mit den meisten Beleidigungen
> verfasst. Das war es auch.

Wo habe ich geschrieben das es mein Freund ist? Aus dem Zusmmenhang 
heraus gerissen sinnentstellend zitieren kannst Du im Gegensatz zu µC 
Programmierung hervorragend. Aber gut irgendewas mußt Du ja auch gut 
können. Mag sein das der Fanboy die meisten Beleidigungen verfasst hat, 
ich hab's nicht nachgezählt - ist mir auch so ziemlich Rille, aber am 
Ende hat er letztendlich abgeliefert. Aber Du hast es eben wieder nicht 
begriffen, oder besser willst es nicht begreifen.

von Roland F. (rhf)


Lesenswert?

Hallo,
Aus der W. schrieb:
> Woran machst Du das fest?

Daran, das du alle, die dir habe Hilfe zukommen lassen, herab würdigst, 
wenn ihre Hilfe nicht in deine Denkmuster passen.

rhf

von oldeurope O. (Gast)


Lesenswert?

Roland F. schrieb:
> Daran, das du alle, die dir habe Hilfe zukommen lassen,
> herab würdigst,...

Wie kommst Du drauf? Verlinke mal bitte zu dem ersten solchen
Beitrag.

LG
old.

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Roland F. schrieb:
>> Daran, das du alle, die dir habe Hilfe zukommen lassen,
>> herab würdigst,...
>
> Wie kommst Du drauf? Verlinke mal bitte zu dem ersten solchen
> Beitrag.
>
> LG
> old.

Der erste Beitrag der den korrekten Weg zur Lösung nennt ist bereits die 
dritte Antwort auf Seite 1.

Im weiteren Verlauf wurde das von vielen Leuten weiter vertieft und 
erklärt, inklusive weiterer Optimierungen und sogar vollständig 
auskodierten Lösungen.

: Bearbeitet durch User
von Bulimie-code (Gast)


Lesenswert?

Oh man

Also mein Beispiel war eine Fortführung von Peters Code
Mit 40 Stützstellen und lookuptable.
Den Timer ist hab ich ausm Netz gesucht.

Das war 1min googlen...

Der Code von fanboy ist Mal geil...

Der TO könnte ja das nehmen und seinen Teil noch einbauen
Damit wäre er das pilotton Problem erstmal los.

Das seine LEDs nicht korrekt an/ausgehen liegt am Verständnisproblem der 
Loop
Bzw endlosloop bei uC's

Das kann man aber lösen.

Man muss nur wissen was er will..

Wenn noch viel mehr Funktionen rein sollen...
LCD Menü oder so ... Wird das noch witzig :-/

von oldeurope O. (Gast)


Lesenswert?

Bernd K. schrieb:
> Der ...

Und wo findet man da
Beitrag "Re: I2C "blockiert" Arduino"
die Herabwürdigung?

von Joachim B. (jar)


Lesenswert?

Aus der W. schrieb:
> Nur der I2C hält sie zeitweilig an.

ich lese meine I2C in der ISR, der Zugriff in meiner ISR wird durch den 
I2C Zugriff um irgendwas von 1-1,5µs verlängert wenn stört das wenn 
nicht alle µs ein AD Sample rausgeschickt werden muss?

bei 25 Hz (0,04s) sehe ich sogar kann ich alle 1ms 40 SinusStützstellen 
zum ADC rausjagen, alle 100µs sogar 400 Stützstellen und habe nach jeder 
Stützstelle mindestens 90µs Zeit einen oder mehr I2C Werte 
rauszuschicken.

Aber was schreibe ich hier, für wen?

von spess53 (Gast)


Lesenswert?

HI

>Aber was schreibe ich hier, für wen?

Warum weckst du schlafende Hunde? Es war so schön ruhig hier.

MfG Spess

von Äxl (Gast)


Lesenswert?

//dev/nul

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

bulimie-code schrieb:
> pseudocode ...

Kompilieren tut das, aber ich bekomme das
leider nicht ans Laufen damit.
Zeilen 62-->67, 176-->183 und 206-->212
Teile Falsch eingebaut? Keine Ahnung.
Nicht funktionierender Sketch anbei.

LG
old.

von Forist (Gast)


Lesenswert?

Auch wenn der Titel mittlerweile so gut wie gar nichts mehr mit dem 
Inhalt des Fadens zu tun hat, wäre es doch schön die 500 Postings hier 
im Thread voll zu bekommen.

Also nur nicht verzagen - immer munter weiter so ...

von Frank L. (Firma: Flk Consulting UG) (flk)


Angehängte Dateien:

Lesenswert?

Hallo Zusammen,
ich habe den Code mal neu formatiert damit man ihn besser lesen kann.

@Darius
Das erste was auffällt, ist Deine sintab, die Declaration ist uint8_t, 
bedeutet unsigned Byte, also keine negativen Werte.

Beim Rest muss ich mich erstmal einlesen und begreifen.

Gruß
Frank

von Einer K. (Gast)


Lesenswert?

Frank L. schrieb:
> Hallo Zusammen,
> ich habe den Code mal neu formatiert damit man ihn besser lesen kann.

Ein lesbar formatierter Quelltext wird explizit vom TO abgelehnt.

von Frank L. (Firma: Flk Consulting UG) (flk)


Lesenswert?

Hallo,

uint8_t soll naturlich unsigned char heißen :-(

@Darius,
ändere das mal in int8_t dann sollte Deine Sinus wieder laufen. Wobei 
ich die Einstellungen für den Timer nicht geprüft habe. Sitze gerade am 
Handy und habe die Daten dazu nicht im Kopf.

Gruß
Frank

von oldeurope O. (Gast)


Lesenswert?

Frank L. schrieb:
> Beim Rest muss ich mich erstmal einlesen und begreifen.

Vielen Dank.
Vielleicht ist es einfacher den "bulimie-Code" zu reparieren,
Beitrag "Re: I2C "blockiert" Arduino"
den kann ich mir dann in den Sketch reinfummeln.

LG
old.

von oldeurope O. (Gast)


Lesenswert?

Frank L. schrieb:
> ändere das mal in int8_t

Mach ich gleich, gehe erstmal Kaffee Trinken.

LG
old.

von Frank L. (Firma: Flk Consulting UG) (flk)


Lesenswert?

Hallo Darius,
auch nicht schlecht - erstmal Kaffee trinken.

Bitte schreib mal genau, was nicht geht.

Sinus nicht da, keine Ausgabe auf dem LCD oder was

@Alle, er macht jetzt was ihr wolltet, er baut seinen Code um, auch wenn 
er noch nicht ganz erfasst, was er tut, ist es ein Anfang. Jetzt liegt 
es an uns, ihm die Hilfe zu geben, die er noch benötigt. Also bitte...

Gruß
Frank

von Wolfgang (Gast)


Lesenswert?

Frank L. schrieb:
> @Darius
> Das erste was auffällt, ist Deine sintab, die Declaration ist uint8_t,
> bedeutet unsigned Byte, also keine negativen Werte.

Glücklicherweise gibt es auch kein PWM-Signal mit negativem 
Tastverhältnis.

Wenn man es richtig macht, kann das also passen ...

von oldeurope O. (Gast)


Lesenswert?

Frank L. schrieb:
> Sinus nicht da, keine Ausgabe auf dem LCD

Korrekt. Der "Bulimie-Code" killt alles.
Wobei ich kann das Display und die LEDs sowie
die Frequenzverstellung nicht aktivieren.

Ich vermute, es gibt ein INT Problem, weil der VFO
das auch nutzt. Aber keine Ahnung.

LG
old.

von Einer K. (Gast)


Lesenswert?

Laut dem Kommentar im "neuem" Code wird Timer0 in den CTC Mode versetzt.
Obwohl doch PWM genutzt werden soll, und der Timer auch für millis() 
usw. benötigt wird.

Ob das dann noch so funktionieren kann, habe ich nicht geprüft.

von Frank L. (Firma: Flk Consulting UG) (flk)


Lesenswert?

Hallo Darius,

dieser Part gehört nur in den Setup Teil, da Du den Timer nur einmal 
initialisieren musst.
1
    TCCR0A = (1 << WGM01); //Set the CTC mode   Pilot
2
    OCR0A = 0xF9; //Value for ORC0A for 1ms
3
4
    TIMSK0 |= (1 << OCIE0A); //Set the interrupt request
5
    TCCR0B |= (1 << CS01); //Set the prescale 1/64 clock
6
    TCCR0B |= (1 << CS00);
7
8
    sei(); //Enable interrupt

also so:
1
    PCICR |= (1 << PCIE2);
2
    PCMSK2 |= (1 << PCINT18) | (1 << PCINT19);
3
    TCCR0A = (1 << WGM01); //Set the CTC mode   Pilot
4
    OCR0A = 0xF9; //Value for ORC0A for 1ms
5
6
    TIMSK0 |= (1 << OCIE0A); //Set the interrupt request
7
    TCCR0B |= (1 << CS01); //Set the prescale 1/64 clock
8
    TCCR0B |= (1 << CS00);
9
10
    sei(); //Enable interrupt

Ob die Initialisierung des Timers korrekt ist und der richtige 
INT-Vektor benutzt wird, müsstest Du im Datenblatt nachlesen.

Gruß
Frank

von Einer K. (Gast)


Lesenswert?

Frank L. schrieb:
> sei(); //Enable interrupt


Ohne vorhergehendes cli() sind die beiden sei() überflüssig, da schon 
von Arduino gesetzt.

von Frank L. (Firma: Flk Consulting UG) (flk)


Lesenswert?

Hallo ufuf,
das weißt Du wahrscheinlich besser als ich, ich arbeite nur sehr selten 
bzw. fast gar nicht mit einem ARDUINO.

Aber ist es grundsätzlich falsch ein sei() hinzuschreiben?

Gruß
Frank

von Äxl (Gast)


Lesenswert?

Frank L. schrieb:
> @Alle, er macht jetzt was ihr wolltet, er baut seinen Code um, auch wenn
> er noch nicht ganz erfasst, was er tut, ist es ein Anfang. Jetzt liegt
> es an uns, ihm die Hilfe zu geben, die er noch benötigt. Also bitte...

Nach dem ganzen Theater hier?
Viel Spaß!
BTW
1
    TCCR0A = (1 << WGM01); //Set the CTC mode   Pilot
2
    OCR0A = 0xF9; //Value for ORC0A for 1ms
3
4
    TIMSK0 |= (1 << OCIE0A); //Set the interrupt request
5
    TCCR0B |= (1 << CS01); //Set the prescale 1/64 clock
6
    TCCR0B |= (1 << CS00);
7
8
    sei(); //Enable interrupt
gehört nach "setup"

Timer 0 wird von "millis()" verwendet, Wollts nur sagen, wegen dem 
explizitem Setzen des Vorteilers auf 64... nicht, dass die millis() 
nicht mehr hinhauen, am Ende

von Äxl (Gast)


Lesenswert?

.. stand ja schon da. hatte die Seite nicht aktualisiert, sry

von Frank L. (Firma: Flk Consulting UG) (flk)


Lesenswert?

Hallo Äxl,

ja das millis macht mir auch gerade Sorgen, ich kenne mich leider mit 
dem ARDUINO nicht so aus, von daher weiß ich nicht, welcher Timer 
stattdesssen verwendet werden könnte.

Gruß
Frank

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Anbei die letzte funktionierende Version im "Registrierkassenformat". 
;-)
Ist geprüft und läuft.
Daran teste ich dann Eure Vorschläge.

LG
old.

von Äxl (Gast)


Lesenswert?

https://ucexperiment.wordpress.com/2012/03/16/examination-of-the-arduino-millis-function/

Wird schon auf 64 gesetzt, kann entfallen, denk' ich.
https://github.com/zkemble/millis/blob/master/arduino/millis/millis.cpp
1
// Initialise library
2
#define REG_OCR      OCR0A
3
void millis_init()
4
{
5
  // Timer settings
6
  SET_TCCRA();
7
  SET_TCCRB();
8
  REG_TIMSK = _BV(BIT_OCIE);
9
  REG_OCR = ((F_CPU / PRESCALER) / 1000);
10
}

Da geht aber noch mehr schief, wenn OCR0A nun mit 0xF9 belegt wird.
16.000.000/64 = 250.000
250.000 /1.000 =250 --> 0xFA
Wie jetzt der Interruptaufruf explizit in die millis() "eingreift", 
teste ich jetzt nicht. Am besten Timer 2 verwenden

von Frank L. (Firma: Flk Consulting UG) (flk)


Lesenswert?

Hallo Darius,

tu uns allen bitte einen Gefallen, Drück bevor Du den Code hochlädst, 
die Tastenkombination CTRL-T dann sollte in der ARDUINO IDE der Code zu 
mindestens einigermaßen lesbar formatiert werden. So ist es wirklich 
eine Zumutung den Code zu lesen.

Gruß
Frank

von Äxl (Gast)


Lesenswert?

Frank L. schrieb:
> ja das millis macht mir auch gerade Sorgen,

Die quellen liegen alle offen, kann man ja reinschauen.

von oldeurope O. (Gast)


Lesenswert?

Frank L. schrieb:
> tu uns allen bitte einen Gefallen, Drück bevor Du den Code hochlädst,
> die Tastenkombination CTRL-T dann sollte in der ARDUINO IDE der Code zu
> mindestens einigermaßen lesbar formatiert werden.

Da passiert nichts ?!? Strg T ?

Ich sehe gerade:
Keine Änderungen für automatische Formatierung nötig.

von Frank L. (Firma: Flk Consulting UG) (flk)


Lesenswert?

Merkwürdig, bei mir funktioniert es und der Code sieht besser aus. Aber 
egal oder arbeitest Du auf einem MAC?

von Einer K. (Gast)


Lesenswert?

Frank L. schrieb:
> Aber ist es grundsätzlich falsch ein sei() hinzuschreiben?

Nein.
Nur hier überflüssig.

Äxl schrieb:
> Wird schon auf 64 gesetzt, kann entfallen, denk' ich.
> https://github.com/zkemble/millis/blob/master/arduino/millis/millis.cpp

Das ist nicht der Arduino original Code
Der findet sich hier:
https://github.com/arduino/ArduinoCore-avr/blob/2f67c916f6ab6193c404eebe22efe901e0f9542d/cores/arduino/wiring.c

von Äxl (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Das ist nicht der Arduino original Code

Stimmt, hast Recht!

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Zeilen 62-->67, 176-->183 und 206-->212 Teile Falsch eingebaut?

Diese Zumutung von verquirltem Quelltext guck ich nicht nicht nochmal 
an.

Ich habe Dir deinen Quelltext ordentlich formatiert und analysiert. 
Jetzt präsentierst du schon wieder die gleiche Scheiße. Das ist eine 
Frechheit, die ganze Mühe war für die Katz!

von Stefan F. (Gast)


Lesenswert?

Frank L. schrieb:
> ich habe den Code mal neu formatiert damit man ihn besser lesen kann.

zu spät

von Wolfgang (Gast)


Lesenswert?

Frank L. schrieb:
> Aber ist es grundsätzlich falsch ein sei() hinzuschreiben?

Es kann natürlich eine Strategie sein, überall im Programm mal ein paar 
sei() einzustreuen. Falsch ist es nicht, aber meist unsinnig.

Innerhalb einer Interruptroutine kann das seine Berechtigung haben. 
Allerdings solltest du dann genau wissen, was du tust.

von oldeurope O. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Ich habe Dir deinen Quelltext ordentlich formatiert und analysiert.

Dann nimm den doch. Ich zupf mir dann die Zeilen und kopiere
die in die neue ino.

Aufm UNO board kann man die vorher testen. RC-Glied, Brücke zum Taster
Oszilloskop, fertig.
Kritik an der Formatierung ist jetzt nicht mehr.

LG
old.

von Äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich zupf mir dann die Zeilen und kopiere
> die in die neue ino.

...und kopierst die Timerinitialisierung in die loop().

Aus der W. schrieb:
> Kritik an der Formatierung ist jetzt nicht mehr.



Frank L. schrieb:
> Jetzt liegt
> es an uns, ihm die Hilfe zu geben, die er noch benötigt. Also bitte...

kapiert es jetzt der "Neuzugang" Frank L. auch, was hier abgeht?

Aus der W. schrieb:
> Aufm UNO board kann man die vorher testen.

#issklar ;) bei mir ist zB ein 32u4 drauf, kein 328.
Am Ende lass' ich mich dann beschimpfen, wenn ein Bit nicht passt? Ganz 
sicher nich...

von bulimie-code (Gast)


Lesenswert?

deswegen schrieb ich pseudocode

ich hab auch kein arduino...
Wenn ich was mache weiß ich vorher welcher timer was tut und wie tickt
weil ICH das bestimme und nicht eine IDE mit irgendwelchen libs

Nuja dann halt Timer2 .. oder 3 ^^

prinzip bleibt gleich.


vieleicht sollte man ihm mal sagen das man funktionen schreiben kann und 
nicht 1000 Zeilen kettencode schreiben muss

von Äxl (Gast)


Lesenswert?

und bei den "if - schleifen" ließen sich auch n paar "Entscheidungen" 
umdrehen bzw. zusammenfassen...

von Bulimie-code (Gast)


Lesenswert?

Das ganze in passende Funktionen wird nur halb so lang..

Das Kreide ich ihm absolut NICHT an

Er hat es nirgends gelernt.
Schöne heile arduino Welt.


Kann ja morgen auf Arbeit schauen.
Die Lehrlinge nutzen das gerne Mal und vlt hat einer Zeit den scetch 
aufzuräumen

von Einer K. (Gast)


Lesenswert?

Bulimie-code schrieb:
> Er hat es nirgends gelernt.
Und will es auch nicht.

Hatte schon mal angeregt, sich die üblichen Stile Guides mal 
anzuschauen.
Interessiert ihn offensichtlich nicht.

Bulimie-code schrieb:
> Schöne heile arduino Welt.
Das kannst/solltest du nicht Arduino ankreiden.

Zudem:
In einem Arduino Forum hätte er sicherlich nicht so lange überlebt.


Ansonsten:
Jeder ist seines Codes Schmied.

von Harry L. (mysth)


Lesenswert?

Bulimie-code schrieb:
> Die Lehrlinge nutzen das gerne Mal und vlt hat einer Zeit den scetch
> aufzuräumen

Als Beispiel dafür, wie man es nicht macht sicher gut geeignet.

Bisher fand ich den Begriff "Gutmensch" immer ganz furchtbar, aber, wenn 
ich sehe, wie hier nach mehr als 400 Beiträgen Ignoranz und 
Unbelehrbarkeit immer noch versucht wird, dem TO Grundlagen beizubringen 
bekommt der Begriff eine vollkommen neue Aussage.

Warum lasst ihr den Trottel nicht am langen Arm verhungern?

Ist doch langsam peinlich!

von Bulimie-code (Gast)


Lesenswert?

Harry L. schrieb:
> Bulimie-code schrieb:
> Die Lehrlinge nutzen das gerne Mal und vlt hat einer Zeit den scetch
> aufzuräumen
>
> Als Beispiel dafür, wie man es nicht macht sicher gut geeignet.
>
> Bisher fand ich den Begriff "Gutmensch" immer ganz furchtbar, aber, wenn
> ich sehe, wie hier nach mehr als 400 Beiträgen Ignoranz und
> Unbelehrbarkeit immer noch versucht wird, dem TO Grundlagen beizubringen
> bekommt der Begriff eine vollkommen neue Aussage.
>
> Warum lasst ihr den Trottel nicht am langen Arm verhungern?
>
> Ist doch langsam peinlich!


Weil es interessant wäre wie man aus so einem ausgewürgtem etwas sogar 
was funktionierendes rauskommen kann. ..
Wenn man  denn will !!

Einfach als Info für den Rest der Welt .. nicht für den TO

von äxl (Gast)


Lesenswert?

Harry L. schrieb:
> Warum lasst ihr den Trottel nicht am langen Arm verhungern?

machen wir doch ;)

von Lötlackl *. (pappnase) Benutzerseite


Lesenswert?

äxl schrieb:
> Harry L. schrieb:
>> Warum lasst ihr den Trottel nicht am langen Arm verhungern?
>
> machen wir doch ;)

Nicht wirklich. Es wurde von einigen Leuten hier im Forum Lösungen auf 
dem Silbertablett serviert (als da wären z.B. Peda, ArduinoBoy, 
Stefanus, um nur einige der hier tätigen fachlich versierten 
Programmierer zu nennen), die werden aber als Vollidioten abgewatscht.
Das ist unter anderem einer der Gründe, weshalb ich nicht im geringsten 
daran denke, einer dermaßen flegelhaften und undankbaren Person auch nur 
ansatzweise zu helfen.

Just my 2 cent.

von oldeurope O. (Gast)


Lesenswert?

Mein Ärger gegenüber Firmen, die Ihre Softwareintwicklung
ins Ausland geben, hat sich vollkommen in Luft aufgelöst.
Danke dafür.

Zumindest hat die Leserschaft von mir einen wirklich guten ALC-Sketch
für Arduino bekommen. Also für die Tonne ist der Fred hier definitiv 
nicht.

LG
old.

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Zumindest hat die Leserschaft von mir einen wirklich guten ALC-Sketch
> für Arduino bekommen.

<Gelächter einfügen>

Du inszenierst hier Szenen einer grotesken satirischen 
Arduino-Maker-Posse, die erste Staffel ist fast fertig, hab ich recht? 
Wann ist die Erstausstrahlung im Fernsehen?

: Bearbeitet durch User
von Peter D. (peda)


Lesenswert?

Aus der W. schrieb:
> Zumindest hat die Leserschaft von mir einen wirklich guten ALC-Sketch
> für Arduino bekommen.

Du machst Dich lächerlich.

Solchen Spaghetticode kann und will keiner nachnutzen.
Noch nie was von modularer Programmierung gehört?

: Bearbeitet durch User
von STK500-Besitzer (Gast)


Lesenswert?

Aus der W. schrieb:
> Zumindest hat die Leserschaft von mir einen wirklich guten ALC-Sketch
> für Arduino bekommen. Also für die Tonne ist der Fred hier definitiv
> nicht.

Warum veröffentlichst du dein Code dann als Frage und nicht in der 
Codesammlung?
Der Fred ist nicht für die Tonne, weil er die Popcorn-Industrie 
ankurbelt.

Aus der W. schrieb:
> Mein Ärger gegenüber Firmen, die Ihre Softwareintwicklung
> ins Ausland geben, hat sich vollkommen in Luft aufgelöst.

Bei solchen "Programmierern" wie dir, kommt man ja gar nicht umhin, die 
Tätigkeit zu willigeren Menschen zu verlagern.

von F. F. (foldi)


Lesenswert?

Aus der W. schrieb:
> Zumindest hat die Leserschaft von mir einen wirklich guten ALC-Sketch
> für Arduino bekommen.

Gleich nach Selbstüberschätzung kommt der Größenwahn.

von yesitsme (Gast)


Lesenswert?

Aus der W. schrieb:
> Zumindest hat die Leserschaft von mir einen wirklich guten ALC-Sketch
> für Arduino bekommen.

Das will ich gerade nicht bewerten, aber ohne dazugehörigen Schaltplan 
ist ein Sketch wertlos.

von äxl (Gast)


Lesenswert?

yesitsme schrieb:
> Das will ich gerade nicht bewerten, aber ohne dazugehörigen Schaltplan
> ist ein Sketch wertlos.

Ach?
Davon rede ich schon seit Anbeginn. Dann hätte man das mal eben schnell 
zusammenpfrimeln können und mittesten (wie so maches mal hier bei 
anderen "Problemchen") Aber die Schaltung inm der Keksdose scheint es ja 
nicht mehr zu sein. Ist ja nun 'alles anders'. Ich beschrieb das mit 
"links" und "rechts" vom DDS und mir wurde "viel Spass beim Blinde-Kuh" 
spielen gewünscht.
Beitrag "Re: I2C "blockiert" Arduino"

von Sven K. (quotschmacher)


Lesenswert?

äxl schrieb:
> Ist ja nun 'alles anders'.

kurz zusammengefasst: du hast keine lust dir das alles allein in den 
drei foren und den vielen beiträgen hier zusammenzusuchen und willst die 
schuld dafür jetzt anderen geben? das geht so aber nicht...

ironie aus

von Herbert (Gast)


Lesenswert?

Wussten Sie schon:

ctrl-t

formatiert den Code in der Arduino IDE automatisch.

von äxl (Gast)


Lesenswert?

Ich spiele jetzt tatsächlich "blinde Kuh", hoffe aber darauf, dass der 
TO auf andere mehr hört, als auf mich und endlich einsieht, dass n 
Schaltplan - also ein aktueller Schaltplan - auch für andere 
unentbehrlich ist, um hier eventuell doch noch helfen zu wollen.

Hier wird wohl die Phasenmodulation gemacht...
https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154018#pid154018
https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154570#pid154570

Das scheint ja jetzt die komplette schaltung zu sein?
https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154168#pid154168

Was ist aus diesem Phasenmodulator geworden?
https://3.bp.blogspot.com/-4xgSlHlL5uE/XNws0KkeTcI/AAAAAAAABrY/Gty4qSO6dL0AmhQi_YMQ4YsNOyoYEWUXgCLcBGAs/s1600/schema_Phasenmodulator_C-QU_20190514_Blog.png

Weshalb ändert sich das L-R mit der Frequenz?
https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154777#pid154777

von oldeurope O. (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich habe nur Schaltungsteile in LTspice. Welchen Schaltungsteil
> möchtest Du denn sehen? Ich kann Dir auch einen Screenshot
> davon hochladen.

Mein Angebot steht nach wie vor.

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Man lernt dabei immer. Beispielsweise wie man die
> ominöse Zahl in Zeile 171 berechnet:
>
> Multiplikator = 2*PI/40  // für millis() und 40ms Periodendauer
>
> Damit hätte ich mich sonnst nie befasst und der Semir hat ein
> Geheimnis draus gemacht.

https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154185#pid154185 
da steht sogar die erkärung - geheimnis wurde also schon vor langer zeit 
gelüftet...

von oldeurope O. (Gast)


Lesenswert?

Sven K. schrieb:
> https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154185#pid154185
> da steht sogar die erkärung - geheimnis wurde also schon vor langer zeit
> gelüftet...

Nö, da steht
>> das ist der Faktor 0.000157. Ein Verändern dieses Faktors erhöht
>> oder erniedrigt die Frequenz. Ich hatte das mal ausgerechnet aber
>> im Moment nicht parat.

Jetzt wisst Ihr wie man das rechnet:
Beitrag "Re: I2C "blockiert" Arduino"

LG
old.

von äxl (Gast)


Lesenswert?

Sven K. schrieb:
> kurz zusammengefasst: du hast keine lust dir das alles allein in den
> drei foren und den vielen beiträgen hier zusammenzusuchen und willst die
> schuld dafür jetzt anderen geben? das geht so aber nicht...

na genau ;)
( Ich mach ja nun schon - haha :)) )
Eigentlich interessiert mich nur der aktuelle Stand und die vielen "Von 
hinten durch die Brust ins Auge" Ansätze. Vieles wäre auch rein 
schaltungstechnisch einfach unnötig.
Aber auch das ist sicherlich 'nicht verhandelbar'.
Sehr unterhaltsam hier...

Ich erwarte ja keine Baumappe, wie sie von der QRP-AG herausgegeben 
werden. Garnicht. 
http://www.qrpproject.de/Media/pdf/Hegau_Manual_komplett.pdf

wenigstens n Schaltplan, wo man auch sieht, was da an PIN11 nun an PWM 
herauskommt, was dieser ominöse "ALC-Sketch" nun macht ( ich nehme an, 
hier wird PIN4 vom TDA7052A zwecks Lautstärkerregelung über ein 
Tiefpassfilter angesteuert?) Oder doch sein Differenzverstärker aus der 
Keksdose? Oder der OTA? Oder wird für die ALC ein SSM2167 genommen?
Es scheinen ja drei PWM -Kanäle aktiv zu sein.
.der ALC-Sketch-PIN
.der 25Hz Pilot-Ton
.der Frequenzabhängige Integratornachregelpegel für die 
Frequenzverdopplung
was ist mit L-R, welches "mit der Freuenz" immer leiser wird? Mit Der 
Audiofrequnz oder mit der Sendefrequenz?

Muh
Äxl

von äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> Jetzt wisst Ihr wie man das rechnet:
> Beitrag "Re: I2C "blockiert" Arduino"

mit Verlaub: glaube mir
Das wussten wir auch schon vorher. Das ist hier mikrocontroller.net. Wir 
befassen uns nicht erst seit gestern mit diesen und anderen Dingen.

von Stefan S. (chiefeinherjar)


Lesenswert?

So, der Post Nr. 500 ist meiner!

von Peter D. (peda)


Lesenswert?

Aus der W. schrieb:
> Jetzt wisst Ihr wie man das rechnet:
> Beitrag "Re: I2C "blockiert" Arduino"

Nö, ich hab die Stützstellen in meinen obigen Arraybeispiel alle mit der 
Wünschelrute ausgependelt.
Simpelste Mathematik mußt Du uns nicht erklären.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Jetzt wisst ihr wie man das rechnet.

Bravo!
Das ist der Witz des Tages

von oldeurope O. (Gast)


Lesenswert?

Peter D. schrieb:
> Aus der W. schrieb:
>> Jetzt wisst Ihr wie man das rechnet:
>> Beitrag "Re: I2C "blockiert" Arduino"
>
> Nö, ich hab die Stützstellen in meinen obigen Arraybeispiel alle mit der
> Wünschelrute ausgependelt.
Es geht nicht um die Berechnung Deines Arrays.

> Simpelste Mathematik mußt Du uns nicht erklären.
Ja nachher ist man immer schlauer, hi hi.

LG
old.

von Einer K. (Gast)


Lesenswert?

Meine vorläufige Diagnose läutet: Egozentrisch

Der Duden sagt dazu:
> Die eigene Person als Zentrum allen Geschehens betrachtend;
> alles in Bezug auf die eigene Person beurteilend und eine
> entsprechende Haltung erkennen lassend

Wikipedia:
> Mit 'Egozentrik' wird ein „Egozentrismus der Wahrnehmung“
> beschrieben, der die Unfähigkeit bezeichnet, sich in
> die Rolle eines Anderen hineinzuversetzen bzw. die Perspektive
> eines Anderen anzunehmen sowie die eigene Sichtweise
> als eine unter mehreren aufzufassen.

von äxl (Gast)


Lesenswert?

1
C:\\Users\..."-DUSB_PRODUCT=\Arduino Micro\"" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\micro" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "-IC:\\Users\\ar\\Documents\\Arduino\\libraries\\LiquidCrystal_I2C" "-IC:\\Users\\ar\\Documents\\Arduino\\libraries\\Rotary-master" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\EEPROM\\src" "C:\\Users\\ar\\AppData\\Local\\Temp\\arduino_build_163424\\sketch\\cquam_darius_20191014g.ino.cpp" -o "C:\\Users\\ar\\AppData\\Local\\Temp\\arduino_build_163424\\sketch\\cquam_darius_20191014g.ino.cpp.o"
2
C:\Users\ar\Documents\cquam_darius_20191014g\cquam_darius_20191014g.ino: In function 'void setup()':
3
4
cquam_darius_20191014g:85:18: error: 'PCIE2' was not declared in this scope
5
6
   PCICR |= (1 << PCIE2);

Mitm Mega32u4 geht's schonmal nicht. Es gibt zwar den PCINT0 (Vec.No10/ 
Adr.0x12),es gibt das Pin Change Control Register Register PCICR, dort 
ist aber nur das Bit0 (PCIE0) definiert.
1
In function 'void PCINT2_vect()':
hat der mega32u4 auch nicht.
Schade, schade... ;)
Einen UNO hab ich nicht. Ich dachte, Arduino sei so'n bissl 
Plattformübergreifend. So würde ich das zumindest gestalten, wenn ich 
schon hier was schreiben söllte

von Einer K. (Gast)


Lesenswert?

äxl schrieb:
> Ich dachte, Arduino sei so'n bissl
> Plattformübergreifend.

Naja...
Bei direkten Registermanipulationen, sollten die Registerbezeichner und 
die Bit Defines schon zum verwendeten µC passen.

von Harry L. (mysth)


Lesenswert?

Arduino Fanboy D. schrieb:
> Meine vorläufige Diagnose läutet: Egozentrisch

Nennt man das heute nicht trumpen ?

von Einer K. (Gast)


Lesenswert?

Harry L. schrieb:
> Arduino Fanboy D. schrieb:
>> Meine vorläufige Diagnose läutet: Egozentrisch
>
> Nennt man das heute nicht trumpen ?
Ja, durchaus!

Versuchte ich auch schon mal zu erwähnen, mit etwas anderen Worten.

Arduino Fanboy D. schrieb:
> äxl schrieb:
>> Stattdessen poltert Du hier hier durch die Gegend
>
> Ich nenne ein solches Verhalten mittlerweile "rumtrumpen".
> Denn der Trump verhält sich ähnlich.

von äxl (Gast)


Lesenswert?

aus: https://www.mikrocontroller.net/attachment/highlight/432360
vom 20.10.2019
1
#include <Wire.h> 
2
#include <LiquidCrystal_I2C.h> // 27=A4=SDA, Pin28=A5=SCL
3
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
4
#include <rotary.h>
5
#include <EEPROM.h>
6
int volt = A1;      //24 Atmega Eingang Spannungskontrolle, Taster
7
...
8
...


Ich wundere mich über garnichts mehr. Natürlich wurde auch bei meinem 
Versuch einer Übersetzung das 'POSITIVE' als fehlerhaft angemerkt.
Ein init mit 0x27,16,2 half dann.
Andere bemerkten das auch...
in: https://electronicsprojectshub.com/i2c-lcd-display-arduino/

wurde auf den fehlerhaften Init-Code fürs Display hingewiesen:
1
Arnold  
2
April 1, 2018 at 1:29 PM | Reply  
3
4
I am getting as ‘POSITIVE’ was not declared in the scope will you please help.
5
thanks in advance
6
7
    Electronics Projects Hub  
8
    April 1, 2018 at 6:46 PM | Reply  
9
10
    I will check it and reply you soon.
11
    Milan  
12
    November 1, 2018 at 10:56 AM | Reply  
13
14
    LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); Shoul be
15
    LiquidCrystal_I2C lcd(0x27, 16,2);
16
    16,2 is 16 boxes in 2 rows. No need to declare pins.
17
    Electronics Projects Hub  
18
    November 18, 2018 at 12:21 PM | Reply  
19
20
    All problems fixed, check the updated version in the same page.
21
22
Jake Dorman  
23
October 1, 2018 at 9:27 PM | Reply  
24
25
I’m also getting the error;
26
27
Liquid_Crystal_Test:4:53: error: ‘POSITIVE’ was not declared in this scope
28
29
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
30
31
    Electronics Projects Hub  
32
    November 18, 2018 at 12:25 PM | Reply  
33
34
    All problems fixed, check the updated version in the same page.

aus dem, am 08.11.2018 berichtigtem Quellcode:
1
#include <Wire.h> 
2
#include <LiquidCrystal_I2C.h>
3
// Set the LCD address to 0x27 for a 16 chars and 2 line display
4
LiquidCrystal_I2C lcd(0x27, 16, 2);
5
...
6
...

Compiliert denn der quellcode /Arduino Sketch bei jemandem?
Ich musste ausserdem "rotary" groß schreiben. Wer weiss, ob es die 
gleiche lib ist.
1
#include <Wire.h>
2
#include <LiquidCrystal_I2C.h> // 27=A4=SDA, Pin28=A5=SCL
3
LiquidCrystal_I2C lcd(0x27, 16,2);
4
#include <Rotary.h>
5
#include <EEPROM.h>
6
int volt = A1;      //24 Atmega Eingang Spannungskontrolle, Taster

Aber wie oben schon genannt:
der sketch ist ohne die original Bibliotheken wertlos. Ohne Schaltplan 
ebenso.

von oldeurope O. (Gast)


Lesenswert?

Beitrag "I2C Display an arduino uno"
Also wenn ich dass schaffe …
Oder soll ich dir meinen libraries Ordner zippen und anhängen?

LG
old.

von Einer K. (Gast)


Lesenswert?

äxl schrieb:
> Andere bemerkten das auch...
> in: https://electronicsprojectshub.com/i2c-lcd-display-arduino/
>
> wurde auf den fehlerhaften Init-Code fürs Display hingewiesen:
Es gibt ein gefühltes Dutzend verschiedener i2c-lcd-display Libs im 
Arduino Umfeld.
Was bei der einen falsch ist, passt beider anderen auf den Punkt.


äxl schrieb:
> Ich musste ausserdem "rotary" groß schreiben.
Win ist nicht Case sensitive
Du nutzt vermutlich Linux, o.ä.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
>> Ich habe Dir deinen Quelltext ordentlich formatiert und analysiert.
> Dann nimm den doch. Ich zupf mir dann die Zeilen und kopiere
> die in die neue ino.

Die Logik dahinter übersteigt meinen Horizont.

Wenn ich den alten Quelltext anschaue, in dem deine Änderungen noch 
nicht drin sind, auf die sich deine Frage bezieht, wie kann ich dann 
dein Problem untersuchen?

Mir scheint, dass da nicht nur im Quelltext eine ordentliche Struktur 
fehlt.

von Stefan F. (Gast)


Lesenswert?

Harry L. schrieb:
> Warum lasst ihr den Trottel nicht am langen Arm verhungern?

Weil hier allzu oft der Vorwurf geäußert wird, wir wären nicht 
hilfsbereit. Wir wollen hilfsbereit sein, und das mit Erfolg. Denn ohne 
Erfolg fehlt der Spaß an der Sache.

Das gilt nicht für die wenigen minderwertigen Menschen, die sich hier am 
Leid anderer erfreuen.

von Einer K. (Gast)


Lesenswert?

Stefanus F. schrieb:
> Mir scheint, dass da nicht nur im Quelltext eine ordentliche Struktur
> fehlt.

Frei nach Freud:
> Der geschriebene Code ist ein Spiegelbild der Denke.

von Carl D. (jcw2)


Lesenswert?

Arduino Fanboy D. schrieb:
> Stefanus F. schrieb:
>> Mir scheint, dass da nicht nur im Quelltext eine ordentliche Struktur
>> fehlt.
>
> Frei nach Freud:
>> Der geschriebene Code ist ein Spiegelbild der Denke.

Wenn man einige der Bilder vom HW-Aufbau betrachtet, könnte man 
vermuten, daß der Source-Code einem übergreifenden Konzept folgt.

von Äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> Beitrag "I2C Display an arduino uno"
> Also wenn ich dass schaffe …
> Oder soll ich dir meinen libraries Ordner zippen und anhängen?
>
> LG
> old.

#issklar.
noch n Thread, den ich übersehen habe ;))
Dabei hab ich mir so mühe beim "blinde Kuh" spielen gegeben.
Alter - Sie haben doch nicht mehr alle...
Es sollte doch wohl selbstverständlich sein, seine gesamtes Projekt zu 
zippen, wenn man was von anderen will.
"Aaach, nen UNO und n Oszi. Dann geht das schon"
Am Arsch!!!
Meine Geduld wurde hier nun wirklich lang genug auf die Probe gestellt.

__

stinksauer

von oldeurope O. (Gast)


Lesenswert?

Äxl schrieb:
> Sie haben doch nicht mehr alle...

Du bekommst den Sketch echt nicht kompiliert?

Die Rotary gibt es selbstverstendlich bei dem OM der den
VFO publiziert hat. Zum glück gibt es noch solche, die
die Fahne für den Amateurfunk hochhalten.
Aktive links dazu sind im Sketch unten.
Mir ist egal welche Rotary oder I2C-Display lib Ihr in euren
Code schiebt. Nehmt die, die Ihr kennt und gewohnt seit.

Meine Display lib ist nicht final. Ich möchte noch andere testen.
Das weißt du auch und du hast ja erklärt wozu du eigentlich hier
bist (kotz). Ich hoffe dein Vorhaben wird dir nicht gelingen.

Äxl schrieb:
> "Aaach, nen UNO und n Oszi. Dann geht das schon"

Häng  dich hier nicht rein, wenn du überfordert bist.

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Beitrag "Darius CQUAM Schaltungsteil Frequenzvedoppler"

Das war ein Wochenende der Fehlersuche. Das Ausgangssignal war nicht
ganz sauber und ich hatte das auf meinen Komparator im Verdoppler
geschoben. Deshalb die Aktion mit dem MAX941. Das aktuelle
Schaltbild mit Simu liefere ich die Tage noch nach, das alte mit dem
LM13700 habt Ihr ja schon.

Jedenfalls war das HF-Signal nicht sauberer. Den Jitterfehler
erkennt man als Signalüberlagerung hinter dem Dreieckkomparator
im Verdoppler auf dem Scope. Fieser weise nur bei manchen Frequenzen.
Ich dachte eine Zeit lang, ich müsste das ganze Konzept aufgeben.

Erst als ich den 2Vpp Sinus mal direkt auf das 74HCT73 gegeben
habe und das Signal jitterfrei wurde, war mir klar wo zu suchen ist.

Es liegt am Widerstand R12 auf dem AD9850-Board. Den 1K Widerstand
durch ein Stück Draht ersetzt und gut ist. Puh, DAS hat mich echt
Nerven gekostet. Mit dem Blog, das dauert deshalb noch etwas.
Am AD9850 Board prüfe ich derzeit weitere Verbesserungen für den
cquam-Exciter.

LG
old.

von Äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> Äxl schrieb:
>> "Aaach, nen UNO und n Oszi. Dann geht das schon"
>
> Häng  dich hier nicht rein, wenn du überfordert bist.

okay ;)

Achso: bleiben Sie beim Thema.
Nicht, dass der Thread noch dicht gemacht wird. Wäre ja schade drumm
@all other
Viel Spaß wünsch ich uns. Mal sehn, was hier noch so passiert.

von oldeurope O. (Gast)


Lesenswert?

Der Thread gehört eigentlich in Projekte und Code.

von yesitsme (Gast)


Lesenswert?

Aus der W. schrieb:
> Der Thread gehört eigentlich in Projekte und Code.

Aus der Beschreibung:
>> Hier könnt ihr eure Projekte, Schaltungen oder Codeschnipsel vorstellen und 
diskutieren. Bitte hier keine Fragen posten!

Vor allem der letzte Teil. Hattest du nicht die Frage, warum dein LCD 
nicht richtig geht?

von Wolfgang (Gast)


Lesenswert?

Aus der W. schrieb:
> Der Thread gehört eigentlich in Projekte und Code.

... aber dann bitte auf 1/20 der Postings zusammengefasst. In dieser 
Form,  mit all seinen Ausschweifungen, will sich doch keiner mehr 
ernsthaft antun.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Der Thread gehört eigentlich in Projekte und Code.

Besser in die Kategorie "Dinge, die die Welt nicht sehen soll".

von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> Beitrag "Darius CQUAM Schaltungsteil Frequenzvedoppler"
>
> Das war ein ....

Ich habe kein ADS, es ist nur , oh guck mal ein Eichhörnchen!!!

Warum kommt nach einer Diskusion immer so ein kopierter Blogbeitrag.

Ein Projekte und code Thread ist das auch nicht.


Du kannst gern in deinem Funkforum den Fortschritt dokumentieren.
Oder erstelle einen neuen Beitrag hier in der passenden Rubrik.

Wenn Fragen sind erstelle einen im passenden Unterforum und verlinke ggf 
dein Projekt.

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Beitrag "I2C Display an arduino uno"
> Also wenn ich dass schaffe …
> Oder soll ich dir meinen libraries Ordner zippen und anhängen?

Beitrag "I2C Display an arduino uno"

der beitrag bringt die ignoranz und überheblichkeit ja noch viel bessser 
auf den punkt als das hier.

: Bearbeitet durch User
von oldeurope O. (Gast)


Lesenswert?

Sven K. schrieb:
> Beitrag "I2C Display an arduino uno"
>
> der beitrag bringt die ignoranz und überheblichkeit ja noch viel bessser
> auf den punkt als das hier.

Ja, das habe ich auch gedacht. Wenn auch in diametral anderer Richtung.
Und wieder mal der User ufuf …
Zum Glück hatte ich selbst eine Antwort gefunden und diese
selbstverständlich eingestellt.

LG
old.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Und wieder mal der User ufuf …

Hier ist er auch, der ufuf:
Beitrag "Arduino zu millis() long und Reset vor dem Überlaufen"

Und, wie immer gar nicht hilfsbereit und dauernd beleidigend.
Nur auf Selbstdarstellung versessen.
Der ufuf ist ein völliger Idiot. Überhaupt nicht in der Lage, deine 
berechtigten Probleme zu verstehen.

Man sollte den ufuf aus dem Forum werfen.
Je eher, desto besser.
Der stört nur.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Man sollte den ufuf aus dem Forum werfen.

Dann wird es langweilig.

Selbsterkenntnis ist der beste Weg zur Besserung.
Wenn Du mal ehrlich helfen willst:
Neustart mit neuem Nick.

LG
old.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Selbsterkenntnis ist der beste Weg zur Besserung.
Ja, da hast du völlig Wahr.
--> Beitrag "Arduino UNO retriggerbares Monoflop if while"
Manchmal blitzt sogar etwas davon auf.


Auch wenn es etwas anders heißt:
> der erste Schritt zur Besserung

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Ja, da hast du völlig Wahr.
> --> Beitrag "Arduino UNO retriggerbares Monoflop if while"
> Manchmal blitzt sogar etwas davon auf.

Da musste ich mir die Monoflops selbst basteln, weil
Null Hilfe von euch!

Der Klopfer: Dann meckern se noch drüber:
Beitrag "Re: I2C "blockiert" Arduino"

Nehmt doch Euer kleines Programmierwissen mit ins Grab.
Fürn "return" reicht das gerade noch. Danke dafür.

LG
old.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Null Hilfe von euch!
Ja, das stimmt.
In keinem der bisher genannten Threads waren wir, oder gar ich, in der 
Lage dir zu helfen.
Noch nicht mal sachdienliche Hinweise konnten wir anbringen.
Ein Trauerspiel.....

Danke, dass du mir mein Versagen so deutlich vor Augen führst.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> dass du mir mein Versagen

Du bist ein ausgezeichneter Troll. Erweckst bei Neulingen
den Eindruck zu helfen und stiftest maximale Verwirrung.
Die nicht funktionierenden Codeschnipsel tagen dazu bei.
Weiterhin viel Spaß beim Arduinonutzer ärgern.

von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> Weiterhin viel Spaß beim Arduinonutzer ärgern.

funzt

von Eric B. (beric)


Lesenswert?

Aus der W. schrieb:
> Du bist ein ausgezeichneter Troll.

Du bist ein ausgezeichneter Troll. Erweckst bei Neulingen sowie bei 
alten Hasenden den Eindruck geholfen werden zu wollen und stiftest 
maximale Verwirrung. Die nicht funktionierenden Codeschnipsel tragen 
dazu bei.
Weiterhin viel Spaß beim Forenmitglieder ärgern.

von oldeurope O. (Gast)


Lesenswert?

Eric B. schrieb:
> Die nicht funktionierenden Codeschnipsel tragen
> dazu bei.

Von mir gibt es einen kompletten lauffähigen Code.
20191016a.ino

hfhd schrieb:
> Aus der W. schrieb:
>> Weiterhin viel Spaß beim Arduinonutzer ärgern.
>
> funzt

Mit der Formatierung ist Euch das wirklich gelungen. grrr

Ich hatte mich echt eine Stunde hingesetzt und den Code
von Hand umformatiert. Also der Punkt geht an Euch.
Habt Ihr mir eine Stunde Lebenszeit geklaut.

Ich dachte meine Güte, hat sich der stefanus ja echt ein
Bein für mich ausgerissen. Von wegen ...
Natürlich funktionierte die Formatierung mit Strg t dann
nicht mehr, weil der Code eben schon formatiert war.

Die anderen Codes von mir lassen sich damit zur Unkenntlichkeit
formatieren. Wer damit besser klar kommt solls machen.
Ist ja nur einmal Strg t drücken. Also ist das eine faule
Ausrede den Code nicht verstehen zu können.

Wie viele Jahre habt Ihr denn daran gearbeitet die Helferlein
im Bereich Code aus dem Forum zu mobben?

LG
old.

von Äxl (Gast)


Lesenswert?

> Habt Ihr mir eine Stunde Lebenszeit geklaut.

Uuii
Soll ich mal nachzählen und die Stunde. Aufrechnen, die Sie allen 
Beteiligten hier geraubt und sich erschlichen haben?

-

Ach herrje. Ich bin ja völlig überfordert. Ich vergaß.
Schnell weg hier ...

von Schnauze (Gast)


Lesenswert?

Stefanus F. schrieb:
> Harry L. schrieb:
> Warum lasst ihr den Trottel nicht am langen Arm verhungern?
>
> Weil hier allzu oft der Vorwurf geäußert wird, wir wären nicht
> hilfsbereit. Wir wollen hilfsbereit sein, und das mit Erfolg. Denn ohne
> Erfolg fehlt der Spaß an der Sache.
>
> Das gilt nicht für die wenigen minderwertigen Menschen, die sich hier am
> Leid anderer erfreuen.

Ach komm, jetzt hör aber auf, hier leidet niemand, bestenfalls du, aber 
du willst das ja. Hier hat's schon einer auf den Punkt gebracht:

Dergute W. schrieb:
> Also ich seh' hier niemanden, der um Hilfe bittet. Ich seh' hier nur die
> ueblichen Verdaechtigen, die um permanente Demuetigung bitten, und die
> auch prompt erhalten ;-)

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Von mir gibt es einen kompletten lauffähigen Code.
> 20191016a.ino

wollte ich jetzt tatsächlich mal probieren und hab alle drei seiten 
dieses threads danach durchsucht, aber diese datei nicht gefunden.

von oldeurope O. (Gast)


Lesenswert?

Sven K. schrieb:
> hab alle drei seiten
> dieses threads danach durchsucht, aber diese datei nicht gefunden.

Strg f

Beitrag "Re: I2C "blockiert" Arduino"

LG
old.

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Strg f

mega hinweis! danke! damit habe ich die datei in dem von dir verlinkten 
beitrag auch gefunden, die hat aber einen anderen dateinamen als 
"20191016a.ino", ist also eine andere datei. und dazu wurde auch schon 
gesagt -> ohne libraries kompiliert die nicht!

siehe: Beitrag "Re: I2C "blockiert" Arduino"

von oldeurope O. (Gast)


Lesenswert?

Zumindest erklärt dein Nickname deine Beiträge.

Sven K. schrieb:
> damit habe ich die datei in dem von dir verlinkten
> beitrag auch gefunden, die hat aber einen anderen dateinamen als
> "20191016a.ino", ist also eine andere datei

rotfl

Schonmal was mit I2C Display und Rotary mit Arduino gemacht?

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> rotfl

geh bloß nciht auf den rest ein, der dein fehlverhalten aufzeigen 
könnte...

Aus der W. schrieb:
> Schonmal was mit I2C Display und Rotary mit Arduino gemacht?

ja. und da gab es keine "rotary.h" aber auch das wurde bereits 
geschildert, hast du aber auch wieder augeblendet. von daher kuller dich 
ruhig vor lachen auf dem boden, irgendwann werden es alle anderen tun 
(die es jetzt nicht schon gemacht haben)

edit: bei mir heißt das z.b. "#include <Encoder.h>"

: Bearbeitet durch User
von Einer K. (Gast)


Lesenswert?

Sven K. schrieb:
> ....

Aua...
Jetzt hast du dich auch als Troll erwiesen.
(willkommen im Club)

von oldeurope O. (Gast)


Lesenswert?

Dann baue die dir bekannten libs in den Sketch ein.

von oldeurope O. (Gast)


Lesenswert?

Aus der W. schrieb:
> Dann baue die dir bekannten libs in den Sketch ein.

Arduino Fanboy D. schrieb:
> als Troll erwiesen
als quotschmacher

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Dann baue die dir bekannten libs in den Sketch ein.

dann ist dein code so aber nicht komplett lauffähig, wie du 
behauptest... schon irgendwie ein widerspruch...

Arduino Fanboy D. schrieb:
> Jetzt hast du dich auch als Troll erwiesen.

meinst du mal so unter uns trollen rumgetrollt oder wie? ;-)

von oldeurope O. (Gast)


Lesenswert?

Sven K. schrieb:
> aber nicht komplett lauffähig

[Ironie] Einen Rechner mit Betriebssystem und Arduino-Weichware
soll ich dir dann auch noch spendieren …[/ironie]

Ein lustiger Vormittag in der Paviangruppe.

LG
old.

von Einer K. (Gast)


Lesenswert?

Sven K. schrieb:
> meinst du mal so unter uns trollen rumgetrollt oder wie? ;-)

Ich sachs mal so:
Der Bote unerwünschter Nachrichten wird getötet.
Total menschlich, ein uraltes Hobby.

Und bei deinem Satz, habe ich mit "trollen" ein Problem, da mir nicht 
klar ist, ob das ein Substantiv in Mehrzahl ist, oder die Tätigkeit.

Aber so ist das eben...
Die einen Paviane müssen mit einer kaputten Tastatur leben, Andere sind 
einfach nur Affen, und wieder Anderen sollte man eine unbefristete 
Merkbefreiung zustellen.
http://www.de-te-be.net/formulare/merkbefrei.html

von Sven K. (quotschmacher)


Lesenswert?

Arduino Fanboy D. schrieb:
> Und bei deinem Satz, habe ich mit "trollen" ein Problem, da mir nicht
> klar ist, ob das ein Substantiv in Mehrzahl ist, oder die Tätigkeit.

"Trollen" - substantiv, plural + zu faul zu shift zu greifen

von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> Sven K. schrieb:
>> aber nicht komplett lauffähig
>
> [Ironie] Einen Rechner mit Betriebssystem und Arduino-Weichware
> soll ich dir dann auch noch spendieren …[/ironie]

andere libs haben andere funktionsnamen.
daher sind deine rotary.h und seine encoder.h nicht kompatibel
nicht nur die namen sondern auch die Verwendung.

Wenn DU möchtest das jemand sich echt hinsetzt und DEINEN code 
nachschaut.
Dann liefere ALLES an informationen.
Also auch deine Verwendeten Libs.


Aus der W. schrieb:
> Dann baue die dir bekannten libs in den Sketch ein.

also ...
deine Denke:
rumsitzen und lachen wie andere sich die mühe machen sollen für DICH
das projekt zusammensuchen und korrigieren?


Deine definition vom TEAM ist auch :  Toll Ein Anderer Machts


Aus der W. schrieb:
> Ein lustiger Vormittag in der Paviangruppe.

der CHEF der truppe spricht?
guck mal in den spiegel

von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

hfhd schrieb:
> der CHEF der truppe spricht?

Ich bin das fremde Männchen, das zu der Gruppe dazu kommt.
Der Rest ist aus Paviandokus bekannt …

hfhd schrieb:
> sind deine

Das sind nicht meine, sondern die Rotary kommt vom VFO-Sketch
und die I2C du weißt schon. Ihr habt die längst, das hier
gehört zu eurem Spiel.

Ich suche sowieso Platz wo ich die libs parken kann, um dann
vom Blog zu verlinken.

Also Speicherplatte C --> Dokumente --> Arduino den Ordner
libraries
durch den hier angehängten, vorher entzippten, Ordner erstezen.

LG
old.

von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> Der Rest ist aus Paviandokus bekannt …

stimmt.
Kann sich das neue Männchen nicht der Gruppe anpassen,
wird es vertrieben oder getötet.

von hfhd (Gast)


Lesenswert?

Aus der W. schrieb:
> Das sind nicht meine, sondern die Rotary kommt vom VFO-Sketch
> und die I2C du weißt schon. Ihr habt die längst, das hier
> gehört zu eurem Spiel.

wenn du der meinung bist...

MACH

ES

VERDAMMT

NOCHMAL

ALLEINE!

viel spass

von Joachim B. (jar)


Lesenswert?

Aus der W. schrieb:
> Sven K. schrieb:
>> hab alle drei seiten
>> dieses threads danach durchsucht, aber diese datei nicht gefunden.
>
> Strg f
>
> Beitrag "Re: I2C "blockiert" Arduino"
>
> LG
> old.

mir gings ähnlich
aber eine Chance wollte ich ihm noch geben, aber

Aus der W. schrieb:
> Dann baue die dir bekannten libs in den Sketch ein.

wieso dennn irgendwelche?
meinst du nicht es könnte hilfreich sein genau zu zeigen welche LIBs zu 
verwenden sind in DEINEM Sketch und genau auch die Downloadslinks 
einzufügen?

Als RF Techniker würdest du ja auch nicht schreiben nimm einen 100nF 
ohne zu sagen Keramik, Elko, Folie denn es ist je nach Einbau durchaus 
entscheidend.

verehrter TO es reicht nun absolut, so dä**** kann man doch nicht sein

es wird im Sketch bemängelt: "rotary.h: No such file or directory"

tatsächlich ist in der LIB: "Rotary.h"

case sensitiv!

also trollst du oder bist total dement?

: Bearbeitet durch User
von Sinus T. (micha_micha)


Lesenswert?

Ich glaube, ihr seid alle Masochisten, dass ihr euch das antut.

Beitrag #6012460 wurde von einem Moderator gelöscht.
von äxl (Gast)


Lesenswert?

äxl schrieb:
> Compiliert denn der quellcode /Arduino Sketch bei jemandem?
> Ich musste ausserdem "rotary" groß schreiben. Wer weiss, ob es die
> gleiche lib ist.#include <Wire.h>
> #include <LiquidCrystal_I2C.h> // 27=A4=SDA, Pin28=A5=SCL
> LiquidCrystal_I2C lcd(0x27, 16,2);
> #include <Rotary.h>
> #include <EEPROM.h>
> int volt = A1;      //24 Atmega Eingang Spannungskontrolle, Taster
>
> Aber wie oben schon genannt:
> der sketch ist ohne die original Bibliotheken wertlos. Ohne Schaltplan
> ebenso.

Joachim B. schrieb:
> tatsächlich ist in der LIB: "Rotary.h"
>
> case sensitiv!

sag ich doch...

von äxl (Gast)


Lesenswert?

Auf die ganzen sozialen Defizite, die beim TO ja nun mal durchaus 
vorhanden zu sein scheinen, gehe ich garnicht mehr drauf ein. Ist mir 
mittlerweile schnuppe. Der eine ist eben so. Der andere eben anders.
Schade eben nur, dass er auf meine, Anfangs durchaus wohlwollend 
gemeinten, Ratschläge diesbezüglich garnicht eingeht...
Ich habe mich mal bissl bei anderen belesen (google --> AM Stereo, 
C-QUAM)
und bin jetzt (rein aus Spaß) mal dabei, die Summen-Differenzbildung, 
die Amplituden und Phasenmodulation alles digital im AVR zu machen.
Ganz witzig, man muss nur auf die Laufzeiten etwas acht geben, sonst 
wandert - denke ich - der Stereo-Eindruck. Wenn jemand da ersthaft 
vorhat, etwas zu veranstalten, sollte man evtl.doch auf ein System mit 
DMA Controller zurückgreifen. (STM32Discovery-xyz?)
Die DDS läuft bei mir mit 96Mhz Takt, nicht mit 125.
Viel Spaß noch.

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> und bin jetzt (rein aus Spaß)

warum sonnst?

> mal dabei, die Summen-Differenzbildung,
> die Amplituden und Phasenmodulation alles digital im AVR zu machen.

Klasse, je weniger Hardware um so attraktiver ist der Nachbau. :-)

Deshalb war ich an der fl2k-Sache so interessiert.

LG
old.

von äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> Deshalb war ich an der fl2k-Sache so interessiert.

Sicher wieder ein Insider, mit dem niemand etwas anfangen kann...
Wovon reden Sie?

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> Wovon reden Sie?

[Ironie] Ja, ist streng geheim. [/Ironie]

Guck mal:
Beitrag "Re: Was ist das für ein Röhren- Dipper ?"
Da ist einer, mit dem du dich sie-zen kannst.

von Lacher (Gast)


Lesenswert?

hfhd schrieb im Beitrag #6012460:
> Bei dem TO stand die Schaukel damals definitiv zu nah an der Wand!!

Denn muss ich mir merken.   :-)  :-)  :-)    Danke.

von äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> äxl schrieb:
>> Wovon reden Sie?
>
> [Ironie] Ja, ist streng geheim. [/Ironie]
>
> Guck mal:
> Beitrag "Re: Was ist das für ein Röhren- Dipper ?"
> Da ist einer, mit dem du dich sie-zen kannst.

Ich denke, ich kenn die Jungs aus dem Faden ganz gut (wenn auch nicht 
persönlich) und es würde mir nicht einfallen, einen zu "sie-zen"...
Ich du'ze eigentlich alle hier im Forum.
Ich denke, jeder versteht meine Intention, hier einen gewissen Abstand 
ihrer Person gegenüber zu symblisieren, um mich damit klar und deutlich 
von ihrem Verhalten zu distanzieren.

Was hat das mit einem "FL2K" zu tun?
Das klingt wie
1
" Ihr Peiffen wisst nicht mal, was ein FL2K ist "
Sicher braucht es wieder hundert weitere Posts, bis wir das erfahren.
Oder darf ich wieder "blinde Kuh" spielen? Sie wissen, ich bin 
intelektuell total überfordert..

von äxl (Gast)


Lesenswert?

https://osmocom.org/projects/osmo-fl2k/wiki

Muh

BTW: was wollen Sie damit? Das ist nix für Sie.

Wir müssen dann sicher einen "fl2k-sketch" mit I2C-Display und Rotary.h 
für Sie schreiben :)
(irgendwo hab ich das tatsächlich die letzten Tage schonmal gelesen)

von Bademeister (Gast)


Lesenswert?

>> " Ihr Peiffen wisst nicht mal, was ein FL2K ist "
Das ist nen Tipfehler da stand Fuck, kein Wunder bei dem Schwachsinn 
hier.

Aber den Sketch find ich gut, nen Sketch ist doch ein gespielter Witz 
oder ?

ohoh, ich seh gerade die Verwirrung, hat so viele Bedeutungen...
https://www.dict.cc/englisch-deutsch/sketch.html

von Einer K. (Gast)


Lesenswert?

Bademeister schrieb:
> Aber den Sketch find ich gut, nen Sketch ist doch ein gespielter Witz
> oder ?

Sketch?
Kann man drüber lachen, wenn man möchte. Oder auch weinen, schimpfen, je 
nach Gemüt.

Arduino ist im Processing Umfeld entstanden.
Und da heißen die Programme (in einer C ähnlichen Sprache) eben Sketch.
https://processing.org/

von spess53 (Gast)


Lesenswert?

Hi

>Und da heißen die Programme (in einer C ähnlichen Sprache) eben Sketch.

Eingedeutscht: Lachnummer.

Beschreibt das ganze Arduinosystem.

MfG Spess

von Einer K. (Gast)


Lesenswert?

Friedrich Nietzsche:
> Nicht durch Zorn, sondern durch Lachen tötet man.

von spess53 (Gast)


Lesenswert?

Hi

>Friedrich Nietzsche:
>> Nicht durch Zorn, sondern durch Lachen tötet man.

Ja. Ich höre die ganzen Chinesen laut lachen, wenn sie den doofen 
europäischen Arduinofans ihren Scheiss andrehen. Hoffentlich hat 
Nietzsche Recht. Und der TO geht übrigens auch auf eure Kosten.

MfG Spess

von Einer K. (Gast)


Lesenswert?

spess53 schrieb:
> Und der TO geht übrigens auch auf eure Kosten.

Ach, der hat doch sowieso nicht alle Streusel auf dem Kuchen.
Ob mit oder ohne Arduino, macht da gar nichts aus.

von Alter Sack (Gast)


Lesenswert?

Kann man wirklich alles Arduino über einen Kamm scheren? Es sieht eher 
danach aus, als ob es etwas anderes für jeden Einzelnen ist. Gut, die 
Unos sind vom Formfaktor her nicht das günstigste. Aber es gibt so viele 
andere brauchbare Bords, daß man schon einiges auf die Beine stellen 
kann.

Früher mußte ich mir für jeden Sch... eine LP für einen uC erstellen. 
Heute kauf ich mir eine Zehnerpackung von Nanos oder Pro-Minis und 
greife ich in die Schachtel und bau die externe Beschaltung herum. Für 
viele Projekte durchaus wert den kleinen Einsatz.

Die Professionellen mögen darüber mitleidig lächeln. So be it! Für Viele 
ist es ein praktischer Ansatz. Auch die Programmgestaltung läßt viel 
Spielraum übrig. Wer sich die Mühe macht anhand des Datenblatt den uC zu 
verstehen kann durchaus mit dem Arduino Werkzeug Dang GCC die 
Fähigkeiten des betreffenden uC ausreizen - Nicht jeder ist unbedingt 
eine bequeme Copycat. Viele der Bibliotheken können zumindestens als 
Ansatzpunkt ausgenützt werden.

Auch die oftmals sehr zuverläßige Installation und Portabilität ist ein 
Pluspunkt. Gut, ein GDB Debugger wäre nett. Aber hier tut sich ja auch 
schon etwas. Man muß mal abwarten.

Die bequemen Shields oder kleinen Bords mit den vielen ICs erlauben 
schnelles anfängliches Ausprobieren von neuen Peripherie ICs ohne großen 
Zeitaufwand. Später kann man das ja alles konsolidieren.

Ich sehe das ganze Arduino Movement eher gelassen als geschichtemachende 
Innovation mit einer sehr breiten potenziellen Nutzbarkeitsbasis. Ich 
möchte nicht wissen in wie vielen Firmen der Welt schnelle Experimente 
im Schutz der Laborräume damit gemacht werden:-)

Laßt die Leute doch machen und ihre Freude, Zugang zu nützlicher Technik 
zu haben. Wenn ich an die siebziger Jahre zurückdenke wo die Werkzeuge 
den Gegenwert einiger Autos kosteten, dann sind wir heute schon besser 
dran. Der PC hat die uC Entwicklung demokratisiert. Vielleicht sond 
manche Entwickler wegen der Verbreitung dieser Technik nur etwas 
verschnupft und neidig weil es heute potenziell leichter geht wie in 
ihrer Lernzeit.

Wieviel wurde damals in den achtiger Jahren mit BASIC erreicht. Alle 
möglichen Spiele und Programme wurden damals eifrig entwickelt.

Wirklich komplexe, professionelle Sachen, benötigen meist die 
Entwicklung von ASICs, FPGAs und leistungsfähiger HW. Da endet Arduino 
sowieso und ist die Domaine der Industrie.

von äxl (Gast)


Lesenswert?

ich hab schon einiges mit "processing" gemacht.
https://processing.org/
da finde ich nichts verwerfliches dran.
Zum Arduino: geht schnell ->TtM super.
Den overhaed darf man sich nicht ansehen, klar.
(siehe digitalWrite() als Beispiel).
Man muss ja auch den Anwenderkreis berücksichtigen, für den diese 
Plattform entwickelt wurde...
alles gut soweit, finde ich.

von oldeurope O. (Gast)


Lesenswert?

Alter Sack schrieb:
> Wirklich komplexe, professionelle Sachen, benötigen meist die
> Entwicklung von ASICs, FPGAs und leistungsfähiger HW. Da endet Arduino
> sowieso und ist die Domaine der Industrie.

Das ist eine Fehleinschätzung.

LG
old.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Das ist eine Fehleinschätzung.

Dass wir deinem Urteil vertrauen können, hat sich schon mehrfach 
erwiesen.
In Sachen Entwicklung von eingebetteten Systemen hast du ja schließlich 
mehr Erfahrung, als wir alle zusammen.

von Carl D. (jcw2)


Lesenswert?

Aus der W. schrieb:
> Alter Sack schrieb:
>> Wirklich komplexe, professionelle Sachen, benötigen meist die
>> Entwicklung von ASICs, FPGAs und leistungsfähiger HW. Da endet Arduino
>> sowieso und ist die Domaine der Industrie.
>
> Das ist eine Fehleinschätzung.
>
> LG
> old.

Letzteres ist der ultimative Beweis.

von oldeurope O. (Gast)


Lesenswert?

Nur Palaver. Vor lauter Hass bekommt ihr nichts mehr geschafft
und vergrault Nutzer des Forums. Schade drum, mutzen wird euch
das nichts. Der Bumerang kommt zurück, Leute.
Ach ja, mich werdet ihr nicht los.

LG
old.

von Einer K. (Gast)


Lesenswert?

Mittlerweile ein C++ Buch angeschafft?

Tipp:
Anschaffen reicht nicht.
Es zu lesen/verstehen, ist noch viel wichtiger.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Mittlerweile ein C++ Buch angeschafft?
>
> Tipp:
> Anschaffen reicht nicht.
> Es zu lesen/verstehen, ist noch viel wichtiger.

Das ist so, das ob man erst Latein lernen müsste,
um Französisch lernen zu dürfen.
Für Arduino bedarf es zum Glück keiner Programmiersprache.
Deshalb kann ich erfolgreich damit arbeiten.

von Eric B. (beric)


Lesenswert?

Aus der W. schrieb:
> Das ist so, das ob man erst Latein lernen müsste,

Nein, das ist so als würde man Eier brauchen um ein Omelett zu machen.

von oldeurope O. (Gast)


Lesenswert?

Leute die Zeh können gehen da anders ran.
Aber Arduino ist definitiv für nicht-Programmierer gedacht und geeignet.
Der Erfolg gibt mir recht.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Für Arduino bedarf es zum Glück keiner Programmiersprache.
> Deshalb kann ich erfolgreich damit arbeiten.

Herzerfrischend!

Ich schätze mal, dass diese abgrundtiefe Dummheit, der ganzen Sache die 
Krone aufsetzt. Meinen herzlichen Glückwunsch. Damit schießt du echt den 
Vogel ab.

von Sven K. (quotschmacher)


Lesenswert?

Aus der W. schrieb:
> Für Arduino bedarf es zum Glück keiner Programmiersprache.

lustig, dass die arduino-macher das anders sehen...

> To do so you use the Arduino programming language (based on Wiring),
> and the Arduino Software (IDE), based on Processing.

("programming language" kommt aus dem englischen und heißt übersetzt in 
etwa so viel wie "programmiersprache")

https://www.arduino.cc/en/Guide/Introduction

https://www.arduino.cc/reference/en/

: Bearbeitet durch User
von Joachim B. (jar)


Lesenswert?

Aus der W. schrieb:
> Der Erfolg gibt mir recht.

welcher Erfolg?

bei  #include <rotary.h> kann sich doch KEIN Erfolg einstellen.
Das war dein Sketch der sich so nicht kompilieren lies.

Wenn du diesen Fehler korrigiert hast, warum ist er dann nicht in deinem 
Sketch?

Oder nennst du das Erfolg hier alle zu veräppeln, dann tust du mir nur 
leid.

: Bearbeitet durch User
von oldeurope O. (Gast)


Lesenswert?

Joachim B. schrieb:
> welcher Erfolg?

Der Modulator arbeitet mit dem Sketch.
Und viele andere Projekte auch mit selbst "programmiertem"
Arduino.

Joachim B. schrieb:
> Das war dein Sketch der sich so nicht kompilieren lies.

Ich habe hier keinen Sketch gepostet, der sich nicht kompilieren lässt.
Lüge ruhig weiter rum, irgendwann glaubt das ein Dummer.

LG
old.

von Bernd K. (prof7bit)


Lesenswert?

Arduino Fanboy D. schrieb:
> Ich schätze mal, dass diese abgrundtiefe Dummheit, der ganzen Sache die
> Krone aufsetzt.

Es ist ein satirisches Bühnenstück bei dem die Arduinoisten auf die 
Schippe genommen werden. Kein Klischee bleibt unberührt, alles wird bis 
zum Anschlag übertrieben. Du sollst lachen bis es Dir die Tränen in die 
Augen treibt.

von Zeno (Gast)


Lesenswert?

Aus der W. schrieb:
> Für Arduino bedarf es zum Glück keiner Programmiersprache.

Du hast wirklich nicht alle Tassen im Schrank. Was meinst Du wohl was 
Dein Sourcecode darstellt?

von oldeurope O. (Gast)


Lesenswert?

Zeno schrieb:
> Du wohl was
> Dein Sourcecode darstellt?

Klingt für mich anmaßend das als Programmiersprache zu bezeichnen.
Aber bitte wenn ich das machen darf...

von Bernd K. (prof7bit)


Lesenswert?

Aus der W. schrieb:
> Klingt für mich anmaßend das als Programmiersprache zu bezeichnen.

Hört hört! Der Combjudalinguist hat gesprochen.

von Einer K. (Gast)


Lesenswert?

Bernd K. schrieb:
> Bühnenstück bei dem die Arduinoisten auf die
> Schippe genommen werden



Naja...

Auf die Schippe nehmen, gut und schön...
Glaubst du wirklich daran, dass das nur Theater ist?



Egal wie man Menschen klassifiziert/gruppiert, gerne sind dann 1 bis 2% 
Egozentriker dabei, welche die ganze Menge in Verruf bringen.

Arduino User
Demonstranten
Tierschützer
Motorradfahrer
Weiße, schwarze, gelbe, rote, grüne, blaue usw.
Egal.

von hinz (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Egal wie man Menschen klassifiziert/gruppiert, gerne sind dann 1 bis 2%
> Egozentriker dabei, welche die ganze Menge in Verruf bringen.

Darius (oldeurope) ist ja deshalb schon aus zahllosen Foren mit großem 
Fußtritt rausgeflogen.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Klingt für mich anmaßend das als Programmiersprache zu bezeichnen.
Dass deine Maßstäbe unfehlbar sind, halte ich für erwiesen.

Aus der W. schrieb:
> Aber bitte wenn ich das machen darf...
Natürlich erlaube ich es dir, die Sprache C++, als Programmiersprache, 
zu bezeichnen.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Natürlich erlaube ich es dir, die Sprache C++, als Programmiersprache,
> zu bezeichnen.

Und wie darf ich die darauf basierende Arduino-Programmiersprache
bezeichnen?

von Bademeister (Gast)


Lesenswert?

Kauderwelsch

von oldeurope O. (Gast)


Lesenswert?

Bademeister schrieb:
> Kauderwelsch

Meinetwegen. Ich nenne das Sketch oder Code.

hinz schrieb:
> ist ja deshalb schon aus zahllosen Foren mit großem
> Fußtritt rausgeflogen.

Und du musst deine Identität verstecken, weil du zu den Tretern
gehörst.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Und wie darf ich die darauf basierende Arduino-Programmiersprache
> bezeichnen?

Gar nicht.
Ist einfach nur C++11, mit ein paar vorgekauten Dingen.

Nenne die vorgekauten Dinge "Arduino Framework" oder HAL.
Das versteht hier jeder.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Gar nicht.
Musst dich mal entscheiden
> Ist einfach nur C++11, mit ein paar vorgekauten Dingen.
[Ironie]Und Französisch ist "Latein11 mit ein paar vorgekauten 
Dingen".[/Ironie]

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Musst dich mal entscheiden
Wieso ich?
Reicht doch, wenn du die richtigen Entscheidungen triffst.

Offensichtlich hast du dich mit den Arduino Innereien schon so 
ausführlich beschäftigt, dass da keine Zweifel mehr bei dir auftauchen 
können.

Vermutlich muss ich mich auch in diesem Punkt, vor deiner maßlosen 
Kompetenz verbeugen.

von hinz (Gast)


Lesenswert?

Aus der W. schrieb:

> hinz schrieb:
>> ist ja deshalb schon aus zahllosen Foren mit großem
>> Fußtritt rausgeflogen.
>
> Und du musst deine Identität verstecken, weil du zu den Tretern
> gehörst.

Das ist eine deiner Wahnvorstellungen.

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Musst dich mal entscheiden
Ich muss mich nicht entscheiden, denn ich kann den Beweis führen, dass 
es so ist.
1
void setup() 
2
{
3
  Serial.begin(9600);
4
  Serial.println(__cplusplus);
5
}
6
7
void loop() 
8
{
9
}

Dieses Programm meldet bei mir 201703, was dann eindeutig C++, in der 
Version C++17 bezeichnet.
Bei dir wird höchst vermutlich 201103 gemeldet, also C++11

Versuche das zu wiederlegen, und du wirst daran versagen.

von Eric B. (beric)


Lesenswert?

600! \o/

von oldeurope O. (Gast)


Lesenswert?

Pass mal auf, dass du hier nicht rausfliegst.

(Ich fände das schade, den wenn man hier als Gast fragt,
kann man von hinz durchaus Hilfe bekommen, die sich in
barer Münze auszahlt. Insofern stecke ich seine blöden
Beiträge mit einem Lächeln weg.)

LG
old.

von oldeurope O. (Gast)


Lesenswert?

Eric B. schrieb:
> 600!

Life chat

von hinz (Gast)


Lesenswert?

Aus der W. schrieb:
> Pass mal auf, dass du hier nicht rausfliegst.

Eine weitere deiner Wahnvorstellungen.

von oldeurope O. (Gast)


Lesenswert?

hinz schrieb:
> Eine weitere deiner Wahnvorstellungen.

du darfst das.
Bist mein Mitarbeiter als Bauteile-identifizierter.
Statt Entlohnung stecke ich deine Spinner-Beiträge gerne weg.

von hinz (Gast)


Lesenswert?

Aus der W. schrieb:
> Bist mein Mitarbeiter als Bauteile-identifizierter.

Und noch eine Wahnvorstellung.

von oldeurope O. (Gast)


Lesenswert?

hinz schrieb:
> Aus der W. schrieb:
>> Bist mein Mitarbeiter als Bauteile-identifizierter.
>
> Und noch eine Wahnvorstellung.

Magst wissen in welchem Thread du mir, als mein Mitarbeiter,
am meisten geholfen hast?

von hinz (Gast)


Lesenswert?

Aus der W. schrieb:
> hinz schrieb:
>> Aus der W. schrieb:
>>> Bist mein Mitarbeiter als Bauteile-identifizierter.
>>
>> Und noch eine Wahnvorstellung.
>
> Magst wissen in welchem Thread du mir, als mein Mitarbeiter,
> am meisten geholfen hast?

Kriech doch einfach wieder unter deinen Stein, du stinkender Troll.

von Alter Sack (Gast)


Lesenswert?

Nun, dann werde ich es mal als "Blitzableiter" versuchen...

Erstens, finde ich, daß Eure Meinungsaustausche ein gesundes Maß schon 
lange überschritten haben und nun mittlerweise viele auf ihre 
Hinterbeine stehen. So laßt uns diese gespannte Situation abkühlen und 
lasst die Vernunft siegen bevor Eure Hörner Blut vergießen:-)

Zweitens, führt das alles zu nichts. Es gibt jetzt von Euch schon genug 
Hinweise und gutgemeinte praktische Vorschläge die schon viele uC 
Probleme gelöst haben wenn man vom Internet als solches einmal absieht.

Wenn nun möglicherweise fast alles im Sand verlaufen ist, dann ist es 
vielleicht ein Zeichen für die Moderation den Thread zu erlösen um 
diesen unangenehmen Verlauf zu beenden.

von oldeurope O. (Gast)


Lesenswert?

hinz schrieb:
> du stinkender Troll.

du darfst das. Ich bin der MEIER:
Beitrag "Mikrocontroller identifizieren (Bild)"

Danke für die gute Mitarbeit. Ganz ehrlich ! rotfl

von hinz (Gast)


Lesenswert?

Aus der W. schrieb:
> hinz schrieb:
>> du stinkender Troll.
>
> du darfst das. Ich bin der MEIER:
> Beitrag "Mikrocontroller identifizieren (Bild)"
>
> Danke für die gute Mitarbeit. Ganz ehrlich ! rotfl

Und wann hast du den nächsten Termin bei deinem Psychiater?

von oldeurope O. (Gast)


Lesenswert?

Alter Sack schrieb:
> Wenn nun möglicherweise fast alles im Sand verlaufen ist, dann ist es
> vielleicht ein Zeichen für die Moderation den Thread zu erlösen um
> diesen unangenehmen Verlauf zu beenden.

Der Rotary-Pushbutton ist gekommen, ich werde Euch noch ein
paar Bilder vom Baufortschritt zeigen und den Link zum Blog.

Das Problem hat sich mit der ALC eigentlich erledigt.
Wenn lstz == 0 leuchtet die rote led permanent.
So weiß man, dass die ALC ihre Zuregelgrenze erreicht
hat und den Eingangspegel verringern muss.
Das war es schon. Das Display zeigt Frequenz, Raster
und ggf. Unterspannung. Mehr braucht das nicht.

LG
old.

von Einer K. (Gast)


Lesenswert?

Der Gegenbeweis kommt also nicht.
Aha.

Ein Irrtum wird auch nicht eingestanden.
Tja...

von hinz (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Der Gegenbeweis kommt also nicht.
> Aha.
>
> Ein Irrtum wird auch nicht eingestanden.
> Tja...

Er ist halt ein stinkender Troll.

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Der Gegenbeweis kommt also nicht.
> Aha.

???

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Klingt für mich anmaßend das als Programmiersprache zu bezeichnen.
> Aber bitte wenn ich das machen darf...

Klar ist das eine Programmiersprache. Du kannst halt nicht 
programmieren. Dumm gelaufen.

von oldeurope O. (Gast)


Lesenswert?

Läuft bestens, weil man da keine Hochsprache für können muss.
Arduino eben :-)))))

von Einer K. (Gast)


Lesenswert?

Aus der W. schrieb:
> Arduino Fanboy D. schrieb:
>> Der Gegenbeweis kommt also nicht.
>> Aha.
>
> ???

Herrje...
Da wird aber alles komplett ausgeblendet, was dir nicht in den Kram 
passt, oder?

Hier noch mal, zum mitmeißeln:
Beitrag "Re: I2C "blockiert" Arduino"

von oldeurope O. (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> alles komplett ausgeblendet

Sack Reis halt.

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Läuft bestens, weil man da keine Hochsprache für können muss.
> Arduino eben :-)))))

Wenn ich mal wieder in Solingen bin schaue ich mir Deine Butze (gibt es 
die noch?) mal an. Bin gespannt, ob es passt: "Wie der Herr, so das 
Gescherr" :-).

von oldeurope O. (Gast)


Lesenswert?

Sehr gerne, bist willkommen. :)
Bitte AM-Stereoradio mitbringen - wenn vorhanden.

von Hugo H. (hugohurtig1)


Lesenswert?

Aus der W. schrieb:
> Bitte AM-Stereoradio mitbringen

Nie gehabt - wozu auch, dafür gab es keinen Sender in DE.

von oldeurope O. (Gast)


Lesenswert?

Hugo H. schrieb:
> wozu auch

Spaß an der Freud´
Es gibt Decodereinbausätze oder eben auch die Motorola-ICs
dafür.
Ich habe den Pariser C-QUAM Sender leider knapp verpasst.
Die haben erst Stereo und dann den Sender abgeschaltet.
In NL senden einige in cquam. Dafür habe ich mir das portable
Radio auf dem Bild modifiziert.

https://www.mikrocontroller.net/attachment/432080/IMAG2301.jpg

LG
old,

von äxl (Gast)


Lesenswert?

Aus der W. schrieb:
> das portable
> Radio auf dem Bild

... und so ganz nebenbei gibt es ein Foto in gefühlten 320x240 Pixeln 
mit 96dpi mit dem kompletten Aufbau des zee-kuhukwham 
MittelwellenSenders. Prima.
Aber: blos nicht reagieren, wenn man exakt sowas in zeitgemäßer 
Auflösung in klusive Schaltplan[fordert, abverlangt, wünscht] (es wird 
doch einen, zu diesem Aufbau exakt passenden, Schaltlpan geben!!!). Aber 
man würde ja den Anschein erwecken, als würde man sich einem einzelnen 
unterordnen. Na - blos nicht.

Dabe will ich garnicht wissen, wieviele hier im stillen mitlesen. ;)
Das Teil würde längst auf technisch zeitgemäß hohem Niveau laufen.
Dabei spielt es überhaupt keine Rolle, ob man es nun braucht, und/oder 
nicht.
Hamse ja richtig verkackt, das Projekt der Community schmackhaft zu 
machen. Statt ein Gemeinschaftsding draus zu machen, ist es ein 
Elfenbeinturm-Eigenbrödler-Projekt mit teils fragwürdigen Ansätzen und 
kruden Umschiffungen zur Lösung von vermeintlichen Problemen, die man 
gemeinsam hätte besprechen können, entstanden. Nicht immer heiligt der 
Zweck die Mittel. Sehr schade...

Welchen Stand hat denn dieser Aufbau? Welches ino ist denn hier nun 
letztendlich am werkeln?

War die ganze herablassende Wichtigtuerei also für die Katz', wenns am 
Ende (mit verbeultem) Pilotton eigentlich doch läuft?!?

von Sven K. (quotschmacher)


Lesenswert?

Arduino Fanboy D. schrieb:
> Da wird aber alles komplett ausgeblendet, was dir nicht in den Kram
> passt, oder?

ist aber schon die ganze zeit. stellt man ne kritische frage, wird die 
komplett ignoriert. [ironie]kommt in der frage noch ein positiv 
belegbares wort vor, wird nur das wort zitiert und auf das eigene 
projekt bezogen[/ironie] (die irnoie-tags sind auch schon irnoie...)

von oldeurope O. (Gast)


Lesenswert?

äxl schrieb:
> wenns am
> Ende (mit verbeultem) Pilotton eigentlich doch läuft?!?

Maximale Verunsicherung stiften. Jeder der den Sketch halbwegs
interpretieren kann weiss, dass du wieder mal lügst.

von Eric B. (beric)


Lesenswert?

äxl schrieb:
> Elfenbeinturm-Eigenbrödler-Projekt mit teils fragwürdigen Ansätzen und
> kruden Umschiffungen zur Lösung von vermeintlichen Problemen,

Das kennen wir doch von nebenan: oldeurope == bome??

von Bernd K. (prof7bit)


Lesenswert?

Was wir in dieser Komödie unbedingt noch brauchen ist eine weibliche 
Nebenrolle mit einem romantischen Element. Zum Beispiel eine hochbegabte 
weibliche Nerdin die am MIT studiert hat und fließend Haskell spricht 
und mit der er seinen ersten Sex hat, die ihn dann aber 2 Tage später 
wutentbrannt verlässt als sie herausfindet daß er Leerzeichen statt Tabs 
verwendet und seinen Code nicht richtig einrückt.

: Bearbeitet durch User
von F. F. (foldi)


Lesenswert?

... und in einem anderen Beitrag will er Hilfestellung geben.

von Einer K. (Gast)


Lesenswert?

Sven K. schrieb:
> (die irnoie-tags sind auch schon irnoie...)
Das riecht aber schon ein Wenig wie eine Rekursion.

Aus der W. schrieb:
> lügst
Eigentlich sehe ich hier im Thread nur einen Lügner.
Einen, der welcher sich scheinbar gerne selber belügt und es gar nicht 
merkt.

PS:
Habe letzte Tage schon den Vorgang zum Bundesamt für Merkbefreiung 
übertragen. Die werden sich demnächst bei dir melden. Laut erster 
Rückmeldung wird die Merkbefreiung vermutlich unbefristet ausfallen.

Beitrag #6014951 wurde von einem Moderator gelöscht.
Beitrag #6014968 wurde von einem Moderator gelöscht.
von Einer K. (Gast)


Lesenswert?

> [Endet 31.10.]
Meine volle Zustimmung, es hat.

Beitrag #6014973 wurde von einem Moderator gelöscht.
Beitrag #6014987 wurde von einem Moderator gelöscht.
von oldeurope O. (Gast)


Angehängte Dateien:

Lesenswert?

Ich möchte Euch noch den Sketch nachreichen, der mit allen
Displayanzeigen so funktioniert wie ich mir das Wünsche. :-)))

Beitrag "I2C "blockiert" Arduino [Endet 31.10.]"

LG
old.

von Bulimie-code (Gast)


Lesenswert?

Ist immernoch genauso unlesbar...
Und mit den selben Fehlern ausgestattet.

A B E R!!!!


Wenn dir das genügt und es seine Funktion erfüllt,
Viel Erfolg weiterhin mit dem Projekt.

von Stefan F. (Gast)


Lesenswert?

Aus der W. schrieb:
> Ich möchte Euch noch den Sketch nachreichen,

Oh nein, bitte nicht schon wieder!

von Brain 2.0 (Gast)


Lesenswert?

Stefanus F. schrieb:
> Oh nein, bitte nicht schon wieder!

Wieso, war doch sehr unterhaltsam. ;)

von Äxl (Gast)


Lesenswert?

... gehört nach "Projekt und Code"

Stimmt denn die Zeile mit der display-Initialisierung?
Das Schlüsselwort "POSITIVE" wurde vom Ersteller der Lib Anfang November 
2018 bereits als obsolet erklärt und entsprechend berichtigt. Verstehe 
ich grad nicht. Läuft da noch die ganz alte Version?

von oldeurope O. (Gast)


Lesenswert?

Äxl schrieb:
> ... gehört nach "Projekt und Code"

Habe einen Blog dafür gestartet. Ich hoffe bis Dezember damit fertig zu 
werden.

https://c-quam.blogspot.com/2019/10/a-cquam-mit-arduino-und-ad9850.html

Dort könnt Ihr das Projekt verfolgen.


LG
old.

von spess53 (Gast)


Lesenswert?

Hi

>Habe einen Blog dafür gestartet. Ich hoffe bis Dezember damit fertig zu
>werden.

Auf Mittelwelle in Stereo habe ich schon ein Leben lang gewartet. Und 
das mit einer Sendeleistung <=100W (der Amateursender meines ehemaligen 
Physiklehrers hatte wesentlich mehr Watt). Wie weit nach DE reicht das 
denn deiner Meinung nach?

Das Interesse an deinem Blog dürfte gegen Null gehen. Auf todgerittene 
Pferde setzen nur Idioden.

MfG Spess

Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.