Schaltkontakt via PC abfragen, vllt RS232?

Gast #1552425
Hallo!

Gerne würde ich die Serielle Schnittstelle folgendermaßen nutzen:

Via PC möchte ich lediglich den aktuellen Pegel der RX-Leitung messen.
KEINE serielle Datenabfrage notwendig.


gibts Alternativen einen Schaltkontakt abzufragen, evtl. USB? Die Art 
der Programiersprache sei hierbei erst mal nebensächlich

Besten Dank im voraus!
Gast
Also RxD abfragen ist nicht so simpel. Ganz einfach geht es über CTS, 
DSR und RI mit dem WinAPI, falls Windows das OS ist.

SetCommMask
CreateEvent
WaitCommEvent
WaitForSingleObject

dann nach
EV_DSR
EV_CTS
EV_RING
suchen.

Die Applikation "mode" könnte auch gehen.


Blackbird.
Gast
ich habe jetzt auf andere platine von Roland-Walter von meinem feund 
getestet dann habe ich über SR232 auf dem Hyperterminal hallo world 
gelesen dann habe ich von diese platine die Mikrocontroller und den 
MXA232A genommen und auf meine platine bestückt dann hat meine platine 
super auch funktioniert und anach wollte nicht mehr wieder auf meien 
plaztine noch auf die funktionierte platine und ich weisse nicht woran 
liegt das, und das problem bekomme ich nur salatzeichen und nicht hallo 
world und habe ich auch mit baudraht versucht und trotzdem wollte niciht 
mehr funktionieren kann vielleicht jemand mir sagen ob ein bauelement 
kapput gehen kann oder woran liegt das. ich habe  seit 2 wochen nach den 
fehelr gesucht aber immer keien lösung.

ich habe Atmega8 ,und MAX232A als ICs
 ich bedanke mich im voraus.
yassine
Gast
Hallonen Yassinen

vielleichten hast du ja einfach einen bauteilen kaputt.

Grund:

in allen Bauteilen ist weißer rauch enthaltenen wenn dieser rauch 
entweichen dann bauteilen kaputten...

falscher beitrag!!!!
Gast
Timo P schrieb:
> gibts Alternativen einen Schaltkontakt abzufragen, evtl. USB? Die Art
> der Programiersprache sei hierbei erst mal nebensächlich

Darf es mit einem Mikrocontroller sein? Dann würde ich einen 
PIC18F14K50, programmiert mit der freien Programmiersprache JAL, 
vorschlagen. Dank der jallib geht die Kommunikation über USB recht 
einfach:
1
include 18f14k50
2
pragma target clock 48_000_000
3

4
include usb_serial
5
usb_serial_init()
6

7
var bit pinstate
8
forever loop
9
    usb_serial_flush()
10
    if pinstate != pin_B4 then
11
        pinstate = pin_B4
12
        if pinstate == 1 then
13
            usb_serial_write('P')
14
        else
15
            usb_serial_write('R')
16
        end if
17
    end if
18
end loop
Am PC wird dank CDC ein virtueller Comport eingerichtet. Bei einem 
Pegelwechsel auf PB4 würde ein Zeichen ausgegeben werden. Das kann z.B. 
in einem Terminalprogramm angesehen werden.

Eine Grundschaltung um den PIC18F14K50 ist z.b. auf 
http://www.fundf.net/usbnub/ zu finden.
Gast
ich habe alle Wiederstände und kondensatoren getestet, die funktionieren 
alle aber trotzdem bekomme ich immer dasselbe komische zeichnen

grüße

yassine

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.