Yksinkertainen opastindekooderi

Keskustelua radan ja rakennusten sähköistämisestä. Digitaali / analogi järjestelmistä, vaihdemoottoreista ym.

Valvojat: jhr, Hermanni

Vastaa Viestiin
kari-g
Lämmittäjä
Viestit: 133
Liittynyt: 21.05.2007 22:38

Yksinkertainen opastindekooderi

Viesti Kirjoittaja kari-g » 08.08.2019 20:21

Viime syksynä löysin netistä simppelin opastindekooderin rakenteluohjeen. Hra Gorden Griem oli rustaillut dekooderia noin v. 2001 aikoihin.
Kun keväällä katsoin nettiosoitetta uudestaan, niin se oli häipynyt. PSi:n ystävällisellä opastuksella ko saitti löytyi täältä:
https://web.archive.org/web/20180830160 ... gital.html
Kytkentäkaavio on täällä:
https://web.archive.org/web/20160527172 ... signal.jpg
Dekooderin assemblerohjelma olikin sitten hieman vanhaa tavaraa. Vuosien kuluessa Microchip on päivittänyt/modernisoitut softatyökaluja. Lisäksi koodissa oli mielestäni ainakin pari bugia, jotka korjasin. Esim. dekon tuli tallettaa viimeksi asetettu tila
EEPROM-muistiin, jotta deko palaisi ko tilaan kun sähköt kytketään. Aluksi ei toiminut, nyt toimii.

Piirilevylle (4,5 x 2,5 cm) kasattuna dekooderi näyttää tämmöiseltä. DCC tuodaan nastoihin W01 ja U01. Ledit kopalataan nastoihin P17, O17 (-) ja X17 (+).

Kuva

Koska kyseessä on todella yksinkertainen dekosofta, niin osoite tallennetaan lähdekoodiin, mikä sinänsä ei haittaa kun ohjelmointi vie n. 5 sekuntia.

Huomautettakoon kiinnostuneille, että PIC12F629 voidaan ohjelmoida uudestaan satoja kertoja (luulisin). Jos vielä jotakin kiinnostaa, niin voin laittaa lähdekoodin nettiin, jahka saan linkin täältä veturitallista toimimaan.

Komponenttien hinnoista sen verran, että Reichelt.de:ltä ostettuna PIC12F629 maksaa 0,72 €, tasurisilta B40D 0,21 €, 78L05 0,29 €. Elko ehkä noin 0,10€. Vastukset jotakin...

//kari g

Lisäys 11.8.2019:
Dekooderi on kasattu "Perf+ 2" -piirilevylle. On kätsy kun ei tarvita hyppylankoja. Ko. levyjä saanee (?) yhä
vielä täältä. Tilasin näitä 5 kpl muutama vuosi sitten:
https://www.crowdsupply.com/ben-wang/perf-2
--
Viimeksi muokannut kari-g, 11.08.2019 23:52. Yhteensä muokattu 3 kertaa.

ealab
Veturinkuljettaja
Viestit: 1146
Liittynyt: 21.09.2007 09:49

Re: Yksinkertainen opastindekooderi

Viesti Kirjoittaja ealab » 09.08.2019 09:38

Vaan taitaako sopia suomalaiseen esiopastimeen, 4-valoiseen ? Kytkentäkaaviossa jotain, C1 pitäisi ehkä olla lyytti, kuten piirroksessakin, kapasiteettia vaan vähän enemmän. Tuo 0,1µF sitten regun jälkeen, ainakin 3-jalkaisissa. Tämmöttis pähkäilty.

kari-g
Lämmittäjä
Viestit: 133
Liittynyt: 21.05.2007 22:38

Re: Yksinkertainen opastindekooderi

Viesti Kirjoittaja kari-g » 09.08.2019 12:05

Joo, tämä toinen "Ausfahrtsignaldekoder" on jo useampilamppuinen.
https://web.archive.org/web/20160527185 ... signal.jpg

En ole tätä versiota testaillut/tutkinut, mutta toiminnee samoilla periaatteilla kuin tämä eka versio.

Kytkentää olen sen verran modannut, että elko on 10 uF ja regulaattorin jälkeen on vielä 33 nF keraaminen.

Vielä sen verran, että tämä käyttämäni kytkentä on siis kolmelle ledille: perusosoite: punainen tai vihreä
perusosoite+1: vihreä+keltainen

Modaamani/suomentamani/englanninkielisillä kommenteilla täydentämäni assemblerkoodi löytyy täältä:
http://junafriikki.ddns.net/opastindeko ... indeko.txt
HUOM: DCC-osoiteasetus löytyy aivan koodin lopusta.

//kari g

PS.
Ohjelmointiin käytän jo vanhentunutta (?) Velleman VM203 ohjelmointikorttia. Löytyy esim Radioduo.fi :stä. Muitakin prommereita maailmalta löytyy, mutta tämä ihan Suomesta.
Polttosofta on PICkit 2 v2.61. Ei löydy enää Microchipiltä, mutta löytyy muualta netistä.
Assemblerkääntäjänä olen käyttänyt MPLAB IDE v8.83 -softaa. Löytyy Microchipiltä. Lataamista varten täytyy rekisteröityä. Uusin (viimeisin)
simppeli (=helppohäyttöinen) IDE on v8.92, mutta tämä aikaisempikin pelaa ok.

DCC-osoitteen vaihto tapahtuu siten, että lähdekoodiin (muuta opastindeko.txt ensin muotoon opastindeko.asm) muutetaan osoite miksi haluaa. Sitten käännös (absolute) assemblerkääntäjällä (kestää noin 3-4 sek). Kääntäjän tuottama .hex -tiedosto ladataan prommaussoftaan ja sitten tallennetaan koodi prossun flash-muistiin (noin 3-4 sek).
Valmista!

Vastaa Viestiin