Ich will meinem Sohn helfen allerdings habe ich keine Ahnung, wie dass funktionieren soll kann mir jemand ein Programm erstellen. Auftrag AIIT-uC07V1.0 – USART II Aufgabenstellung Grundaufgabe: mittels USART morsen Grobziel dieser Aufgabe: Morsen von über die Tastatur eingegebenen Zeichen. Entwickle ein Programm, mit dem eine vom Benutzer eingegebene Zeichenkette gemorst wird. Der Programmablauf und einige Details werden folgendermaßen festgelegt: • Der Benutzer wird über die serielle Schnittstelle im Terminal aufgefordert eine Zeichenkette einzugeben. ◦ Die Zeichenkette darf Groß- & Kleinbuchstaben sowie Leerzeichen und Ziffern enthalten. Andere Zeichen werden zwar entgegengenommen, aber später (beim Morsen) ignoriert. ◦ Die vorzusehende Zeichenkettenlänge berechnet sich individuell folgendermaßen: length = Klassenkatalognummer + 6 • Dann soll am Terminal der zu morsende Text angezeigt werden. Die nicht morsbaren Zeichen werden nicht angezeigt. • Dann wird die Anzahl der zu morsenden Zeichen am Terminal angegeben. (Anzahl = ...) • Dann wird ein Countdown angezeigt von 5 bis 0, der das Morsen ankündigt. (Morsen beginnt in 5, 4, 3, 2, 1, go! • Dann wird die Zeichenkette gemorst. • Nach einer Sekunde Pause beginnt die Sequenz von neuem, der Benutzer kann einen neuen Text eingeben. Hinweise • Wenn etwas in dieser Beschreibung nicht eindeutig festgelegt ist, aber zur Problemlösung festgelegt werden sollte, dann legen Sie es fest. Dokumentieren Sie getroffene Festlegungen samt Erläuterungen im Kopfkommentar Ihres Quellcodes. Beispielsweise ist hier nicht festgelegt ◦ womit gemorst wird. Dazu gibt es verschiedene Möglichkeiten: Buzzer (cool!), onboard LED (langweilig!), externe LED (ok...) ◦ woher die im Programm verwendeten Timings sind (wie lange ist ein Punkt, eine Pause ein Strich); suche dazu im Internet eine "ordentliche" Quelle • Lass Dich von Deinen eigenen Ideen leiten! Du kannst gerne Erweiterungen einbauen, z. B. Könnte jedes Zeichen während es gemorst wird am Terminal angezeigt werden. Dokumentiere auch diese im Kopfkommentar.
maria schrieb: > kann mir jemand ein Programm erstellen. Ja und ich kann dir damit dann den Quellcode morsen ;)
maria schrieb: > Ich will meinem Sohn helfen allerdings habe ich keine Ahnung, wie dass > funktionieren soll ich gehe mal davon aus, dass das so stimmt - ab und zu glaube ich auch an das gute im menschen. welchen teil hat der sohn denn schon umgesetzt/konzipiert und wo gibt es probleme? gibt es schon ein konzept? welches wissen sollte vorhanden sein, in welchem zusammenhang steht die aufgabe? was sind die rahmenbedingungen für das projekt? (welche plattform/controller, ...) aber ohne eigenen input wird das hier nichts, fragen wie "bitte macht mir meine hausübungen/praktikumsaufgaben/..." sind hier nicht gern gesehen. fragen zu details oder auch hilfe bei problemen gibt es sicher, aber eben keine vollständigen aufgaben (sofern sie nicht so trivial sind, dass sie nur durch die vollständige lösung beantwortet werden können wie z.b. "hallo welt")
maria schrieb: > Ich will meinem Sohn helfen allerdings habe ich keine Ahnung, wie dass > funktionieren soll kann mir jemand ein Programm erstellen. Dein Sohn sollte das können. Den kannst du ja mal fragen. Oliver
Sollte aber wir stehen momentan ganz am Anfang Ich suche jemanden der ihm den beginn erklären konnte er weis nicht wie er anfangen soll.
Wir wissen garnicht auf welcher Hardware... Er wird da ja irgendein Evalboard mit einem Microcontroller oder ähnliches haben.
Satzzeichen kann man übrigens auch mittig platzieren. maria schrieb: > er weis nicht wie er anfangen soll. "Divide et impera" ist beim Entwicklen ein sehr guter Ansatz. Der Sohnemann soll das Große und Ganze in Teilprobleme zerlegen. z.B. - Verbindung zum Terminal aufbauen - Senden einer Zeichenkette - Empfangen einer Zeichenkette - usw. Und dann Punkt für Punkt abarbeiten. Dafür sollten die im Unterricht (?) erarbeiteteten Grundlagen reichen. Bzw. deren Vertiefung.
Als Hilfe zum Programmieren Stelle ich hiermit kostenlos zur Verfügung:
ein Sortiment Sonderzeichen und Klammern. Davon werden beim
Programmieren IMMER benötigt.
......,,,,,"""""""''''''::::::;;;;;;;;;;;;;;;;;;;$$$$$$%%%%]]]]]]]]]>>>>
>>>{{{{{{{{[[[[[[[[~~~~^^^<<<<<]]]]]]]}}}}}}}}}}})))))))))))((((((((====
======¦¦¦¦&&&&&&;;;;,,,,,,,,;;;;;;;;;;;;;;;
Bei Bedarf dürfen diese beliebig vervielfältigt werden.
Visual Studio C Programm es muss auf Arduino Mega 2560 abgespielt werden
maria schrieb: > Ich suche jemanden der ihm den beginn erklären konnte er weis nicht wie > er anfangen soll. Vielleicht derjenige, der ihm die Aufgabe gegeben hat?
Nicht verzweifeln, einfach machen! Fang einfach mit einem kleinen teil an, und mach weiter, bis alles da ist. Als erstes musst du es schaffen, überhaupt ein Programm zu kompilieren und dort drauf zu tun. Was ein "AIIT-uC" sagt mir jetzt erstmal nichts. Zunächst müsste man einen Compiler oder ne Buildumgebung für die Zielplatform finden, um die Programme damit übersetzen zu können. Dann bracht man auch Dokumentation zum uC und/oder Libraries vom Hersteller falls vorhanden. Hardwarenahes zeug ist je nach Hardware wieder etwas anders im Code anzusteuern. Und dann muss man nachsehen, ob das Kompilieren und Hochladen auch funktioniert. Man findet eigentlich immer irgendwo ein LED-Blinkprogramm für so ziemlich jede Platform, das man dann dafür nutzen kann. Wenn man das mal hat, kann man erst richtig anfangen. Dann geht man schritt für schritt vor. Im Grunde braucht es: * Zeichen über serial senden * Zeichen über serial empfangen * Pin/Led/Buzzer ein/aus schalten Wenn man die Teile mal zusammen hat, muss man es dann nur noch zusammensetzen. Aber da musst du selbst durch. maria schrieb: > Visual Studio C Programm es muss auf Arduino Mega 2560 abgespielt werden Dann fängst du am besten hier an: https://www.arduino.cc/en/tutorial/blink Wenn das geht, nach "Arduino Serial" weiter googeln, usw.
Genervt schrieb: > Vielleicht derjenige, der ihm die Aufgabe gegeben hat? Vermutlich hat es derjenige getan und vielleicht hat der Sohnemann es nicht für notwendig gehalten, diesem Aufmerksamkeit teil werden zu lassen?
ich würd mich erst mal erkundigen, was ne Klassenkatalognummer ist. ;-O mfg
maria schrieb: > Sollte aber wir stehen momentan ganz am Anfang Ich suche jemanden der > ihm den beginn erklären konnte er weis nicht wie er anfangen soll. Ideen schriftlich erfassen, sortieren und strukturieren. Gerne mit Bleistift auf Papier. Z.B. nach dem Prinzip "E.V.A. = Eingabe, Verarbeitung, Ausgabe" Etwa in der Art von: - Codiertabelle "Buchstabe zu Morsezeichen" aufbereiten, - Klartext entgegennehmen, zwischenspeichern, - Kennwerte vom Klartext (u.B. länge) bestimmen/berechnen und zwischenspeichern, - Klartext mit Hilfe der Codiertabelle, Buchstabe um Buchstabe, nach Morsetext umsetzen und zwischenspeichern, - Morsetext ausgeben, (- Ende oder Neuanfang) Ggfs. jeden Zwischenschritt verfeinern. Jeden Zwischenschritt mit der gegebenen Programmiersprache und Bibliotheken umsetzen. Z.b. welche Datentypen & -Strukturen sind geeignet um Texte resp. Zahlen zwischen zu speichern? Welche Wertebereiche? Wieviel davon? Wie lauten in der gegebenen Programmiersprache die Befehle um "Text" einzulesen? Wie lauten die Befehle um "Text" auszugeben? Und Zahlen? Usw.
...ist dies ein Fall für die C't-Tasse "dei Mudda projammiet in BASIC"?
Um das Grundprinzip beim Programmieren nochmal zu illustrieren: https://pbs.twimg.com/media/Bs13i6LCcAAvwCf.jpg
So etwas heißt Morse-Schreibmaschine oder CW-Keyboard. Hier erfolgte die Eingabe über eine PC-Tastatur (der Unterschied zur Eingabe über serielle Schnittstelle ist nicht groß): https://web.archive.org/web/20160817081430/http://proehl-elektronik.de/cwk/manual/cwkt_bedan_10feb2010.pdf https://web.archive.org/web/20111229045211/http://www.proehl-elektronik.de/cwk/cwk.html Hier kann man direkt ausprobieren, wie die Codierung aussieht: https://www.topster.de/text/morse.html "Der Morse-Code Umwandler wandelt einen Satz in Morse-Zeichen um." und mal wieder der übliche Fehler, er übersieht, dass es drei unterschiedliche Pausenlängen gibt: "Morsezeichen bestehen aus drei Symbolen: kurzes Signal, langes Signal und Pause" Blödsinn! Es sind fünf Elemente, aus denen decodierbarer Morsetext aufgebaut wird.
~Mercedes~ . schrieb: > ich würd mich erst mal erkundigen, was ne > Klassenkatalognummer ist. ;-O > > mfg Ich bin mir meistens nicht ganz sicher, wie man diese Unmengen an Emoticons deuten soll, die du in deinen Posts versuchst unterzubringen. Was soll z.B. ;-O bedeuten? Bietest du dem Leser mit Augenzwinkern einen Blowjob an?
Speziell die geforderten "5er-Gruppen" werden zum Morsen-Lernen benutzt. Mal nachschauen was es unter Ubuntu-Linux für den PC gibt: aldo Trainingsprogramm für Morse-Code Aldo ist ein Morse-Lernprogramm, das vier Typen von Übungsmethoden anbietet: blocks, koch, file und callsign. Blocks: Bestimmen Sie Blöcke von zufälligen Zeichen, die Ihnen im Morse-Code vorgespielt werden. Koch: Zwei Morsezeichen werden mit voller Geschwindigkeit (20wpm) gespielt, bis Sie mindestens 90 Prozent von Ihnen erkennen. Danach wird ein Zeichen hinzugenommen und so weiter. File: Identifizieren Sie die aus einer Datei erzeugten, vorgespielten Zeichen. Callsign: Identifizieren Sie zufällige, im Morse-Code abgespielte Rufzeichen. cw Morsecode-Lernprogram - Befehlszeilen-Benutzerschnittstelle Das Projekt unixcw unterstützt beim Lernen der Anwendung von Morsecode. This package provides two executables: * cw - a simple command line application that converts key-presses to Morse code that can be heard through the console buzzer or a sound card; * cwgen - a program that generates groups of random characters for Morse code practice, which can be piped to the cw program. Das Paket enthält außerdem Beispieldateien (mit der Erweiterung »cw«). Mit den darin enthaltenen Befehlen können Eigenschaften wie Geschwindigkeit, Ton und Abstand der Zeichen verändert werden. ebook2cw Umwandlung von eBooks in Morse, MP3s oder OGGs ebook2cw ist ein Kommandozeilenprogramm, das eine Klartext-Datei (ISO 8859-1 oder UTF-8, eBook) in Morse-Code, MP3- oder OGG-Audiodateien umwandelt. Es teilt die Ausgabedateien automatisch in nummerierte Kapitel auf. morse training program about morse-code for aspiring radio hams Es kann zufällig Tests oder simulierte QSOs, wie sie im ARRL-Test verwendet werden, generieren. Ein QSO-Generator ist enthalten. Es gibt eine Fülle von Optionen, um die Trainingsmethode zu variieren. In einem der einfacheren Modi liest das Programm Text von der Standardeingabe und gibt Morsecode-Töne aus. morse-x morse "practicing" tool for X morse-x offers you a window to put dits and daws into - by pressing any key (except q = quit). On the console it prints each character you morsed in. (So start it in an x-terminal-emulator.) On the first execution you have to calibrate the length of dits and daws, so just follow the instructions on the console. xcwcp Morse code tutor - graphical user interface Das Projekt unixcw hilft beim Erlernen des Morsecodes. This package provides an interactive Morse code tutor with a Qt4 user interface. It allows choosing from a number of options for practice, including sending random characters, random words, and characters from the keyboard. It will also receive Morse code sent using the keyboard or mouse as a Morse keyer, and display the characters it sees. Davon gibt es sicher noch mehr. https://gc.de/gc/morse/ noch ein Text-zu-Morse-Umwandler Ein Morse-Trainer mit ATtiny: https://www.elektronik-labor.de/AVR/Morsetrainer4.html Programm "Master of Morse": http://www.datalos.de/
:
Bearbeitet durch User
Fragibus meinte: > Was soll z.B. ;-O bedeuten? Bietest du dem Leser mit Augenzwinkern einen > Blowjob an? Bedeutet ";-O" nicht Erstaunen? Ich bin das in der Family ja so gewohnt, da wir schriftlich kommuniziert haben. Ich kann ja erst seit nem Jahr hören... @maria Auf welcher Hardware soll das ganze beruhen? Auf Arduino? Wenn ja, würd ich mich erkundigen, ob auch "C++" möglich ist, "C" wäre vom Lehrer fies... mfg
maria schrieb: > Ich will meinem Sohn helfen allerdings habe ich keine Ahnung, wie dass > funktionieren soll Ach ja... > kann mir jemand ein Programm erstellen. soso... nicht arbeiten, arbeiten lassen! Ich hoffe die Antwort ist unisono NEIN, Aber wie Du siehst bemühen sich einige dir zu helfen das SELBER zu tun! Anderenfalls kannst Du gerne n preisvorschlag posten, mal sehen wer anbeisst.. 'sid
Diese Aufgabne ist keine, die völligen Programmieranfängern gestellt wird. Da muß es schon einiges an vorherigem Lernen gegeben haben. Also frag deinen Sohn... Oliver
Christoph db1uq K. schrieb: > "Morsezeichen bestehen aus drei > Symbolen: kurzes Signal, langes Signal und Pause" Blödsinn! Es sind fünf > Elemente, aus denen decodierbarer Morsetext aufgebaut wird. Die Wikipedia (und vermutlich auch Herr Morse) kenne nur 3 Grundelemente: Kurz, lang und "Pause" (die Pause mit unterschiedlicher Länge) Ein Dah ist dreimal so lang wie ein Di. Die Pause zwischen zwei gesendeten Symbolen ist ein Di lang. Zwischen Buchstaben in einem Wort wird eine Pause von der Länge eines Dah (oder drei Di) eingeschoben. Die Länge der Pause zwischen Wörtern entspricht sieben Di. Deine Interpretation von 3 verschieden langen Pausen als 3 eigenständigen Elementen würde ja auch "1 Stopbit, 1,5 Stopbit oder 2 Stopbit" bei der seriellen Schnittstelle als 3 unterschiedliche Elemente auffassen, und nicht als "Stopbit(s) unterschidlicher Länge". Stimmts?
Oliver S. schrieb: > Diese Aufgabne ist keine, die völligen Programmieranfängern gestellt > wird. Da muß es schon einiges an vorherigem Lernen gegeben haben. > > Also frag deinen Sohn... Vielleicht ist "maria" aber einfach nur die Sockenpuppe von "marias Sohn", und es gibt gar keine 2 verschiedene Personen ... https://de.wikipedia.org/wiki/Sockenpuppe_(Netzkultur)
:
Bearbeitet durch User
Vielen Dank an alle die mir helfen wollten, mir ist es zu peinlich wenn jemand glaubt ich wurde es ausnutzen das mir jemand Hausübung für meinen Sohn schreiben soll .Wenn es der Lehrer erklärt hätte und er es nicht verstanden hat, war auch momentan nicht die Situation wegen Corona jemanden zu finden der ihm dass erklären konnte. Bitte gibt mehr keine Antwoten mehr , er soll draus Lernen. Nochmals danke an die Leute die mir helfen wollten.
Wegstaben V. schrieb: > Vielleicht ist "maria" aber einfach nur die Sockenpuppe von "marias > Sohn", ziemlich clever ;)
Können wir uns mal alle kurz freuen, dass die Aufgabe zumindest gut gestellt wurde? Zur Lösung: Wie schon oben beschrieben, musst du die Aufgabe in Blöcke zerlegen und einzeln angehen: - Wie lese ich Strings aus der seriellen Schnittstelle? - Wie bekomme ich Groß, Kleinschreibung gleich behandelt? (Hint: alles groß oder klein machen) - Wie übersetze ich in Morsecode (i.B. der Satzzeichen Leerzeichen und Pausen) - Wie gebe ich das Ergebnis zurück über die Serielle Schnittstelle? - Wie baue ich eine Pause / einen Countdown? - Wie steuere ich das ganze auf einen Ausgang. Für alles dürften sich Beispiele per Google finden lassen. Tips: - Bei der "ordentlichen" Quelle ist wahrscheinlich alles außer Wikipedia verlangt. - Programmteile in Funktionen zu gruppieren kommt immer gut an. - Textbausteine wären evtl. noch eine erfreuliche Erweiterung
> Vielleicht ist "maria" aber einfach nur die Sockenpuppe von "marias > Sohn", und es gibt gar keine 2 verschiedene Personen ... Meint Ihr, son Teil wo frau dauernd Nadeln reinstecken kann? Dann sollte maria's Sohn sich doch mal auf nem total teerigen, und in der Szene total verschrienden Bord anmelden, zum Beispiel bei www.mikrocontroller.net , um zu sehen, ob unter dem Teer vielleicht ein Herz aus Gold ist ... ;-O mfg
Welche Hardware wird von der Aufgabe gefordert: >über die serielle Schnittstelle im Terminal >arduino mega 2560 Also ein PC mit Terminalprogramm, ich würde z.B. Hterm benutzen, alt aber bewährt: http://www.der-hammer.info/pages/terminal.html Ersatzweise ein Raspberry Pi. z.B. mit Cutecom als Terminalprogramm. einem USB-Seriell-Kabel ein Pegelumsetzer von serieller Schnittstelle auf den Arduino-Pegel z.B. https://eckstein-shop.de/USB-zu-UART und der Arduino Mega 2560: https://store.arduino.cc/arduino-mega-2560-rev3 Natürlich noch die Stromversorgungen, Bildschirm, Tastatur und Maus
Udo S. schrieb: > Der Troll "maria" kriegt von mir 9 von 10 Trollpunkten :-) Oh, mann, so ein symbolträchtiger Name... ;-O Das Projekt ist doch gar nicht schlecht, nur, wenn ich sowas vorhätte, würde ich mich anmelden, mich vorstellen, und ein Thread im Projekte & Code aufmachen. Ob ich dann nur ne "Cassandra" stören, oder ein wirkliches brain storming auslösen könnte? mfg
maria schrieb: > Ich will meinem Sohn helfen allerdings habe ich keine Ahnung, wie dass > funktionieren soll kann mir jemand ein Programm erstellen Hallo Mario, das tut mir leid das du der Vater von jemandem bist der Hilfe braucht denn eine Hilfe bist du ihm nicht auch wenn du Internet hast und er nicht sonst hätte er ja selber schreiben können Vielleicht lernst du erstmal mit ihm zusammen Deutsch vor allem Ausdruck und Rechtschreibung mit dem Schwerpunkt auf der korrekten Verwendung von Satzzeichen dann werden deine Texte bestimmt gleich viel lesbarer
Ich höre gerade vom Kollegen, der das schon benutzt hat: man benötigt keine zusätzliche Schnittstelle, der im Arduino eingebaute USB/Seriell-Wandler ist ohne Umstöpseln für den Bootloader und ein Programm nutzbar. Und die Arduino-Programmierumgebung enthält ein serielles Terminal. Damit vereinfacht sich das ganze deutlich. Von C oder C++ sehe ich nichts in der Aufgabenstellung, ich nehme an, dass die Arduino-IDE benutzt werden soll. Die Aufgabe enthält keine Echtzeitanforderungen, die kompliziertere Interruptprogrammierung und ähnliches benötigen, Morsezeichen sind eine ziemlich langsame Aufgabe, schließlich muss ein Mensch sie noch mithören können..
~Mercedes~ . schrieb: > Bedeutet ";-O" nicht Erstaunen? Naja, vielleicht erstaunt mit Fliege im Auge. Aber in beiden Fällen passt es kontextmäßig nicht bzw. nie. Ich meine ja nur. > Ich bin das in der Family ja so gewohnt, > da wir schriftlich kommuniziert haben. > Ich kann ja erst seit nem Jahr hören... Verstehe den Zusammenhang nicht. Finde es aber interessant, dass du erst seit einem jahr hören kannst. Wenn das nicht so absulot OT wäre würde ich dich fragen, was da los war, wennn ich dürfte.
Naja, so grob: Hardware genauer ansehen sowas ähnliches wie https://www-user.tu-chemnitz.de/~heha/viewchm.php/hs/ATmegaX8.chm/20.htm bzw. Datenblatt besorgen, Entwicklungskit/Dokumentation gut ansehen, eventuell sind da schon sehr gute Hilfen oder Beispielprogramme dabei. Und natürlich den dazugehörigen Unterrichtsstoff ansehen. Irgendwo im Netz fliegen auch noch Morsecode-Programme in c oder c++ oder sonstwie herum, auch darauf kann man zur Not zurückgreifen.
maria schrieb: > Sollte aber wir stehen momentan ganz am Anfang Ich suche jemanden der > ihm den beginn erklären konnte er weis nicht wie er anfangen soll. Wo sollen wir den Anfangen? Etwa beim Physikunterricht der 8 Schulklasse? Was da abgefragt wird, ist der Lehrstoff mehrere Jahre! Das kann man nicht mal eben schnell in einer öffentlichen Diskussion nachholen. Für so etwas sollte man in eine Schule gehen und danach studieren oder in eine Fachausbildung.
Fragibus meinte: > Verstehe den Zusammenhang nicht. Finde es aber interessant, dass du erst > seit einem jahr hören kannst. Wenn das nicht so absulot OT wäre würde > ich dich fragen, was da los war, wennn ich dürfte. Beitrag "2m FM Ausbildungscontest" Ich hab mich in diesem Thread, ganz hinten vorgestellt.
maria schrieb: > Vielen Dank an alle die mir helfen wollten, mir ist es zu peinlich wenn > jemand glaubt ich wurde es ausnutzen das mir jemand Hausübung für meinen > Sohn schreiben soll .Wenn es der Lehrer erklärt hätte und er es nicht > verstanden hat, war auch momentan nicht die Situation wegen Corona > jemanden zu finden der ihm dass erklären konnte. @maria hättest du etwas mehr Hintergrund-Infos (zur Situation etc) gegeben, wärest du nicht so "abgewatscht" worden. Hättest du dich angemeldet, hätte man sogar gegebenenfalls per Direktnachricht (PN) dich kontaktieren können. Es ist allerdings schon recht ungewöhnlich, das "Mutti" für ihren Sohn in einem technischen Forum nach technischen Dingen fragt, welche sie möglicherweise (du schriebst ja auch nichts zu deinen Kenntnissen etc) dann vielleicht doch nicht so richtig einordnen kann. --> Vielleicht macht ihr zwei Hübschen noch mal einen "restart", meldet euch beide! an mit "Mutti" und "Sohn_von_Mutti", und lasst uns die Aufgabenstellung noch mal neu durchdenken und durchdiskutieren.
:
Bearbeitet durch User
Wegstaben V. schrieb: > Es ist allerdings schon recht ungewöhnlich, das "Mutti" für ihren Sohn > ... nach ... Dingen fragt Meine Frau und fast alle anderen Mütter in meinem Bekanntenkreis ersetzen ebenfalls mit großer Mühe den fehlenden Unterricht. Es läuft zur Zeit so, dass die Lehrer Aufgabenblätter verteilen und dann die Schüler zusammen mit ihren Eltern (meist Müttern) herausfinden müssen, wie man sie löst.
Stefan ⛄ F. schrieb: > Es läuft > zur Zeit so, dass die Lehrer Aufgabenblätter verteilen und dann die > Schüler zusammen mit ihren Eltern (meist Müttern) herausfinden müssen, > wie man sie löst. ok, das hab ich nicht bedacht. Also los, Muttis, (gerne auch Vatis) meldet euch reichlich an hier auf mc.net, und lasst uns unbekannte Aufgabenstellungen heraus finden!
:
Bearbeitet durch User
1 | ~ $echo "Hallo Welt!" | morse.pl |
2 | .... .- .-.. .-.. --- .-- . .-.. - ..--.. |
OK, du brauchst ja das Programm. Also:
1 | ~ $cat bin/morse.pl | morse.pl |
2 | ..--.. ..--.. -..-. ..- ... .-. -..-. -... .. -. -..-. .--. . .-. .-.. -....- .-- |
3 | ..--.. |
4 | ..--.. -.--. .-- -.--.- -..- .-.. ..--- ----- ----- ..--- -..-. ----- ..--- -..-. .---- ..... |
5 | |
6 | ..- ... . .-.. --- -.-. .- .-.. . ..--.. |
7 | ..- ... . --. . - --- .--. - ---... ---... ... - -.. ..--.. |
8 | ..- ... . ...- .- .-. ... --.- .-- .-..-. ..--.. --- .--. - ..--.- -.. .-..-. ..--.. |
9 | --. . - --- .--. - ... -.--. .----. -.. .----. -.--.- ..--.. |
10 | |
11 | .-- .... .. .-.. . -.--. ..--.. ..--.. -.--.- -.--. |
12 | -.-. .... --- .--. ..--.. |
13 | .--. .-. .. -. - ..--.. --- .--. - ..--.- -.. ..--.. -.. . -.-. --- -.. . -.--. ..--.. ..--.- -.--.- ---... . -. -.-. --- -.. . -.--. ..--.. ..--.- -.--.- ..--.. |
14 | .--. .-. .. -. - .-..-. ..--.. -. .-..-. ..--.. |
15 | -.--.- |
16 | . -..- .. - ----- ..--.. |
17 | |
18 | ... ..- -... . -. -.-. --- -.. . -.--. |
19 | ..--.. -.-. .... .- .-. ..--- -- --- .-. ... . -...- -.--. |
20 | .-..-. .- .-..-. -...- ..--.. .-..-. .-.-.- -....- .-..-. --..-- .-..-. -... .-..-. -...- ..--.. .-..-. -....- .-.-.- .-.-.- .-.-.- .-..-. --..-- .-..-. -.-. .-..-. -...- ..--.. .-..-. -....- .-.-.- -....- .-.-.- .-..-. --..-- |
21 | .-..-. -.. .-..-. -...- ..--.. .-..-. -....- .-.-.- .-.-.- .-..-. --..-- .-..-. . .-..-. -...- ..--.. .-..-. .-.-.- .-..-. --..-- .-..-. ..-. .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- -....- .-.-.- .-..-. --..-- |
22 | .-..-. --. .-..-. -...- ..--.. .-..-. -....- -....- .-.-.- .-..-. --..-- .-..-. .... .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- .-.-.- .-.-.- .-..-. --..-- .-..-. .. .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- .-..-. --..-- |
23 | .-..-. .--- .-..-. -...- ..--.. .-..-. .-.-.- -....- -....- -....- .-..-. --..-- .-..-. -.- .-..-. -...- ..--.. .-..-. -....- .-.-.- -....- .-..-. --..-- .-..-. .-.. .-..-. -...- ..--.. .-..-. .-.-.- -....- .-.-.- .-.-.- .-..-. --..-- |
24 | .-..-. -- .-..-. -...- ..--.. .-..-. -....- -....- .-..-. --..-- .-..-. -. .-..-. -...- ..--.. .-..-. -....- .-.-.- .-..-. --..-- .-..-. --- .-..-. -...- ..--.. .-..-. -....- -....- -....- .-..-. --..-- |
25 | .-..-. .--. .-..-. -...- ..--.. .-..-. .-.-.- -....- -....- .-.-.- .-..-. --..-- .-..-. --.- .-..-. -...- ..--.. .-..-. -....- -....- .-.-.- -....- .-..-. --..-- .-..-. .-. .-..-. -...- ..--.. .-..-. .-.-.- -....- .-.-.- .-..-. --..-- |
26 | .-..-. ... .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- .-.-.- .-..-. --..-- .-..-. - .-..-. -...- ..--.. .-..-. -....- .-..-. --..-- .-..-. ..- .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- -....- .-..-. --..-- |
27 | .-..-. ...- .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- .-.-.- -....- .-..-. --..-- .-..-. .-- .-..-. -...- ..--.. .-..-. .-.-.- -....- -....- .-..-. --..-- .-..-. -..- .-..-. -...- ..--.. .-..-. -....- .-.-.- .-.-.- -....- .-..-. --..-- |
28 | .-..-. -.-- .-..-. -...- ..--.. .-..-. -....- .-.-.- -....- -....- .-..-. --..-- .-..-. --.. .-..-. -...- ..--.. .-..-. -....- -....- .-.-.- .-.-.- .-..-. --..-- |
29 | .-..-. ----- .-..-. -...- ..--.. .-..-. -....- -....- -....- -....- -....- .-..-. --..-- .-..-. .---- .-..-. -...- ..--.. .-..-. .-.-.- -....- -....- -....- -....- .-..-. --..-- .-..-. ..--- .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- -....- -....- -....- .-..-. --..-- |
30 | .-..-. ...-- .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- .-.-.- -....- -....- .-..-. --..-- .-..-. ....- .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- .-.-.- .-.-.- -....- .-..-. --..-- .-..-. ..... .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- .-.-.- .-.-.- .-.-.- .-..-. --..-- |
31 | .-..-. -.... .-..-. -...- ..--.. .-..-. -....- .-.-.- .-.-.- .-.-.- .-.-.- .-..-. --..-- .-..-. --... .-..-. -...- ..--.. .-..-. -....- -....- .-.-.- .-.-.- .-.-.- .-..-. --..-- .-..-. ---.. .-..-. -...- ..--.. .-..-. -....- -....- -....- .-.-.- .-.-.- .-..-. --..-- |
32 | .-..-. ----. .-..-. -...- ..--.. .-..-. -....- -....- -....- -....- .-.-.- .-..-. --..-- |
33 | .-..-. .-.- .-..-. -...- ..--.. .-..-. .-.-.- -....- .-.-.- -....- .-..-. --..-- .-..-. ---. .-..-. -...- ..--.. .-..-. -....- -....- -....- .-.-.- .-..-. --..-- .-..-. ..-- .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- -....- -....- .-..-. --..-- |
34 | .-..-. .-.-.- .-..-. -...- ..--.. .-..-. .-.-.- -....- .-.-.- -....- .-.-.- -....- .-..-. --..-- .-..-. --..-- .-..-. -...- ..--.. .-..-. -....- -....- .-.-.- .-.-.- -....- -....- .-..-. --..-- .-..-. ... ... .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- .-.-.- -....- -....- .-.-.- .-.-.- .-..-. --..-- |
35 | .-..-. ---... .-..-. -...- ..--.. .-..-. -....- -....- -....- .-.-.- .-.-.- .-.-.- .-..-. --..-- .-..-. ..--.. .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- -....- -....- .-.-.- .-.-.- .-..-. --..-- .----. .-..-. .----. -...- ..--.. .-..-. .-.-.- -....- .-.-.- .-.-.- -....- .-.-.- .-..-. --..-- |
36 | .-..-. .----. .-..-. -...- ..--.. .-..-. .-.-.- -....- -....- -....- -....- .-.-.- .-..-. --..-- .-..-. -....- .-..-. -...- ..--.. .-..-. -....- .-.-.- .-.-.- .-.-.- .-.-.- -....- .-..-. --..-- .-..-. -..-. .-..-. -...- ..--.. .-..-. -....- .-.-.- .-.-.- -....- .-.-.- .-..-. --..-- |
37 | .-..-. -.--. .-..-. -...- ..--.. .-..-. -....- .-.-.- -....- -....- .-.-.- .-..-. --..-- .-..-. -.--.- .-..-. -...- ..--.. .-..-. -....- .-.-.- -....- -....- .-.-.- -....- .-..-. --..-- .-..-. -.--. .-..-. -...- ..--.. .-..-. -....- .-.-.- -....- -....- .-.-.- .-..-. --..-- |
38 | .-..-. -.--.- .-..-. -...- ..--.. .-..-. -....- .-.-.- -....- -....- .-.-.- -....- .-..-. --..-- .-..-. -.--. .-..-. -...- ..--.. .-..-. -....- .-.-.- -....- -....- .-.-.- .-..-. --..-- .-..-. -.--.- .-..-. -...- ..--.. .-..-. -....- .-.-.- -....- -....- .-.-.- -....- .-..-. --..-- |
39 | .-..-. ..--.- .-..-. -...- ..--.. .-..-. .-.-.- .-.-.- -....- -....- .-.-.- -....- .-..-. --..-- .-..-. -...- .-..-. -...- ..--.. .-..-. -....- .-.-.- .-.-.- .-.-.- -....- .-..-. --..-- .-..-. .-.-. .-..-. -...- ..--.. .-..-. .-.-.- -....- .-.-.- -....- .-.-.- .-..-. --..-- |
40 | .-..-. .--.-. .-..-. -...- ..--.. .-..-. .-.-.- -....- -....- .-.-.- -....- .-.-.- .-..-. --..-- .-..-. .-..-. -...- ..--.. .-..-. .-..-. |
41 | -.--.- ..--.. |
42 | |
43 | -- -.-- ..--.. .-.. .. -. . -...- ... .... .. ..-. - ..--.. |
44 | ..--.. .-.. .. -. . -...- ..- -.-. ..--.. .-.. .. -. . ..--.. |
45 | ..--.. .-.. .. -. . -...- ..--.. - .-. -..-. ..--.. - -..-. -..-. ... ..--.. |
46 | -- -.-- ..--.. .-. . ... ..- .-.. - -...- .-..-. .-..-. ..--.. |
47 | ..-. --- .-. . .- -.-. .... -.--. ... .--. .-.. .. - .-..-. .-..-. --..-- ..--.. .-.. .. -. . -.--.- -.--. |
48 | ..--.. .-. . ... ..- .-.. - .-.-.- -...- . -..- .. ... - ... ..--.. -.-. .... .- .-. ..--- -- --- .-. ... . -.--. ..--.. ..--.- -.--.- ..--.. ..--.. -.-. .... .- .-. ..--- -- --- .-. ... . -.--. ..--.. ..--.- -.--.- ---... ..--.. -.-. .... .- .-. ..--- -- --- .-. ... . -.--. .----. ..--.. .----. -.--.- ..--.. |
49 | ..--.. .-. . ... ..- .-.. - .-.-.- -...- .-..-. .-..-. ..--.. |
50 | -.--.- |
51 | .-. . - ..- .-. -. ..--.. .-. . ... ..- .-.. - ..--.. |
52 | -.--.- |
53 | |
54 | |
55 | ... ..- -... -.. . -.-. --- -.. . -.--. |
56 | ..--.. -- --- .-. ... . ..--- -.-. .... .- .-. -...- -.--. |
57 | .-..-. .-.-.- -....- .-..-. -...- ..--.. .-..-. .- .-..-. --..-- .-..-. -....- .-.-.- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. -... .-..-. --..-- .-..-. -....- .-.-.- -....- .-.-.- .-..-. -...- ..--.. .-..-. -.-. .-..-. --..-- |
58 | .-..-. -....- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. -.. .-..-. --..-- .-..-. .-.-.- .-..-. -...- ..--.. .-..-. . .-..-. --..-- .-..-. .-.-.- .-.-.- -....- .-.-.- .-..-. -...- ..--.. .-..-. ..-. .-..-. --..-- |
59 | .-..-. -....- -....- .-.-.- .-..-. -...- ..--.. .-..-. --. .-..-. --..-- .-..-. .-.-.- .-.-.- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. .... .-..-. --..-- .-..-. .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. .. .-..-. --..-- |
60 | .-..-. .-.-.- -....- -....- -....- .-..-. -...- ..--.. .-..-. .--- .-..-. --..-- .-..-. -....- .-.-.- -....- .-..-. -...- ..--.. .-..-. -.- .-..-. --..-- .-..-. .-.-.- -....- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. .-.. .-..-. --..-- |
61 | .-..-. -....- -....- .-..-. -...- ..--.. .-..-. -- .-..-. --..-- .-..-. -....- .-.-.- .-..-. -...- ..--.. .-..-. -. .-..-. --..-- .-..-. -....- -....- -....- .-..-. -...- ..--.. .-..-. --- .-..-. --..-- |
62 | .-..-. .-.-.- -....- -....- .-.-.- .-..-. -...- ..--.. .-..-. .--. .-..-. --..-- .-..-. -....- -....- .-.-.- -....- .-..-. -...- ..--.. .-..-. --.- .-..-. --..-- .-..-. .-.-.- -....- .-.-.- .-..-. -...- ..--.. .-..-. .-. .-..-. --..-- |
63 | .-..-. .-.-.- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. ... .-..-. --..-- .-..-. -....- .-..-. -...- ..--.. .-..-. - .-..-. --..-- .-..-. .-.-.- .-.-.- -....- .-..-. -...- ..--.. .-..-. ..- .-..-. --..-- |
64 | .-..-. .-.-.- .-.-.- .-.-.- -....- .-..-. -...- ..--.. .-..-. ...- .-..-. --..-- .-..-. .-.-.- -....- -....- .-..-. -...- ..--.. .-..-. .-- .-..-. --..-- .-..-. -....- .-.-.- .-.-.- -....- .-..-. -...- ..--.. .-..-. -..- .-..-. --..-- |
65 | .-..-. -....- .-.-.- -....- -....- .-..-. -...- ..--.. .-..-. -.-- .-..-. --..-- .-..-. -....- -....- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. --.. .-..-. --..-- |
66 | .-..-. -....- -....- -....- -....- -....- .-..-. -...- ..--.. .-..-. ----- .-..-. --..-- .-..-. .-.-.- -....- -....- -....- -....- .-..-. -...- ..--.. .-..-. .---- .-..-. --..-- .-..-. .-.-.- .-.-.- -....- -....- -....- .-..-. -...- ..--.. .-..-. ..--- .-..-. --..-- |
67 | .-..-. .-.-.- .-.-.- .-.-.- -....- -....- .-..-. -...- ..--.. .-..-. ...-- .-..-. --..-- .-..-. .-.-.- .-.-.- .-.-.- .-.-.- -....- .-..-. -...- ..--.. .-..-. ....- .-..-. --..-- .-..-. .-.-.- .-.-.- .-.-.- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. ..... .-..-. --..-- |
68 | .-..-. -....- .-.-.- .-.-.- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. -.... .-..-. --..-- .-..-. -....- -....- .-.-.- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. --... .-..-. --..-- .-..-. -....- -....- -....- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. ---.. .-..-. --..-- |
69 | .-..-. -....- -....- -....- -....- .-.-.- .-..-. -...- ..--.. .-..-. ----. .-..-. --..-- |
70 | .-..-. .-.-.- -....- .-.-.- -....- .-..-. -...- ..--.. .-..-. .-.- .-..-. --..-- .-..-. -....- -....- -....- .-.-.- .-..-. -...- ..--.. .-..-. ---. .-..-. --..-- .-..-. .-.-.- .-.-.- -....- -....- .-..-. -...- ..--.. .-..-. ..-- .-..-. --..-- |
71 | .-..-. .-.-.- -....- .-.-.- -....- .-.-.- -....- .-..-. -...- ..--.. .-..-. .-.-.- .-..-. --..-- .-..-. -....- -....- .-.-.- .-.-.- -....- -....- .-..-. -...- ..--.. .-..-. --..-- .-..-. --..-- .-..-. -....- -....- -....- .-.-.- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. ---... .-..-. --..-- |
72 | .-..-. .-.-.- .-.-.- -....- -....- .-.-.- .-.-.- .-..-. -...- ..--.. .-..-. ..--.. .-..-. --..-- .-..-. .-.-.- -....- -....- -....- -....- .-.-.- .-..-. -...- ..--.. .-..-. .----. .-..-. --..-- .-..-. -....- .-.-.- .-.-.- .-.-.- .-.-.- -....- .-..-. -...- ..--.. .-..-. -....- .-..-. --..-- |
73 | .-..-. -....- .-.-.- .-.-.- -....- .-.-.- .-..-. -...- ..--.. .-..-. -..-. .-..-. --..-- .-..-. .-.-.- -....- .-.-.- .-.-.- -....- .-.-.- .-..-. -...- ..--.. .----. .-..-. .----. --..-- .-..-. -....- .-.-.- -....- -....- .-.-.- .-..-. -...- ..--.. .-..-. -.--. .-..-. --..-- |
74 | .-..-. -....- .-.-.- -....- -....- .-.-.- -....- .-..-. -...- ..--.. .-..-. -.--.- .-..-. --..-- .-..-. .-.-.- .-.-.- -....- -....- .-.-.- -....- .-..-. -...- ..--.. .-..-. ..--.- .-..-. |
75 | -.--.- ..--.. |
76 | |
77 | -- -.-- ..--.. .-.. .. -. . -...- ... .... .. ..-. - ..--.. |
78 | -- -.-- ..--.. .-. . ... ..- .-.. - -...- .-..-. .-..-. ..--.. |
79 | ..-. --- .-. . .- -.-. .... ..--.. .-- --- .-. -.. -.--. ... .--. .-.. .. - -..-. ..--.. ... -.--. ..--- --..-- -.--.- -..-. --..-- ..--.. .-.. .. -. . -.--.- -.--. |
80 | ..-. --- .-. . .- -.-. .... ..--.. -.-. .... .- .-. -.--. ... .--. .-.. .. - .-..-. .-..-. --..-- ..--.. .-- --- .-. -.. -.--.- -.--. |
81 | ..--.. .-. . ... ..- .-.. - .-.-.- -...- . -..- .. ... - ... ..--.. -- --- .-. ... . ..--- -.-. .... .- .-. -.--. ..--.. -.-. .... .- .-. -.--.- ..--.. ..--.. -- --- .-. ... . ..--- -.-. .... .- .-. -.--. ..--.. -.-. .... .- .-. -.--.- ---... .-..-. ..--.. ..--.. -.-. .... .- .-. ..--.. .-..-. ..--.. |
82 | -.--.- |
83 | ..--.. .-. . ... ..- .-.. - .-.-.- -...- .-..-. .-..-. ..--.. |
84 | -.--.- |
85 | .-. . - ..- .-. -. ..--.. .-. . ... ..- .-.. - ..--.. |
86 | -.--.- |
Ja, gut. Ein paar Sonderzeichen gehen so verloren. Aber damit du so eine Idee bekommst:
1 | ~ $cat bin/morse.pl | morse.pl | morse.pl -d | head |
2 | ??/USR/BIN/PERL -W |
3 | ? |
4 | ?(W) XL 2002/02/15 |
5 | |
6 | USE LOCALE? |
7 | USE GETOPT::STD? |
8 | USE VARS QW "?OPT_D"? |
9 | GETOPTS('D')? |
10 | |
11 | WHILE (??) ( |
/SCNR
Axel S. schrieb: > /SCNR kicher oh oh... wie wär's hiermit:
1 | >>++++ ++++[<<++++>+++ +++>-]+<---[>+>+<<-]>>[<<+>>-]>, |
2 | [<+>[----------[----------------------[-[-[----[-[-[-[- |
3 | --[-[-[-[-[-[-[-[-[-[-[-[-[-[-[-[--[--[-[-[-[-[-[-[-[-[ |
4 | -[-[-[-[-[-[-[-[-[-[-[-[-[-[-[-[-[-[-[-----<[<..<..>.<. |
5 | >>-]>]<[<<..>..>-]>]<[<<.>.<..>>-]>]<[<<.>..<.>>-]>]<[< |
6 | .<..>>-]>]<[<...<.>>-]>]<[<..<.>>-]>]<[<<.>>-]>]<[<...> |
7 | -]>]<[<.<.>.>-]>]<[<<..>.<.>>-]>]<[<.<..>.>-]>]<[<<...> |
8 | >-]>]<[<<.>.>-]>]<[<<..>>-]>]<[<.<.>..>-]>]<[<<.>.<.>>- |
9 | ]>]<[<.<...>>-]>]<[<..>-]>]<[<....>-]>]<[<<..>.>-]>]<[< |
10 | ..<.>.>-]>]<[<.>-]>]<[<<.>..>-]>]<[<<.>.<.>.>-]>]<[<<.> |
11 | ...>-]>]<[<.<.>>-]>]<[<.<..>.<.>.>-]>]<[<..<..>..>-]>]< |
12 | [<<.>...<.>>-]>]<[<<.>.<.>.<.>.>-]>]<[<<...>...>-]>]<[< |
13 | <....>.>-]>]<[<<...>..>-]>]<[<<..>...>-]>]<[<<.>....>-] |
14 | >]<[<.....>-]>]<[<....<.>>-]>]<[<...<..>>-]>]<[<..<...> |
15 | >-]>]<[<.<....>>-]>]<[<<.....>>-]>]<[<<.>..<.>.>-]>]<[< |
16 | .<.>.<.>.<.>>-]>]<[<<.>....<.>>-]>]<[<<..>..<..>>-]>]<[ |
17 | <<.>.<..>.<.>>-]>]<[<<.>.<..>.<.>>-]>]<[<.<....>.>-]>]< |
18 | [<.<<.>>...>-]>]<[<.<.>..<.>.>-]>]<[<<.>.<.>.<..>>-]>]< |
19 | [<<<.....>>>-]>]<[<<.>...<.>>-]>]<<<<.>>>>,]<<.<.>.<.>. |
weiss ehrlich gesagt nicht wo ich das Dingen herhab, hab ich tatsächlich so auf der Festplatte gefunden, wüsste nicht das je geschrieben zu haben.. vermutlich ein mittlerweile quellunbekannter Internetfund aus vergangener Zeit... tut aber was es soll :D 'sid
und mich an Fisches Nachtgesang https://www.oppisworld.de/morgen/galg08.html - U U --- U U U U --- U U U U --- U U U U --- U U U U --- U U -
Beitrag #6263941 wurde von einem Moderator gelöscht.
Stammt es vielleicht von einem Code-Obfuscation-Contest https://de.wikipedia.org/wiki/International_Obfuscated_C_Code_Contest https://de.wikipedia.org/wiki/Obfuskation_(Software)#Sonstiges
Stefan ⛄ F. schrieb: > sid schrieb: >> wie wär's hiermit > > Erinnert mich an die Turing Maschine mit dem Papierband. wenns mich nicht täuscht, dann ist das brainfuck https://de.wikipedia.org/wiki/Brainfuck#Sprachdesign und das SOLL so sein ;-) (nur, dass halt das band kein band sondern ein datenfeld ist)
maria schrieb: > Sollte aber wir stehen momentan ganz am Anfang Ich suche jemanden der > ihm den beginn erklären konnte er weis nicht wie er anfangen soll. Dann könnte er erstmal mit Eingabe eines Textes und Ausgabe auf dem Terminal anfangen.
Ich hab hier mal was aus meinen alten Assemblerzeiten auf dem 8051 gefunden. Die Funktion morsestring gibt einen String vom Flash aus.
Maria schrieb >> Visual Studio C Programm es muss auf Arduino Mega 2560 abgespielt werden Da hilf Pedas 8051 Assembler Programm ungemein.
Bernd N. schrieb: > Da hilf Pedas 8051 Assembler Programm ungemein. Anhand der Kommentare sollte das Prinzip klar werden und das Umschreiben nach C kein Problem sein.
diensthabender quotendepp schrieb: > Stefan ⛄ F. schrieb: >> sid schrieb: >>> wie wär's hiermit >> >> Erinnert mich an die Turing Maschine mit dem Papierband. > > wenns mich nicht täuscht, dann ist das brainfuck tut es nicht; ist brainfuck fördert ungemein die Konzentration wenn man versucht das im Kopf nachzuvollziehen, obschon die Regeln ja einfach sind (daher der name) <> move pointer, +- in/decrement pointer, [] loop until zero ,. in/output ne Stunde BF und jedes noch so schlimme Kauderwelsch danach ist entspannende Lektüre im Sonnenschein :D 'sid
Beitrag #6265556 wurde vom Autor gelöscht.
Beitrag #6265558 wurde von einem Moderator gelöscht.
In Arduino könnte es so aussehen.. bekommt man das minimaler? Es gibt Librarys zum Morsen mit über 30 Funktionen und gefühlte 5 Seiten lang :/ Irgendwann werde ich das mal testen.. ist so nebenbei in der Pause hingekritzelt.. bestimmt gibt es den einen oder anderen Char->Int Fehler.
1 | void setup() { |
2 | Serial.begin(115200); |
3 | Serial.print("Bitte Morsetext eingeben"); |
4 | pinMode(13, OUTPUT); |
5 | }
|
6 | |
7 | int PinOut = 13; |
8 | String incomingString = ""; |
9 | int Morsecode[211] = {1, 3, 2, 2, 2, 3, 1, 1, 1, 2, 3, 1, 3, 1, 2, 3, 1, 1, 2, 2, 1, 2, 2, 2, 2, 1, 1, 1, 2, 2, 3, 3, 1, 2, 2, 1, 1, 1, 1, 2, 1, 1, 2, 2, 2, 1, 3, 3, 3, 2, 3, 1, 3, 2, 2, 1, 3, 1, 1, 2, 3, 3, 2, 2, 2, 3, 1, 2, 2, 2, 3, 3, 3, 2, 2, 1, 3, 3, 1, 2, 3, 3, 1, 3, 2, 1, 3, 1, 2, 2, 1, 1, 1, 2, 2, 3, 2, 2, 2, 2, 1, 1, 3, 2, 2, 1, 1, 1, 3, 2, 1, 3, 3, 2, 2, 3, 1, 1, 3, 2, 3, 1, 3, 3, 2, 3, 3, 1, 1, 2, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 1, 1, 3, 3, 3, 1, 1, 1, 3, 3, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 3, 3, 1, 1, 1, 3, 3, 3, 1, 1, 3, 3, 3, 3, 1}; |
10 | unsigned long times = 100; |
11 | int sx = 0; |
12 | void loop() { |
13 | if (Serial.available() > 0) { |
14 | char tempincomingChar = Serial.read(); |
15 | if (isAlphaNumeric(tempincomingChar) || isWhitespace(tempincomingChar))incomingString += tempincomingChar; |
16 | else if (isSpace(tempincomingChar)) { |
17 | incomingString.toLowerCase(); |
18 | for (int i = 0; i < incomingString.length(); i++ ) { |
19 | if (isDigit(incomingString.charAt(i)))sx = (((int)incomingString.charAt(i)) - 22) * 5; |
20 | else if (isAlpha(incomingString.charAt(i))) sx = (((int)incomingString.charAt(i)) - 97) * 5; |
21 | else if ((int)incomingString.charAt(i) == ' ') { |
22 | delay(times * 4); |
23 | continue; |
24 | }
|
25 | for (int c = 0; c < 4; c++) { |
26 | if (Morsecode[sx + c] == 2)continue; |
27 | digitalWrite(13, HIGH); |
28 | delay(Morsecode[sx + c] * times); |
29 | digitalWrite(13, LOW); |
30 | delay(times); |
31 | }
|
32 | delay(3 * times); |
33 | }
|
34 | }
|
35 | incomingString = ""; |
36 | delay(1000); |
37 | }
|
38 | }
|
:
Bearbeitet durch User
Ich hab mir mal das hier im Anhang ausgedacht. Ist zwar für PC und nicht für Arduino, müsste aber mit minimalen Anpassungen gehen.
Wenn „Marias Sohn“ das als Hausaufgabe abgibt, gibt es ziemlich sicher einige Nachfragen ;) Oliver
Philipp K. schrieb: > In Arduino könnte es so aussehen.. Ehrlich gesagt, ich verstehe nur Bahnhof. Kannst Du mal die Funktion beschreiben? DPA schrieb: > Ich hab mir mal das hier im Anhang ausgedacht. Hier ebenso.
Peter D. schrieb: > Philipp K. schrieb: >> In Arduino könnte es so aussehen.. > > Ehrlich gesagt, ich verstehe nur Bahnhof. Ich auch. Peter D. schrieb: > DPA schrieb: >> Ich hab mir mal das hier im Anhang ausgedacht. > > Hier ebenso. Sind 2 Lookup tabellen, Schriftzeichencode zu Morsezeichensequenz (char_morse_map) und Morsezeichencode zu Schriftzeichen (morse_char_map), plus ein paar utillity funktionen für Lookup+Boundcheck und Text/Zeichen Ausgabe. Die Rückconvertierungsfunktionen ist eigentlich unnötig, hab ich auch nicht ausprobiert, ob die auch geht. Und das MORSE_MAPPING macro ist einfach, dass ich die Zuordnung nicht in den 2 Lookup Tabellen 2 mal hinschreiben muss. Die Morsezeichensequenz hab ich recht simpel & platzsparend codiert. Nimm ein Zeichen, z.B. -.. (D). Ersetze - mit 1 und . mit 0. Setze ein 1 dahinter. Drehe alles um. Das ist der Codierte Wert in Binär. Die 1 setze ich dahinter/davor, weil, morse hat keine fixe länge, und Zahlen haben normalerweise keine führende Nullen, also Markiere ich so den Anfang/das Ende, der Sequenz. Das Umkehren mach ich, weil es das encodieren und decodieren vereinfacht. Würde man die dekodierung debuggen, sähe das etwa so aus:
1 | uint8_t x = 0x09; // 0b00001001 |
2 | char s[8]={0}; // | | | | | | | | | |
3 | // x ist grösser 1 |
4 | s[0] = ".-"[x%2]; // x%2 ist 1⯅ |-| | | | | | | | |
5 | x /= 2; // 0b00000100 |
6 | // x ist grösser 1 |
7 | s[1] = ".-"[x%2]; // x%2 ist 0⯅ |-|.| | | | | | | |
8 | x /= 2; // 0b00000010 |
9 | // x ist grösser 1 |
10 | s[2] = ".-"[x%2]; // x%2 ist 0⯅ |-|.|.| | | | | | |
11 | x /= 2; // 0b00000001 |
12 | // x ist nicht grösser 1, fertig |
Die encodier Funktion macht genau das umgekehrte. Und dank der Lookup tabelle ist char_morse_map['D'] = 0x09 und morse_char_map[0x09] ist 'D'. Die Symbolsequenzen 0 und 1 sind bei dem Mapping eigentlich ungültig, da diese nichts repräsentieren. Hat sich aber als praktisch herausgestellt, dadurch konnte ich 1 als Worttrennzeichen verwenden, und 0 für kein oder ungültige Zeichen. morse_lookup_char und morse_lookup_symbol sind nur da, weil die lookup Arrays kleiner sind, als die Wertebereiche eines Zeichen, oder einer Morsesymbolsequenz. für die werte Auserhalb der Tabelle kann ich dort dann 0 zurückgeben, der Wert passt hierfür gerade ideal. Die in der Tabelle existierenden Werte, denen nichts explizit zugewiesen wurden sind zudem auch 0. Oh, un die Werte in der Tabelle hab ich in hex statt in binär geschrieben, weil das 0b Präfix kein gültiges C ist. (Es gibt eine gcc compiler extension, die betrachte ich nicht als Bestandteil von C.). Sonst wäre die Kodierung viel einfacher zu verstehen gewesen.
Oh, mist, ich hab die bound checks versaut, hier:
1 | if(uc > char_morse_map_count) return 0; |
2 | if(s > morse_char_map_count) return 0; |
Hätte ich das hier schreiben müssen:
1 | if(uc >= char_morse_map_count) return 0; |
2 | if(s >= morse_char_map_count) return 0; |
Sonst wird wenn uc gleich char_morse_map_count auf ein nicht existierendes Element hinter dem Letzten Element in der Liste zugegriffen (buffer oveflow).
Hier nochmal mit den 3 Fehlern korrigiert. Das man sowas auch immer erst sieht, wenn man später nochmal drauf schaut...
Hier ist mein Programm in gehashter (SHA256) Form:
1 | 0100992393A092FD72F7EFDFAE97EFFA8883F9424DA1788EF81C5CA3B6B1E09E |
Punkt Punkt Strich schrieb: > "Divide et impera" ist beim Entwicklen ein sehr guter Ansatz. Der > Sohnemann soll das Große und Ganze in Teilprobleme zerlegen. Das hast du falsch verstanden. Es geht darum, eine Aufgabe unter möglichst vielen Forumsdummkö^W Forumsbesuchern zu verbreiten in der Hoffnung, dass einer (meistens Stefanus) darauf hereinfällt und die Arbeit macht, weil er das für sein Ego braucht. "Divide et impera" heißt richtig (nicht wörtlich) übersetzt "Müll das Forum voll und nutze die anderen aus"
Da die Aufgabe inzwischen größtenteils gelöst ist, habe ich hier noch ein weiteres morse.c für den PC, diesmal in kurz und knackig:
1 | #include <stdio.h> |
2 | #include <ctype.h> |
3 | |
4 | unsigned char tab[] = { |
5 | 117, 0, 0, 0, 0, 0, 94, 45, 109, 0, 42, 115, 97, 106, 41, 63, |
6 | 62, 60, 56, 48, 32, 33, 35, 39, 47, 71, 85, 0, 49, 0, 76, 86, |
7 | 6, 17, 21, 9, 2, 20, 11, 16, 4, 30, 13, 18, 7, 5, 15, 22, 27, |
8 | 10, 8, 3, 12, 24, 14, 25, 29, 19, 0, 0, 0, 0, 108 |
9 | };
|
10 | |
11 | int main(void) { |
12 | unsigned char m; |
13 | int c; |
14 | |
15 | while ((c = toupper(getchar())) != EOF) { |
16 | if (isspace(c)) |
17 | putchar('\n'); |
18 | else if ((c -= 33) < sizeof tab && (m = tab[c])) { |
19 | do
|
20 | putchar(".-"[m & 1]); |
21 | while ((m >>= 1) > 1); |
22 | putchar(' '); |
23 | }
|
24 | }
|
25 | }
|
Für die Ausgabe über einen Buzzer müssen die drei putchar-Aufrufe durch den entsprechenden Code ersetzt werden. Leider habe ich erst hinterher gesehen, dass DPA die Idee mit der Kodierung in einem Byte pro Zeichen schon früher hatte. Bis auf die Kürze (über deren Sinn man sich natürlich streiten kann) bringt der Code also nicht viel Neues. Trotzdem wollte ich ihn nicht in der Versenkung verschwinden lassen ;-)
Peter D. schrieb: > Ehrlich gesagt, ich verstehe nur Bahnhof. > Kannst Du mal die Funktion beschreiben? Hm, Okay Der "Morse-Array" beinhaltet für jeden Buchstaben/Zahl 5 Stellen mit jeweils dem Multiplikator des "Zeit-Teilers" von kurz oder lang und 2 als Leer. Den Ascii-Code eines Buchstabens bekommt man mit "(int) char", das kleine "a" hat den AscII Code 97.. das z 26 höher 122. Also fängt der Morsecode für z im array bei 122-97*5 an und endet bei der ersten 2 im Array ;)
DPA schrieb: > Oh, un die Werte in der Tabelle hab ich in hex statt in binär > geschrieben, weil das 0b Präfix kein gültiges C ist. Inzwischen ist das in den Standard (Version 14) aufgenommen worden.
Julius C. schrieb: > in der Hoffnung, dass einer (meistens Stefanus) darauf > hereinfällt und die Arbeit macht, weil .... (laber Scheiße) Ich denke, du überschätzt massiv, wie viele Programme ich hier veröffentlicht habe. Es war weniger als eins pro Jahr.
Werter Yalu X! Ich möchte Dir aus ganzem Herzen für Deine Hilfe beim Morseprogramm danken! Das hier ist doch wirklich ein sehr kompetentes Szeneboard, was ähnliche Etablissements in Zukunft auf die Plätze verweisen wird! Bitte, Yalu, mein Schatz: Leider wurde die Aufgabenstellung des Lehrers nicht ganz erfüllt. Die Klassenkatalognummer wurde noch nicht berücksichtigt! Bist Du bitte deshalb so nett, in den letzten 23 Bytes noch eine klangbildgesteuerte, neuronal basierte Empfangsroutine zu posten, die dann die Klassenkatalognummer mit berücksichtigt? Yalu, ich werfe mich vor Dir in den Staub! marias_tochter
Axel S. schrieb: > Vielleicht lernst du erstmal mit ihm zusammen Deutsch > vor allem Ausdruck und Rechtschreibung mit dem Schwerpunkt > auf der korrekten Verwendung von Satzzeichen dann werden > deine Texte bestimmt gleich viel lesbarer Nun hau mal nicht so auf den Putz und laß die Kirche im Dorf! Es gibt hier Leute, deren Rechschreibung und Grammatik deutlich schlechter ist.
Auch mal getestet.. scheint zu funktionieren. Hier mal korrigiert mit Kommentaren. es gibt jede verwendete Funktion der arduino IDE auch im AVR Style.. wird bis auf die Serial Seite nicht viel anders aussehen.
marias_tochter schrieb: > jede Menge Lob und Danksagung und weiterees.. Aber wieso marias_tochter? Ich denke, der Sohnemann von der Maria hat die Aufgabenstellung bekommen? Und nun hilft also marias_tochter (also marias_sohn_seine_schwester ??) auch noch mit? Das ist ja eine fleissige Familie!! marias_tochter schrieb: > klangbildgesteuerte, neuronal basierte Empfangsroutine was mag das wohl sein?
:
Bearbeitet durch User
Wegstaben V. schrieb: > marias_tochter schrieb: >> jede Menge Lob und Danksagung und weiterees.. > > Aber wieso marias_tochter? > > Ich denke, der Sohnemann von der Maria hat die Aufgabenstellung > bekommen? Und nun hilft also marias_tochter (also > marias_sohn_seine_schwester ??) auch noch mit? Nicht Maria. Mario. Vermutlich mit Schnauzer. Und von Beruf Klempner. Oder so. Im Internet weiß keiner, daß du ein Hund bist.
Wegstaben V meinte: > Aber wieso marias_tochter? > Ich denke, der Sohnemann von der Maria hat die Aufgabenstellung > bekommen? Und nun hilft also marias_tochter (also > marias_sohn_seine_schwester ??) auch noch mit? Frauenpower. ;-P Ich denke mal, das marias Sohn total unterdrückt wird. Er hat ja als einziger nicht gepostet. Er traut sich einfach nicht. Würde mir auch so gehen, als einziger Junge in ner frauendominierten Familie, in der maria alleinerziehend ist. > Das ist ja eine fleissige Familie!! Na klar, das schwächere Geschlecht muß einfach unterstützt werden, solange Samen noch nicht künstlich hergestellt werden kann. > marias_tochter schrieb: > klangbildgesteuerte, neuronal basierte Empfangsroutine > was mag das wohl sein? Ich mein mal, das ist eine Funktion, die in 23 oder 123 Bytes paßt. Irgendwie braucht ein Morseterminal Sender und Empfänger. mfg
Beitrag #6266540 wurde von einem Moderator gelöscht.
Doch!! Hunde erkennt man an ihrer typischen, besonders großen Intelligenz! mfg
~Mercedes~ . schrieb: > Doch!! > > Hunde erkennt man an ihrer typischen, > besonders großen Intelligenz! > > mfg Und lolitas erkennt man daran, dass sie gerne eine Lolita bei sich hätten.
Axel S. schrieb: >
1 | > ~ $echo "Hallo Welt!" | morse.pl |
2 | > .... .- .-.. .-.. --- .-- . .-.. - ..--.. |
3 | > |
schon in der ersten Morsezeile ein Fehler, SETZEN! , 6 ! und auch mal hier schauen: https://kurzelinks.de/d13z
Huch!?! Benz meinte: > Und lolitas erkennt man daran, dass sie gerne eine Lolita bei sich > hätten. OOch! Und ich hab mir extra Mühe gegeben, keine Smilys zu posten... :-O Nö, auf diesem Forum hier gibt es nur eine Lolita. Aber Marie's Tochter gibt es ganz bestimmt. Und gut, ich gebs zu, ich hab ein bissel geflunkert. Marie ist natürlich nicht alleinerziehend. ;-P mfg
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.