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.
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.
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.
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.
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.
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.
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?
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.
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!
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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?
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?
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.
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.
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!
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.
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.
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.
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.
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.
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...
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.
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.
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.
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
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.
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.
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.
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
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)
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.
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.
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.
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.
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...
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.
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().
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.
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.
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.
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.
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.
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.
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.
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
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.
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
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.
ä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.
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
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 :-)
ä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.
voidint_1ms(void)// to be called from the 1ms interrupt
10
{
11
staticuint8_tstep25;
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.
ä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.
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?
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
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.
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!
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...
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.
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.
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.
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.
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?
ä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.
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
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?
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
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?
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"
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.
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
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.
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.
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.
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.
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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!
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.
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.
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.
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
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.
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.
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.
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.
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.
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.
"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
ä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.
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.
ä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....
ä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.
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 :)
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
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.
Arduino Fanboy D. schrieb:> Hier stehen sicherlich weit über 300 Mannjahre Programmiererfahrung als> Berater zur Seite.
Guter Witz zum Wochenanfang. :)))
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
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?
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.
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_tI2C::sendByte(uint8_ti2cData)
2
{
3
TWDR=i2cData;
4
unsignedlongstartingTime=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_tbufferedStatus=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
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.
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.
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.
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.
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?
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.
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.
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.
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).
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.
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.
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.
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
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.
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
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
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.
Ä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.
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...
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 :-)
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.
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.
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
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
Ä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.
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.
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.
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?
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.
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.
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.
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.
Ä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?
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.
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.
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.
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?
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?
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*
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*
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.
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...
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.
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.
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 ;)
ä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.
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.
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
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.
ä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
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.
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.
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.
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.
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.
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...
>ä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.
Aus der W. schrieb:> https://radio-bastler.de/forum/showthread.php?tid=8756&pid=154185#pid154185https://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?
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.
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...
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
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 ;)
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.
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...
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.
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.
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.
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!
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.
> 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.
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?
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
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.
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.
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.
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
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.
Zeno schrieb:
> if SchleifenZeno schrieb:> Dir sollte man mal Anstand bei bringen.
Du bräuchtest erstmal ein C-Buch Herr if Schleife ;)
http://if-schleife.de/
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.
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.
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.
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.
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.
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.
Ä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.
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.
Ä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.
Ä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]
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?
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.
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?
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.
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?
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.
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.
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.
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.
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.
.. 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"
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) ?
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.
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
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.
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.
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.
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.
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
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
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
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...
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.
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.
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.
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.
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.
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.
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.
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.
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!
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.
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.
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.
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
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!
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.
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
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.
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.
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
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)
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.
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.
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.
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.
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!".
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
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.
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.
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
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.
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.
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
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 :-)
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
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
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?
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.
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 ... :-)
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.
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.
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
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.
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.
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.
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.
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 ... :)
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!
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.
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
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.
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
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?
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;
}
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
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
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.
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
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
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.
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
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.
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 !
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
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.
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
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
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.
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
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.
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
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.
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.
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.
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.
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.
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.
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.
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. :-)
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.
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.
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.
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
volatileinti=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.
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
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.
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.
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
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.
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.
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.
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
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.
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.
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 :-/
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?
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.
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 ...
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
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.
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
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.
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
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 ...
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.
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.
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
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
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
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
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
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.
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!
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.
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.
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...
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
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
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.
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!
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
ä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.
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.
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?
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?
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.
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.
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.
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"
ä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
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.
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...
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
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.
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.
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.
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.
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
ä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.
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.
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.
ä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.ä.
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.
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.
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.
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.
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
Ä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.
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.
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.
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?
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
> 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 ...
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 ;-)
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.
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"
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?
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>"
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? ;-)
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.
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
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
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
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.
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.
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
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?
ä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...
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.
ä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.
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?
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..
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)
>> " 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
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/
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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/Introductionhttps://www.arduino.cc/reference/en/
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.
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.
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.
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?
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...
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.
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.
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.
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?
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.
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.
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]
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.
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.
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
voidsetup()
2
{
3
Serial.begin(9600);
4
Serial.println(__cplusplus);
5
}
6
7
voidloop()
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.
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.
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.
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?
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.
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.
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?
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.
Arduino Fanboy D. schrieb:> Der Gegenbeweis kommt also nicht.> Aha.>> Ein Irrtum wird auch nicht eingestanden.> Tja...
Er ist halt ein stinkender Troll.
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.
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"
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" :-).
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,
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?!?
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...)
ä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.
ä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??
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.
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.
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.
... 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?
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