uhm deze heb je denk ik ontworpen voor win 98 want de ioport95.dll zit niet erin. hoe moet ik deze toevoegen aan jou bestand?

hmmm ik gebruik geen enkel dll bestand :S

gemaakt met vb6.0 onder 2000 prof

op google kan je vaak dll's vinde, tis wel effe zoeken tot je de juiste hebt :P

:DHeb net de schakeling opgebouwd op een breadboardje, nu proggen en bidden:P

nee ik bedoel voor om in xp de printerpoort aan te sprekenmoet je ioport95 gebruiken.

die dll heb ik nog niet gedeclareerd, alsook de code is nog niet volledig: de arry's moet je nog maken, de verwerkin zal wel ongeveer kloppen !

ook de effectieve uitvoer naar de lpt moet je nog maken !

ik gebruik altijd io.dll

tsjaa die io.dll dat is die wat ik bedoel die staat idd anders aangegeven in vb. maar ik kom daar geen weis uit. heb da programma gewoon rustig veranderd en weet ook nog niet zoveel maar iets gaan declareren :S dat gaat net iets te ver. durf het bijna niet te vragen maar zou je deze btj kunnen uitwerken. misschien als software klopt kunnen we het schema op co zetten omdat het toch regelmatig langs komt en niet moeilijk is kwa hardware

zwier dit in de general om het nodige te declareren


Public Declare Sub PortOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Byte)
Public Declare Sub PortWordOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Integer)
Public Declare Sub PortDWordOut Lib "IO.DLL" (ByVal Port As Integer, ByVal Data As Long)
Public Declare Function PortIn Lib "IO.DLL" (ByVal Port As Integer) As Byte
Public Declare Function PortWordIn Lib "IO.DLL" (ByVal Port As Integer) As Integer
Public Declare Function PortDWordIn Lib "IO.DLL" (ByVal Port As Integer) As Long
Public Declare Sub SetPortBit Lib "IO.DLL" (ByVal Port As Integer, ByVal Bit As Byte)
Public Declare Sub ClrPortBit Lib "IO.DLL" (ByVal Port As Integer, ByVal Bit As Byte)
Public Declare Sub NotPortBit Lib "IO.DLL" (ByVal Port As Integer, ByVal Bit As Byte)
Public Declare Function GetPortBit Lib "IO.DLL" (ByVal Port As Integer, ByVal Bit As Byte) As Boolean
Public Declare Function RightPortShift Lib "IO.DLL" (ByVal Port As Integer, ByVal Val As Boolean) As Boolean
Public Declare Function LeftPortShift Lib "IO.DLL" (ByVal Port As Integer, ByVal Val As Boolean) As Boolean
Public Declare Function IsDriverInstalled Lib "IO.DLL" () As Boolean

IO.dll moet dan wel in de system dir staan (zie de site van io.dll - maker)

uitvoer naar de lpt doe je dan zo:


Call PortOut(888, 1)                        'om de waarde 1 op de lpt te zetten

er wordt dus veel teveel gedeclareerd, maar dat geeft nie :D

ok dan voer ik dat in en dan ga ik expirimenteren totdat ik wat op de displays krijg te staan

thats the spirit !!!

als ik nu m'n frans nie had moeten leren, dan had ik wat meer getikt :(:(:( je le déteste

ik ga me hier lkkr mee amuseren en als ik vast zit dan hoor je me wel weer.(ik denk morge)

wat betekend

constants, fixed lengt strings, arrays, userdefined types and declare statements not allowed as public members of objectmodules

wanner heb je die err gekregen ?

bij het uitvoeren ?

en welke lijn werd er int geel getoond ? (waar zat de fout)

ergens een foute variabele denk ik, maar ik krijg die fout nie !

ik kreeg die fout aan de eerste regel code die hierboven staat. heb dit gewoon zo geplakt helemaal boven in in het form general

het je io.dll wel in de juiste directory staan ?

maak van die "public" eens "private"

nou dat werkt verder al
maar hoe kan ik erachter komen welke output waarde ik op de lpt moet zetten
je zegt als voorbeeld Call PortOut(888, 1)
maar van die 1 moet ik wat anders maken, kan ik dit gewoon met het binaire getallenstelsel doen?

stel dat je "0000110" wil zetten (vbv de rechterkollom van het cijfer 5

dan zull je 6 op de lpt moeten zetten.

om van binair naar digitaal te gaan doe je zo:

"1011" = 1*2^3 + 0*2^2 + 1*2^1 + 1*2^0 = 8 + 0 + 2 + 1 = 11

maak hier een function voor, dat spaart veel werk !

uhm de rijen apart een nummer geven is makkelijk daar moet je gewoon ff het binaire getallenstelsel op papier zetten.
led 1 = 1
led 2 = 2
led 3 = 4
led 4 = 8
led 5 = 16
led 6 = 32
led 7 = 64

als je led 1,4 en 7 aan wil dan word het getal 1+8+64=73

maar hoe spreek ik de rijen verticaal aan?

dat is nu net die multiplexing !

effe rudimentair uitleggen:

met de kollom tor verbind je de leds aan de min, en met de rijtransistoren schakel je ze aan de plus.

als je dus een deel van een kollom wil laten oplischten, dan verbind je ze allemaal aan de min, en enkel die die je wil aan de plus. bvb nummer 1,4 en 7 --> de min op de eerste kollom, en puls op 1,4 en 7

vervolgens doe je het zelfde met de 2e/3e/4e/... kollom

uhm nee dat laatste snap ik niet! ik wil een tekst over het schermpje laten scrollen van rechts naar links dus geen vaste letters in elk vak.

het komt erop neer van de karakters in verticale schijfjes te snijden.

per sprongetje van je display laat je er rechts een kollometje bijkomen. de rest moet dus eentje naar links opschuiven.

ik heb me alle letters op papier gezet en de bolletjes die moeten oplichten heb ik ingekleurd en kan ik de waardes per collom gaan tellen maar hoe ga ik die collom 1tje opschuiven en 1tje erbij voegen steeds? kun je een voorbeeld letter maken?