hi ...
ich bekomme das display
http://81.169.243.4/20160913_114119.jpg
an einem teensy einfach nicht stabil ans laufen
der fehler ist im video zu sehen
http://81.169.243.4/20160913_114012.mp4
hat jemand auch schon einmal so einen effect gehabt und
kann mir einen tip geben ???
ich hab es mit der gd2-lib und auch mit der orginalen ft_LIBS getestet,
immer der gleiche effect
die zeit bis es abraucht scheint von der mondstrahlungskonstante
abzuhängen
und ist immer unterschiedlich ...
ft800-libs
Knut B. schrieb:> Und das Video ging jetzt nicht kürzer...?
sorry
http://81.169.243.4/a.mp4> Check mal die Spannungen
das versteh ich nicht ?
> und die Blockkondensatoren.
ich hab 100n zwischen +5v und gnd
ich habe mal einen arduino uno besorgt um das zu testen
damit funktioniert das ohne probleme, es kann also nur
an den libs liegen bzw. der initalisierung des ft800-chips liegen
hat jemand damit schon erfahrungen gesammelt und kann
einen tip abgeben ?
Kann es sein, dass die loop() zu schnell läuft?
Der FT800 mag es nicht, wenn man die Liste mit mehr als 60Hz
aktualisiert.
An der Initialisierung liegt es ja offenbar nicht.
Und wo kommen die 5V her? Liefert die Quelle auch genug Strom?
Mein FT800CB habe ich jedenfalls mit einem eigenen Regler am Laufen
gehabt.
Ansonsten gibt es hier noch was:
Beitrag "FT800 / FT810 Library"
Wobei ich allerdings nicht sicher weiss, was Du mit "teensy" meinst,
gibt es von den Dingern nicht diverse Versionen?
Aber meine Lib compiliert auch für Arduino, man muss nur zwei Dateien
auf .cpp umbenennen.
Rudolph schrieb:
danke erstmal für deine antwort ...
> Kann es sein, dass die loop() zu schnell läuft?> Der FT800 mag es nicht, wenn man die Liste mit mehr als 60Hz> aktualisiert.
nee, das passt ...
ich hab es jetzt am laufen ...
ich hatte zwischen display und arduino uno etwa 20cm kabel,
das hat funktioniert
dann den uno gegen einen teensy getauscht, nix geht
dann hab ich mal die kabel zwischen teensy und display
auf ca. 5cm gekürzt
nun tut es ohne probleme ...
verstehen tu ich das aber nicht, weil spi-bus hab ich auch
schon über strecken bis zu einem meter bei testaufbauten
auf dem tisch ohne probleme gehabt ...
> An der Initialisierung liegt es ja offenbar nicht.>> Und wo kommen die 5V her? Liefert die Quelle auch genug Strom?> Mein FT800CB habe ich jedenfalls mit einem eigenen Regler am Laufen> gehabt.>> Ansonsten gibt es hier noch was:> Beitrag "FT800 / FT810 Library"
das kenn ich ;)
> Wobei ich allerdings nicht sicher weiss, was Du mit "teensy" meinst,https://www.pjrc.com/teensy/
Ray M. schrieb:> dann hab ich mal die kabel zwischen teensy und display> auf ca. 5cm gekürzt> nun tut es ohne probleme ...
Wie schnell läuft der SPI denn?
Die 8 MHz die der AVR macht laufen erstaunlich stabil auch über
hässlichere Verbindungen. :-)
Aber um was sauberes zum Spielen zu haben bin ich dabei mir eine Platine
zu schnitzen, im Bild der bisherige Stand auf einem VM800B35A montiert.
Alternativ hat das Ding noch einen Folien-Leiter Anschluss für die TFTs
von Riverdi und die neue Version die noch in Arbeit ist hat auch einen
Anschluss für die HAOYU TFTs.
Nur Zeit finden und Zeit haben und so, fertig ist das lange nicht... :-)
>> Wobei ich allerdings nicht sicher weiss, was Du mit "teensy" meinst,>> https://www.pjrc.com/teensy/
Genau das habe ich gemeint, zwischen einem AVR auf 16 MHz und einem
Cortex-M4 auf 72 MHz gibt es doch enige Unterschiede. :-)
Rudolph schrieb:> Ray M. schrieb:>> dann hab ich mal die kabel zwischen teensy und display>> auf ca. 5cm gekürzt>> nun tut es ohne probleme ...>> Wie schnell läuft der SPI denn?> Die 8 MHz die der AVR macht laufen erstaunlich stabil auch über> hässlichere Verbindungen. :-)>> Aber um was sauberes zum Spielen zu haben bin ich dabei mir eine Platine> zu schnitzen, im Bild der bisherige Stand auf einem VM800B35A montiert.> Alternativ hat das Ding noch einen Folien-Leiter Anschluss für die TFTs> von Riverdi und die neue Version die noch in Arbeit ist hat auch einen> Anschluss für die HAOYU TFTs.
das schaut och super aus ...
schiebst du das ins forum oder ist das ein kundenprojekt ;)
> Nur Zeit finden und Zeit haben und so, fertig ist das lange nicht... :-)>>>> Wobei ich allerdings nicht sicher weiss, was Du mit "teensy" meinst,>>>> https://www.pjrc.com/teensy/>> Genau das habe ich gemeint, zwischen einem AVR auf 16 MHz und einem> Cortex-M4 auf 72 MHz gibt es doch enige Unterschiede. :-)
an dem ist wohl was dran ... ;)
ach so, wozu wird beim ft800 eigentlich der int-pin verwendet ?
wenn ich den nicht anklemme funktioniert es trotzdem
pd schalte ich garnicht, den hab ich einfach auf +3.3V gelegt und tut
auch ...
damit verschwende ich weniger io's
Ray M. schrieb:> schiebst du das ins forum oder ist das ein kundenprojekt ;)
Das kann dann mal irgendwann ins Forum, das ist wie die ganze Nummer ein
privat getriebenes Projekt-Anbanungs-Projekt. :-)
An dem nächsten Kunden-Projekt sitze ich gerade.
Ray M. schrieb:> ach so, wozu wird beim ft800 eigentlich der int-pin verwendet ?> wenn ich den nicht anklemme funktioniert es trotzdem
Ich zumindest benutze INT nicht, die Abfrage alle 20ms kostet ja soweit
nichts und das Display reagiert gefühlt sofort.
Das geht glaube ich auch für andere Sachen, aber Touch-Events sind ja
die offensichtlichste Anwendung und da brauche ich das nicht.
> pd schalte ich garnicht, den hab ich einfach auf +3.3V gelegt und tut> auch ...
Den schalte ich wiederrum in der Initialisierung um, da sind die
einzigen delay() in meinem Code drin.
Rudolph schrieb:> Ray M. schrieb:>> schiebst du das ins forum oder ist das ein kundenprojekt ;)>> Das kann dann mal irgendwann ins Forum, das ist wie die ganze Nummer ein> privat getriebenes Projekt-Anbanungs-Projekt. :-)> An dem nächsten Kunden-Projekt sitze ich gerade.
... ;) ;) ;)
> Ray M. schrieb:>> ach so, wozu wird beim ft800 eigentlich der int-pin verwendet ?>> wenn ich den nicht anklemme funktioniert es trotzdem>> Ich zumindest benutze INT nicht, die Abfrage alle 20ms kostet ja soweit> nichts und das Display reagiert gefühlt sofort.> Das geht glaube ich auch für andere Sachen, aber Touch-Events sind ja> die offensichtlichste Anwendung und da brauche ich das nicht.
touch benutze ich aktuell auch nicht ...
>> pd schalte ich garnicht, den hab ich einfach auf +3.3V gelegt und tut>> auch ...>> Den schalte ich wiederrum in der Initialisierung um, da sind die> einzigen delay() in meinem Code drin.
ja, da steht immer high 20ms low 20ms high 20ms ...
geht aber auch einfach mit 3.3 an pd ;)
eine frage hab ich noch
jetzt hab ich noch eine sd-card am spi aber irgendwie kommen
die sich schon wieder ins gehege ;(
wenn ich miso vom display abziehe funktioniert die sd-card,
stecke ich miso vom display an, klemmt irgendwas, kein zugriff
mehr auf die sd-card
die kabel hab ich ganz kurz, wie gehabt ...
woran kann das liegen ?
kann ich irgendwo mit kondensatoren und/oder wiederständen was
sinnvolles machen ?
Hat du irgendwo einen Level-Shifter verbaut (zum Display / zur SD-Card)?
Erst neulich ist hier im Forum so ein Billig-Teil aufgetaucht, dass sich
um CS# nicht schert, und dementsprechend MISO nicht freigab.
nein, der teensy ist 3.3V da brauch ich keinen, siehe foto
eigentlich sollte die verwendete gd2-lib zwischen sd und display
via cs umschalten, aber genau das scheint irgendwie nicht zu tun
ich mache mal einen test mit der ft800-lib ... eventuell macht
die es richtig und ich kann im code nachschauen ...
Ray M. schrieb:> eigentlich sollte die verwendete gd2-lib zwischen sd und display> via cs umschalten, aber genau das scheint irgendwie nicht zu tun>> ich mache mal einen test mit der ft800-lib ... eventuell macht> die es richtig und ich kann im code nachschauen ...
Besser wäre, mit einem Osziloskop oder Logic-Analyzer nachzuschauen,
wenn vorhanden.
Es kann auch Logic sein, ich baue aktuell auch gerade einen SD-Sockel
ein und habe da noch mal elektrisch etwas quer im Netz gestöbert.
Ein Hinweis in dem Zusammenhang war, das steht hier irgendwo auf
MikroController.net, dass der SD-Treiber nach dem hoch ziehen von CS
noch ein paar Mal mit der Takt-Leitung wackeln soll, damit die Karte
MOSI wirklich in Tristate schaltet.
Ich weiss nicht, warum und was da dran ist, aber vielleicht mal nen
Null-Byte senden ohne Chip-Select?
Der FT800 sollte nicht das Problem sein, in einem anderen Projekt hatte
ich den am SPI mit einem ADC und einem DAC.
Rudolph schrieb:> Ich weiss nicht, warum und was da dran ist, aber vielleicht mal nen> Null-Byte senden ohne Chip-Select?
ok, dass teste ich gleich mal ...
Ray M. schrieb:> Rudolph schrieb:>> Ich weiss nicht, warum und was da dran ist, aber vielleicht mal nen>> Null-Byte senden ohne Chip-Select?>> ok, dass teste ich gleich mal ...
leider bringt das nix ;(
joop ... jetzt wo ich wegen deiner frage reingeschaut hab ...
aber es gibt ja eh nix schlechteres wie 4gb class 4, dass sind die
1€ karten von ebay ... ;)
Ray M. schrieb:> aber es gibt ja eh nix schlechteres wie 4gb class 4
Naja, Class 2 eben, so eine, wie sie bei dir noch rumlag.
Zu deinem ursprünglichen Problem: probier es doch einfach mal mit
deutlich geringerer (z.B. halber, oder 1/4) Clock-Rate aus.
Die Kabel sind zwar kurz, du hast aber eine relativ ungünstige
Anordnung, da der Master in der Mitte sitzt, und SPI ja nicht terminiert
ist...
joop ...
jetzt wo es frei fliegend geht mach ich erst mal eine platine,
da sind die wege deutlich kürzer ... wenn das fertig ist
schau ich mal wie weit ich runter komme um auch alte sd-karten
zu nutzen, wenn nicht schreib ich in meine docu mind. class4
und gut ist ;)
danke für deine hilfe ...
Ray M. schrieb:> joop ...>> jetzt wo es frei fliegend geht mach ich erst mal eine platine,> da sind die wege deutlich kürzer ... wenn das fertig ist> schau ich mal wie weit ich runter komme um auch alte sd-karten> zu nutzen, wenn nicht schreib ich in meine docu mind. class4> und gut ist ;)>> danke für deine hilfe ...
Man kann die CLK ja auch umschalten, je nach dem mit welchem Slave man
kommunizieren möchte... ;-)
Ich meinte eigentlich das Problem mit dem Display. Wenn die Signale auf
dem SPI Bus nicht 100% sauber sind, kann es sein, dass das Display
irgendwann mal Mist empfängt, und dann aussteigt.