Forum: Mikrocontroller und Digitale Elektronik RS232 String per Taste auslösen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Marcus K. (marquie)


Lesenswert?

Hallo zusammen.

Ich lese schon seit Jahren immer mal wieder in diesem Forum. Jetzt 
benötige ich einen Vorschlag und hoffe auf Unterstützung.

Bei einem Projekt habe ich die Anforderung, einen beliebigen Befehl per 
RS-232 Schnittstelle zu versenden wenn ein Taster gedrückt wird.

Ich stelle mir einen µC mit einem Input an dem ich einen Taster 
anschließe, einem RS232 Port an dem ich den Befehl sende (Rückmeldung 
wird nicht benötigt) und einer Schnittstelle zum Programmieren des µC 
vor.
Das Ganze sollte kostengünstig sein.

Welcher Befehl genau gesendet wird ist eigentlich egal da er nur als 
Trigger genutzt wird. Am Ende landet er bei einem Steuerprozessor der 
ihn weiterverarbeitet.

Da ich mich in diesem Bereich nicht gut auskenne, hoffe ich hier auf 
Hilfe :)
Schon im Voraus ein danke

Gruß
Marcus

von Walter T. (nicolas)


Lesenswert?

Marcus K. schrieb:
> Ich stelle mir einen µC mit einem Input an dem ich einen Taster
> anschließe, einem RS232 Port an dem ich den Befehl sende (Rückmeldung
> wird nicht benötigt) und einer Schnittstelle zum Programmieren des µC
> vor.

Ein Mann mit Visionen.

Die allererste Arduino-Generation (noch mit serieller Schnittstelle) 
wäre wohl genau das Richtige für Dich. Ich weiss allerdings nicht, ob 
die noch gut verfügbar ist.

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

So etwas lässt sich mit nahezu jedem Microcontroller realisieren. 
Vorzugsweise sollte er einen mindestens einen internen U(S)ART haben. 
Das reduziert dann die Auswahl von 100% auf nur noch 99,4% der heute 
gebräuchlichen Typen.

Stelle doch erst einmal Dein eigenes Konzept vor, d.h. Komponenauswahl, 
vollständigen Stromlaufplan, usw.. Ansonsten müssen wir davon ausgehen, 
dass Du einfach nur zu faul bist, die gestellte Aufgabe selbst zu 
erledigen. Wir machen hier nicht Deine Hausaufgaben.

von EAF (Gast)


Lesenswert?

Marcus K. schrieb:
> Da ich mich in diesem Bereich nicht gut auskenne, hoffe ich hier auf
> Hilfe :)

Fein!

Hast du auch eine Frage?
Ich sehe nämlich keine.

von Stefan ⛄ F. (stefanus)


Lesenswert?

Bei Olimex gibt es Board für ATmega328P-PU mit RS-232 Schnittstelle.

https://www.olimex.com/Products/AVR/Proto/AVR-P28-8MHz/

Den ATmega kann man mit vorinstalliertem Bootloader kaufen, dann braucht 
man keinen Programmieradapter. Programmierung ist vermutlich über die 
Arduino IDE möglich.

von Marcus K. (marquie)


Lesenswert?

@nicolas
Danke für dir Rückmeldung, ich schaue es mir mal an. Da ich aber nicht 
nur einen, sondern ~20 Stück brauche macht es evtl. keinen Sinn auf 
nicht mehr gut verfügbare Hardware zu setzen.

@schweigstill
Wüsste ich, welche Komponenten ich benötige, würde ich nicht um Hilfe 
bitten.

@EAF
Die frage ist, welchen Controller nehme ich dafür?

@stefanus
So eine Antwort habe ich mir erhofft. Danke!

: Bearbeitet durch User
von Stefan ⛄ F. (stefanus)


Lesenswert?

Stefan ⛄ F. schrieb:
> Den ATmega kann man mit vorinstalliertem Bootloader kaufen

Kleine Anmerkung dazu: Die Bootloader sind normalerweise für 16 MHz 
Quarz ausgelegt. Weil das Board aber einen 8MHz Quarz hat, wird der 
Bootloader auf halber Baudrate laufen. Ich denke, damit kann man 
durchaus leben, man muss es nur wissen.

von Peter Z. (hangloose)


Angehängte Dateien:

Lesenswert?


: Bearbeitet durch User
von Schlaumaier (Gast)


Lesenswert?

Marcus K. schrieb:
> Ich lese schon seit Jahren immer mal wieder in diesem Forum. Jetzt
> benötige ich einen Vorschlag und hoffe auf Unterstützung.

Dann solltest du wissen, das die meisten TO ihre Infos in Mikro-Scheiben 
raus rücken.

Oder um mal ein No.5 zu zitieren : "zu wenig Input".

Sag einfach was die Sende-Quelle ist. Also ob das ein Arduino, ein 
Gerät, Ein PC oder was auch immer ist.

p.s.: No.5 ist ein berühmter Film-Roboter. ;)

von Stefan ⛄ F. (stefanus)


Lesenswert?

Peter Z. schrieb:
> Ein Digispark(AtTiny85 --> Software UART) und ein UART-TTL USB Adapter

Wo ist da die RS-232 Schnittstelle?

von Schlaumaier (Gast)


Lesenswert?

Stefan ⛄ F. schrieb:
> Wo ist da die RS-232 Schnittstelle?

Im USB-Adapter. Das Teil heißt ja 'Universal Serial Bus'  ;)

von EAF (Gast)


Lesenswert?

Schlaumaier schrieb:
> Im USB-Adapter. Das Teil heißt ja 'Universal Serial Bus'  ;)

USB != RS232

von Stefan ⛄ F. (stefanus)


Lesenswert?

Schlaumaier schrieb:
> Im USB-Adapter. Das Teil heißt ja 'Universal Serial Bus'  ;)

Ethernet ist auch seriell. Er hat aber explizit nach RS-232 gefragt, 
nicht irgend etwas serielles.

von Peter Z. (hangloose)


Lesenswert?


: Bearbeitet durch User
von EAF (Gast)


Lesenswert?

Peter Z. schrieb:
> Ist auch nicht teurer

Vorsicht:
Viele sind mit gefälschten Chips ausgerüstet.

https://www.eevblog.com/forum/reviews/fake-max3232-any-additional-details/

von Peter Z. (hangloose)


Angehängte Dateien:

Lesenswert?

Dann halt mit Transistor... anstatt dem bösen China IC,
dann wird es noch billiger und funktioniert auch.

von Forist (Gast)


Lesenswert?

Peter Z. schrieb:
> 
https://www.amazon.de/AITRIP-Digispark-Kickstarter-Allgemeine-Micro-USB-Entwicklungsplatine/dp/B08H7VVFYZ/ref=sr_1_3?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=digispark&qid=1637767013&qsid=257-6183033-8676741&sr=8-3&sres=B08H7VVFYZ%2CB08LKCSCFY%2CB019JSRWMW%2CB08B3N57ZP%2CB07B2DMZ2P%2CB096M6W3DN%2CB075CZM8LF%2CB08DR5T897%2CB07ML2SJZN%2CB06XVBRDHW%2CB07VL4HJCB%2CB07JYN557P%2CB073VRKJ7P%2CB014GXRFN6%2CB07D11YR6N%2CB07H4KYZS9
>
> 
https://www.amazon.de/AZDelivery-UART-TTL-Konverter-Jumperkabel-inklusive/dp/B08T24NML9/ref=sr_1_3?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=uart%2Busb%2Badapter%2Bcp210&qid=1637767233&qsid=257-6183033-8676741&sr=8-3&sres=B08T24NML9%2CB07WX2DSVB%2CB0753GY7FR%2CB07CQTC8P2%2CB07RG77VWD%2CB07TXVRQ7V%2CB08L6BSYZN%2CB07LH54QHM%2CB07BBPX8B8%2CB08L4ZR5ZX%2CB0716VF1CC%2CB078W5L8W1%2CB08L69CPGR%2CB01LY97ZM5%2CB08241MZVZ%2CB08BQZSKT2&srpt=ELECTRONIC_ADAPTER&th=1

Peter Z. schrieb:
> 
https://www.amazon.de/SODIAL-MAX3232-Schnittstelle-TTL-Konverter-Modul-DB9-Anschluss/dp/B00K67XD7Y/ref=mp_s_a_1_6?adgrpid=69100982777&gclid=CjwKCAiA4veMBhAMEiwAU4XRrzG0FdTUGd-5zX1rrHiYEv6BAjP9nVHwrwLchA-jQHsSfTABACJTghoCoFAQAvD_BwE&hvadid=482236156302&hvdev=m&hvlocphy=9042643&hvnetw=g&hvqmt=b&hvrand=11690373919957591271&hvtargid=kwd-323944611514&hydadcr=26572_2418482&keywords=rs232+ttl+wandler&qid=1637772028&sr=8-6

Peter Z. schrieb:
> 
https://www.amazon.de/SODIAL-MAX3232-Schnittstelle-TTL-Konverter-Modul-DB9-Anschluss/dp/B00K67XD7Y/ref=mp_s_a_1_6?adgrpid=69100982777&gclid=CjwKCAiA4veMBhAMEiwAU4XRrzG0FdTUGd-5zX1rrHiYEv6BAjP9nVHwrwLchA-jQHsSfTABACJTghoCoFAQAvD_BwE&hvadid=482236156302&hvdev=m&hvlocphy=9042643&hvnetw=g&hvqmt=b&hvrand=11690373919957591271&hvtargid=kwd-323944611514&hydadcr=26572_2418482&keywords=rs232+ttl+wandler&qid=1637772028&sr=8-6

Mein du, deine "Familiengeschichte" interessiert hier irgendjemanden?
Die Links auf die Angebote wären völlig ausreichend oder steckst du da 
per Provision mit drin?
https://www.amazon.de/AITRIP-Digispark-Kickstarter-Allgemeine-Micro-USB-Entwicklungsplatine/dp/B08H7VVFYZ
https://www.amazon.de/AZDelivery-UART-TTL-Konverter-Jumperkabel-inklusive/dp/B08T24NML9
https://www.amazon.de/SODIAL-MAX3232-Schnittstelle-TTL-Konverter-Modul-DB9-Anschluss/dp/B00K67XD7Y

von Manfred (Gast)


Angehängte Dateien:

Lesenswert?

Peter Z. schrieb:
> Wenn er wirklich RS232 benötigt, dann halt sowas anstatt USB
>
Link in kürzer:
> 
https://www.amazon.de/gp/product/B00K67XD7Y/ref=ox_sc_act_title_1?smid=A2V746ST1SO6EN&psc=1
Hoffentlich sind die gelieferten Adapter besser als auf dem Produktfoto!

Da das Ding offenbar aus Fernost versandt wird "GRATIS Lieferung: 3. - 
10. Jan.", würde ich gleich beim Aliexpress gucken.

An den Adapter einen Arduino-Nano dran und fertig. Kann mehrere Tasten 
abfragen und lässt sich gleichzeitig per USB programmieren oder 
debuggen. Das ist erheblich sinnvoller, als sich den USB-Port mit einem 
RS232-Umsetzer zu blockieren.

von Heinz R. (heijz)


Lesenswert?

was für ein Steuerprozessor ist es denn?

Evtl. brauchst für die hier gezeigten Vorschläge noch ein 
Nullmodemkabel...

von Jobst M. (jobstens-de)


Lesenswert?

Marcus K. schrieb:
> Das Ganze sollte kostengünstig sein.

EFM8 oder ATtiny202

Marcus K. schrieb:
> ~20 Stück brauche

Wer bestückt das?
Wird das von Hand gemacht oder zu einem Bestücker gegeben?

Löter mit Übung: ATtiny202
Löter mit Erfahrung oder professioneller Bestücker: kann alles
Lochraster: PIC16 DIP-8

Soll das etwas Ordentliches sein oder ein wilder Aufbau?
Sprich: Soll eine Platine dafür gemacht werden?


Gruß
Jobst

von Peter D. (peda)


Lesenswert?

Ich würde nen ATtiny25 nehmen.
RS-232 Receiver (z.B. MAX232) verstehen auch direkt TTL-Pegel, die 
SW-UART muß nur invertiert senden.

von Stefan ⛄ F. (stefanus)


Lesenswert?

Manfred schrieb:
> Link in kürzer:
> 
https://www.amazon.de/gp/product/B00K67XD7Y/ref=ox_sc_act_title_1?smid=A2V746ST1SO6EN&psc=1

Man kann schon nach der Artikelnummer abschneiden:
https://www.amazon.de/gp/product/B00K67XD7Y

Das Problem bei den langen Links (die der Forist monierte) ist, dass 
jeder der da drauf klickt von den Werbe-Trackern mit der Person 
verknüpft wird, die den Link gepostet hat. Wenn das oft genug passiert, 
wird man dadurch sogar effektiv de-anonymisiert.

Der Rebell in mir will das nicht, deswegen klickt er nicht auf solche 
Links und empfindet sie als lästig.

: Bearbeitet durch User
von Jobst M. (jobstens-de)


Lesenswert?

Stefan ⛄ F. schrieb:
> Wenn das oft genug passiert,
> wird man dadurch sogar effektiv de-anonymisiert.

Eigentlich ehr im Gegenteil, wenn jeder dadurch zu Forist wird.

Gruß
Jobst

Beitrag #6890703 wurde vom Autor gelöscht.
von Mike J. (linuxmint_user)


Lesenswert?

Marcus K. schrieb:
> Bei einem Projekt habe ich die Anforderung, einen beliebigen Befehl per
> RS-232 Schnittstelle zu versenden wenn ein Taster gedrückt wird.
>
> Ich stelle mir einen µC mit einem Input an dem ich einen Taster
> anschließe, einem RS232 Port an dem ich den Befehl sende (Rückmeldung
> wird nicht benötigt) und einer Schnittstelle zum Programmieren des µC
> vor.
> Das Ganze sollte kostengünstig sein.

Hier hat jemand genau das was du suchst!

Beitrag "Mikrokontroller Platinen"

- Man muss wahrscheinlich nur noch den Arduino-Bootloader hoch flashen 
und du kannst anfangen.
- Einen Taster müsstest du an die vorhandenen I/O-Pins anbringen, ist 
aber kein Problem.
- LEDs iśind zwei auf dem Board drauf.
- Programmierung mittels RS232<->USB Adapter Kabel, die kosten etwa 2€ 
bei eBay.
- Als Programmierumgebung lohnt sich für dich die Arduino-IDE, da gibt 
es online auch sehr viel Hilfe und Beispiele.

von Hans-Georg L. (h-g-l)


Lesenswert?

Wenn der Befehl völlig egal ist reicht es wenn du nur Start und Stop Bit 
sendest. Da reicht ein einfaches Monoflop.

von Mike J. (linuxmint_user)


Lesenswert?

Hans-Georg L. schrieb:
> Da reicht ein einfaches Monoflop

Ich denke mal dass er danach gerne mehrere verschiedene Befehle senden 
möchte und dann verschiedene LEDs an oder aus schalten möchte, also 
einfach ein externes Gerät über eine Datenverbindung steuern.

Den Befehl (String) wird er dann wohl seinen Bedürfnissen anpassen um 
damit irgend ein  Gerät zu steuern welches solche UART-Daten empfangen 
kann und nutzt. Vielleicht nutzt dieses Gerät ja auch ein Protokoll 
welches er in der Anleitung für dieses Gerät steht.

von Hans-Georg L. (h-g-l)


Lesenswert?

Mike J. schrieb:
> Hans-Georg L. schrieb:
>> Da reicht ein einfaches Monoflop
>
> Ich denke mal dass er danach gerne mehrere verschiedene Befehle senden
> möchte und dann verschiedene LEDs an oder aus schalten möchte, also
> einfach ein externes Gerät über eine Datenverbindung steuern.
>
> Den Befehl (String) wird er dann wohl seinen Bedürfnissen anpassen um
> damit irgend ein  Gerät zu steuern welches solche UART-Daten empfangen
> kann und nutzt. Vielleicht nutzt dieses Gerät ja auch ein Protokoll
> welches er in der Anleitung für dieses Gerät steht.

Nicht denken, lesen ;-)

Marcus K. schrieb:
> Hallo zusammen.

> Welcher Befehl genau gesendet wird ist eigentlich egal da er nur als
> Trigger genutzt wird. Am Ende landet er bei einem Steuerprozessor der
> ihn weiterverarbeitet.

Dem TO ist es egal .. also kann man auch nullen schicken ...

von Marcus K. (marquie)


Lesenswert?

Vielen Dank für eure zahlreichen Antworten.
Ich habe zum testen einen ATmega328 bestellt. Zeitgleich habe ich auch 
noch eine andere Möglichkeit gefunden die ich testen werde.

Für die die es interessiert.
In einem Raum steht ein Monitor der per LAN von einem dezentralen 
Steuerprozessor (Crestron CP4) gesteuert wird. Die LAN Verbindung in den 
Raum wird über eine Crestron HDBaseT Strecke (Transmitter + Receiver 
überträgt 4K Bild + Ton + RS232 + IR + LAN) über ein CAT7 Kabel 
hergestellt. Sprich im Raum kommt nur besagte HDBaseT CAT7 Leitung an. 
Da jetzt der Monitor über das Crestron System aus dem Raum gestartet 
werden soll benötigt man einen Trigger (Monitor hat keinen Schalter). Da 
kam die Idee mit dem RS232 Taster. Habe aber gestern noch gesehen, das 
die RS232 einen Hardware Handshake unterstützt. Ich probiere ob ich 
darüber eine Signalisierung zum Prozessor hinbekomme.

Ich werde berichten.

von W.S. (Gast)


Lesenswert?

Marcus K. schrieb:
> Das Ganze sollte kostengünstig sein.

Dann schau dich zunächst um, was du da so an Toolchains kriegen kannst 
und ob/wie du damit klar kommst. Als nächstes schau, was für 
Programmierzeugs für welche Produkte benötigt wird.

Wenn du auf dieser Basis eine Vorauswahl getroffen hast, dann schau, 
welche µC du in der gewünschten Stückzahl für einen sinnvollen Preis in 
überschaubarer Zeit du kaufen kannst.

Dann denke dir deine Minimal-Schaltung aus und mach einen 
Platinenentwurf dafür. Auch hier gilt: Suche dir das EDA-Tool aus, mit 
dem du am ehesten klarkommst.

Etwa so herum das Ganze aufziehen.

W.S.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.