AVR a LCD displej – Mikrokontroléry – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

AVR a LCD displej – Mikrokontroléry – Fórum – Programujte.comAVR a LCD displej – Mikrokontroléry – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
frontm4n0
Newbie
14. 2. 2010   #1
-
0
-

Zdravim hledam nejaky zakladni program pro obsluhu LCD (se 4-bit pro data), s popsanymi prikazy a delany v Cecku. Prave s tim zacinam a hodil by se mi nejaky vzorovy program, kterym si muzu vyzkouset jak se s tim LCD da pracovat....

Nahlásit jako SPAM
IP: 88.102.121.–
Reklama
Reklama
DragonSoul
~ Anonymní uživatel
14 příspěvků
21. 3. 2010   #2
-
0
-

Nevim jestli to pomuze, protoze nepises co pouzivaz za LCD
Mam uC AtMega8, LCD pouzivam MC0802A-SYL/H
Stahnul jsem si knihovnu pro praci s LCD z http://jump.to/fleury.
Prodratovano je to tak ze pro komunikaci pouzivam PORTD, D0-3 mam nadratovane na PORTD0-3 a zbyvajici piny R/S, R/W a E jsou nadratovane na PORTD 5,6,7, samozrejme napajeni LCD a podsviceni dle datasheetu
Potom je treba upravit v lcd.h kousek programu takto:



#define LCD_PORT PORTD /**< port for the LCD lines */
#define LCD_DATA0_PORT LCD_PORT /**< port for 4bit data bit 0 */
#define LCD_DATA1_PORT LCD_PORT /**< port for 4bit data bit 1 */
#define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */
#define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */
#define LCD_RS_PORT LCD_PORT /**< port for RS line */
#define LCD_E_PORT LCD_PORT /**< port for Enable line */
#define LCD_RW_PORT LCD_PORT /**< port for RW line */
#define LCD_DATA0_PIN 0 /**< pin for 4bit data bit 0 */
#define LCD_DATA1_PIN 1 /**< pin for 4bit data bit 1 */
#define LCD_DATA2_PIN 2 /**< pin for 4bit data bit 2 */
#define LCD_DATA3_PIN 3 /**< pin for 4bit data bit 3 */
#define LCD_RS_PIN 5 /**< pin for RS line */
#define LCD_RW_PIN 6 /**< pin for RW line */
#define LCD_E_PIN 7 /**< pin for Enable line */

Program na zobrazeni textu potom vypada takto:


#define F_CPU 1000000UL


#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include "lcd.h"

unsigned char i;
unsigned int del=1000;

//-----------------------------------------------------------------------------

int main(void)
{
char buffer[8];
lcd_init(LCD_DISP_ON); //Inicializace LCD
lcd_clrscr(); //vymazani LCD
lcd_gotoxy(0,0); //nastaveni na pozici 0,0
lcd_puts("RoBoProG"); //vypsani textu
lcd_gotoxy(0,1);
lcd_puts("Run:");
for (i=3;i>0;i--)
{
sprintf(buffer,"%2i",i);
lcd_gotoxy(4,1);
lcd_puts(buffer);
_delay_ms(500);
}
}



Doufam ze jsem to tady moc nezaneradil

Nahlásit jako SPAM
IP: 62.177.99.–
frontm4n0
Newbie
21. 3. 2010   #3
-
0
-

To DragonSoul :

cau displej uz sem davno rozchodil..... ted tvorim menu a s tim si tedy nevim rady...

Nahlásit jako SPAM
IP: 88.102.121.–
frontm4n0
Newbie
21. 3. 2010   #4
-
0
-

Potreboval bych poradit, jak vytvorit viceurovnove menu, kde bude v urcitych polozkach umoznena editace....pro ovladani mam pouzite jen 4 tlacitka ( <,>,OK,ZPET). Jsem schopen vyrobit treba vice urovni, ale mam to docela neefektivne udelane....ale nevim jak editovat udaj pomoci tlacitek a pak ho ulozit do pameti a nasledne pouzit....prikladam vyvojovy diagram...

Nahlásit jako SPAM
IP: 88.102.121.–
DragonSoul
~ Anonymní uživatel
14 příspěvků
22. 3. 2010   #5
-
0
-

No nevim jak se v menu pohybujes nahoru dolu, spise bych udelal tlacitka dolu, nahoru OK a zpet.
Listujes seznamem dolu nahoru a dalsi uroven dosahnes tlacitkem OK, tlacitkem zpet se vratis.
Kdyz uz nejde dale tlacitkem OK, znamena to, ze jsi v nejake polozce, ktera jde editovat a nahoru dolu bych inkrementoval/dekrementoval hodnotu.
Pokud se stiskne OK, hodnota se ulozi do EEprom, kde to zustane i kdyz to vypnes/zapnes.
Udelat viceurovnove menu je docela slozite, pokud nevis kolik je urovni, ale pokud vis napr. ze je max. 3-urovne, da se udelat treba pres pole.
Ale s efektivitou bych si nedela hlavu, pokud se to vejde do pameti, kdyz uz se to nevejde, prekopam program jinak.
Vyvojovy diagram mi nejde otevrit

Nahlásit jako SPAM
IP: 62.177.99.–
frontm4n0
Newbie
23. 3. 2010   #6
-
0
-

reupload diagramu

Nahlásit jako SPAM
IP: 88.102.121.–
Anonymní uživatel
~ Anonymní uživatel
0 příspěvků
28. 1. 2011   #7
-
0
-

frontm4n napsal:
Potreboval bych poradit, jak vytvorit viceurovnove menu, kde bude v urcitych polozkach umoznena editace....pro ovladani mam pouzite jen 4 tlacitka ( <,>,OK,ZPET). Jsem schopen vyrobit treba vice urovni, ale mam to docela neefektivne udelane....ale nevim jak editovat udaj pomoci tlacitek a pak ho ulozit do pameti a nasledne pouzit....prikladam vyvojovy diagram...

tím bych si nebyl tak úplně jist

Nahlásit jako SPAM
IP: 94.142.239.–
Deko
~ Anonymní uživatel
17 příspěvků
17. 3. 2011   #8
-
0
-

Já mám dobré zkušenosti s programem Bascom, je velice jednoduchý s množstvím příkazů zevrubně popsaných v přiložené nápovědě i s příklady použití. S tímto programem potřebuje člověk jen vědět co chce naprogramovat a pak už to jde samo.

Nahlásit jako SPAM
IP: 80.188.27.–
vega33
~ Anonymní uživatel
18 příspěvků
17. 3. 2011   #9
-
0
-

Urobit viacurovnove menu nie je az taky problem,ako sa zda.Pouzivam na to struktury a tabulky.Funkcia je stale rovnaka a vyuzivam rekurzivne volanie (dufam,ze som pouzil spravny vyraz) jednej a tej istej funkcie.Tym padom zaplnis programovu pamat len jeden raz kodom a tabulkou dat a pomocne data sa ukladaju na zasobnik
.

Nahlásit jako SPAM
IP: 195.168.55.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 10 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý