Hallo allemaal,
Hoe kan ik in assembler een getal groter dan 255 in een register plaatsen, bijvoorbeeld 16 of 32 bits getallen. Dan heb ik 4 geheugenbytes nodig, maar ik weet niet hoe ik dat moet doen. Ik wil grote getallen kunnen gebruiken voor delay instructies, ik ben bekend met het loop in loop idee maar ik vind daarbij de duur van een loop lastig uit te rekenen. Ook kruipen er snel bugs in bij de loop in loop constructie naar mijn mening. Andere suggesties mbt delay routines zijn ook welkom,
Egbert
Zelf routines maken om getallen om te zetten, en add_16 of add_32 functies schrijven om met de getallen te kunnen rekenen. Uiteindelijk kiest ge zelf hoe ge uw getallen intern voorstelt.
Ik heb da bij een vorig project zo gedaan, maar vind de code niet direct en 't is lang geleden.
Ga voor dat soort zaken even kijken op de piclist.
Voor zo'n beetje alle belangrijke bewerkingen is er wel een routine of macro te vinden.
http://www.piclist.com/techref/microchip/math/basic.htm
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
Op 10 oktober 2005 20:23:40 schreef egberthofstra:
Hallo allemaal,Ik wil grote getallen kunnen gebruiken voor delay instructies
Zou ik niet doen. Lastige routines voor het op en aftellen.
ik ben bekend met het loop in loop idee maar ik vind daarbij de duur van een loop lastig uit te rekenen.
Moet je zelf ook niet doen maar laten doen door MPLAB laten uit rekenen. Er zit een stopwatch functie in die het aantal cycli(en dus de tijd) meet van een routine. Kijk eens op mijn site bij PIC Tutorial
http://home.versatel.nl/edithenwilliam/william.htm
Hierin heb ik de loop in loop uitgelegd
Ook kruipen er snel bugs in bij de loop in loop constructie naar mijn mening.
Dit is niet waar. Loop in Loop werkt perfect en zonder bugs.
Andere suggesties mbt delay routines zijn ook welkom,
Egbert
Maak gebruik van de interne 16 bits timer.
* Stel tijd in
* Activeer Timer interrupt
* Start Timer
* Wacht tot interrupt van timer
Ok, ik zal je tutorial eens lezen, ziet er wel nuttig uit. MPLAB heb ik tot nu toe nog niet gebruikt maar zal ik ook eens proberen.