Parallel Port: Assembler in C Problem mit Verständnis oder Hardware

Im Unterforum Projekte im Selbstbau - Beschreibung: Selbstbau von Elektronik und Elektro

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 28 11 2024  01:59:18      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Projekte im Selbstbau        Projekte im Selbstbau : Selbstbau von Elektronik und Elektro


Autor
Parallel Port: Assembler in C Problem mit Verständnis oder Hardware

    







BID = 572984

Hagbrain

Gerade angekommen


Beiträge: 3
Wohnort: Blankenheim
ICQ Status  
 

  


Moin und einen guten Tag,

ich programmiere jetzt imoment Assembler und seit ich rausgefunden habe wie ich das in C einbinde, auch C. Jetzt habe ich das Problem. Wenn ich eine EXE erstelle von diesem Programm, dann gebe ich eine Zahl ein(max 255, geht ja nicht anders) und von 10 mal funktioniert es ca 2 mal. Warum? schreibt C mit irgendeiner Variable in das DX oder AX Register, und AL oder DX übernehmen beim einlesen irgendwelche Restdaten? Ich weis nicht was es sein kann.

Wenn ich alles in Assembler schreibe und in AL direkt 1 übergebe dann geht bei meiner Schaltung auch die Lampe dafür an. Manchmal muss ich allerdings 5 mal die EXE-Datei davon Ausführen bevor der Computer an DATA1 ein Signal aussendet.

Bitte kann mir einer helfen. Wenn jemand Ahnung davon hat, dann kann der das was da oben steht auch einigermaßen verstehen.

Quelltext:

#include <stdio.h>
int adresse;
int port;
int main(void)
{
scanf("%i",&adresse);
port = 888;
printf("%i adresse %i port", adresse, port);
asm(".intel_syntax noprefix");
asm("mov eax,0");
asm("mov edx,0");
asm("mov al,_adresse");
asm("mov dx,_port");
asm("out dx,al");
asm(".att_syntax noprefix");

return 0;
}

Schonmal danke fürs Interesse und richtig großes DANKE wenn auch jemand mir helfen kann.

MFG Hagbrain

BID = 572988

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach

 

  


Zitat :
von 10 mal funktioniert es ca 2 mal. Warum?
Ich habe jetzt nicht versucht dein Programm zu analysieren, aber ein solches Verhalten ist typischerweise das Resultat von vergessenen Initialisierungen.

BID = 572989

Hagbrain

Gerade angekommen


Beiträge: 3
Wohnort: Blankenheim
ICQ Status  

Kein Compilerfehler kommt. Eingabe funktioniert, Ausgabe funktioniert, NUR DATA1 vom parallel Port hat kein Strom wenn man 1 eingibt.

BID = 573048

Lötfix

Schreibmaschine



Beiträge: 2328
Wohnort: Wien

Hallo!

Wie sieht die angeschlossene Schaltung aus? (Pull-UP-Widerstände)
In welcher Betriebsart ist der LPT? (SPP, Bi-Direktional, EPP, ECP)
Sind die Ausgangstreiber abgeschaltet? (nur zum Einlesen notwendig)

...mit Assembler am PC kenn ich mich nicht so gut aus

Sind der schaltungstechnische Aufbau und die 3 Register des LPT bekannt?

Info zum LPT

mfg lötfix

_________________
Haftungsausschluß:
Bei obigem Beitrag handelt es sich um meine private Meinung. Rechtsansprüche dürfen daraus nicht abgeleitet werden. Sicherheitsvorschriften beachten!

BID = 573237

Hagbrain

Gerade angekommen


Beiträge: 3
Wohnort: Blankenheim
ICQ Status  

Danke für die Antworten, ich hab meinen Fehler nach einigen Malen erneuten probierens herausgefunden. Die VAR adresse darf nicht int sein sondern muss vom Typ double sein. Sonst war alles richtig.
Jetzt kann ich meine Binäruhr weiter basteln. Danke trotzdem für die anregungen.

MFG Hagbrain


Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 19 Beiträge im Durchschnitt pro Tag       heute wurden bisher 0 Beiträge verfasst
© x sparkkelsputz        Besucher : 182415717   Heute : 213    Gestern : 7490    Online : 291        28.11.2024    1:59
0 Besucher in den letzten 60 Sekunden         ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0503790378571