PIC16F877A - zobrazení textu na multiplexovaném displeji

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
malina11
Příspěvky: 4
Registrován: 11 říj 2010, 00:00

PIC16F877A - zobrazení textu na multiplexovaném displeji

#1 Příspěvek 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.
Uživatelský avatar
procesor
Příspěvky: 5286
Registrován: 02 říj 2009, 00:00
Bydliště: PO

#2 Příspěvek od procesor »

Bez schémy to nepôje.
Uživatelský avatar
GeorgeB
Příspěvky: 1248
Registrován: 21 lis 2005, 00:00
Bydliště: Pardubice
Kontaktovat uživatele:

#3 Příspěvek od GeorgeB »

Ještě by to chtělo napsat o jaký displej se jedná. Jestli sedmisegmentový, alfenumerický, bodový...
Uživatelský avatar
procesor
Příspěvky: 5286
Registrován: 02 říj 2009, 00:00
Bydliště: PO

#4 Příspěvek od procesor »

A načo 877A, z odratými ušami aj 16/18pinový, ale 28pínový 786A(783A) by stačili.
Uživatelský avatar
malina11
Příspěvky: 4
Registrován: 11 říj 2010, 00:00

#5 Příspěvek od malina11 »

Prikladam schema displeje a schema a schema hlavni casti. Snad to k necemu bude. Uz sem z toho docela zoufaly.
Přílohy
schema.jpg
(218.53 KiB) Staženo 149 x
displej.jpg
(113.06 KiB) Staženo 148 x
Uživatelský avatar
procesor
Příspěvky: 5286
Registrován: 02 říj 2009, 00:00
Bydliště: PO

#6 Příspěvek 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ť.
Uživatelský avatar
malina11
Příspěvky: 4
Registrován: 11 říj 2010, 00:00

#7 Příspěvek 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).
Uživatelský avatar
procesor
Příspěvky: 5286
Registrován: 02 říj 2009, 00:00
Bydliště: PO

#8 Příspěvek od procesor »

Takže ostáva iba niekoľko detailov a nakoniec programovací jazyk.
Uživatelský avatar
malina11
Příspěvky: 4
Registrován: 11 říj 2010, 00:00

#9 Příspěvek 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.
Andrea
Příspěvky: 9340
Registrován: 07 zář 2007, 00:00

#10 Příspěvek 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.
Uživatelský avatar
WLAB
Příspěvky: 867
Registrován: 13 zář 2005, 00:00
Bydliště: Praha

#11 Příspěvek 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.
Uživatelský avatar
procesor
Příspěvky: 5286
Registrován: 02 říj 2009, 00:00
Bydliště: PO

#12 Příspěvek od procesor »

Ktoré je to cvičenie? A či už 1.projekt?
Uživatelský avatar
frpr666
Příspěvky: 1051
Registrován: 28 pro 2009, 00:00

#13 Příspěvek 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
Uživatelský avatar
procesor
Příspěvky: 5286
Registrován: 02 říj 2009, 00:00
Bydliště: PO

#14 Příspěvek 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:
Uživatelský avatar
Banda
Příspěvky: 1170
Registrován: 22 bře 2005, 00:00
Bydliště: OV

#15 Příspěvek od Banda »

Hlavně aby z toho něco káplo :)
Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“