hallo ik heb een vraagje,

ben bezig met het bouwen van een progameerbaaren lightshow

ik heb nu 8 schakelaars
s1 tot s7

nu heb ik dit geprobeerd

if s7 = 0 and s6=0 and s5=0 and s4=0 and s3=0 and s2=0 and s1=0 and s0=1 then
ewrite 0, [%0000001]

elseif s7 = 0 and s6=0 and s5=0 and s4=0 and s3=0 and s2=0 and s1=1 and s0=0 then
ewrite 0, [%0000010]

elseif s7 = 0 and s6=0 and s5=0 and s4=0 and s3=0 and s2=0 and s1=1 and s0=1 then
ewrite 0, [%0000011]
endif;

kan iemand mijn vertellen hoe ik dit makelijker kan doen
wilde een sub roetine maken

en dan ook steeds het adres van de eeprom met 1 verhogen
dus als die in het programma kijkt naar welk adres moet gescheven dit is dan ook de stap van het light , en dan over de subroetine heen en de waarde van de schakelaars weg schijft ,

meschien is er voor de schakelaars ook een manier wand anders moet ik die regel 256 keer maken met 7 schakelaars alle mogelijke combinaties

wie kan me wat hulp bieden
alvast bedankt

Wat mij als eerste binnenschiet.. Je hebt 8 Schakelaars, S0 t/m S7.. Een byte heeft ook 8 bits.. Dan zou ik elke schakelaar de waar van 1 bit in de byte laten bepalen dan in 1 keer de byte wegschijven..

Dan krijg je zoiets...

If s0 = 1 then VARIABELE.0 = 1 else VARIABELE.0 = 0
If s1 = 1 then VARIABELE.1 = 1 else VARIABELE.1 = 0
If s2 = 1 then VARIABELE.2 = 1 else VARIABELE.2 = 0
If s3 = 1 then VARIABELE.3 = 1 else VARIABELE.3 = 0
If s4 = 1 then VARIABELE.4 = 1 else VARIABELE.4 = 0
If s5 = 1 then VARIABELE.5 = 1 else VARIABELE.5 = 0
If s6 = 1 then VARIABELE.6 = 1 else VARIABELE.6 = 0
If s7 = 1 then VARIABELE.7 = 1 else VARIABELE.7 = 0

Ewrite, Variabele

Dit is even om principe aan te duiden, dus niet rechtstreeks te CTRL-Copy/Paste :)

Hmja, als je die 8 schakelaars nou aan 1 poort hangt, dan is het simpelweg

Variabele = poort
Ewrite, Variabele

bedoeld u met een weerstand array
dat aan 1 poort hangen ,??

ik dacht dathet ook kon met 8 schakelaars op ieder 1 poort
en dat het dan kijkt naar all die 8 schakelaars en dat weg laten schijfen op adrs 0 dan ewrite 0, [????????]
en dan als die weer kijkt naar de schakelaars
dat i dan zecht ewrite 1, [????????]
ik weet alleen niet hoe ik steeds het adres ewrite auto kan verhogen met 1

oké ik denk dat ik er nu uit ben

heb wat werken
alleen hoe krijg ik nu de waarden terug en dat het dan word weer gegeven op
portd is dat zo (portd = ERead 0
of zo (portd = % ERead 0

wie kan me uit legen hoe dat nu moet

alvast bedankt

[Bericht gewijzigd door klein is fijn op (24%)]

ik heb nu dit
lijk me wel werken

If s0 = 1 Then
VARIABELE.0 = 1
ElseIf s0 = 0 Then
VARIABELE.0 = 0
EndIf

If s1 = 1 Then
VARIABELE.1 = 1
ElseIf s1 = 0 Then
VARIABELE.1 = 0
EndIf

If s2 = 1 Then
VARIABELE.2 = 1
ElseIf s2 = 0 Then
VARIABELE.2 = 0
EndIf

If s3 = 1 Then
VARIABELE.3 = 1
ElseIf s3 = 1 Then
VARIABELE.3 = 0
EndIf

If s4 = 1 Then
VARIABELE.4 = 1
ElseIf s4 = 0 Then
VARIABELE.4 = 0
EndIf

If s5 = 1 Then
VARIABELE.5 = 1
ElseIf s5 = 0 Then
VARIABELE.5 = 0
EndIf

If s6 = 1 Then
VARIABELE.6 = 1
ElseIf s6 = 0 Then
VARIABELE.6 = 0
EndIf

If s7 = 1 Then
VARIABELE.7 = 1
ElseIf s7 = 0 Then
VARIABELE.7 = 0
EndIf

EWrite 0, [VARIABELE]

ik heb nu alleen nog de vraag als ik het in de Eeprom oproep dan wil ik graag dat portd =[Eeprom waarden ] de waarden op de uitgangen zet dit stukje kom ik niet verder .
bij het weg schijven schijft hij toch OOKniet dit teken ER BIJ weg (%) WAND DAN HAD IK KUNNEN DOEN,
PORTD = EREAD 0 MAAR DIT GAAT DENK IK NU NIET LUKKEN
WIE KAN ME HIER WAT DUIDELIJK HEID IN GEVEN HOE IK DE WAARDEN eEPROM OPVRAAG EN DAT WEER GEVEN OP DE UITGANGEN VAN PORTD

ALVAST BEDANKT SORRY VOOR DE HOOFD LETTERS ME CAPSLOCK BLIJFT HANGEN