Sterrenhemel

Dit topic is gesloten

Arco

Special Member

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Als je alleen output doet op de SPI bus en niet ontvangt, is timing wat minder belangrijk.
Bij lange kabels en capacitieve belasting en ook ontvangst gaat de clock al gauw uit de pas lopen met de data-in... (dodelijk voor een synchroon signaal)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Eigenlijk is SPI niet voor zulke lange afstanden bedoeld, maar als je de bitrate laag houdt zal het best werken.

Maar kan ik bij SPI de Bitrate instellen? (ik dacht dat alleen bij I2C-Init je de klok kon instellen)...

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Je kunt bij init toch /4, /16, /64 instellen?

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Deze heb ik nog nooit gebruikt...Ik koos altijd voor SPI_Init(). ;(

De gemiddelde verversingstijd, dwz dat er een write-opdracht naar de matrixen gaat, is 5 seconden. Andere functies zijn 40 seconden...

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Maar goed, ik kan natuurlijk een print maken, waarbij de lijnen zéker kort zijn.

Maar tja..een print maken met een PIC, een tijdmodule en 8 MAX7219 IC's, betekent wel ca 125 draadjes solderen... ;(
Ik ging dan uit van een epoxy-gaatjesprint.

Uit oudere publicaties las ik dat je wel printjes kunt laten maken. Maar of het voor zo'n individueel geval loont, weet ik niet.

Zijn daar low-profile bedrijfjes voor die dat doen? (Moet ik wel een ontwerp aanleveren lijkt me..)

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Ik gebruik meestal advanced, want dan kun je behalve de snelheid ook de mode instellen.
De gewone init start in mode 0, en daar kan niet iedere slave mee overweg (je hebt modes 0, 1, 2, en 3)

Print is ook niet duur: JLCPCB bijv. maakt 5 dubbelzijdige printjes van 10x10cm voor 2 dollar...
https://support.jlcpcb.com/article/107-pcb-smt-assembly-from-2?_ga=2.1…

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Op 21 januari 2021 16:52:39 schreef Arco:
Ik gebruik meestal advanced, want dan kun je behalve de snelheid ook de mode instellen.
De gewone init start in mode 0, en daar kan niet iedere slave mee overweg (je hebt modes 0, 1, 2, en 3)

Print is ook niet duur: JLCPCB bijv. maakt 5 dubbelzijdige printjes van 10x10cm voor 2 dollar...

Jeetje..ik dacht dat gaat wel 100 Euro kosten...

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Dan zal ik wel een ontwerpje moeten aanleveren.

Ik las her en der over Eagle. Is dat een makkelijk bruikbare toepassing voor het ontwerpen van een printje ahv een schema?

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Tja,

Je kunt voor 40 dollarcent per printje niet verwachten dat ze nog een schema en print voor je ontwerpen ook... ;)
Eagle, Designspark, en Diptrace hebben 'free versions'. (ik vind persoonlijk Diptrace heel prettig en intuitief werken.)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Je kunt voor 40 dollarcent per printje niet verwachten dat ze nog een schema en print voor je ontwerpen ook... ;)

Nee, dat had ik ook niet verwacht. Maar ik heb geen ervaring met printjes (laten) maken.
Op zich is het geen schokkend schema.

(ik vind persoonlijk Diptrace heel prettig en intuitief werken.)

Dat is dus de tip die ik ter harte neem!

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Ondertussen is er ook ander "speelgoed" binnengekomen:
De PIC16F18875, qua naam bijna gelijk aan de 18857).

Deze heeft een 40-pins DIL en beduidend meer I/O poorten.
Maar daar is ook alles mee gezegd: hij legt het zo te zien op vrijwel alle fronten af tegen de 18857 (RAM,ROM, etc).
De MSSP lijkt heel veel op de 57, ook met PPS.

Ik zal er wel eens mee spelen; ik heb nu een paar mooie testprogrammaatjes.
Maar eerst de sterrenhemel afmaken... ;)

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Ik zag een oude post (nou ja, oud... :) )

Ik heb een tijdje met Diptrace gestoeid, en daarin gaat het aanmaken van schemasymbolen en componenten echt heel simpel.
Verder werkt alles ook prima, op het tekenen van schema's na. Dat gaat trager, en er zitten heel veel ergernissen in die simpel op te lossen zijn...

Ik ben weer teruggegaan naar mijn 20 jaar oude Ultiboard versie, omdat die:
- Intuitiever werkt.
- Meer kan qua schematekenen.
- Veel sneller werkt.
- De simpelste zaken werken bij Diptrace niet/slecht/traag.

Ik heb al tientallen zaken aangedragen bij Diptrace, maar het enige wat je krijgt is "we zullen erover nadenken..."
Toch zonde. 't Is een mooi programma, maar je zou toch in 20 jaar tijd wat meer progressie verwachten (en geen depressie... :) )

Is dat nog steeds zo? Moet / kan ik deze versie beter nemen?

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Er zijn inderdaad diverse zaken aangepakt in de laatste release. 't Werkt verder ook goed en intuitief zoals gezegd.
Ik heb het ook aangeschaft en gebruik het regelmatig. (vaak ook nog Ultiboard omdat ik dat gewend ben en ook goed en snel werkt)

Designspark heb ik ook geprobeerd, maar daar kon ik niet echt blij van worden... ;)
(was wel wat jaren terug, maar toen ontbrak er nog van alles aan, zoals bussen in de schema's)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Ziet er wel héél mooi uit... :)

Ik heb al gezien dat er al video's zijn met tutorials over DipTrace. Met een .PDF tutorial van hen zelf.

Daar moet ik maar eens een keer voor gaan zitten.
Ik ben nog aan het nadenken voor welke variant ik ga m.b.t. de montage.

Daarnaast: ik ben nog wat aan het onderzoeken rond de MAX7219.
Wanneer je nl dezelfde informatie schrijft, waardoor er in principe niets zou moeten veranderen op de aangesloten Matrix LEds, zie je tóch een sooort van kleine 'flikkering'.

Ik denk dat als je het vertraagd zou zien, er heel eventjes Leds uit gaan en weer snel aan. Dat zijn niet altijd dezelfde. Het gevolg is dat je niet echt een rustig beeld hebt. Zeker niet omdat er 8 van die Max-en verbonden zijn met 512 ledjes. Dan is er altijd wel ergens eentje 'onrustig'.

ALs ik de tijd toon (uren en minuten) dan schrijf ik pas als er iets verandert (minuten dus). Dan blijft hij rustig.
Schrijf ik continue, dus gedurende 1 minuut dezelfde data, dan zie je het euvel weer verschijnen.

Is dit wellicht een bekend verschijnsel?

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Tja,

Dat is meestal met displays. Als je er continu naartoe schrijft zonder enige pauze, dan kunnen er rare dingen gebeuren.
(omdat het display heel veel vaker gerefreshed moet worden)
Zelfde bij LCD displays: die moet je liefst ook niet onnodig refreshen... (dan krijg je ook een onleesbare brij...)

Wat betreft Diptrace: meeste 'flaws' nu zijn van cosmetische aard en zullen veel mensen niet eens opvallen of storen...
Bijv. pin designators kun je niet netjes verplaatsen, bij mijn nu 24 jaar oude Ultiboard kun je die neerzetten/roteren waar je wilt.

Diptrace maakt uit hoe en waar de designators geplaatst worden, In onderstaand voorbeeld de 'E' en 'C' vertikaal en door de cirkel heen, dat stoort me...
(zeker omdat een 24 jaar oud programma 't wel fatsoenlijk kan...)

Diptrace:

Ultiboard:

[Bericht gewijzigd door Arco op zaterdag 23 januari 2021 14:02:20 (47%)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

In onderstaand voorbeeld de 'E' en 'C' vertikaal en door de cirkel heen, dat stoort me...

Daar zou ik me idd ook aan storen... :>

Wat dat betreft heb ik ook een aantal dingen van je overgenomen om eea 'netjes' te houden in een programma. Los van de Engelse taal, de commentaren zoveel mogelijk uitgelijnd onder elkaar. Veel dingen met een hoofdletter laten beginnen

If .. Then...Else ipv if then else) etc.

Tja, het oog wil ook wat.. :)

Met die LED's ga ik zoveel mogelijk 'dummy' schrijfopdrachten opsporen.
Nu is het een sterrenhemel, waarbij een fonkelend sterretje (is zelfs een functie in het programma) niet erg zal opvallen. :)

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Engels als commentaartaal is handig, want dan kun je sourcecode ook bijv. op het Microchip (of ander buitenlands) forum plaatsen zonder eerst hoeven te vertalen.

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

In MikroBasic kan ik de routines 'inklappen' door het mintekentje bij de routine. Dat scheelt een heleboel scrollwerk als je maar met één routine aan het testen bent en de rest even niet interessant is.
Dat werkt prima.

Alleen houdt hij dat niet vast. Bij compileren - save en later weer openen klapt hij alles weer helemaal uit en moet ik overal weer op het mintekentje klikken.

Of is er een manier om deze layout te bewaren?

Fouten zijn het bewijs dat je het probeert..
Arco

Special Member

Net even geprobeerd (ik gebruik het zelf nooit), alles wordt netjes weer geopend zoals het was afgesloten, ook de 'ingeklapte' routines blijven ingeklapt.

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Bavelt

Golden Member

Op 24 januari 2021 12:48:31 schreef Arco:
Net even geprobeerd (ik gebruik het zelf nooit), alles wordt netjes weer geopend zoals het was afgesloten, ook de 'ingeklapte' routines blijven ingeklapt.

Hij doet het soms wel goed... Maar na wat compileren en 'spelen' is alles weer uitgeklapt. Ik zal eens goed in de gaten houden wanneer dat precies gebeurt.
Is op zich wel mee te leven. :)

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Ik worstel weer met een probleem..

Er gebeurt iets raars. :?
Wat is raar?

Ik heb de panelen met LEDS's nu klaar gesoldeerd. Ieder paneel heeft een MAX7219-moduultje (kant en klaar).

Als ik de panelen test, werken ze allemaal.
(via een programmaatje, Ledjes één voor een aan, en weer uit)

Maar... koppel ik twee panelen door, dwz de DOut van de ene naar naar de DIn van het volgende paneel, dan doet het tweede paneel het niet (of hij doet raar, zoals alle leds aan en ook blijven). Dat paneel reageert in ieder geval niet op het programma. Zelfs reset niet.

Hang ik ipv het tweede paneel er zo'n klein moduultje met een MAX7219 en LED Matrix er aan (kwestie van stekkertje omwisselen), dan doet die het vreemd genoeg wel.
:?

Ergo: Er is iet met de panelen.
Werken wel afzonderlijk, niet samen.

Ik loop me suf te testen en te proberen, maar het lukt me niet.

Wellicht toch een issue met lange draden? (valt overigens nu nog mee, 1 meter van de uC naar de printjes met Max).

Of zie ik iets over het hoofd? Nog een tip om iets proberen?

Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Ondertussen heb ik wat lopen 'spelen' met SPI2_Init_Advanced i pv de 'gewone' Init.

Ik had begrepen dat het bij lange draden beter is om een lage bitrate te nemen.

Doe ik het dan zo goed?

pic basic code:


 SPI2_Init_Advanced(_SPI_MASTER_OSC_DIV64, _SPI_DATA_SAMPLE_MIDDLE, _SPI_CLK_IDLE_LOW, _SPI_LOW_2_HIGH)
Fouten zijn het bewijs dat je het probeert..
Bavelt

Golden Member

Tot mijn eigen schrik werkt het nu wel met deze SPI2_Init_Advanced... :)

Ik weet alleen niet of deze parameters

Data sampling interval

Input data sampled

SPI clock idle state:

Clock idle HIGH _SPI_CLK_IDLE_HIGH

Clock idle LOW _SPI_CLK_IDLE_LOW

Transmit edge

Juist zijn.

pic basic code:

SPI2_Init_Advanced(_SPI_MASTER_OSC_DIV64, _SPI_DATA_SAMPLE_MIDDLE, _SPI_CLK_IDLE_LOW, _SPI_LOW_2_HIGH)

Maar ook de bedrading heb ik nog even gecontroleerd. De aansluiting op de MAX-moduultjes gaat met dupont Pinheaders en female connector.
Dat luister ook best wel nauw heb ik gemerkt (dwz als ze niet helemaal goed zijn aangedrukt heb je al gauw verstoring).

Een paneel:

Fouten zijn het bewijs dat je het probeert..

Dit topic is gesloten