Herms
Golden Member
ik heb 16 signalen (0 of 'hoog') die ik via één draad serieel wil verzenden en dan weer omzetten naar 10 parallele uitgangen.
Op zich lukt het me wel om dit te ontwerpen met bijvoorbeeld 2x de 74HC165 voor omvormen naar serieel en 2x de 74HC595 voor omvormen naar parallel. De klokfrequentie hoeft voor mij niet hoog te zijn, de ingangssignalen veranderen relatief langzaam (1 signaalwisseling per seconde of zo). Waar ik niet uit kom is hoe ik het latch-signaal kan krijgen. Ik snap wel dat dat signaal 1/16 moet zijn van de klokfrequentie, en dat de puls langer moet duren dan een klokpuls. Maar hoe krijg ik dat in een werkende schakeling?
Ik heb me suf gezocht naar voorbeeldschema's, maar ik kon niks vinden.
Herms
Golden Member
nee, geen microprocessor. Ik wil het 'eenvoudig' houden.
[Bericht gewijzigd door Herms op (38%)]
nee, geen microprocessor. Ik wil het 'eenvoudig' houden.
Wat is eenvoudiger vraag ik me dan af, een "bak vol TTL" of 2 microcontrollers ?
Afhankelijk van de doelgroep is TTL wel makkelijker uit te leggen of te "beredeneren" dan een complexe microcontroller (die gewoon een black box blijft).
Maar dan zou ik dan verwachten voor een meer educatief doel
Op 9 maart 2020 22:42:16 schreef bprosman:
[...]
Wat is eenvoudiger vraag ik me dan af, een "bak vol TTL" of 2 microcontrollers ?
Das ook mijn idee 
Aan de afgaande kant ben je misschien geen controller nodig, hangt af van wat je er mee gaat doen.
Er zijn tellers die zelf een klok maken, misschien is dat wat?
Herms
Golden Member
2 x 74LS150/74LS154?
https://www.jameco.com/Jameco/Products/ProdDS/49509.pdf
[Bericht gewijzigd door Hubie op (64%)]
Op 9 maart 2020 22:14:35 schreef Herms Lunenborg:
Waar ik niet uit kom is hoe ik het latch-signaal kan krijgen. Ik snap wel dat dat signaal 1/16 moet zijn van de klokfrequentie, en dat de puls langer moet duren dan een klokpuls. Maar hoe krijg ik dat in een werkende schakeling?
Als je al een klok hebt kun je die met een deler delen door 32. Die uitgang laat je de latch bedienen. óf je gebruikt een set/reset flipflop. De startplus set 'm en de /32 uitgang reset 'm. Je kunt 'm dan ook resetten door een combinatie van de uitgangen van die deler te nemen om hem eerder dan na 16 clocks te resetten.
Ik weet niet waar die startpuls vandaan moet komen, is er iets van buitenaf dat een seintje geeft dat er data verzonden moet worden, of gaat het verzenden continue door?
Voor de ontvangstkant kun je iets dergelijks doen. Een startbit set een S/R-flipflop, klok laat deler tellen tot ie bij een waarde komt dat de S/R-flipflop weer reset. De lijn moet dan wel in rust zijn, dus ongelijk aan het niveau waarop je het startbit gaat definiëren.
"De microcontroller stopt 16 bits in een pulstreintje naar de andere controller"
Dit lijkt me toch heel eenvoudig voor welke doelgroep dan ook.
Herms
Golden Member
Nee, er is geen klokpuls beschikbaar. Het moet een schakeling die op zichzelf kan draaien. Eén draad voor de dataoverdracht en één draad voor de clock. En miszchien nog een voor de latch.
Je hebt toch een clock signaal /schakeling nodig , een paar nand poortjes als oscillator en buffer.
Dit deel je door 16 . nu heb je je latch .
Op de latch uitgang een puls verlenger.
.
Gaat allemaal met de 4000 of 7400 TTL chips.
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Je wilt dus een 1-wire achtig iets (alleen 1 datalijn en geen clock?)
Je zult toch zender en ontvanger op een of andere manier moeten synchroniseren. (met clock of start/stop bit...)
Volgens mij heeft Elektuur in de jaren '80 of '90 zo een schakeling beschreven in een Halfgeleidergids.
Als je pulsbreedte moduleerd hoef je geen clock mee te geven, als je dan ook nog een extra startpuls meegeeft om te starten/stoppen (latchen) ben je ook geen latch draad nodig.
Uit dat signaal zou je ook nog de voedingsspanning voor de ontvangst-chips kunnen halen.
Arco
Special Member
Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
EricP
mét CE
Nee, er is geen klokpuls beschikbaar. Het moet een schakeling die op zichzelf kan draaien. Eén draad voor de dataoverdracht en één draad voor de clock. En miszchien nog een voor de latch.
Het begon met 1 draad, en met de latch erbij heb je er al 4.
Nog een paar dagen wachten en je bent bij 11. Dan is het hele probleem opgelost.
Je zou wat met een 1-Wire I/O ding kunnen. Dan heb je nog maar 1 controller nodig 
Al met al heb je best wat foefjes nodig om het in TTL te doen. Een counter die van 0 tot 15 telt voor de clock ofzo en als bit 4 bijkomt latch voor de ontvanger en tevens latch voor de inputs. En daarna een reset voor de counter ofzo?
Ik zou het wel weten... 2 controllers. RS422/485 driver en brullen maar...
Volgens mij heeft Elektuur in de jaren '80 of '90 zo een schakeling beschreven in een Halfgeleidergids.
Als je iets van een titel hebt wil ik wel eens kijken.
Op 10 maart 2020 10:49:25 schreef bprosman:
[...]
Als je iets van een titel hebt wil ik wel eens kijken.
Van mucrocontrollers weet ik helemaal niks.
Zijn er volgens mij genoeg hier die je daarbij willen helpen.
Op 9 maart 2020 23:23:01 schreef Herms Lunenborg:
Van mucrocontrollers weet ik helemaal niks.
Kaartje van €5-10 op je computer aansluiten met USB kabel, gratis software installeren, wat voorbeelden proberen met een knipperend ledje. Al met al een uurtje werk.
Daarna testopstelling bouwen met de inputs en outputs en de 'datakabel' en hier op het forum even polsen wat de beste aanpak kan zijn, bijvoorbeeld I2C protocol gebruiken.
Ik denk dat je een test opstelling kan hebben draaien in enkele uren. Voordeel van de kant & klare arduino bordjes : Je hoeft niets te solderen.
Officiele arduino:
https://store.arduino.cc/arduino-micro (20 in/out, €18)
Kloon:
https://opencircuit.nl/Product/Arduino-pro-micro-5V-16MHz-clone (€8)
https://opencircuit.shop/Product/Arduino-Leonardo-clone (groter met pins)
edit: ik had 16pins in gedachte je hebt er maar 10 nodig blijkbaar:
https://www.martoparts.nl/Arduino_ATMEGA328_5V_16MHz_pro_mini (€5)
De meeste shift registers die ik ken in TTL of CMOS zijn max 8-Bit breed. Voor 10 bits moet je ze al in cascade gaan zetten met wat bijkomende logica.
