# serielle Schnittstelle



## Morpheus (24. November 2003)

Hi!

Ich arbeite in meiner Schule an einem Projekt mit und dafür müsste ich wissen wie man die serielle Schnittstelle anspricht und ausliest... Kann mir da jemand ein gutes und recht einfaches Tutorial empfehlen? Oder vielleicht kennt sich ja jemand so gut aus, dass er es mir erklären könnte... 
Ich arbeite mit Visual c++ 6.0 unter WinXP.

Danke im Vorraus! mfg Morpheus


----------



## chibisuke (24. November 2003)

WinXP? na viel spaß...

2 Möglichkeiten...

a.) du willst UART daten übertragen
du öffnest das comport über die Win32 Communkationsfunktionen (OpenFile)
und kannst dann mit ReadFile, WriteFile, SetCommState, SetCommMask, WaitCommState drauf zugreifen.

b.) Du willst das port volkommen selbstständig ansteuern..
Folgendes:
1.) DDK von der MS page runter laden... Du musst einen Treiber entwickeln.
2.) Du brauchst Admin Privilegien
3.) n 2. Rechner für n Remote debugger währe nicht schlecht, weil wenn ein treiber abstürzt is nicht mehr viel mit debuggen, der Remotedebugger läst dich auch beim Bluescreen noch die daten analysieren...
4.) Viel zeit, ein Treiber is relativ schwer zu programmieren
Beim DDK sind beispiele dabei wie man diverse schnittstellen anspricht ich glaub auch Seriell is n beispiel dabei


----------



## Eyeball (25. November 2003)

c.) das ganze in assembler programmieren, damit umgehst du den HAL (hardware abstraction layer)  von windows.

so haben wir es bei uns in der schule gemacht, funktioniert für die serielle und die parallele schnittstelle, allerdings weis ich die assembler anweisungen nicht mehr


----------



## chibisuke (25. November 2003)

Die assembler anweisung heißt OUT oder OUTP je nachdem welchen assembler du benutzt...
Wenn du das aber machst, so sei dir bewust das es dann KEIN windows programm ist, sondern sich um DOS programme handelt die von Windows nicht gerne gesehen werden


----------



## bcbgerd (23. Januar 2004)

Und als letztes sei dazu gesagt, dass er mit WindowsXP arbeitet, somit kann er den Layer nicht mehr umgehen, gilt ebenso bei Windows 2000 und Windows NT!

geuß gerd


----------



## Mr.Undertaker (28. Januar 2004)

> _Original geschrieben von chibisuke _
> *Wenn du das aber machst, so sei dir bewust das es dann KEIN windows programm ist, sondern sich um DOS programme handelt die von Windows nicht gerne gesehen werden *


Sorry, aber das stimmt doch nicht Man kann mit Assembler genauso Windowsprogramme schreiben wie mit C++, warum denn auch nicht? Assembler ist ja Maschinensprache, mit der kannst du ALLES!


----------



## bcbgerd (28. Januar 2004)

Ok, ich halte mich zurück, aber ich bin der festen Überzeugung, dass er selbst mit ASM oder C++ unter WinXP nicht drum herum kommt. Falls ich mich irre, dann entschuldige ich mich natürlich! 

Nichts für ungut, Gruß Gerd


----------



## bcbgerd (28. Januar 2004)

> _Original geschrieben von Mr.Undertaker _
> * Assembler ist ja Maschinensprache, mit der kannst du ALLES! *



Aber immer noch abhängig vom Betriebssystem, da es die Ports auch blocken kann... (Es sei denn, du schreibst dein eigenes!)

Ok, ich halte mich zurück, aber ich bin der festen Überzeugung, dass er selbst mit ASM oder C++ unter WinXP nicht drum herum kommt. Falls ich mich irre, dann entschuldige ich mich natürlich! 

Nichts für ungut, Gruß Gerd


----------

