ik ben op zoek voor de modelbaan om 1000 led`s via paar draden te ransporteren naar andere ruimte en de zelfde 1000
daar weer telaten branden.
korte uitleg.
de modelbaan heeft bedienings panelen die terug melding met led`s geeft stand van sijnen en wissels die wil ik via een input poort is transporterren naar de ander ruimte waar de zelde pannel met led`s kompt te staan daar uitput poorts monteer.
ik heb het volgende op het internet gevonden :
http://www.ucapps.de/midibox/midibox64_sr.pdf
dan moeten ic 1 op 1 werken
input ic1 poort 1 : 1 word dan moet uitput ic1 poort 1 : ook 1 worden.
( http://80.126.92.191:81/teinenclub/foto/nieuwe%20baan%20map5/pages/fot… )
( http://80.126.92.191:81/teinenclub/foto/foto.htm )
ik heb vroeger wel iets over i2c gehad voor monteur consumentenelectronica maar dit wort mijn tog iets te ingewikkkeld hoedat over i2c loopt.
wie kan mij helpen
mvg marc
http://www.treinenclub.tk
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
in ieder geval je topic titel aanpassen.
74hc595 en 74hc165 werken op SPI en niet op I2C.
Voor 1000 leds heb je al 100/8 = 125 schuifregisters(serieel naar parallel) nodig van type 74hc595. Om de 1000 ingangen te lezen heb je 1000/8 = 125 schuifregisters(parallel naar serieel) nodig van type 74hc165.
Software is in dit geval niet moeilijk.
* eenmaal latch om ingangen vast te zetten.
* 1000 klok signalen geven
* eenmaal latch om uitgangen te activeren
Hardware is ook niet moeilijk enkel erg groot.
Wel effe de hardware signalen goed doorlussen.
Clocksignalen kunnen allemaal parallel(gebufferd)
Latchsignalen kunnen allemaal parallel(gebufferd)
het door lussen van de ic is het probleem niet dat staat afgebeeld.
kan ik van 125 x 8 poorts 74hc595 naar 1 x paralel
dan andere 125 x 8 poorts 74hc165 naar 1x paralel
of 125 x 8 74hc595 + 125 x 8 74x165 naar 1 x paralel ?
en de rclk en sclk kunnen die rechstreeks naar paralel?
software is dat geschikt voor msdos ???
heb je antworden en voorbeelden voor mij?????
mvg marc
ps de topic krijg ik niet veranderd
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
Op 19 april 2005 11:15:48 schreef free_electron:
en sedert wanneer hebben een 595 en 165 een SPI interface ?
dat zijn gewoon domme shiftregisters.
helemaal gelijk, my bad.
maar je kan hem wel met dezelfde lijnen aansturen.
CS misbruiken als latch. Is niet elegant maar werkt goed.
je gaat van 1000x parallel naar 1x serieel (595)
en dan van 1x serieel naar 1000x parallel (165)
Software kan op:
* MSDOS BASIC variant(geen ervaring)
* Windows parallele poort of seriele poort(heb enkel ervaring met seriele poort onder Visual basic 6.0)
* microprocessor (enkel ervaring met PIC)
Laatste is een standalone chipie(met stukie software erin) die de clock en latch aanstuurt. Kost maar een paar euri.
Eenmalig Pc nodig om programma in IC te proppen.
Rik_J
Problems do not concern me. I want solutions, not excuses!
Het minste draden geeft een matrix oplossing. Niet serieel dus maar een matrix van 100 bij 100. Deze methode heeft verreweg de minste ic's nodig met de minste bedrading.
De methode met de schuifregisters kost alleen al 1000/8=125 ic's! (mits het schuifregister 8 bits breed is)
Gtz,
Rik
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
matrix oplossing:
Voor de minste aansluitingen neem je wortel(1000) = 31,623... matrix van 32 bij 32.
matrix zitten led`s in .(32 bij 32)
de moeten weer losse led`s aan gestuurd worden
zie panneel
http://80.126.92.191:81/teinenclub/foto/nieuwe%20baan%20map5/pages/fot…
zon panneel moet het zelde led`s brande in de andere ruimte.
ik had iets gevonden .
http://www.semiconductors.philips.com/acrobat_download/applicationnote… blz 22
gaat via i2c dan moet het alleen nog 1 op 1 werken.
Rik_J
Problems do not concern me. I want solutions, not excuses!
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
Schema met 4021 en 4094:
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
Op 19 april 2005 11:35:06 schreef Willie Worteltje:
[...]
maar je kan hem wel met dezelfde lijnen aansturen.
CS misbruiken als latch. Is niet elegant maar werkt goed.
das dan toch nog geen SPI hoor. Hoe verwerk je adressing en SPI commando's ?
je hebt een clock en datalijn. maar niet de controlestructuren van SPI.
enfin dat doet er hier niet toe. we begrijpen waarover het gaat. het sequentieel versturen van digitale niveau's.( met andere woorden serialiseren en deseriealiseren. )
voor de leds te laten branden kan je inderdaad mtrix gebruiken maar dan zal je wat meer logica nodig hebben.
in matrix scannen wordt moeilijk.(inlezen welke leds aan staan) je leds in je origineel circuit zullen al in matrix moeten stan of anders volledig gelvansich gescheiden zijn.
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
heb zelf al 12x 74hc595 in serie geschakeld.
Dus heb wel een stukje code liggen voor een microcontroller.
Op 19 april 2005 15:55:37 schreef Willie Worteltje:
Schema met 4021 en 4094:
[afbeelding]
kan dit op de i2c van
http://www.semiconductors.philips.com/acrobat_download/appli.../AN036.… blz 22
op rechstreeks op 74hc595 en 74hc165????
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
op i2c kun je dit al helemaal vergeten. een i2c slave controller in hardware is ongeveer 1000 gates. dit maken met TTL ictjes zal ongeveer een compleet 19 inch rack zijn.
je zou wel i2c kunen gebruiken maar dan met i2c chips. niet met een dom schuifregister.
alen vrees ik dat je geen adressen genoeg hebt om al die io te doen. je zult meerder bussen moetne gebruiken. en dan nog een microcontrolelr die ze allemaal kan sturen en de data van de ene chip lezen en terugschrijven in de andere. het kan gedaan worden maar tis gekkenwrk. de $$$ zal vrij hoog worden en wie gaat d esoftwar ein de controller schrijven. ( ding zal behoorlijk rap moeten zijn om 'live' data te moven van 1000 leds.
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
Ik zou deze ingangsmodule's gebruiken
http://www.ucapps.de/mbhp_din.html
en deze uitgangsmodules
http://www.ucapps.de/mbhp_dout.html
Ik zou ook I2C vergeten.
Met deze modules moet het lukken.
* clock van beide modules samen nemen.
* De dataout van ingangsmodules op de datain van de uitgangsmodules
* op de latch van de ingangsmodules een puls geven
* 32 x een kloksignaal(afhankelijk van het aantal modules)
* op de latch van de uitgangsmodules een puls geven
en dat dit eindeloos herhalen.
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 19 april 2005 11:15:48 schreef free_electron:
en sedert wanneer hebben een 595 en 165 een SPI interface ?
Sinds de definitie van SPI (dat was volgens mij toen die chips al bestonden, anders: 'sinds die chips bestaan').
Het staat misschien niet zo in de datasheet (logisch, want die chips zijn ouder dan de kreet 'SPI') maar het is gewoon hetzelfde (of beter: een van de varianten van SPI (er zijn er 4 geloof ik) is precies compatible met deze shift registers.
Overigens voor de OP: vergeet de 595, neem een 4094. Google 'clock skew' om te weten waarom.
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
Op 19 april 2005 16:30:52 schreef free_electron:
Hoe verwerk je adressing en SPI commando's ?
niet, want die bestaan niet.
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
Op 21 april 2005 09:48:16 schreef Wouter van Ooijen:
[...]niet, want die bestaan niet.
nu begrijp ik er niks meer van.
SPI is een protocol ontwikkeld door motorola wat verderbouwt op Microwire van National Semiconductor. Een device op SPI heeft een aantal interne subadressen. Je selecteert het device via zijn CS pin. dan klok je eerst een subaddress + commando in . Bijvoorbeeld een eeprom van type 25c128 (spi) of 93c46 (microwire)) het commando geeft bijvoorbeeld aan of je wilt lezen wissen schrijven etc, en het subaddress geeft aan over welke cel in de chip het gaat. Command's zijn device specifiek. Daarnaa volgt de data op de bus. Er zijn verschillende chips op SPi. A/D D/a eeproms. zelfs audio chips. Wij gebruiken SPI om er de PCM audio van SLIC's + controle commando's mee te transporteren op ons VOIP platform. Een codec digitaliseert spraak als een PCM stream en maakt er 16 bit pakketjes van. dit wordt op 8 kilohertz uitgelezen. tezelfdertijd wordt in het commando een statuswoord meegegeven die aangeeft of de SLIC een beltoon, bezettoon of andere 'housekeeping' moet opwekken.
Dus ik snap nog altijd niet waarom een dom schuifregister SPI doet. volgens mij is wat hier 'SPI' genoemd wordt niet wat Motorola/Nat. Semi daarmee hebben gedefinieerd. Ik gebruik de SPI engine op de Cygnal processoren. Ik zou eens moeten zien maar ik denk niet dat ik daar die schuifregisters kan aanhangen. Ofwel gaan jullie bovenop SPI nog een layer toevoegen en zo een shuifregister protocol gaan definieren. dat kan.
[Bericht gewijzigd door free_electron op ]
Wouter van Ooijen
Wouter van Ooijen: VOTI webwinkel, docent HvU (Technische Informatica); C++ on mictrocontrollers blog
> Een device op SPI heeft een aantal interne subadressen.
kan
> Je selecteert het device via zijn CS pin.
klopt
> dan klok je eerst een subaddress + commando in .
als het device subadressen heeft. ander klok je gewoon data in (of uit)
> Command's zijn device specifiek.
sterker, het hebben van een command end/of adres structuur is device specifiek
> volgens mij is wat hier 'SPI' genoemd wordt niet wat Motorola/Nat. Semi daarmee hebben gedefinieerd.
volgens mij is het SPI als je het voldoet aan de SPI interface. In de docs die ik heb gelezen (oude motorola chips) staat vanalles over CS, clok, data, edges, polariteit etc, maar niets over commands en addresses. Niet dat dat uitgesloten wordt, maar het is gewoon specifiek voor een bepaalde chip.
> Ik gebruik de SPI engine op de Cygnal processoren. Ik zou eens moeten zien maar ik denk niet dat ik daar die schuifregisters kan aanhangen.
Als dat niet kan dan is die engine veel beperkter dan die in de oude Motorola chips.
Overigens: kent iemand een SPI definitie document, dus niet een hoofdstuk in een datasheet van een bepaalde chip, maar een los document?
free_electron
Silicon Member
Professioneel ElectronenTemmer - siliconvalleygarage.com - De voltooid verleden tijd van 'halfgeleider' is 'zand' ... US 8,032,693 / US 7,714,746 / US 7,355,303 / US 7,098,557 / US 6,762,632 / EP 1804159 - Real programmers write Hex into ROM
inderdaad. ik kan de cygnal in domme schuifregister mode switchen. maar ik kan ook commando/subaddress lengtes opgeven etc. kwestie van commando en address register te laden en data te sturen. de SPi engine stelt dan zelf het pakket samen en babbelt met de spi slave.
Ditto kan met het IP-Block wat wij gebruiken in de asic's.
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
Op 21 april 2005 06:38:37 schreef Willie Worteltje:
Ik zou deze ingangsmodule's gebruiken
http://www.ucapps.de/mbhp_din.htmlen deze uitgangsmodules
http://www.ucapps.de/mbhp_dout.htmlIk zou ook I2C vergeten.
Met deze modules moet het lukken.
* clock van beide modules samen nemen.
* De dataout van ingangsmodules op de datain van de uitgangsmodules
* op de latch van de ingangsmodules een puls geven
* 32 x een kloksignaal(afhankelijk van het aantal modules)
* op de latch van de uitgangsmodules een puls gevenen dat dit eindeloos herhalen.
dat ziet er goed uit wat ik zoek.
wat ik heb begrepen kompt er nog iets van ic (e prom)bij
(This picture shows how to connect a DINX4 module to the core module (DINX4:J1 -> CORE:J9))
???????
daar in software zetten ????????.
die moduls aan elkaarzetten en in elkaar zetten is het probleem niet.
alleen hier boven bescheven hoe dat aangesloten moet worden en geprogrameerd word is mij nog effe een radsel.
wat ik zo kan vinden (midibox64e)heb ik 1x mbhp_core en 1x mbhp_ltc
noding. en met mbhp_dinx4 32ingangen en mbhp_doutx4 32uitgangen uitberijden.
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
Die core gaat uit van een PIC18F452 processor. Dit is in jou geval nogal wat overkill. Een kleinere 16F628 voldoet al ruimschoots. Maar als je de 16F628(a) neemt kan ik wel een stukje software schrijven. Heb de code zowat liggen omdat ik het al eens heb toegepast. Je hebt maar 4 uitgangen nodig + misschien een 5-de waar je een controle led op aansluit.
wat is maximale aantal mbhp_din en mbph_dout ???
begin met 1000 leds > 32x mbhp_dinx4 32x mbph_doutx4