Stránka 1 z 2

PIC16F877A - zobrazení textu na multiplexovaném displeji

Napsal: 11 říj 2010, 12:25
od malina11
Zdravim, potreboval bych pomoci naprogramovat program alarm, ktery by mel fungovat nasledovne: Při stisku tlačítka 1 se na multiplexovaném displeji zobrazí „Good“, při stisku 2 se zobrazí „bAd“. Jsem absolutni zacatecnik a vubec nevim jak na to, proto jsem vdecny za kazdou pomoc.

Diky.

Napsal: 11 říj 2010, 13:04
od procesor
Bez schémy to nepôje.

Napsal: 11 říj 2010, 13:06
od GeorgeB
Ještě by to chtělo napsat o jaký displej se jedná. Jestli sedmisegmentový, alfenumerický, bodový...

Napsal: 11 říj 2010, 15:01
od procesor
A načo 877A, z odratými ušami aj 16/18pinový, ale 28pínový 786A(783A) by stačili.

Napsal: 11 říj 2010, 17:11
od malina11
Prikladam schema displeje a schema a schema hlavni casti. Snad to k necemu bude. Uz sem z toho docela zoufaly.

Napsal: 11 říj 2010, 18:53
od procesor
A to oné (PIC1618) je pre začiatok prázdne a iba tú popísanú funkciu bude plniť a nič viac? Display tam má už vyhradené výstupy, Už treba iba zvoliť ktoré I/O porty sa použijú pre tie dve tlačidlá. Dôležitý je aj systém sledovania tých tlačidiel. Ak to má registrovať takmer okamžite chce to použiť prerušovací systém a vhodné vstupy. Ak stačí sledovanie tlačidiel v programovej slučke, môžu to byť ľubovolné voľné porty. Ale reakcia sa môže pri kratšom stlačení nedostaviť.

Napsal: 11 říj 2010, 19:16
od malina11
procesor píše:A to oné (PIC1618) je pre začiatok prázdne a iba tú popísanú funkciu bude plniť a nič viac? Display tam má už vyhradené výstupy, Už treba iba zvoliť ktoré I/O porty sa použijú pre tie dve tlačidlá. Dôležitý je aj systém sledovania tých tlačidiel. Ak to má registrovať takmer okamžite chce to použiť prerušovací systém a vhodné vstupy. Ak stačí sledovanie tlačidiel v programovej slučke, môžu to byť ľubovolné voľné porty. Ale reakcia sa môže pri kratšom stlačení nedostaviť.


Ma to delat jen to zadane nic jineho, cili na zacatku je to prazdne jak pises. Okamzita reakce tlacitek neni tak dulezita mi bylo receno, cili nemam zatim pouzivat prerusovaci system. (program se bude nejspise casem predelavat a vylepsovat).

Napsal: 11 říj 2010, 19:58
od procesor
Takže ostáva iba niekoľko detailov a nakoniec programovací jazyk.

Napsal: 11 říj 2010, 20:32
od malina11
procesor píše:Takže ostáva iba niekoľko detailov a nakoniec programovací jazyk.


Mel by to byt assemblerovsky program vytvoreny v mplabu.

Napsal: 11 říj 2010, 21:05
od Andrea
Tlačítka a klávesnice je dobré scanovat v přerušení od časovače, snadno se vyloučí zákmity a rušení. Zpoždění do 100ms člověk nepostřehne.

Napsal: 11 říj 2010, 21:59
od WLAB
Tlacitka bych resil pollingem rizenym od hw casovace (ale neni to bezpodminecne nutne) s filtraci sw casovaci, a to tak, ze vstup musi zustat definovanou dobu beze zmeny ve stavu odlisnem od minuleho, aby byl vyhodnocen jako zmeneny. Takova doba pak musi byt primerenym n-nasobkem pollovaci periody.

Napsal: 12 říj 2010, 01:51
od procesor
Ktoré je to cvičenie? A či už 1.projekt?

Napsal: 12 říj 2010, 19:43
od frpr666
Myslím, že by jsi mohl vybřednout z problému takto:
1/ Pokud trváš na kombinaci PIC+Assembler: Najít někoho, kdo umí assembler PIC, tak se s ním spojit, ať tě naučí základy. Nebo se naučit sám, přes internet.

2/ Rozdělit složitý úkol na několik menších úloh.

3/ Multiplex 7seg. dispalye se myslím dělá tak, že si nejprve kód číslice uložíš do jednoho byte RAM, a pak třeba každých 50ms vypíšeš určitý sloupec displaye. Až vypíšeš všechny číslice, začneš vypisovat zase od začátku.

4/ Hotové rutiny pro display a PIC najdeš třeba zde: http://www.piclist.com/techref/microchip/routines.htm nebo na stráce microchipu

Napsal: 12 říj 2010, 20:56
od procesor
malina11 buď nechodil na prednášky, alebo sa mu nechce. Inicializáciu toho xyzPIC1618 mali vysvetlenú, alebo je uvedená v skriptách. Po jednoduchých úlohách rozsvietiť a zhasiť ledku po odčasovaní v jednoduchom cykle s dekrementáciou registrov, teraz nasleduje trochu zložitejšie-rozsvietiť postupne štyri skupiny po sedem lediek v závislosti na stave dvoch tlačidiel a dosť rýchlo aby to oko nepostrehlo.......
My sa to tu môžeme za neho naučiť, urobiť, iba že to malinovi11 nijako nepomôže. :wink:

Napsal: 12 říj 2010, 21:38
od Banda
Hlavně aby z toho něco káplo :)