Prosba - monostabilni obvod s MCU (VYRESENO)

Jirka zaloha na volny.cz
Pondělí Září 3 12:44:52 CEST 2012


Jak jsem slíbil (viz citace na konci), tak činím a stručně popíšu, jak 
jsem se vlastním úsilím dostal k funkčnímu řešení.

1) vzhledem k matným vzpomínkám na BASIC jakožto jediný jazyk, se kterým 
jsem někdy něco dělal (tedy vlastně ještě Fortran na TESLA 200, ale tam 
jsem nějak vůbec netušil, která bije ;-) ), jsem nakonec vybral obvod 
popsaný na http://www.bittnar.info/cz/casovy-spinac/ (bylo i v původních 
mnou uvedených odkazech, tam nicméně pouze stručně bez popisu).

Další výhoda této koncepce byla, že stále je k dispozici free verze IDE 
(Proton IDE LITE, viz http://www.protonbasic.co.uk/ resp. konkrétně 
http://www.compile-it.com/protonds/proton_ds_lite-3.0.zip), kterýžto SW 
použil autor k napsání zdrojového kódu a já jsem ho tedy potřeboval k 
úpravě. Autor svůj kód dává k dispozici pod GNU/GPL licencí, takže ani 
tam není problém.

2) stáhnul jsem tedy ono IDE a zcela bez problémů nainstaloval a spustil 
pod Wine na Linuxu openSUSE 11.4.

3) v IDE jsem otevřel autorův původní zdrojový kód 
(http://www.bittnar.info/cz/download/ resp. konkrétně soubor casovac.bas 
z archivu http://www.bittnar.info/download.php?casovy-spinac.zip) a 
zkusil kompilaci (pouhým kliknutím na ikonu). Zavolal se MPASM a vše po 
chvíli proběhlo bez chyb. Ejhle, funguje to! Jen je potřeba pro MPASM 
dodržet délku názvu *.bas souboru max. 8+3, jinak kompilace neproběhne 
(zřejmě nějaké reziduum z DOSu, i když MPASM se mi jeví jako Windows 
aplikace).

4) zkusil jsem upravit časy a invertovat výstup (potřebuju aktivní L), 
nový kód jsem opět zkompiloval a zkusil pomocí UP! (ASIX Presto, opět 
pod Wine v Linuxu) vypálit do 12C509A. Proton IDE LITE bohužel 12C509(A) 
neumí. Tušil jsem, že *.hex pro 12C508 by měl fungovat i v 12C509(A), 
ale věřte tomu... No, úspěch se dostavil a výsledkem je funkční časovač 
s PICem.

JINÝMI SLOVY: PŮLHODINOVÝ ČASOVAČ V PODOBĚ JEDINÉHO POUZDRA SO-8, BEZ 
JAKÉKOLIV DALŠÍ SOUČÁSTKY (nepočítám-li blokovací kondenzátor na 
napájení). To vůbec není špatné...

Koupím si teď non-OTP 12F509 a budu si hrát dál, docela se mi to 
zalíbilo. Chci ještě zkusit signalizaci pípnutím po ukončení časového 
intervalu. Proton IDE LITE má omezení na 50 (myslí se nekomentovaných) 
řádek kódu, tak jsem zvědav, zda to tam nějak dostanu...

V příloze posílám původní a upravený *.bas soubor, aby se mohli poučit 
ev. i jiní začátečníci.

Nakonec poznámka: je zřejmé, že pro SW orientované jedince je výše 
uvedený popis trivialita, ale já to chápu jako malé vítězství na mně 
cizí půdě a třeba to pomůže i někomu jinému...

---
Jirka

> Já jsem spíš měl zájem o modifikaci něčeho, co už existuje. Proto jsem
> uvedl ty odkazy. Fakt od nikoho neočekávám, že se tu zdarma a naplno
> bude věnovat výuce SW MCU od naprostých začátků...
>
> Zatím jsem zjistil, že by pro mě asi byla nejschůdnější úprava *.inc
> souboru s časováním (ve standardním textovém editoru) a nový překlad
> spolu s *.asm z http://picprojects.org.uk/projects/ldt/ldt.htm . Můj
> další objev je, že překlad se zřejmě dá udělat minimalistickým programem
> MPASM, který mi funguje bez problémů ve Wine...
>
> Pokud se doberu funkčního řešení, tak to sem rozhodně napíšu. Myslím, že
> to může pomoct řadě dalších, co se topí v dnešním SW chaosu.
>
> ---
> Jirka

------------- další část ---------------
A non-text attachment was scrubbed...
Name: casovac.zip
Type: application/zip
Size: 1750 bytes
Desc: [žádný popis není k dispozici]
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20120903/dd11d811/attachment.zip>


Další informace o konferenci Hw-list