Stránka 1 z 2
pomoc se změnou v asm
Napsal: 26 pro 2010, 14:00
od niko231
Potřeboval bych poradit, jak změnit ovládání v uvedeném asm, tak abych funkci čtvrtého tlačítka RB4 nahradil současným stiskem tlač RB1-RB2. To RB4 je funkční pouze v režimu RUC, jinak je nefunkční. Díky za Vaše rady.
Napsal: 26 pro 2010, 15:25
od procesor
To závisí aj zapojenia tlačidiel. Aktívne tlačidlo dáva Low/Hi?
Skús tento podprogram xxx_fuk_logika.
Moje vsuvky sú v riadkoch označených na začiaku riadkov takto ;..
tie znaky vymaž.
Napsal: 26 pro 2010, 18:25
od mat100
Hoj
Taky jsem se pokusil - mělo by to fungovat.

Napsal: 27 pro 2010, 10:47
od niko231
Dobrý den,
tak jsem zkusil obě uvedené úpravy, ale výsledek se nedostavil, tím dvojstiskem se nic nemění ( sepnutí-vypnutí relé). Asi se něco přehlédlo, připadá mi , že se vykoná instrukce tlačítka + nebo - dříve, něž je možné zjistit ten dvojstisk obou pro vykonání požadované funkce RB4. Proto přikládám shéma a původní asm. Je to z ruštiny.Jen ještě uvedu činnost, tlačítky +,- se listuje v kruhovém menu , tl. F funkce se tato vybere a tl. +,- se zadává hodnota, v menu REG se volí IND-indikce(nereguluje jen zobrazuje teplotu),TOP ( reguluje -pro ovládání topení), CHL (pro ovládání chlazení) a RUC ( ruční režim, kde je možno tím RB4 ovládat to výstupní relé zap-vyp) i když se displej vrátí na úvodní zobrazování měřené teploty.V jiném režimu není RB4 funkční.[/i]
Napsal: 27 pro 2010, 12:27
od procesor
A originál asm ti funguje?
Prečo potrebuješ zrušiť tlač. RB4?
Ruský komentár by bol aj dobrý, len neviem nastaviť aby mi ukazovalo azbuku, takže komentáre sú nulové a to sa ťažko modifikuje.
Napsal: 27 pro 2010, 13:41
od Chenzee
#define RB2 PORTB,1 ; více
#define RB3 PORTB,2 ; méněĺ
#define RB1 PORTB,3 ; FUNKCE˙
#define RB4 PORTB,1 ; FUNKCE RUČNĚ˙
Tomu schematu ta definice neodpovídá, nebo ano?!?
Napsal: 27 pro 2010, 15:13
od procesor
V pôvodnom to má OK
Kód: Vybrat vše
; PORTY TLAИНTEK
#define RB2 PORTB,1 ; vнce
#define RB3 PORTB,2 ; mйnме
#define RB1 PORTB,3 ; FUNKCEя
#define RB4 PORTB,4 ; FUNKCE RUИNМя
Napsal: 27 pro 2010, 15:37
od niko231
Důvodem změny tlačítek,je to, že mám z vadného průmyslového termostatu krabičku s foliovou klávesnicí se třemi tlačítky a chtěl bych to do ní zabudovat.
Zatím to mám zbastlené na pokusném ploš. spoji, kde to odzkušuji.
Skutečnost tlačítek v zapojení je taková:
PB1- více z vývodu RB1 pin 7
PB2- méně z vývodu RB2 pin 8
PB3 - funkce z vývodu RB3 pin 9
PB4 - funkce ručně z vývodu RB4 pin 10
v původním asm to takto pracuje
Napsal: 27 pro 2010, 15:55
od niko231
RUSKÝ TEXT
Napsal: 27 pro 2010, 18:59
od procesor
Tak som to prešiel, namaloval vývojové diagramy, a RB4 sa nedá nahradiť súčasným stlačením RB1 a RB2, pretože aj RB4 súčasne s RB1 má nejakú funkciu. Analyzovať celý program pre zistenie minimálneho počtu stavov je pre "koňa" a najmä bez popisu (a bez potuchy čo to vie robiť)
Napsal: 28 pro 2010, 08:22
od niko231
Tak to je tedy složitější než jsem myslel. Chtěl jsem jen zachovat možnost toho manuálního sepnutí. Nešlo by třeba vložit nějakou instruci, aby relé seplo hned v menu ruč, bez ohledu na tlačítka, výstupem z toho menu by vyplo? Ale i tak Vám díky za velkou ochotu.
Napsal: 28 pro 2010, 11:06
od Chenzee
Dal jsem to do MPlabu a nejde mi to ani zkompilovat. Hlásí mi to pořád nějaké chujoviny.
2923: FILL(goto 0x00),0x0800-$ ale když to zablokuju, zahlásí to "Error - section '.org_1' can not fit the absolute section. Section '.org_1' start=0x00000000, length=0x00000fec
Errors : 1". Když to nezakáži, zahlásí to to samé ale ... .org_2 ...
Nikdy jsem se s tím nesetkal.
Vám to jde?
Napsal: 28 pro 2010, 18:29
od niko231
Já to dělám v MPLAB 7.2 ten soubor ch20c.asm mi jde normálně převést do HEX.
Napsal: 28 pro 2010, 22:03
od procesor
Preložil som ch20c_102.asm bez problémov v MPLAB v.8.00
Napsal: 29 pro 2010, 05:37
od Chenzee
Nainstaloval jsem verzi 8.63 (nejnovější verze) a už mi to jde též. Akorát měli chybu v definičním souboru inc, kde jim u definování config slova pro programovou CP chyběli na začátku podtržítka
Předtím jsem měl verzi 8.43.