Tobias K.
Erfahrenes Mitglied
moin
Ok, solange ich meine netten 5 Minuten hab hier mal eine ausführliche Erklärung.
time.h enthällt Funktionen zur Zeiterfassung...
windows.h Enthällt ne Menge Funktionen der WinApi, das sind Funktionen um mit Windows und des Funktionen arbeiten zu können.
stdio.h ist für Ein und Ausgaben.
Hier werden die Funktionen aus der DLL geladen, das muss dich weiter nciht interessieren, du kannst es so übernehmen. int i = 0x378; ist die übliche Adresse des Druckerports, sie weicht manchmal leicht ab, man kann in der Systemsteuerung gucken welche Adresse es ist.
Du Funktion bekommt eine Pinnummer übergeben und gibt ein Signal auf den Pin.
Schliesst die Dll.
mfg
umbrasaxum
Ok, solange ich meine netten 5 Minuten hab hier mal eine ausführliche Erklärung.
Code:
#include <stdio.h>
#include <windows.h>
#include <time.h>
windows.h Enthällt ne Menge Funktionen der WinApi, das sind Funktionen um mit Windows und des Funktionen arbeiten zu können.
stdio.h ist für Ein und Ausgaben.
Code:
//-------------------------------------------------------------------------
typedef short _stdcall (*inpfuncPtr)(short portaddr);
typedef void _stdcall (*oupfuncPtr)(short portaddr, short datum);
void lib_laden();
void pin(int Pin);
void lib_schliessen();
HINSTANCE hLib;
inpfuncPtr inp32;
oupfuncPtr oup32;
short x;
int i = 0x378;
//-------------------------------------------------------------------------
void lib_laden ()
{
hLib = LoadLibrary("inpout32.dll");
inp32 = (inpfuncPtr) GetProcAddress(hLib, "Inp32");
oup32 = (oupfuncPtr) GetProcAddress(hLib, "Out32");
if (hLib == NULL || inp32 == NULL || oup32 == NULL) {/*** ERROR ***/}
}
Code:
void pin(int Pin)
{
switch (Pin)
{
case 0: (oup32)(i,0x0); break;
case 1: (oup32)(i,0x1); break;
case 2: (oup32)(i,0x2); break;
case 3: (oup32)(i,0x4); break;
case 4: (oup32)(i,0x8); break;
case 5: (oup32)(i,0x10); break;
case 6: (oup32)(i,0x20); break;
case 7: (oup32)(i,0x40); break;
case 8: (oup32)(i,0x80); break;
}
}
Code:
void lib_schliessen()
{
FreeLibrary(hLib);
}
Schliesst die Dll.
mfg
umbrasaxum
Zuletzt bearbeitet: