• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Mega 2560 wyświetlacz FT810
#11
(03-09-2019, 19:55)Agregacik napisał(a): Może ktoś ma jakiś pomysł, coś może podpowiedzieć.
Pomysły są, podpowiedzi są ale nie odpowiadasz na pytania więc jak sobie wyobrażasz pomoc? Zgadywanka?
 
Odpowiedź
#12
Różnice są niewielkie pomiędzy NANO i MEGA, najczęściej przy SPI jest pomyłka przy pinach SPI, na MEGA to nie są 11-13.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
#13
Witam
Po sporych bojach udało mi się uruchomić wyświetlacz FT811 na arduino mega.
Przypominam, że nie jestem autorem wątku, ale z ciekawości chciałem spróbować czy mój wyświetlacz FT811 będzie współpracował z arduino mega.
Używam biblioteki GD23Z-master.
Piny wyświetlacza łączymy odpowiednio:
SCK do SCK
MISO do MISO
MOSI do MOSI
PD do +5V
CS do SS dla arduino nano i uno czyli portu D10.
W arduino mega SS jest na porcie D53 i tak przez analogię podłączałem.
Przeglądnąłem sobie jednak plik GD23Z.h i tam w linijce 38 jest deklaracja pinu CS na pin D10.
I tu wszystko się wyjaśniło, podłączyłem CS z wyświetlacza do pinu D10 w arduino mega i wyświetlacz ruszył.
Zmieniłem też deklarację pinu w pliku GD23Z.h na pin D53 i też wszystko działa.
Może to pomoże autorowi wątku w uruchomieniu jego wyświetlacza FT810.

Dodam jeszcze uwagę.
Do wyświetlacza wlutowałem gold piny nie używam oryginalnej tasiemki.
Nie wiem dlaczego, ale wyświetlacz musiałem podłączyć luźnymi kabelkami.
Gdy były razem sklejone wyświetlacz też nie chciał "wstać".
Podejrzewam wzajemne zakłócenia.
 
Odpowiedź
#14
(04-09-2019, 13:04)Agregacik napisał(a): Nie wiem dlaczego, ale wyświetlacz musiałem podłączyć luźnymi kabelkami.
Gdy były razem sklejone wyświetlacz też nie chciał "wstać".
Duża pojemność pomiędzy przewodami i związane z tym przesłuchy, niedopasowanie linii. Na oscyloskopie to widać to. Rozwiązań jest wiele ale zależą od konkretnej aplikacji.
 
Odpowiedź
#15
(05-09-2019, 17:53)semi napisał(a):
(04-09-2019, 13:04)Agregacik napisał(a): Nie wiem dlaczego, ale wyświetlacz musiałem podłączyć luźnymi kabelkami.
Gdy były razem sklejone wyświetlacz też nie chciał "wstać".
Duża pojemność pomiędzy przewodami i związane z tym przesłuchy, niedopasowanie linii. Na oscyloskopie to widać to. Rozwiązań jest wiele ale zależą od konkretnej aplikacji.
Zdaję sobie z wzajemnego wpływu przewodów na siebie przez pojemność czy indukcyjność wzajemną, tylko nie wiedziałem, że ma to aż taki wpływ na długości 20 cm.  W innym projekcie wyświetlacz LCD 20x4 udało mi się podłączyć na i2c na odcinku 15m, ale nie wiedziałem, że SPI może mieć takie problemy na 20 cm. No ale teraz już wiem. Zależy to zapewne jeszcze od samego interfejsu fizycznego wyświetlacza FT 811.
Dodam, że uwaga o luźnych kabelkach, była do autora wątku, aby na to zwrócił uwagę. Ciekawe czy uporał się z problemem, dobrze jakby dał znać na forum.
 
Odpowiedź
#16
(06-09-2019, 11:30)Agregacik napisał(a): Zdaję sobie z wzajemnego wpływu przewodów na siebie przez pojemność czy indukcyjność wzajemną, tylko nie wiedziałem, że ma to aż taki wpływ na długości 20 cm.  W
Policz długość fali dla 8MHz i będziesz wiedział kiedy linia jest długa i trzeba ja dopasować aby nie było odbić.

(06-09-2019, 11:30)Agregacik napisał(a): innym projekcie wyświetlacz LCD 20x4 udało mi się podłączyć na i2c na odcinku 15m, ale nie wiedziałem, że SPI może mieć takie problemy na 20 cm. No ale teraz już wiem. Zależy to zapewne jeszcze od samego interfejsu fizycznego wyświetlacza FT 811.
Jaką szybkość transmisji miałeś na I2C a jaką masz na SPI?

Początkujący "na palę" łączą moduły, nie zwracają uwagi na rodzaj przewodu, długość. Dla nich odbicia, przesłuchy nie istnieją. Nie mają oscyloskopu aby zobaczyć jak wygląda sygnał. Efekty często są takie, że urządzenie działa dobrze na stole po zamknięciu w obudowie lub zmontowaniu na PCB już nie. Wszystko to wynika z niewiedzy i/lub braku sprzętu.
Na forach często czytam "Nie będę kupował oscyloskopu dla jednego hobbystycznego projektu". Jak chcę sobie hobbystycznie sfrezować głowicę w samochodzie to nie muszę kupować frezarki tylko zrobię to pilnikiem?

Rozczarowań można uniknąć wiedząc do czego został stworzony i gdzie jest używany dany interfejs. I2C wymyślono w celu komunikacji z niedużą prędkością w obszarze jednego urządzenia. Długość magistrali to co najwyżej kilkadziesiąt centymetrów. Ekspandery pozwalają na komunikację na większe odległości, z mniejsza prędkością. SPI służy do szybkiej komunikacji na niewielkie odległości rzędu centymetrów. Możliwa jest komunikacja na dziesiątki centymetrów ale kosztem prędkości. Do szybkiej komunikacji na duże odległości służy RS422/485. Trzeba oczywiście pamiętać, w przypadku interfejsów synchronicznych, o czasie w jakim elektrony podróżują w przewodniku. W przypadku interfejsu synchronicznego, czas podróży "tam i z powrotem" nie powinien przekraczać 50% czasu trwania sygnału zegarowego.

(06-09-2019, 11:30)Agregacik napisał(a): Zależy to zapewne jeszcze od samego interfejsu fizycznego wyświetlacza FT 811.
Bez problemu FT811 zadziała na 25MHz ale nie na półmetrowym przewodzie. Jeśli przewód jest długi to należy zmniejszyć prędkość transmisji. Jeśli musi być duża użyć RS422. Naturalnie przewody połączeniowe muszą być odpowiedniego typu. Jeśli będą nieodpowiednie trzeba będzie zmniejszyć prędkość transmisji.

Istnieje też problem nieznajomości softu (bibliotek, C/C++) i not katalogowych użytych układów. Połączenie razem tych braków w wiedzy razem z chęcią naciągnięcia klienta aby wcisnąć im największe możliwe bzdury, jak wyświetlacz 480x320 do ArduinoMega2560 owocuje rozczarowaniem i postami "Kompilator ma błędy", "Kupiłem zepsuty układ".
 
Odpowiedź
#17
@semi
Dla 8MHz długość fali to około 35 m. Linia długa to taka, której długość jest większa lub przynajmniej porównywalna z długością fali. W tym wypadku jest znacznie krótsza nawet od 1/4 długości fali, więc nie ma tu raczej problemu dopasowania impedancji obciążenia do linii długiej. Interfejsy mają dużą impedancję rzędu kiloomów a linia w postaci skrętki ma około 100-150 om.
Trzeba zauważyć, że dla wszystkich 3 sygnałów w SPI zarówno zegara jak i danych "masa" jest wspólna i oprócz pojemności pomiędzy przewodami dochodzi wspólna impedancja "masy".
Do pracy, a właściwie zabawy z ARDUINO, nie ma potrzeby posiadania oscyloskopu wystarczy znać pewne zasady, których trzeba się trzymać.
Po to jest to forum i "piaskownica", aby laik mógł się zapytać o oczywiste dla innych sprawy.
Obecnie programy umożliwiają bawić się w programowanie mikrokontrolerów nawet dzieciom z podstawówki nie posiadającym specjalistycznej wiedzy.
Do zabawy z arduino nie koniecznie trzeba znać język C/C++ czy noty katalogowe. Lwią część pracy zrobili inni w postaci bibliotek powszechnie dostępnych w internecie. No nie zawsze dobrze działający, ale zawsze można je poprawić. Dociekliwi mogą oczywiście zagłębiać się w język programowania czy noty katalogowe itd.

I jeszcze na temat elektronów. One są bardzo leniwe i nie chcą się poruszać z prędkością światła w przewodniku. Raczej popychają się wzajemnie z prędkością prawie światła.

Twoje uwagi są oczywiście słuszne jeżeli chcemy przesyłać sygnały na dłuższe odległości. A oscyloskop jest potrzebny bardzo dociekliwym i takim co robią skomplikowane i do tego nietypowe projekty.
Pozdrawiam
 
Odpowiedź
#18
(09-09-2019, 13:41)Agregacik napisał(a): Do zabawy z arduino nie koniecznie trzeba znać język C/C++ czy noty katalogowe. Lwią część pracy zrobili inni w postaci bibliotek powszechnie dostępnych w internecie. No nie zawsze dobrze działający, ale zawsze można je poprawić.
Bardzo mało bibliotek jest napisanych "z głową". Przeważnie są bardzo, bardzo niskiej jakości.
Jak je poprawić nie znając C/C++ ?

Co do 8MHz, to proponuję zobaczyć na oscyloskopie jak to wygląda. Jak znajdę oscylogramy to pokażę 8MHz i dzwonienie, o którym mało kto, kto tego nie widział, wie, że istnieje i jaki ma wpływ na błędy w komunikacji.
 
Odpowiedź
#19
Projekt ARDUINO został stworzony dla ludzi, którzy nie koniecznie muszą znać się na programowaniu w C/C++.
Ja osobiście nigdy bym się nie zaczął bawić mikrokontrolerami, gdyby nie arduino. A wszystko zaczęło się od tego, że syn, notabene informatyk, nie miał czasu, aby mi napisać program, o który go prosiłem.
Teraz udało mi się zrealizować kilka projektów dla domu.
Co to jest "dzwonienie" czy to nie przesłuch?
 
Odpowiedź
#20
(09-09-2019, 13:41)Agregacik napisał(a): Do zabawy z arduino nie koniecznie trzeba znać język C/C++


A później mamy takie problemy:

- "Witam, napisałem program oparty o pętle case, działa bez zarzutu ale teraz chciałbym dołożyć sterowanie menu przez ir. Problem w tym, że wszystkie przykłady z ir także posiadają case. Nie wiem jak to połączyć, próbowałem już różnych możliwości ale bez skutku."

-"Znalazłem w sieci projekt... ...proszę by ktoś dopisał brakującą funkcję, oraz o wyjaśnienie jak działa ten program."

-"Proszę o pomoc, chciałem użyć tego kodu ale nie działa."

O, to jest niezłe: (niestety z konkurencyjnego forum)
-"Jaka jest najlepsza metoda, aby większej ilości pinów przyporządkować pewną - tą samą - wartość? Wiem, że to można rozpisać w programie krok po po kroku, ale chodzi mi o zwięzły program."

Ach. Nie chce mi się dalej wstawiać przykładów, bo to nie ma sensu.

Myślę, że nie trzeba znać się na programowaniu, ale na pewno trzeba znać język C/C++.
Zasady języka można poznać w jeden wieczór i to bez większego wysiłku.



(09-09-2019, 13:41)Agregacik napisał(a): I jeszcze na temat elektronów. One są bardzo leniwe i nie chcą się poruszać z prędkością światła w przewodniku. Raczej popychają się wzajemnie z prędkością prawie światła.


Dal ciekawskich: elektrony w przewodniku poruszają się z prędkością 0,15 mm/s.

Odnośnie komunikacji: SPI jest bardzo podatne na zakłócenia. Żeby to dobrze pracowało, to sprzęt musi być zaprojektowany z głową i nie dziwcie się, że prototyp na płytce stykowej nie działa. W zależności od prędkości, SPI może pracować do 1m.
I2C może nadawać nawet do kilku metrów, więc nasze prototypy nie robią na nim większego wrażenia.
Jeśli masz problem z kodem lub sprzętem, zadaj pytanie na forum. Nie odpowiadam na PW, jeśli nie dotyczą one spraw forum lub innych tematów prywatnych.

[Obrazek: SsIndaG.jpg]
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości