Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 31 sty 2025, o 18:49


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 76 ]  Przejdź na stronę 1, 2, 3  Następna strona
Autor Wiadomość
PostNapisane: 16 sie 2012, o 13:20 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Witam, czy dobrze rozumiem ,że w pliku lcd44780.c inicjalizacja lcd (str.214)

Kod:
void lcd_init(void)
{
....
lcd_sendHalf(LCDC_FUNC|LCDC_FUNC8B);
....
}


deklaracja zmiennych dla Preprocesora w pliku lcd44780.h

Kod:
#define LCDC_FUNC               0x20
#define LCDC_FUNC8B               0x10

odnosi się do kodu instrukcji D5 i D4 ?? czyli zapis :
Kod:
lcd_sendHalf(LCDC_FUNC|LCDC_FUNC8B);

jest równoważny
Kod:
lcd_sendHalf(0x30);
??



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 sie 2012, o 13:23 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

Ja najpierw zapytam czy kolega pobrał poprawkę do LCD (a chodzi właśnie o inicjalizację) z tej strony ?

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 sie 2012, o 13:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

OK. Widzę że w poprawionym kodzie jest ustawienie sygnału sterującego (E=1) podczas wysyłania i zerowanie po przesłaniu, ale widzę że argument funkcji :
Kod:
lcd_sendHalf(LCDC_FUNC|LCDC_FUNC8B);
się zgadza z moim tokiem rozumowania



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 sie 2012, o 13:58 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

no dokładnie ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 sie 2012, o 14:11 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Ok. To zrozumiałem ale jak Ktoś Mądrzejszy Ode mnie napisał stronie 177

Kod:
#include<avr/io.h>
#include<until/delay.h>
int main (void)
{
DDRC=0x80;
while(1)
{
PORTC=0x00;
_delay_ms(0x3E8);
PORTC=0x80;
_delay_ms(0x3E8);
}
}


************ nigdy tak nie pisz swoich programów ! **************
I dlatego chyba za wyjątkiem ustawiania i zerowania linii E pozostanę przy starszym zapisie

Kod:
lcd_sendHalf(LCDC_FUNC|LCDC_FUNC8B);



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 sie 2012, o 14:37 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

I bardzo dobrze - ja musiałem tą poprawkę zrobić na gwałt, że tak powiem, i z pośpiechu się to zrodziło. A jak wspominałem w książce nie należy wszystkiego kopiować bezkrytycznie, tylko zawsze zwracać uwagę przede wszystkim na styl dobrego programowania .... i to na pewno szybko zaprocentuje. Takie właśnie podejście.

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 sie 2012, o 15:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Czy w książce na stronie 214 zamiast :
Kod:
#define USE_LCD_STR_P    1         // wysyła string umieszczony w pamięci FLASH
#define USE_LCD_STR_E    1         // wysyła string umieszczony w pamięci FLASH

nie powinno być :
Kod:
#define USE_LCD_STR_P    1         // wysyła string umieszczony w pamięci FLASH
#define USE_LCD_STR_E    1         // wysyła string umieszczony w pamięci EEPROM

??
Co prawda to tylko komentarz ale chciałbym mieć jasność



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 sie 2012, o 15:50 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

oczywiście że tu widać typowy błędzik typu Copy&Paste ;)

naturalnie kolega ma 100% racji

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2012, o 19:21 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Mam jeszcze takie jedno pytanie czy w związku z tym że na stronie 217 zdefiniowano funkcję :
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

dokonano przemapowania i na stronie 221 wywołano tą funkcję
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

nie powinno czasem być:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


bo z tego co widzę powyżej (na stronie) literka "ą" została przypisana w adresie DDRAM pod adresem 0x02. Pytam się bo nie jest to dla mnie jasne - być może czegoś nie rozumiem
Z góry dziękuję za pomoc.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2012, o 19:26 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2012
Posty: 598
Lokalizacja: Warszawa
Pomógł: 13

Nie, bo jak zwrócisz uwagę na kod, to zauważysz że dokładnie to robi ten fragment kodu ? znak & 0x07
Czyli zostało zrobione maskowanie bitow



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2012, o 20:09 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

A tym bardziej pomyśl sobie co by się wyświetliło gdybyś np wpisał ;)

Kod:
lcd_str("m""\x00""czny");


..... przeanalizuj to..... wtedy dojdziesz dlaczego jest robione w funkcji przemapowanie na kody od 0x80 do 0x87 ;) zamiast 0x00 do 0x07

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2012, o 22:45 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

hmmm.... dalej chyba nie rozumiem - może zapytam inaczej ... po co wtedy to mapowanie??



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2012, o 23:00 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

Zobacz - normalnie bez mapowania musiałbyś podawać do LCD jakie kody znaków do CGRAM w stringu ????

no od ZERA do SIEDEM

a czy nie kojarzysz że C-String kończy się ZEREM.

jeśli więc będziesz chciał wysłać napis:

lcd_str( "m""\x00""czny" );

to wyśle ci się tylko litera 'm' i QUNIEC stringu ....

dlatego właśnie zrobiłem mapowanie - czyli teraz do stringu wstawimy zamiast \x00 wartość \x80 ..... a w pętli wysyłającej string gdy napotkamy kod 0x80 to zostanie on zamieniony na znak 0 już przy wysyłaniu pojedynczego znaku

lcd_write_data()

i dzięki temu pętla się nie przerwie bo nie napotkała jeszcze ZERA czyli końca stringu (tego właściwego zera)

może teraz troszkę jaśniej ? ale jeśli nie to pytaj śmiało dalej

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sie 2012, o 10:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Chyba nie rozumiem . Bo jeśli w zmiennej znak zdefiniuję literę "ą" i będzie ona pod kodem (x\00) pod Adresem w DDRAM to rozumiem że się nie wyświetli bo w pętli while zmienna znak napotka wyrażenie\0 (koniec C-stringu) i koniec. Chyba nie do końca rozumiem to mapowanie bo jeśli jak w/w napisałem będzie pod adresem 0x00 to :

znak=0b0000 0000 i teraz zmapuję ją :
znak&0x07
0b0000 0000
&
0b0000 0111
0b0000 0000 - wynik
i tu chyba się gubię bo jakoś tak nie widzę za bardzo sensu

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Chyba, że to działa w drugą stronę ... czyli ja wpisuję np.80 a funkcja daje to co jest pod adresem 0x00.

Coś czuję że czas zrobić 50 pompek w ramach samoukarania za głupotę....



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sie 2012, o 11:07 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sie 2012, o 11:40 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Czyli rozumiem że mam pompować czy nie rozumiem ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sie 2012, o 11:47 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 14 lut 2012
Posty: 598
Lokalizacja: Warszawa
Pomógł: 13

Pompuj :P

Jak chcesz mapować skoro warunek który jest w pętli while nie pozwoli na to ponieważ pętla się nie wykona.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sie 2012, o 11:53 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

A no myślałem że zrozumiałeś więc jeszcze raz - bo rzeczywiście myślisz od tyłu.

dla uproszczenia rozważań umówmy się że rozważamy przykład pierwszego znaku w CGRAM, który ma kod ZERO - dobra ? \x00

a zatem gdyby nie było żadnego mapowania - to chyba też rozumiesz że nie mógłbyś wyświetlić takiego łańcucha

"jakis tekst""\x00""ABCDEFG"

ponieważ wstawiłbyś znak ASCII o kodzie = 0 ... w środek stringa i pętla by na nim zakończyła wyświetlanie - czyli na LCD poszłoby tylko "jakis tekst" zamiast całego tego łańcucha

i teraz po to zostało zrobione mapowanie, żebyśmy do stringa nie wstawiali kodu ZERO \x00 tylko coś powyżej - tu wymyśliłem kody od \x80

NO i DLATEGO potrzebne jest mapowanie, właśnie po to żeby przemapować ten \x80 na \x00

"jakis tekst""\x80""ABCDEFG"

teraz String nie zakończy się tak jak poprzednio, bo nie ma ZERA, za to do analizy pójdzie kod \x80, wtedy złapie go mapowanie - zamieni na kod ZERO i wyśle już pojedynczy znak do CGRAM o kodzie 0

a zatem na LCD ukaże się np:

jakis tekst ź ABCDEFG

zakładając że zdefiniowaliśmy sobie literkę ź

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 23 sie 2012, o 12:20 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Dzięki Mirku zrozumiałem - pompowanie in progress
Tu się właśnie mi objawiła moc wskaźników. Trochę dziwne mi się wydaje że Hitachi w architekturze LCD nie wyodrębnił bezpośrednio 7 bitów w DDRAM bezpośrednio pod jakimiś innymi adresami np 0x70 do 0x77 nie było by "problemów" ale dzięki temu nauczyłem się czegoś nowego



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sie 2012, o 10:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

A mam jeszcze jedno takie pytanie w funkcji definicji własnego znaku(str.220) fragment
Kod:
for(i=0;1<8;i++)
{
c=pgm_read_byte(def_znak++);
...
}

mam rozumieć że do zmiennej c zostanie przypisana wartość wkaźnika wskazana pod jego adresem a następnie inkrementowana 8 razy ?? bo funkcja wewnętrzna ma jako argument domyślnie adres elementu pgm_read_byte_near(address_short) ?? I stąd wynika różnica jesli chodzi o zwykły znak w RAM'ie ??

Kod:
for(i=0;1<8;i++)
{
c=*(def_znak++);
...
}



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sie 2012, o 12:56 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

kidcowboy napisał(a):
A mam jeszcze jedno takie pytanie w funkcji definicji własnego znaku(str.220) fragment
Kod:
for(i=0;1<8;i++)
{
c=pgm_read_byte(def_znak++);
...
}

mam rozumieć że do zmiennej c zostanie przypisana wartość wkaźnika wskazana pod jego adresem a następnie inkrementowana 8 razy ??


Uwaga! tu już popełniasz mały błąd - bo do zmiennej c zostanie przypisana nie wartość wskaźnika ....., ale zostanie przypisana wartość na którą wskazuje ten wskaźnik, czyli innymi słowy mówiąc wartość znajdująca się pod adresem jaki przechowuje wskaźnik. To dość istotne.



kidcowboy napisał(a):
bo funkcja wewnętrzna ma jako argument domyślnie adres elementu

Dokładnie argumentem jest WSKAŹNIK czyli adres pierwszego elementu

kidcowboy napisał(a):
pgm_read_byte_near(address_short) ??


Ale żeby odczytać dane spod jakiegoś adresu (wskaźnika we flash) to trzeba niestety użyć pgm_read_xxxx() nie ważne tu czy nera czy far czy adr short czy long.

kidcowboy napisał(a):
I stąd wynika różnica jesli chodzi o zwykły znak w RAM'ie ??

Nie rozumiem do końca tego pytania - ale różnica odczytu danej miejsca na które wskazuje wskaźnik z pamięci RAM czy FLASH różni się tym że w przypadku RAM możemy od razu napisać jak niżej, a przypadku pamięci FLASH musimy użyć pgm_read_xxx(). Podobnie zresztą w przypadku pamięci EEPROM ...

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sie 2012, o 14:08 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Dzięki Mirku
Może się źle wysłowiłem jeśli chodzi o dostęp do różnych rodzajów pamięci. Chodziło mi o to że do zmiennej c zostaje zapisana wartość na którą wskazuje wskaźnik stąd zapis z gwiazdką ( dla RAM) , a jeśli chodzi o EEPROM i FLASH zapis jest bez gwiazdki ponieważ argumentem jest adres.
Czyli jeśli nie zdefiniowano by wskaźnika *def_znak a zwykłą zmienną np uint8_t a
to zapis wartości do C można by było uzyskać przez zapis?:

Kod:
c=pgm_read_byte (&a);

oczywiście pomijam fakt że nie można by było inkrementować wartości adresu "a" z uwagi że wskazywałby on wtedy inną zmienną...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sie 2012, o 14:13 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

ale zauważ że jako argument przekazujesz tak na prawdę nazwę tablicy - zgadza się ? a to jest już wskaźnik na jej pierwszy element

owszem można byłoby się nagimnastykować i próbować wskaźnik do pierwszego elementu tablicy wrzucić do jakiejś zmiennej a - jak piszesz - i wtedy naturalnie trzeba byłoby tak napisać jak wspomniałeś - używając operatora pobierania adresu czyli &

ale UWAGA, nie mogłaby to być zmienna a zdefiniowana tak jak napisałeś czyli uint9_t a; !!!!!

musiałaby być tak zdefiniowana (teoretycznie oczywiście)

uint8_t a PROGMEM;

rozumiesz ? musiałaby być zdefiniowana we Flash - więc byłoby to bez sensu - no ale rozumiem teraz o co ci chodziło

czyli gwiazdki wystarczy użyć aby odczytać z pamięci RAM

ale już żeby z Flash to pgm_read_xxx() a jako argument sam wskaźnik bez gwiazdki a to dlatego że argumentem tej funkcji jest znowu wskaźnik ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 sie 2012, o 14:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Cytuj:

ale UWAGA, nie mogłaby to być zmienna a zdefiniowana tak jak napisałeś czyli uint9_t a; !!!!!

musiałaby być tak zdefiniowana (teoretycznie oczywiście)

uint8_t a PROGMEM;


To był tylko taki przykład "dostępu" do zmiennej. Chodziło mi o sposób . Dzięki bardzo



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 sie 2012, o 14:18 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Teraz gdy już zrozumiałem spróbowałem odpalić program z książki i wpisać w pętli jakiś napis żeby wyświetlił się na LCD - niestety podświetlił mi się tylko pierwszy rząd :
Kod:
while(1) {

      char tab[20]={"Ala ma kota"};
      lcd_str(tab);


   }



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 sie 2012, o 14:29 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

No to nie jest przede wszystkim przykład z książki ;)

po drugie pokaż cały kod

po trzecie czy uruchamiasz lcd_init() ?

po czwarte nie rób takich tablic tekstowych jako zmiennych lokalnych wewnątrz funkcji NIGDY ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 sie 2012, o 14:31 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Przepraszam już poprawione

------------------------ [ Dodano po: 24 minutach ]

Nadmienię że ustawienia są standardowe - zgodne z tym co na płycie tzn taktowania 11.0592 MHz atmega 32



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 sie 2012, o 15:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

Spróbowałem na wewnętrznym oscylatorze 8 MHz i nic



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 sie 2012, o 15:42 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27352
Lokalizacja: Szczecin
Pomógł: 1042

Ok to teraz spróbuj tak:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


bo po co ładujesz ten cały BALAST niepotrzebny ?

to musi zadziałać a jak nie to coś może źle podłączyłeś albo źle skonfigurowałeś piny w pliku konfiguracyjnym *.h (więc jak coś to pokaż jeszcze tych kilka linijek z tego pliku w których konfiguruje się piny a także parametr o nazwie USE_RW

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 sie 2012, o 16:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 kwi 2012
Posty: 195
Pomógł: 0

ok błąd miałem w podłączeniu. Hmmm niestety nie mam podświetlania tła
20 pompek leci



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 76 ]  Przejdź na stronę 1, 2, 3  Następna strona

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO