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



Teraz jest 8 mar 2025, o 06:48


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 4 lut 2015, o 15:14 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 gru 2014
Posty: 88
Pomógł: 2

Aloha
No nie mogę zaskoczyć i przeskoczyć pewnej kwestii dotyczącej wyświetlacza LCD Busy Flag funkcja _lcd_write_byte w końcowej części funkcji mamy część kodu.
#if USE_RW == 1
while( (check_BF() & (1<<7)) );
#else
_delay_us(120);
#endif

Problem dotyczy poprawnej analizy tego maleństwa
while( (check_BF() & (1<<7)) );// czekaj aż będzie można przesłać
// kolejne dane
dwa przypadki
1. BF=1(1xxx xxx) & (1xxx xxx) => 0b1xxx xxxx => 1 prawda => czekaj czekaj czekaj
2. BF=0(0xxx xxx) & (1xxx xxx) => 0b1xxx xxxx => 0 fałsz=>skończyłem
podaj dane
W BB czytam ..”Jeżeli będzie ona równa 1 oznacza, że wykonał swoje wewnętrzne działania i można przesyłać do niego kolejne dane”..
Według mnie dla wartości BF=1 while(1) będzie się kręciła w kółko czekaj czekaj czekaj i czekaj … aż będzie BF=0 => while(0) => wypad z pętli while. Z opisu BB wynika co innego i tego nie kumam, proszę Was o wyjaśnienie gdzie moje myślenie poszło za psem Sabą i Ludwikiem D.

Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 lut 2015, o 16:02 
Offline
Moderator
Avatar użytkownika

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

Wyjaśnienie w BB jest ok - czyli CZEKAJ CZEKAJ CZEKAJ .... aż BF będzie wolny. BF to taki semafor.

_________________
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: 4 lut 2015, o 19:47 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 gru 2014
Posty: 88
Pomógł: 2

Mirek,
ale miło pobierać nauki u samego mistrza.

Napisałeś, że to taki semafor, doprecyzuję działający następująco:
BF 1 ->czekaj, BF 0 doczekałeś się wyjdź z pętli while nie widzę innej opcji .
Tymczasem czytam bez zrozumienia z BB str 222 ...”Jeżeli będzie ona równa 1 oznacza, że wykonał swoje wewnętrzne działania i można przesyłać do niego kolejne dane”..
Wartość 1 z tego zdania dokleiłem do BF i wyszło mi, że BF 1 ... i można przesyłać do niego kolejna dane co stoi w sprzeczności z działaniem pętli while (BF 1 czekaj cierpliwie) OR ( BF 0 no i doczekałeś się).
Wartość 1 z tego zdania dotyczy czego ? warunku # if USE_RW ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 4 lut 2015, o 20:00 
Offline
Moderator
Avatar użytkownika

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

ten kod, który działa przecież:

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


mówi sam za siebie - że gdy BF jest = 1 to znaczy, że sterownik wykonuje wewnętrzne operacje i nie można przesłać do niego kolejnych danych", więc ewidentnie w książce walnąłem się, i zdanie powinno brzmieć:

”Jeżeli będzie ona równa 0 oznacza, że wykonał swoje wewnętrzne działania i można przesyłać do niego kolejne dane”


Autor postu otrzymał pochwałę

_________________
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: 4 lut 2015, o 20:13 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 gru 2014
Posty: 88
Pomógł: 2

No teraz będę już mógł spać spokojnie dzisiejszej nocy dzięki za odpowiedź.

Zdrówka.



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

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO