Sida 1 av 1
beräkna vinkel med PIC16F874 ?
Postat: 2 juli 2004, 17:51:01
av drac
har lite problem... behöver räkna ut en vinkel med en PIC16F874 i en triangel mellan närliggande och motstånde sida. går detta? det är vinkeln som man får med tan på en vanlig miniräknare, bra förklaring

hoppas någon vet mer än jag

Postat: 2 juli 2004, 18:11:09
av cyr
Jovisst går det... Enklaste metoden, om du har ganska mycket minne över och inte behöver så jättehög precision, är nog att använda en lookup-tabell och lite enkel interpolation.
Alltså, skriva ett litet program på datorn som räknar ut X värden i förväg, ta med de värdena som en tabell i ditt PIC-program och använda tabellen + att låtsas att funktionen är en rät linje mellan de uträknade punkterna.
Postat: 4 juli 2004, 19:02:11
av drac
finns det något bra exempel på hur en lockup-tabell fungerar? har ingen aning om hur en sådan ska användas... har tyvärr inte heller mycket minne kvar i processorn. hm, inte helt enkelt detta

Postat: 4 juli 2004, 19:18:47
av cyr
Själva tabellen kan med fördel lagras i program-minnet, har du ont om det?
Hittade ett exempel som beräknar arctan med en (liten) lookup:
http://www.dattalo.com/technical/softwa ... arctan.asm
Jag använde en gång en liknande metod, fast med högre precision, för att översätta spänning över en termistor till temperatur. I PIC16F87x kan man lagra 14bitars värden i program-minnet.
Postat: 4 juli 2004, 19:47:18
av RDX*
En sak som kan vara bra att komma ihåg är att för små vinklar så tangens nästan lika med sinus.