nokijec ano,přesně tak, algoritmus je správný. Zbývá vyřešit na čem tento algoritmus naprogramovat a na čem jej spustit.
Je tu celá řada hledisek pro a proti. Vysvětlím nejprve k čemu to potřebuji.
Projekt je starý, ale jádro projektu je v tomto vlákně:
http://www.ebastlirna.cz/modules.php?na ... ic&t=96075
Je to hardwarový čítač, měřič kmitočtu. Nedostatek hardwarového, tedy BEZ-mikropočítačového řešení je v tom, že obsahuje mnoho, cca 40-50 pouzder TTL obvodů (počítám-li také obvody časové základny a displeje a obsluhu tlačítek), což vede na velkou desku 4-vrstvého plošného spoje. Taková deska je finančně nákladná. Zejména v malém počtu kusů.
Druhý extrém je kompletně softwarové řešení v mikropočítači. Těch je na netu mraky. Nedostatek takového řešení je, že do měřiče kmitočtu má čistě sofwarové řešení hodně moc daleko.
Včera jsem dokreslil desku hardwarového řešení (viz konec vlákna
http://www.ebastlirna.cz/modules.php?na ... ic&t=96075 ). Vychází mi to na desku 4-vrstvy 6.5" x 5". Cena součástek, tedy obvodů je pod 2000 Kč, ale deska je drahá. Přitom jsem oddělil tři nejrychlejší dekády zvlášť na malou destičku, protože chci udělat upgrade čítače pomocí CPLD a tím zvýšit mezní kmitočet čítače. Protože čítač je 10-místný, zbylo mi na velké desce 7 dekád. To odpovídá 24-bitovému binárnímu číslu. Napadlo mne, vrátit se zpět k původní myšlence někdy do roku 2008 a použít binární 32-bitový hardwarový synchronní čítač. Jemu předřadit tu destičku se třemi nejrychlejšími dekádami a tím zredukovat počet pouzder obvodů na desce čítače (zbude jen časová základna a displej).
Toto řešení je OK, jen nutno vyřešit ten přepočet 32-bitového čísla na dekadické. To vyžaduje mikropočítač. Když se toto vyřeší, postup bude nádsledující: po skončení hradlování (měření kmitočtu hardwarovým čítačem) mikropočítač přečte tři nejrychlejší dekády čítače, pak přečte 4x 8bitů z 32 bitového binárního čítače. Následně spustí nové měření, protože data již přečetl. Nyní musí mikropočítač těch 32 bitů, rozdělených do 4x 8 bitů co nejrychleji převést na dekadické číslo. Pak odešle přepočtené číslo na displej a doplní údajem 3 nejrychlejších dekád. Na tuto činnost, tedy přepočtení 32 bit binárního kódu a odeslání na displej + odeslání 3 čísel z nejrychlejších dekád, má mikropočítač max. 10 milisec.
V podstatě tedy mikropočítač musí umět násobit a dělit 32-bit integer. Před chvílí mne napadlo použít dsPIC3034A (signálový MCU) který by to snad mohl umět. S jinými MCU než Microchip zkušenosti nemám. Mám v šupleti ještě 32 bitový mikropočítač Parallax, ale zatím jsem se nedostal k tomu jej vyzkoušet. Chce to někoho, kdo v této oblasti (software MCU) má více zkušeností. Když budu 2 měsíce bádat nad softwarovým řešením jak přepočíst 32 bit binární číslo, nemůžu přitom řešit hardware čítače.
![Very Happy :D](./images/smilies/icon_biggrin.gif)
Nelze dělat vše najednou, protože "mnoho zajíců = psova smrt"
![Very Happy :D](./images/smilies/icon_biggrin.gif)