[elektro] PIC lebegopontos szamolas

hg12345 hg12345 at freemail.hu
Mon Nov 22 08:23:16 CET 2010


Hi!

Kötelező ez a PIC?

Jobban jársz a PIC12F1822 vagy 1840 tipussal, tömörebb és gyorsabb kódot produkál.

Miért kell lebegőpontos számítást használni, amikor minden megoldható integer vagy fixpontos integer számítással.

Szorozd meg 1000 a mért értékeket, és számolj long hosszúsággal. Az osztás után az eredmény 0.1% pontosságú lesz...+ kerekítési hiba. (az 1xxx kis picek ismerik és kezelik a C átvitelt ezért tömörebb és gyorsabbak az arithmetikai müveletek.



"Moravcsik Szilárd" <mszilard at contarex.hu> írta:
>Sziasztok!>
>
Belefutottam egy PIC-es feladatba, amihez kérnék Tőletek egy kis segítséget!>
>
Egy PIC12F617-es 8 lábúról lenne szó, amelyik a belső 8 MHz-es órájáról >
jár, 5V-os tápról. Az eddig már többször bevált mikroC demo verzióját >
használnám a program megírásához.>
>
A PIC-kel többek között meg kell mérnem egy bejövő 14kHz-es (ez máshol >
3kHz, vagy akár 20kHz is lehet!) PWM jel H és L részeinek arányát, majd >
ennek alapján elő kell állítani legalább 1% pontossággal a PIC lábakon >
kívülről fixen kiválasztott 50Hz..100Hz közé eső ugyanilyen H és L >
arányú kimenő PWM jelet.>
>
Eddig nincs is nagyobb gond.>
>
Gond az, hogy a PIC csak 2kWord flash-sel rendelkezik, aminek akár a >
felét (vagy többet) is "megeheti" az arányok számolásához felhasznált C >
nyelven megírt osztás és szorzás, pedig ez még csak a feladat kisebbik >
része lenne.>
>
A kérdés:>
ismertek valami rövidebb, akár assembly nyelvű, de _bevált_ >
rutingyűjteményt, amivel tudnék számolni? Legalább 2..3 tizedesre >
pontosan kéne tudni osztani és szorozni, (szerintem) 8 bites értékeket.>
>
Üdv:>
Szilárd>
>
----------------------------------------->
          elektro[-flame|-etc]>



More information about the Elektro mailing list