Behöver hjälp med formel (division) i assembler...
Postat: 10 juni 2008, 12:45:42
Jag har haft en extramätare/datalogger i bilen som jag tänkte blåsa lite liv i igen.
Det är i all enkelhet en ATmega163 med en 4x16 raders display, lite ingångar, en extern räknare, klocka, rs232-interface, tryckmätare och tempmätare.
Den visar bland annat varvtal och hastighet.
Nu känner jag att jag skulle vilja att den visar, och loggar, vilken växel som ligger i. Det kan ju enkelt(?) bestämmas genom att dividera varvtalet med hastigheten - kvoten motsvarar ju utväxlingen.
Jag har varvtalet i en byte (lägg två nollor till decimalvärdet i byten och du har varvtalet) och hastigheten i en byte (decimalt).
Min första tanke är att jag dividerar varvbyten med hastighetsbyten och använder kvoten för att plocka ur vilken växel jag kör på ur en lookup-tabell.
Dock är jag inte SÅ haj på assemblermatematik att jag kan klura ut hur man gör divisionen.
Någon som kan komma med lite input? Eller någon annan smart tanke runt hur jag kan lösa det?
Det är i all enkelhet en ATmega163 med en 4x16 raders display, lite ingångar, en extern räknare, klocka, rs232-interface, tryckmätare och tempmätare.
Den visar bland annat varvtal och hastighet.
Nu känner jag att jag skulle vilja att den visar, och loggar, vilken växel som ligger i. Det kan ju enkelt(?) bestämmas genom att dividera varvtalet med hastigheten - kvoten motsvarar ju utväxlingen.
Jag har varvtalet i en byte (lägg två nollor till decimalvärdet i byten och du har varvtalet) och hastigheten i en byte (decimalt).
Min första tanke är att jag dividerar varvbyten med hastighetsbyten och använder kvoten för att plocka ur vilken växel jag kör på ur en lookup-tabell.
Dock är jag inte SÅ haj på assemblermatematik att jag kan klura ut hur man gör divisionen.
Någon som kan komma med lite input? Eller någon annan smart tanke runt hur jag kan lösa det?