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



Teraz jest 30 mar 2026, o 22:38


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 
Autor Wiadomość
PostNapisane: 31 gru 2013, o 19:59 
Offline
Użytkownik

Dołączył(a): 20 lut 2012
Posty: 45
Pomógł: 0

Witam,
Mam problem z tym błędem :/
Chcę zrobić coś takiego:

lcd_str("Temp.MIN: %d*C",TEM1);

Czym mam to zastąpić?

Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 gru 2013, o 20:14 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 lip 2012
Posty: 157
Pomógł: 8

A jak podkreśla Ci składnie??? "Temp.MIN: %d*C" powinno wyswietlic dobrze, jednak TEM1 to juz zmienna i widocznie tak na to kompilator reaguje, wysylasz stringa a nie zmienna. Użyj lcd_int(TEM1); aby wyswietlic zmienna.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 gru 2013, o 20:32 
Offline
Użytkownik

Dołączył(a): 20 lut 2012
Posty: 45
Pomógł: 0

Czy dobrze zrozumiałem:

lcd_int("Temp.MIN: %d*C",TEM1);


doszedł błąd: - passing argument 1 of 'lcd_int' makes integer from pointer without a cast



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 gru 2013, o 21:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 lip 2012
Posty: 157
Pomógł: 8

nieee

lcd_str("Temp.MIN: %d*C"); tu wyświetlasz stringa no lcd_str("xxx") cdzie xxx to ciąg znaków ograniczony z jednej i drugiej strony znakiem ", a jeśli chcesz wyświetlić zmienną to użyj:
lcd_int(TEM1); gdzie TEM1 to nazwa zmiennej.

napisz tak:
lcd_locate(0,0);
lcd_str("Temp.MIN: %d*C");
lcd_locate(1,0);
lcd_int(TEM1);

lub:
lcd_locate(0,0);
lcd_str("Temp.MIN: %d*C");
lcd_locate(1,15);
lcd_int(TEM1);

ale to jeśli masz lcd 20 znaków w lini.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 gru 2013, o 21:12 
Offline
Użytkownik

Dołączył(a): 20 wrz 2013
Posty: 647
Zbananowany użytkownik

Pomógł: 101

.

_________________
+++++[>++++<-]>[>++++++<-]>.---------.+++.



Ostatnio edytowano 6 lis 2015, o 14:13 przez xor, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 gru 2013, o 21:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 lip 2012
Posty: 157
Pomógł: 8

printf??? nie no skad to masz??? tzn ja sam niewiem bo tez się uczę, ale podejrzewam że autor ma bb.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


takie coś jest poprawne, jeśli masz bb wpisz sobie taki kod, oczywiście przed tym utwórz zmienną TEM1 i wpisz do niej jakąś wartość.

void lcd_str(char * str) funkcja chce konkretnego stringa ("xxx"), a jak ja jej wpiszę ("xxx",TEM1) to wyrzuci komunikat.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 gru 2013, o 21:32 
Offline
Użytkownik

Dołączył(a): 20 wrz 2013
Posty: 647
Zbananowany użytkownik

Pomógł: 101

.

_________________
+++++[>++++<-]>[>++++++<-]>.---------.+++.



Ostatnio edytowano 6 lis 2015, o 14:14 przez xor, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 gru 2013, o 21:32 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 lip 2012
Posty: 157
Pomógł: 8

Cytuj:
k_mirek napisał(a):
lcd_str("Temp.MIN: %d*C");

Na pewno? To nie printf chyba...



aaa no tak, jeśli chciał printf to może o coś innego chodzi, tylko kolega nie dopowiedział co dokładnie chce zrobić. lcd_str skojarzyło mi sie z bb i LCD.



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: 8 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 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