[elektro] PIC C18 probléma

Bali Zoltán eltexto at freemail.hu
Mon Feb 9 09:33:30 CET 2015


Már láttam a válaszokat.

Én az LCD-re várakozást a kiírás elé
szoktam rakni, így csak akkor foglalja
a várakozás a proci erőforrást, ha az
előzővel nem végzett. Itt lehet nem
számottevő a foglaltság, de ahogy írtad,
minden kiírás után Tbusy idő pazarolódik
feleslegesen.

Üdv.  Zoli


----- Original Message ----- 
From: "Skandar Graun" <sgraun at gmail.com>
To: "elektro" <elektro at tesla.hu>
Sent: Sunday, February 08, 2015 11:48 PM
Subject: [elektro] PIC C18 probléma


> Sziasztok!
>
> Van egy számom (pozíció), ami 200 000 -ig mehet fel.
> Ezt a számot nekem LCD.re 100-al osztva kellene megjelenítenem, két
> tizedessel.
>
> Kitaláltam egy módszert, ami már egy tizedessel múködött, de itt kissé
> lehalt.
> A program a következő:
>
> void decpont(unsigned long bedata, unsigned char pos)
> {
> SetDDRamAddr(pos);
>
> sprintf(data,"%4lu.",bedata/100);
> putsXLCD(data);
> while( BusyXLCD() );
> SetDDRamAddr(pos+5);
> sprintf(data,"%02d",(unsigned char)(bedata % (bedata/100)));
> putsXLCD(data);
> while( BusyXLCD() );
> }
>
> A problémám, hogy az így számolt és megjelenített tizedesek elég furcsa
> viszonyban vannak a valósággal. Egy másik kijelzőn is meg van jelenítve az
> érték, az jól számol, az LCD-n látható érték viszont hibás, a tizedesek
> eltérnek a valóságtól.
> Mi nem jó a módszeremben, vagy mit tudnátok ajánlani helyette?
> -----------------------------------------
>          elektro[-flame|-etc] 



More information about the Elektro mailing list