www.mcontrollers.com - hlavní stránka www.mcontrollers.com - fórum

 

.: fórum - hlavní stránka :.
.: mcontrollers.com - hlavní stránka :.
FAQFAQ HledatHledat Seznam uživatelůSeznam uživatelů Uživatelské skupinyUživatelské skupiny RegistraceRegistrace
ProfilProfil StatistikaStatistika Soukromé zprávySoukromé zprávy PřihlášeníPřihlášení

 
Zprovoznění maticového LCD displeje 16x2 s řadičem S6A0069
Jdi na stránku Předchozí  1, 2, 3, 4  Další
 
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip
 
kingi
Anonymní





PříspěvekZaslal: 06 únor 2010, 15:54    Předmět: Citovat

Jak uz jsem psal, predchozi program pro LCD umi vypsat jen znaky a ja potreboval vypsat hodnotu promnene, napr. hodnotu zmerene teploty.

Pak jsem si vzpomnel ze existuje v C i deleni modulo... Tak jsem to vyresil pomoci podminek kdy podle velikosti promnene ji priradim prislusny znak.

Asi by to slo i jednoduseji, ale pro me uceli to staci.



Z_Promnene_na_znak.c
 Komentář:
Funkce prevadi hodnotu promenne na znak.

Stáhnout
 Soubor:  Z_Promnene_na_znak.c
 Velikost:  1.25 kB
 Staženo:  34 krát

Návrat nahoru
 

 
Henry
Přispěvatel
Přispěvatel


Založen: 17.2.2009
Příspěvky: 23

PříspěvekZaslal: 19 únor 2010, 2:17    Předmět: Citovat

Raději to zkus takhle:

kód:
...
if (temp3>=100){LCD_Gotoxy(14,r); LCD_WriteString("***");}

char szNumber [5];
sprintf(szNumber, "%i", temp3);
LCD_Write_String(szNumber);
...


Pokud bys to chtěl vypsat v desetinném tvaru, tak místo "%i" dáš např. "%2.1f" apod...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
fufon
Nováček
Nováček


Založen: 9.1.2010
Příspěvky: 9

PříspěvekZaslal: 07 březen 2010, 16:25    Předmět: Citovat

Snažím se rozjet stejný displej s řadičem s6a0069 po 4 bitové komunikaci a neumím se dostat ani přes incializaci. Tu jsem nejprve prováděl podle datasheetu k tomu řadiči
http://www.datasheetcatalog.org/datasheet/SamsungElectronic/mXruzuq.pdf
když to nešlo tak potom podle tohoto:
http://doveda.byl.cz/lcd/
chci se dobrat aspoň k tomu aby jsem po inicializaci rozsvítili obadva rádky, svítí pouze jeden. Kontrast mám proto nastavený dobře, prodlevy jsem dával dostatečně veliké (50ms). Čip mi jede (pic16f877) nechávám si pro kontrolu rozsvítit ledku. A pořád mi to nechce jet. Budu vděčný za jakoukoliv radu.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
kathel
Profesionál
Profesionál


Založen: 5.1.2009
Příspěvky: 43

PříspěvekZaslal: 07 březen 2010, 21:35    Předmět: re Citovat

zkus tohle, psal jsem to pro LCD 2x8
měl jsem ten samý problém a již jsem to tu psal ,že v datasheetu podle mě mají chybu, když píšeš inicializaci ručně.
je to naspaný humpolácky v C , ale funguje to.

na začátku je inicializace pak nastavení portu a pak jednuduchá komunikaces LCD
viz tex. dokument



lcd.txt
 Komentář:
lcd

Stáhnout
 Soubor:  lcd.txt
 Velikost:  5.26 kB
 Staženo:  48 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
fufon
Nováček
Nováček


Založen: 9.1.2010
Příspěvky: 9

PříspěvekZaslal: 07 březen 2010, 23:09    Předmět: Citovat

jsem uplný začátečník a v céčku se už vůbec nevyznám. Nepodařilo se mi to zkompilovat a píše mi to chyby které nejsem schopný odstranit protože jim nerozumím. Mohl bys mi to hodit do hexa souboru pro pic s takovým configem: __config 16250 prosím?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
kathel
Profesionál
Profesionál


Založen: 5.1.2009
Příspěvky: 43

PříspěvekZaslal: 08 březen 2010, 12:34    Předmět: re Citovat

teď přesně nerozumím, co přesně potřebuješ. Kompilátor pro 16 řadu piců nemám, můžu ti to přeložit a poslat pro 18 řadu piců.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
fufon
Nováček
Nováček


Založen: 9.1.2010
Příspěvky: 9

PříspěvekZaslal: 08 březen 2010, 20:52    Předmět: Citovat

Very Happy Dik jak cyp, tu inicializaci jsem nejak rozchodil podle toho tvojeho souboru ktery jsem si prepsal do asm uz vidim dva tmave radky, ale nedari se mi rozjet zobrazeni znaku. Na tech druhych strankach co jsem tady daval jsem se docet ze adresa ddram je posunuta o 80h vyse, tu ale prece nemuzu napsat 7 bity. Nemel bys nejakou radu jak jednoduse zjistit ktere adrese v ddram nalezi nejaka pozice na displeji. Dik
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
kathel
Profesionál
Profesionál


Založen: 5.1.2009
Příspěvky: 43

PříspěvekZaslal: 09 březen 2010, 0:55    Předmět: re Citovat

když máš 4 bitovou komunikaci tak nejdřív pošleš dolní 4 bity a poté horní 4 bity jako jsem to posílal já v tom souboru.
tak číhni do datasheetu na tu tabulku znaků symbolů a čísel a zkus něco na display poslat.
Jestli ale vidíš 2 řádky tmavé tak máš nejspíš špatně nastavené časy mezi jednotlivými příkazy.
Zkus ty časy zvětšit a pořádně prostuduj inicializaci jak by sis představoval, co by lcd měl dělat jestli blikat kurzor, posun atd...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Petr
Profesionál
Profesionál


Založen: 21.2.2008
Příspěvky: 440
Bydliště: Praha západ Hostivice

PříspěvekZaslal: 09 březen 2010, 3:20    Předmět: Re: re Citovat

kathel napsal:
... nejdřív pošleš dolní 4 bity a poté horní 4 bity


Citace ze stránek dovedy:
citace:
Nejdříve se pošlou vyšší 4 bity a zapíšou se Enablem a pak nižší 4 bity a zapíšou se Enablem.


A pak kdo se v tom má vyznat, co je tedy správně... Very Happy
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
kathel
Profesionál
Profesionál


Založen: 5.1.2009
Příspěvky: 43

PříspěvekZaslal: 09 březen 2010, 12:49    Předmět: re Citovat

joo , oprava omlouvám se Smile
Nejdříve se pošlou vyšší 4 bity a zapíšou se Enablem a pak nižší 4 bity a zapíšou se Enablem.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
fufon
Nováček
Nováček


Založen: 9.1.2010
Příspěvky: 9

PříspěvekZaslal: 10 březen 2010, 22:04    Předmět: Citovat

To je právě dobře že už můžu nastavovat kontrast i na druhém řádku ne? to znamená že je inicializace v pořádku teda jestli tomu dobře rozumím. To posílání znaku jsem se snažil taky udělat přesně podle tvojeho souboru ale nic se mi nechce zobrazit, nevím proč. Prosím poraďte mi někdo kde dělám chybu.


LCD.txt
 Komentář:

Stáhnout
 Soubor:  LCD.txt
 Velikost:  1.88 kB
 Staženo:  27 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
pokus.omyl
Profesionál
Profesionál


Založen: 2.1.2010
Příspěvky: 89

PříspěvekZaslal: 11 březen 2010, 2:22    Předmět: Citovat

Zkus se chytit tadytoho, tam je to trosku lip udelany a popsany, nez je ten nekomentovany zmatek, co jsi stvoril... (nic ve zlym)

Edit: tady je jeste ten kod z toho, at to kdyztak zajemci nemusi(te) opisovat



lcd2.asm
 Komentář:
zdrojak z PDFka

Stáhnout
 Soubor:  lcd2.asm
 Velikost:  2.26 kB
 Staženo:  38 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
katastrofi
Účastník
Účastník


Založen: 21.6.2010
Příspěvky: 12

PříspěvekZaslal: 21 červen 2010, 19:20    Předmět: Citovat

Nevím, jestli založit nový topic takže to zkusím dát sem. Mám problém s LCD el1602a (odkaz zde). Měl by mít stejný nebo kompatibilní řadič HD44780. Co jsem zkoušel:
-připojit (podle Doveda Boys) na Vss zem, na Vdd 5V z usb a na Vo (kontrast) cokoli mezi 0 a 5V. Displej na to nereaguje, čekal jsem, že aspoň "zešedne" pozadí jako když necháte kalkulačku na slunci, ale nic.
-Pak jsem zkoušel poslat init sekvenci (opět podle Doveda Boys) s mikrokontrolérem Freescale HCS08. Problém je, že napájet to napájím 5V, ale z hcs08 leze "jenom" 3.3V. TTL logice by to nemělo vadit, lcd ani ťuk.
-pak jsem to tam zkusil naklikat ručně. Připojil jsem lcd na 5V a na vstupy v nepájivém poli postupně přiváděl 0 nebo 5V a odesílal jsem to 5V na Enable. Taky nic. Napadá vás co s tím? Mám ještě jeden podobný se stejnými výsledky.
Jediné, co mě napadá je koupit tranzistor (jaký?) na zesílení signálu 3.3V->5V.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
MiloPS3
Profesionál
Profesionál


Založen: 24.12.2008
Příspěvky: 342
Bydliště: LAZNE KYNZVART

PříspěvekZaslal: 21 červen 2010, 20:09    Předmět: Citovat

Cau, pozadi nesedne, meni se akorat kontrast aktivnich pixelu, pichni kontrast na VSS jestli bude max kontrast, teoreticky by mel zvladnout 3v logiku ale musis ho napajet i 3v , to ale nevim jiste ( v DS v tabulce je zminka o 3v, nic jinyho, pokud nejsou 2 druhy 5V a 3V ), tak sem este kouknul do DS krapet tam ty hodnoty nechapu Rolling Eyes
_________________
stavba obousmerneho RC regulatoru
ovladani displaye N 3310
PIC,ASM / C , Mplab + CCS C Compiler
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky
 

 
katastrofi
Účastník
Účastník


Založen: 21.6.2010
Příspěvky: 12

PříspěvekZaslal: 21 červen 2010, 20:33    Předmět: Citovat

Ano, Vss na kontrast nic nedělá. Předpokládal jsem, že se ukáží i neaktivní pixely, ale na veškeré snahy se oba displeje tváří pořád stejně. Zkoušel jsem se dívat z boku, jestli se něco nerozsvítí a nic.
Na napájení 3V a 3V logiku nereaguje Sad Výstupy z uC by měly být OK - kontroloval jsem je ledkama.

Edit: tak mě ještě napadlo - když připojím ty 3 dráty (+5, zem a kontrast 5V), má se něco ukázat?

Doporučíte mi lcd na 3V logiku? Všechny v gme mají 5V...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

Zobrazit příspěvky z předchozích:   
Zobrazit předchozí téma :: Zobrazit následující téma  
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip Časy uváděny v GMT + 2 hodiny
Jdi na stránku Předchozí  1, 2, 3, 4  Další
 
Strana 2 z 4
Přejdi na:  
Můžete přidat nové téma do tohoto fóra.
Můžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Můžete k příspěvkům připojovat soubory
Můžete stahovat a prohlížet přiložené soubory
 



Copyright © 2010 Rudolf Veselý, mcontrollers.com.
Je zakázáno používat části tohoto webu bez souhlasu autora. || Powered by phpBB © 2001, 2002 phpBB Group - with RedSquare DoubleJ(Jan Jaap)

Monitoring serveru mcontrollers.com (forum.mcontrollers.com).