Beste lezers,
Momenteel breek ik mij het hoofd over het makkelijk definiëren van een hele poort in èèn keer.
Dat is op zich niet zo spannend, in picbasic gaat dat onder andere op de volgende manier ;
PORTB = %01101100
Maar nu komt de grap, ik wil met een decimaal getal de status van de poort ineens definieren.
Nu heb ik geprobeerd of de compiler dit slikt;
Getal in variabele stoppen, bijvoorbeeld;
duty = 120
PORTB = %duty
Achtergrond, ik laat een 16F887 een 16F628 een waarde doorgeven door poort-op-poort een binaire waarde uit te geven en weer in te lezen.
Voordeel is dat het totaal niet tijdkritisch is en geen protocol nodig is, bovendien heb ik toch "pinnen genoeg".
De variabele gaat van 1-140, binair ook zat ruimte dus om dit over een poort ineens te communiceren.
Ben benieuwd of iemand een creatief idee heeft om met zo weinig mogelijk code dit varkentje te wassen.
Aan de ontvangende zijde heb ik het decoderen al in orde, gewoon de poorten bij langs en de 1,2,4,8,16,32,64,128 (indien aanwezig) bij elkaar optellen.
Enige toevoeging is trouwens een "lees-startcommando" waarna de gevende poort een delay garandeert waarbinnen de waarde zonder wijziging kan worden ingelezen.