Stránka 1 z 1

PIC16F84 a 16x2 Display - komunikace

Napsal: 03 bře 2016, 13:40
od paulie2907
Zdravím uživatele fóra, už kdysi jsem se ptal na komunikaci v ASSEMBLERU mezi PIC16F84 a DISPLAYEM. Našel jsem takový "holý" tutoriál.

Display mám : http://mujweb.cz/hezky.den/datasheet/lcd-wd-c1602l-7gnna.htm

a zapojené to mám takto http://pic16fxx.sweb.cz/programovani/lcd/index.html

Nicméně mám problém se zobrazením, nevím jak mám zobrazit celých 16 znaků na celém řádku a na dalším něco jiného, nechápu jak se definuje text a vůbec nemám ponětí jak se text "volá".

Nenašel by se nějaký nadšenec s ochotou mi napsat nějaký krátký příklad v *.asm. Zkoušel jsem upravit (Viz doveda web) kód - místo "verze" jsem zobrazil svůj text správně, ale ten další už byl zpeházený nebo nekompletní....

Poradíte ?

Napsal: 03 bře 2016, 15:25
od hakamusai
Příklad je na tom webu co jsi dal odkaz. Přímo zde.

Napsal: 03 bře 2016, 15:28
od paulie2907
hakamusai píše:Příklad je na tom webu co jsi dal odkaz. Přímo zde.


To vím, ale úplně tomu nerozumím. I Když jsou tam poznámky. Když rozšířím retlw ' ' o další znaky (16) upravím i proměné ve "VERZE" v kódu nedocílím zobrazení 16 znaků na DRUHÉM "probliknutí".

TZN : Zobrazí se verze (tam se mi povedl text o 16 znacích na řádek upravit) ale ty další zobrazují půlku, nebo konec popřípadě začátek, neumím ten kodu upravit púro svůj display...

Napsal: 03 bře 2016, 15:34
od forbidden
Přesně podle toho návodu jsem se to kdysi učil i já. A pak ještě podle tohoto. Je tam vše, co potřebuješ vědět a navíc v češtině. Prostě zkoušej a časem na to přijdeš.

Napsal: 03 bře 2016, 16:02
od hakamusai
Pokud zatím nerozumíš asm máš mimo jiný dvě možnosti.
1) zkoušet a učit se.
2) přejít na jazyk C a taky se učit,zkoušet

Na tomto webu jsou ke stažení příklady k vývojovým deskám prodávaným na ebay (PIC-EK aj.).Je to pro MPLAB v Cčku.

Napsal: 03 bře 2016, 16:49
od paulie2907
hakamusai píše:Pokud zatím nerozumíš asm máš mimo jiný dvě možnosti.
1) zkoušet a učit se.
2) přejít na jazyk C a taky se učit,zkoušet

Na tomto webu jsou ke stažení příklady k vývojovým deskám prodávaným na ebay (PIC-EK aj.).Je to pro MPLAB v Cčku.


Céčko umím pro PC, to by neměl být problém ... Zkusím se podívat, děkuju

Napsal: 03 bře 2016, 19:34
od Zaky
Rozhodně doporučuji kódovat i MCU v C, assembler je samozřejmě dobré rámcově znát, ale psát v C je nesrovnatelně jednodušší a pohodlnější a samozřejmě je významnou výhodou přenositelnost kódu, modifikace pro konkrétní HW je obvykle docela snadná.

Napsal: 03 bře 2016, 21:09
od paulie2907
Zaky píše:Rozhodně doporučuji kódovat i MCU v C, assembler je samozřejmě dobré rámcově znát, ale psát v C je nesrovnatelně jednodušší a pohodlnější a samozřejmě je významnou výhodou přenositelnost kódu, modifikace pro konkrétní HW je obvykle docela snadná.


Kde stáhnout vše potřebné na C kódování ? Notepad++ mám a budu to psát v něm, je super. Ale nějakej kompilátor C -> hex

Napsal: 03 bře 2016, 22:02
od bum
V KTE vycházelo na pokračování programování PIC kde byla popsána i komunikace PIC se znakovými LCD psal to M.Hron. Na webu mám podle těchto postupů dva články měření s PIC a LCD 2 * 16 a 2 * 20 znaků ten je k PC. Co píšeš o zobrazování na druhém řádku důležitá je správná inicializace displeje včetně instrukce pro inicializaci psaní dva řádky. Podrobně to je popsané v uvedeném časopise, v případě zájmu mohu vyhledat.

Napsal: 03 bře 2016, 22:15
od Zaky
V C by mělo jít kódovat snad nomálně v MPLAB, PIC nepoužívám, tak vlastní zkušenost nemám.

Napsal: 03 bře 2016, 23:11
od Atlan
Doinstalujes do Mplavu but hitec compiler, alebo by priamo mplav mal obsahovat prekladac zdarma na C len to treba zvolit pri instalalcii.

Napsal: 03 bře 2016, 23:17
od hakamusai
paulie2907> Pro kódování v C je potřeba mít nainstalován XC8 compiler(případně XC16 ...) + MPLAB (případně MPLAB X)
Ke všem se lze proklikat zde.
XC8 je pro 8 bit MCU PIC.Ve verzi Free má menší optimalizaci kódu.S nakonfigurováním Notepad++ nemám zkušenost (někdo údajně používá i PSPad).V samotném MPLAB je třeba nastavit kompilátor.Při instalaci je třeba dát pozor na nastavení vlastností instalace (pro MPLAB).Případně se dá použít Hi-Tech compiler,který má podobný vlastnosti optimalizace (ve free verzi optimalizuje málo).
Pokud ovládáš Pascal,můžeš zkusit "PMP Mikro Pascal".Pro jeho funkčnost je třeba mít nainstalován MPLAB 8.92 který je možné stahnout jednoho odkazu na webu PMP pascalu.

Napsal: 04 bře 2016, 05:05
od Chenzee
No na LCD I. řádek začíná na adrese 0x80, II. řádek pak na 0xC0. To jen, že první řádek nekončí 16tým znakem.