Lucky Luke
Eluke.nl | handgetypt | I'm a poor, lonesome cowboy, with a long, long way to go.
Long time ago dat ik hiermee bezig was, nu ben ik op het idee gekomen alle tekst in 1 array te zetten ipv in 3, om zo de code wat compacter te maken. (Als dat werkt ga ik ook die ER_OSC of RC_odc gebruiken).
Aleen krijg ik voor deze regel:
rij1=tekst[i].1een foutmelding: Invalid Cast for this type of variable.
i is een variable (byte)
rij1 verwijst naar portb.3
rij2=tekst[i].2etc leveren overigends hetzelfde op, waardoor ik nu met errors zit van regel 175 tot regel 206. Daarna ga ik op dezelfde manier door maar krijg ik geen errors meer. Als ik regel 175 echter comment dan komt regel 207 erbij. Dus blijkbaar ben ik over het max. aantal errors heengegaan... Niet dat het vanaf regel 206 opeens wel goed is.
Kan iemand me vertellen wat proton niet lust aan
rij1=tekst[i].1?tekst is een array van 76 byte. Ik wil dat rij1=portb.3 dezelfde waarde krijgt als tekst[cel i].bit 1
Lucky Luke
Eluke.nl | handgetypt | I'm a poor, lonesome cowboy, with a long, long way to go.
*bump*voorzichtige rotschop
EDIT: gevonden, thanks to Frits K.
Eén bit wijzigen in een array
Om bijvoorbeeld bit 6 van PietJanHein[3] op '0' te zetten kun je niet schrijven:PietJanHein[3].6 = 0 ;Dit werkt zo nietMaar moet je dit zo schrijven:
PietJanHein#3.6 = 0 ;Dit werkt (denk aan het hekje # )
[Bericht gewijzigd door Lucky Luke op (82%)]
Lucky Luke
Eluke.nl | handgetypt | I'm a poor, lonesome cowboy, with a long, long way to go.
Het wil nog steeds niet. Ik probeer een byte array op bit niveau uit te lezen. (zie bovenstaande 2 posts)
Frits K.s methode werkt niet, en dit:
http://www.picbasic.co.uk/forum/archive/index.php/t-544.html
rij1=tekst.i(0)
werkt ook niet.
EDIT: juist, dat is voor de melabs compiler...
Ik wil dat rij1 (dat is een symbol voor een poort.pin) de waarde krijgt die in bytearray[element].byte staat! Hoe doe ik dit?
EDIT:
Ik heb sterk het vermoeden dat het gewoon niet kan
...
Ik merk ook dat ik eigenlijk opnieuw kan beginnen omdat ik er zo lang niet mee bezig ben geweest...
En voor wie bang is dat ik het project niet ga afronden: ik heb de originele chip inmiddels gesloopt (vraag me niet hoe, maar hij doet niks meer), dus ik zal het wel af moeten ronden...
Het loopt allemaal stukken minder flexibel dan dat ik me in het begin voorstelde...
[Bericht gewijzigd door Lucky Luke op (34%)]
Lucky Luke
Eluke.nl | handgetypt | I'm a poor, lonesome cowboy, with a long, long way to go.
ik heb nu tig manier om tekst op een muxed display te laten scrollen, maar geen ervan is eigenlijk echt goed werkbaar... Project komt weer even tijdelijk in een hoekje. Hoe lang valt nog te bezien (dwz: ik zal het naar alle waarschijnlijkheid ooit wel eens afronden, maar dat kan binnen een week zijn of binnen een decinium (=10 jaar), en misschien zelfs wel helemaal nooit)
Op 14 februari 2009 12:51:59 schreef Lucky luke:
Ik wil dat rij1 (dat is een symbol voor een poort.pin) de waarde krijgt die in bytearray[element].byte staat! Hoe doe ik dit?
rij1=bytearray[element] AND mask
Lucky Luke
Eluke.nl | handgetypt | I'm a poor, lonesome cowboy, with a long, long way to go.
Hoewel het project nog steeds in de koelkast staat net eventjes geprobeert. Helaas, het werkt niet. Niet hoe ik zou denken dat het moet werken tenminste. De AND word sowiso niet geaccepteerd, & werkt wel. Maar het resultaat is als volgt:
bytearray[ellement] i n dit voorbeeld even 00101010
Mask is 00001000
Resultaat is dan 11011101...
Inderdaad keurig bitwise and, 1 en 1 word 1, 1 en 0 word 0, 0 en 1 word 0, maar 0 en 0 word dus ook 1...
Veder moet het naar een poort, dus naar 1 bit. Dan wordt alleen het LSB gebruikt, ipv dat "als er wat anders dan 0 staat word de poort hoog".
wat ook zou kunnen (ideetje van het engelse proton forum) is het in 2 stappen doen: tempvar = byatearray[element], en dan rijnummer=tempvar.bit. Ik denk dat ik zoiets ga doen.
Voorlopig houd ik het projectje nog in de ijskast. Als ik er weer opnieuw aan begin dan waarschijnlijk weer from scratch. Dit programma probeert te veel dingen tegelijk te doen en is niet meer zo overzichtelijk...
EDIT:
Inderdaad van scratch opnieuw begonnen. Om deze oude koe niet uit de sloot te trappen nieuw topic aangemaakt.