Skocz do zawartości

[Programowanie] Spi, uart, I2C czyli bascomowa pułapka


madik

Pomocna odpowiedź

Nie SLAVER tylko SLAVE dlatego, że Master oznacza Mistrzowski, Wyrzszy a Slave oznacza Niewolnik co doskonale pasuje do hierarchii SPI. Natomiast Slaver oznacza ślina, ślinić się co trochę tu nie pasuje poza tym w ang. opracowaniach, które czytałem używa się nazwy Slave.

  • Lubię! 1
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Już dodałem troche materiału o Uart ale to więcej pod względem programu w bascomie. Schematy dodam w najbliższym czasie. Myślę że uda mi się także napisać trochę o I2C.

Jeśli ktoś czegoś nie rozumie to pytajcie sie śmiało. 😉

Link do komentarza
Share on other sites

Coś mało napisałeś o tym poleceniu Waitkey().

Czy ono zatrzymuje pogram do momentu odebrania transmisji?

Dodatkowo można by zmienić trochę program wyświetlający na LCD liczbę, bo , jeśli dobrze zrozumiałem ideę, teraz po otrzymaniu liczby na pół sekundy wyświetli się liczba a potem na 1,5sek zgaśnie(jeśli waitkey() zatrzymuje program), lub wyświetli się zero(jesli nie zatrzymuje).

Link do komentarza
Share on other sites

Polecenie "waitkey" czeka aż przyjdzie jakiś znak, więc można powiedzieć że wstrzymuje cały program, a jeśli już dostanie to pętla idzie po kolei - czyli zostaje wyświetlona informacja na lcd. Jeśli jeszcze coś w tym nie rozumiesz to pytaj śmiało, chętnie pomogę i zrozumiem gimnazjalistę bo sam teraz zaczynam z gimnazjum 😃

Link do komentarza
Share on other sites

A ja mam pytanie do I2C. Nie komunikowałem jeszcze dwóch procków ale mam w układzie PCF8574 i przed wysłaniem danych trzeba puścić adres do którego odbiornika mają trafić dane. Chciałbym wiedzieć jak to jest z procesorami gdyby było ich więcej. Czy da się im nadać jakiś adres ??

Druga sprawa to czy linijka

I2crbyte Dane 

nie powinna wyglądać tak

I2crbyte Dane , Nack
Link do komentarza
Share on other sites

Tak tak pominąłem chyba najważniejszy punkt

I2crbyte Dane , nack

Parametr NACK występuje, gdy bieżący bajt jest ostatnim z

odczytywanych.

Parametr ACK występuje, gdy bieżący odbierany bajt nie jest

ostatnim.

Co do większej ilości procesorów. Tak każdemu procesorowi typu slave nadajesz unikalny adres programowo.

Link do komentarza
Share on other sites

Ok postaram się to przybliżyć o ile nic nie stanie na drodze 🙂. Pragnę poinformować że kody zostały opublikowane, a ostatni schemat zaraz wrzucam. Jak ktoś ma uwagę, pomysł , czy komentarz niech się dzieli tutaj 🙂. Ja powiem tylko że bascom umożliwia wmiarę prostą komunikację ale to właśnie czasem z błędem. Jak ktoś coś testował z tego artykuły niech się podzieli własnymi uwagami.

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Gość
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.