3.4k Aufrufe
Gefragt in Peripherie von
Hallo Community,
ich studiere derzeit Informatik und heute hatten wir sogenanntes "hardwareprektikum"
an einen Pc mit Win98 war eine Platine angschlossen, an der sich Leuchtdioden&Spannungsquellen sowie Spannungseingänge befanden.
In einem C-Programm konnte man durch die Befehle "outportb(768,zahl)" [zahl] an die Platine senden und dort inportb(770) einer Variable einen Wert zuweisen.
Hat [zahl] den wert 1, leuchtete eine diode, bei 2, eine andere, bei 3 alle beide usw(binärdarstellung der Zahlen) ebenso wurden Werte eingelesen.
Nun hat mich das alles sehr stark angetan und ich komm einfach nicht drauf klar was das für einen Spaß gemacht hat.
Mein Dozent sagte mir, man könne solche Platinen käuflich erwerben oder auch aus alten Druckern(z.B.) selber bauen. Das einzige Problem ist, dass man ein altes Betriebssystem benötigt(XP etc blockieren die Ansteuerung) und eine Serielle Schnittstelle am Pc vorhanden sein muss(hab ich noch irgendwo was rumstehen).
Nun bin ich auf der Suche nach einer solchen Platine(eingänge benötige ich keine, lediglich Ausgänge) um damit verschiedene elektrische Geräte zu steuern.
(Wie geil wäre das denn auf nen Knopf zu drücken und das Licht geht an? :) )

Hat jemand eine Anleitung dafür, wie ich sowas aus einem Drucker "bauen" kann oder evtl einen Link wo ich fertige Platinen käuflich erwerben kann?

Danke schonmal für Antworten
Fabian

13 Antworten

0 Punkte
Beantwortet von
file.c:1:42: windows.h: No such file or directory (ENOENT)
file.c:3: error: parse error before '*' token
file.c:4: error: parse error before '*' token
file.c:6: warning: data definition has no type or storage class
file.c:7: error: parse error before "output32"
file.c:7: warning: data definition has no type or storage class
file.c: In function `main':
file.c:11: error: `HMODULE' undeclared (first use in this function)
file.c:11: error: (Each undeclared identifier is reported only once
file.c:11: error: for each function it appears in.)
file.c:11: error: parse error before "hIOlib"
file.c:12: error: `hIOlib' undeclared (first use in this function)
file.c:12: error: `NULL' undeclared (first use in this function)
file.c:26: error: called object is not a function
file.c:27: error: called object is not a function


das sagt mir der Compiler. ich würd mal grob schätzen dass das daran liegt, dass windows.h nicht gefunden wurde.
Kann man das irgendwo downloaden? Ich habs gegooglet aber da stand nur überall "installier c++ studio und kopiers dir dann von da" blah.
geht das nicht einfacher?
Und nen gaaanz dickes Danke für den Code :)
0 Punkte
Beantwortet von
So, ich nochmal :)
Ich hab mir jetzt einfach nen komplettes includes-Paket gezogen und reingehaun.

C:\DJGPP\bin>gcc file.c -o out.exe
file.c: In function `main':
file.c:13: warning: assignment from incompatible pointer type
file.c:19: warning: assignment from incompatible pointer type
c:/djgpp/tmp/cclM4c2w.o(.text+0x3e):file.c: undefined reference to `_LoadLibrary
A'
c:/djgpp/tmp/cclM4c2w.o(.text+0x66):file.c: undefined reference to `_GetProcAddr
ess'
c:/djgpp/tmp/cclM4c2w.o(.text+0x82):file.c: undefined reference to `_FreeLibrary
'
c:/djgpp/tmp/cclM4c2w.o(.text+0x9e):file.c: undefined reference to `_GetProcAddr
ess'
c:/djgpp/tmp/cclM4c2w.o(.text+0xba):file.c: undefined reference to `_FreeLibrary
'
c:/djgpp/tmp/cclM4c2w.o(.text+0xfc):file.c: undefined reference to `_FreeLibrary
'
collect2: ld returned 1 exit status



jetzt sagt der Compiler nurnoch das.

was mach ich da jetzt?
lg
0 Punkte
Beantwortet von Experte (3.2k Punkte)
Gegen die warnings dürften casts helfen.
Compilieren tut er sonst fehlerfrei.
Die Errors kommen vom Linker
Die undefined references dürften von ner fehlenden Lib kommen.
Stelle sicher, dass Kernel32.lib gelinkt wird.

Ele
...