Op 15 maart 2022 12:30:00 schreef Arco:
Heb je er een filmpje van? (als daar tenminste het effect in te zien is)
Het is me niet helemaal duidelijk wat je met schokkerig exact bedoelt...

Ik heb even een filmpje gemaakt, maar fraai is het niet. Wellicht is te zien wat ik bedoel.
Let bv op de bovenste rij.

Op 15 maart 2022 16:55:59 schreef Arco:
Met stilstaande tekst bedoel ik dat er dan totaal niets naar de MAX7219 wordt gestuurd via SPI...

Ja, klopt.
Eenmaal iets schrijven, dan een While - Wend loop die niets doet.

While True

For Row = 0 to 7
   Max_Write(Row + 1, 0xFF, 0XFF, 0xFF, 0xFF)
Next Row

While True Wend

Het beeld zou dan mooi constant moeten blijven. Maar die kleine flikkeringen zijn er dan ook.

[Bericht gewijzigd door Bavelt op (16%)]

Dat is inderdaad heel raar. Je ziet een soort 'ghosting' vooral in row 2...

Heb je al eens geprobeerd: tekst laden, 40mS wachten, alle leds uit, nieuwe tekst laden, 40mS wachten, alle leds uit, enz...
Als je de tekststring allemaal spaties maakt, en die laat lopen, gaan er dan nog steeds spontaan leds aan?

Als iets beweegt gaat je oog dat volgen. Doordat je oog gewend is om "analoge wereld" dingen te volgen, gebeurt dat gewoon analoog.

Maar hoewel de text dus soepel beweegt, staan dan de letters zo nu en dan links en zo nu en dan rechts van hun "gemiddelde" positie die je oog aan het volgen is. Je gaat dan een soort van bibber zien.

Hier is niet veel aan te doen: Het zit hem in JOU waarneming, niet in wat het display werkelijk doet.

Wat een beetje helpt is dat als je nu 10 pixels per seconde scrollt, dat je 100x per seconde een een refresh doet en dan de intensiteit van de leds aanpast. Dus een led die van uit naar aan gaat, die moet dan in 10 stapjes van uit naar aangaan. Dit maakt het beeld iets softer voor je ogen.

edit:
Ik heb in 1985 les gehad van Prof. Blinn. Die had aan een video als deze gewerkt en vond het effect in de antenne (rond 0:58) afschuwelijk om aan te zien.
https://www.youtube.com/watch?v=bVFkVjphIEQ

Dus ook daar: interpoleren. Ik vermoed dat dit niet precies de video is die hij daar op college heeft laten zien.

Door diverse conversies van TV naar "voor youtube" is het effect in die video (voor mij althans) nu niet meer te zien. Maar hij had het probleem natuurlijk ook gewoon opgelost: In de gepubliceerde verzie zat het effect natuurlijk niet.

[Bericht gewijzigd door rew op (28%)]

Nee,
Als ik de leds uit zet (dus 0x00 naar alle rijen) dan blijft ook alles uit.

Je ziet dan geen knipperingen.

Die ontstaan alleen wanneer de leds AAN zijn. (m.a.w. de verstoring zorgt ervoor dat ergens een brandend ledje even héél snel uitgaat).

Op 15 maart 2022 17:26:49 schreef rew:
Als iets beweegt gaat je oog dat volgen. Doordat je oog gewend is om "analoge wereld" dingen te volgen, gebeurt dat gewoon analoog.

Maar hoewel de text dus soepel beweegt, staan dan de letters zo nu en dan links en zo nu en dan rechts van hun "gemiddelde" positie die je oog aan het volgen is. Je gaat dan een soort van bibber zien.

Hier is niet veel aan te doen: Het zit hem in JOU waarneming, niet in wat het display werkelijk doet.

Wat een beetje helpt is dat als je nu 10 pixels per seconde scrollt, dat je 100x per seconde een een refresh doet en dan de intensiteit van de leds aanpast. Dus een led die van uit naar aan gaat, die moet dan in 10 stapjes van uit naar aangaan. Dit maakt het beeld iets softer voor je ogen.

Jawel. maar dan kom ik weer op de busbaan, de tram. Daar neem ik dat effect niet waar. Dus ik denk steeds: Hoe doen ze dat toch? Dat wil ik ook.
Met een MAX7219 kun je alleen alle 64 leds tegelijk dimmen. Dus niet individueel.

Als je een ledje gewoon "aan" hebt en je ziet hem zo nu en dan even uitgaan dan heb je "bitfouten" in je datatransmissie of zoiets. Dan komen er gewoon zo nu en dan een bitje niet aan. Of je powersupply is niet clean genoeg.

Op 15 maart 2022 17:14:01 schreef Arco:

Heb je al eens geprobeerd: tekst laden, 40mS wachten, alle leds uit, nieuwe tekst laden, 40mS wachten, alle leds uit, enz...

Dat helpt niet, hetzelfde effect.

Als je een ledje gewoon "aan" hebt en je ziet hem zo nu en dan even uitgaan dan heb je "bitfouten" in je datatransmissie of zoiets.

Leds gaan ook uit als er geen datatransmissie is (statische tekst), dus daar ligt het niet aan...

Enige wat ik me voor kan stellen is dat de ontkoppelc van 100n ontbreekt, of dat de Gnd verbinding te 'mager' is...
Zijn de problemen er ook bij een stabiele voeding zoals een batterij?

[Bericht gewijzigd door Arco op (20%)]

Op 15 maart 2022 17:35:31 schreef rew:
Als je een ledje gewoon "aan" hebt en je ziet hem zo nu en dan even uitgaan dan heb je "bitfouten" in je datatransmissie of zoiets. Dan komen er gewoon zo nu en dan een bitje niet aan. Of je powersupply is niet clean genoeg.

Bij mijn proef schrijf ik eenmaal data en daarna niet meer. Dus geen datatransport meer.
De voeding heb ik al uitgetest met een batterij, daar zit geen ruis op.
Het moet haast iets zijn in de MAX7219 met zijn eigen interne oscillator en multiplexing.

Zijn het 'echte' MAX'en, of een 'China copy'?...

Ik heb nog even een filmpje gemaakt. Voeding batterij.
Alle Leds aan. Je ziet een onrustig beeld. Maar dat kan natuurlijk ook te maken hebben met de camera.

Op 15 maart 2022 17:46:31 schreef Arco:
Zijn het 'echte' MAX'en, of een 'China copy'?...

Tante Alie

Wat is nu een goede methode om iets dergelijks te maken met schuifregister 74HC595?

Die heb ik hier (geen Chinees spul).

Per matrix een 74HC595 voor de kolommen en de rijen van alle matrixen aansturen met een Johnson Counter? En dan 1 voor 1, tot je alle 32 kolommen hebt gehad?

Het kan allemaal, maar ik zou liever een 16x16 matrix maken en die direct aansturen.
(heb het niet zo op het 'misbruiken' van schuifregisters op die manier... ;) )

In de meeste topics die je ziet over de MAX7219 wordt dit soort problemen veroorzaakt door geen of onvoldoende/verkeerde ontkoppeling.
(meesten raden 100nF met 10uF parallel aan zo dicht mogelijk bij het ic.)

Hoe moet ik dat zien, 16 * 16? Ik heb nu 4 matrixen naast elkaar, met ieder 8 rijen, dus in totaal 32 kolommen.
En direct aansturen? Dat kost dan wel een boel poorten...