4 Bit naar 8 losse signalen

blackdog

Golden Member

Hi,

Het gaat de TS dus helemaal niet om de functie van het filmpje dat hij liet zien...

Het lijstje van de codes is dus zijn doel, mooi!
Daar is zover ik heb kunnen zien in mijn databoeken, geen logische bouwsteen voor.

Het lastige is dat, als alle vier de data ingang "0" zijn, alle 8 de uitgangen ook "0" moeten zijn, de bouwstenen die er zijn geven dan op de eerste data uitgang een "1"
Er komt te veel ander spul bij om het goed te regelen.

Het is al gezegt, maar een Arduino NANO lijkt mij dan een goedkope en snelle oplossing.

Groet,
Bram

You have your way. I have my way. As for the right way, the correct way, and the only way, it does not exist.

Op 20 december 2020 23:52:19 schreef blackdog:
Het lastige is dat, als alle vier de data ingang "0" zijn, alle 8 de uitgangen ook "0" moeten zijn, de bouwstenen die er zijn geven dan op de eerste data uitgang een "1"
E

Als jij het onderdeel kan vinden om dit te maken, waarschijnlijk met twee chips in cascade voor 4 bit input -> 16 output, dan kan ik dat omklussen naar wat de TS wil:

Als je alle inputs (logisch) inverteert, is 0 input ineens 15. Dan zou een naar-16 signalen decoder allemaal hoog geven. Inverteer alle outputs en voila! Dus dan moet je een 4->16 exemplaar maken, en dan het O9-O15 deel gebruiken. Of je moet gewoon roepen 0V is een logische 1. Zowel aan de input als aan de output kant. Geen inverters nodig! :-)

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Als het om het aansturen van LEDs gaat kun je gratis inverteren door de uitgang te laten sinken.

Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken
bprosman

Golden Member

De jongere generatie loopt veel te vaak zijn PIC achterna.

precies de juiste maat. :-) (close enough!)

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Arco

Special Member

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

Golden Member

Hi,

De 82S123 is volgens mij goed bruikbaar maar ik heb wel wat opmerkingen.
Hij heeft een nogal groot stroomverbruik en verder is er wel het een en ander nodig voor dat dit IC vol geduuwd is met de gewenste tabel.
Volgens mij heeft de TS geen Programmer in zijn toolkist en als je het met de "hand" wilt doen, zal je er ook nog aardig wat electronica omheen moeten bouwen voor een goed resultaat.

De datasheet van de 82S123 is een "beetje dom", het is Godgeklaagt dat daar niet in staat hoe je dit IC moet programmeren,
je moer naar een application note gaan zoeken om er infi over te vinden.
Zeker te veel aan een verkeerde cigaret gelurkt tijdens het schrijven van de data sheet. 8)7

En dan kom ik weer terug op de Arduino, gaat een stuk makkelijker denk ik als Arduino beginner.

Verder is deze serie proms niet meer normaal verkrijgbaar, zou dus iets moderners moeten worden.

Groet,
Bram

You have your way. I have my way. As for the right way, the correct way, and the only way, it does not exist.

Op 21 december 2020 12:27:15 schreef blackdog:
De 82S123 is volgens mij goed bruikbaar maar ik heb wel wat opmerkingen.

Er staat ook een clown-gezichtje bij de suggestie om aan te geven dat het niet serieus genomen moet worden.

Arduino code:

code:


void loop (void)
{
  int in; 
  in = PINA & 0xf;
  PORTB = (1 << in) -1; 
} 

Het wordt iets ingewikkelder als je niet de onderste 4 pins van PORTA voor de input kan gebruiken. Ik had eerst 2 regels minder omdat ik de PINA&0xf gewoon inline had geschreven. Maar zo is het makkelijker om de input bits te manipuleren als het niet de onderste vier bits van een port kunnen zijn.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Arco

Special Member

Heb ik ook al voorgesteld: EPROM

Waarom moet alles tegenwoordig toch met een arduino?
(onnodig grote print voor zoiets simpels. Je koopt toch ook geen hele auto als je alleen een accu nodig hebt?)

Losse controller als de PIC16F628A (of liever wat nieuwers) kan dat uitstekend...

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

Op 21 december 2020 12:42:42 schreef Arco:
Waarom moet alles tegenwoordig toch met een arduino?

Antwoord: omdat dat gewoon een heel simpele en 100% passende oplossing is. Je kunt het exact maken hoe je het wilt en volgend jaar eenvoudig aanpassen als je het bij nader inzien net ietsje anders wilt. En groot? De Nano is van formaatje DIL EPROM.

"We cannot solve our problems with the same thinking we used when we created them" - Albert Einstein
blackdog

Golden Member

Hi Arco,

Ik denk dat jij het niet goed ziet...
Van mij moet het niet met een Arduino!

Kijk naar je PIC16F628A, ik heb die liggen en ik heb een programmer er voor en wat ervaring om een HEX file er in te dumpen, maar heeft de TS dat ook?

De Arduino manier is voor de TS een stuk makkelijker te regelen dan met een PIC voor een beginner.
En dat dit nog, "onnodig grote print"... de Arduino NANO is iets groter dan de 82S123 Prom...
En dan hebben we ook nog, de nog kleinere Arduino printjes, maar daar zit niet de USB serieel converter op, dus weer lastiger voor de TS.

Dat is de afweging die ik maakte om het met een Arduino te gaa ndoen.

Groet,
Bram

You have your way. I have my way. As for the right way, the correct way, and the only way, it does not exist.

Oplossing met CD4051 zie bijlage ( Shoot zoals Blackdog zou zeggen )

Guus@Sint-Michielsgestel
Arco

Special Member

Ik zie niet in hoe je met een 4051 alle leds tegelijk aan kunt krijgen?... ;)

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

Hoi Arco,
De stroom loopt door alle 8 leds indien de selectie op de bovenste schakel stand staat.
Als de enable laag is dan is alles uit.
Dit geeft 8 schakelstanden plus enable is 9.

Guus@Sint-Michielsgestel
Arco

Special Member

Ah,

Dat kan werken. Alleen is het niet erg handig dat je -12 volt nodig hebt...

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

Golden Member

Hi Heer Waters,

Leuke intelligente oplossing, voldoet niet aan de TS zijn waarheids tabel...

Als eerste zijn er maar drie data ingangen beschikbaar en ten tweede moag er niets "aan staan" als alle data ingangen "0" zijn.
Bij jouw oplossing is bij 3x een "0" aan de data ingangen volgens mij uitgang "0" aan.

De TS moet dan wel de dubbele voeding ter beschikking hebben, maar hij blijft leuk! ;)

Groet,
Bram

You have your way. I have my way. As for the right way, the correct way, and the only way, it does not exist.

Hoi Arco,

Het enige voordeel dat ik in deze schakeling zie is:
je hoeft geen programmer te gebruiken, en dat heb je voor een Arduino, PIC , EEprom, GAL etc wel nodig.
Ik begreep dat dat de essentie van de vraag van TS was.
Dus als je kunt solderen kun je dit maken.

Guus@Sint-Michielsgestel
benleentje

Golden Member

Als de bovenste aan staat en die er net onder staat op uit wilt dat niet zeggen echt uit maar hij is de boel naar 0v aan het trekken of sinken zoals dat ook wel word genoemd.

Maar door in elke uitgang een diode op te nemen kan er niet meer naar 0V getrokken worden en zou het moeten werken, prima oplossing. In de bovenste lijn hoeft dan geen diode (mag wel).

(onnodig grote print voor zoiets simpels. Je koopt toch ook geen hele auto als je alleen een accu nodig hebt?)

Dat is omdat een auto minimaal 100x duurder is dan de accu. Maar als een nieuwe auto 1,2x duurder zou zijn dan de 12V accu dan zou ik wel degelijk steeds een nieuwe auto kopen. :).

Maar goed ik ben van mening dat de schakeling van waters met 7 extra diodes moet werken. En zo niet hoor ik dat graag.

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

Hoi Benleentje,

Dit zijn analoge schakelaars, gemaakt om te selecteren, niet om zomaar te lekken of iets ergers.
Blackdog, om aan de waarheids tabel te voldoen moet er misschien wat gemasseerd worden aan de inputs , zoals gezegd de enable wordt gebruikt voor alle LED's uit.

Guus@Sint-Michielsgestel
Lambiek

Special Member

De TS is allang weg en MGP had al een code geplaatst voor een 16F628A, die hoeft de TS er alleen maar in te schieten. :)

Als je haar maar goed zit, GROETEN LAMBIEK.
benleentje

Golden Member

Dit zijn analoge schakelaars, gemaakt om te selecteren, niet om zomaar te lekken of iets ergers.

Ja ik zie het nu in de datasheet.

om aan de waarheids tabel te voldoen moet er misschien wat gemasseerd worden aan de inputs

Ja dat klopt heb daar een schema van gemaakt.

De TS is allang weg

Lijkt er wel op zou wel leuk zijn als TS nog even zou willen melden of het al gelukt is.

[Bericht gewijzigd door benleentje op maandag 21 december 2020 15:14:07 (17%)

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

Hey allen, wat een hoop reacties, had niet zo n grote discussie verwacht op mijn vraag. Mijn plan is om ze vanavond nog allemaal uitgebreid terug te lezen. Ben momenteel 'op' kantoor.

Zoals misschien duidelijk was in mijn vraag ben ik nog wel een beginner met elektronica. en zie ik een hoop termen voorbij komen die voor mij nieuw zijn.

Een ardiuno of dergelijk zo inderdaad makkelijk kunnen werken. Maar het lijkt mij mooier om het gewoon met een paar enkele logische chips te doen, omdat je dan geen overbodige complexiteit componenten mee neemt. Die relatief (als je het zou opschalen) extra kosten zouden geven.

Maar de oplossing met de 74HCT138 en de diodes vindt ik wel een mooie oplossing. Ook de andere simpelere controllers als bijv. een EEprom klinken goed maar daar zou ik me eerst wat mee in moeten verdiepen. En waarschijnlijk dingen bestellen.

Bedankt voor jullie reacties!

Hoi Benleentje,

IK heb er de data sheet bij gepakt, dit is GEEN digitale uitgang met 400uA source:
Data sheet
High OFF Resistance, Channel Leakage of
±100 pA (Typical)

Dus GEEN diodes extra.

Als het een PIC16F628 o.i.d wordt , dan kun je met 3V ( 2 cellen ) werken en witte leds, dan heb je geen weerstanden nodig, geen ontkoppeling en met pull-ups active ook geen pull-up weerstanden. Dus alleen 4 schakelaars, of drukknoppen.

Succes PepijnW

Guus@Sint-Michielsgestel
benleentje

Golden Member

omdat je dan geen overbodige complexiteit componenten mee neemt. Die relatief (als je het zou opschalen) extra kosten zouden geven.

HEt lijkt maar zo dat je een paar poortjes nodig hebt. In mijn schema zijn dat 3 IC's. Maar je hebt ook een complexere voeding nodig. Naast de 5V heb je nu ook een -12V voeding en een stroom bron nodig.

Voor een microcontroller/ programmeerbare chip oplossing heb je maar 1 losse chip nodig als je toch zelf de pcb gaat maken. Dat is dus al 2 IC's minder en kan je alles met een eenvoudig 5V voeding doen zoals een standaard usb voeding. Programmeerbare chip met 16 of meer I/O zijn ook makkelijk te vinden zodat opschalen nog makkelijker is.

Dus qua kosten in puur het materiaal is de met logische poorten Zelfs duurder omdat die iets complexer is, enige nadeel je moet gaan programmeren of iemand dat laten doen kan ook. En als je laat doe heb je ook kosten echter zijn die eenmalig.

Dus GEEN diodes extra.

IK had al gezegd dat dat klopt maar ik had de schakeling al met diodes getekend.

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

Op 21 december 2020 12:42:42 schreef Arco:
Waarom moet alles tegenwoordig toch met een arduino?

Twee dingen. De complete source code die de arduino in moet is zo'n 10-15 regels. En dat is dus MET mijn: Zo is het makkelijker aan te passen, twee regels extra.

Als ik ga proberen zo kort mogelijk krijg ik:

code:

void setup (void) {DDRA = 0x0;DDRB=0xff;}
void loop (void) {PORTB = (1 << (PINA & 0xf)) -1;}

Twee: Als je een paar "arduino nano" klaar heb liggen zijn die makkelijk voor prototyping. Ik denk dat jij aan een arduino uno denkt als je "groot" zegt. Als de nano te groot is, moet je inderdaad naar een losse chip gaan. Kan prima. Als je de arduino nog hebt, kan je die als programmer gebruiken.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/