Jak na MENU pro LCD v C? – Mikrokontroléry – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Jak na MENU pro LCD v C? – Mikrokontroléry – Fórum – Programujte.comJak na MENU pro LCD v C? – Mikrokontroléry – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Mexikan
~ Anonymní uživatel
2 příspěvky
28. 10. 2008   #1
-
0
-

Zdarvím.
Nemá někdo nějaký nápad nebo podklady pro vytvoření menu pro LCD?
Alespoň princip, nebo něco od čeho bych se mohl odpíchnout.
Potřebuji zobrazovat vícero informací a na jednu obrazovku se mi to nevleze. Chci použít 4 tlačítka pro ovládání v menu (šipka nahoru, šipka dolů, enter, escape).
Stavím na ATmega 32, 16x4 displeji a v AVRStudiu 4 + Gcc.
Děkuji za jakýkoli návrh.

Nahlásit jako SPAM
IP: 85.71.30.–
Reklama
Reklama
KIIV+42
God of flame
28. 10. 2008   #2
-
0
-

no ja sem resil neco jako strankovani ... jednou klavesou sem menil co se nastavuje... a pak + a - na to samotne nastavovani
ale nebylo tam treba pouzit nic jako zanoreni a tak... proste sem mel promennou stav a podle ni sem pak zpracovaval stisky klaves i samotne vypisovani na display

Nahlásit jako SPAM
IP: 80.250.27.–
Program vždy dělá to co naprogramujete, ne to co chcete...
technik160
Newbie
1. 1. 2009   #3
-
0
-

To Mexikan : skus nieco taketo napr.:

init i = 0;

int main (void)
{
DDRC &= ~(1 << PC0) | (1 << PC1); // nastavenie vstunych portov napr. na tl.
PORTC |= (1 << PC0) | (1 << PC1); // nastavenie pull-up odporov

for(;;) {

do {}
while (((PINC & 0x01)!=0) && (PINC & 0x02)!=0));

if (((PINC & 0x01)==0) && c<9) i=i+1;
if (((PINC & 0x02)==0) && c>0) i=i-1;

do {}
while (((PINC & 0x01)==0) || (PINC & 0x02)==0));
if (i>9) i=9;

if (i == 1) {
vypis na lcd "ahoj";
}
if (i == 2) {
vypis na lcd "xxx";
}
}
return 0;
}

pripadne si kod uprav podla svojho vkusu ale toto by ti malo fungovat mozes tam pouzit aj switch (case) namiesto tych vela if ale myslim ze toto je krajsie :) ale kazdeho vlastny nazor.

Nahlásit jako SPAM
IP: 91.127.196.–
contact
~ Anonymní uživatel
1 příspěvek
27. 2. 2009   #4
-
0
-

To Mexikan :
Lze použít podklady uvedené na http://sw-nuts.com/
případně podsložky http://sw-nuts.com/DevelopToolcz.htm

Nahlásit jako SPAM
IP: 78.102.163.–
endthe
~ Anonymní uživatel
1 příspěvek
22. 3. 2009   #5
-
0
-

To contact :

a pokud pouziju maticovou klavecnici dalo by se menu resit takto?



char text[];
DDRE=0x0F;
PORTE=0x0F;
while(1)
{
//prvni sloupec
PORTE =0b00001110;

//1
if (bit_is_clear(PINE, 4)) {
text[]="Uroven 1";
PORTE =0b00001101;
if (bit_is_clear(PINE, 4)) {
text[]="Poduroven 1";
}
PORTE =0b00001011;
if (bit_is_clear(PINE, 4)) {
text[]="Poduroven 2";
}
PORTE =0b00001110;
if (bit_is_clear(PINE, 4)) {
text[]="Poduroven 3";
}
}
//4
if (bit_is_clear(PINE, 5)) {};
//7
if (bit_is_clear(PINE, 6)) {};
//*
if (bit_is_clear(PINE, 7)) {};


//druhy sloupec

PORTE =0b00001101;
//2
if (bit_is_clear(PINE, 4)) {};
//5
if (bit_is_clear(PINE, 5)) {};
//8
if (bit_is_clear(PINE, 6)) {};
//0
if (bit_is_clear(PINE, 7)) {};

//treti sloupec

PORTE =0b00001011;
//3
if (bit_is_clear(PINE, 4)) {};
//6
if (bit_is_clear(PINE, 5)) {};
//9
if (bit_is_clear(PINE, 6)) {};
//#
if (bit_is_clear(PINE, 7)) {};


//ctvrty sloupec

PORTE =0b00000111;
//ESC
if (bit_is_clear(PINE, 4)) {};
//F1
if (bit_is_clear(PINE, 5)) {};
//F2
if (bit_is_clear(PINE, 6)) {};
//ENTER
if (bit_is_clear(PINE, 7)) {};

}

Nahlásit jako SPAM
IP: 89.103.120.–
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, 13 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ý