Sida 1 av 1

Priority encoder

Postat: 25 januari 2011, 23:13:50
av jnek
Hej,

Försöker förstå mig på en priority encoder (CD4532B) med mål att minska det antal ingångar ett antal knappar ockuperar. Jag får dock antingen 1:or eller 0:or på alla utgångare beroende på E1 (chip-enable input) och _oberoende_ på vad ingångarna är satta till.

Någon som har råd, kunskap eller erfarenhet att dela med sig av? :-)

Länk till electrokit

MVH / Jonas

Re: Priority encoder

Postat: 25 januari 2011, 23:45:38
av jesse
Stämmer inte sanningstabellen på sidan tre i databladet?

Re: Priority encoder

Postat: 26 januari 2011, 00:15:48
av jnek
Nja,. antagligen ska man få ihop det på något sätt. Men oavsett vad jag lägger på D0 - D7 (med E1 hög) får jag Q0 - Q2 och GS höga (1). Jag önskar dock att jag fick tabellen att stämma.

Re: Priority encoder

Postat: 26 januari 2011, 00:20:16
av sodjan
Notera att detta är CMOS så du kan aldrig lämna någon ingång "öppen".
*Alla*, d.v.s E samt D0-D7 måste *samtliga* vara kopplade till Vss eller Vdd.

Re: Priority encoder

Postat: 26 januari 2011, 07:42:15
av jnek
Aha, det har inte gjort. Hoppas det är det som är problemet! :-) Måste prova så fort jag kommer hem. Tack!

Re: Priority encoder

Postat: 26 januari 2011, 10:52:53
av Icecap
Faktisk gäller detta ALLA digitala ingångar - fast just CMOS är mer känsliga. Jag har testat för skoj skull för en del år sedan och om jag i en labbplatta kortvarigt lade en ingång till '0' vid att peta GND dit med en ledning och '1' på samma sätt fast med VDD höll den utgången i samma läge i fler minuter.

Värd att notera är att "alla" moderna mikroprocessorer har CMOS-ingångar i det mån de är ställda till ingångar, alltså ska logiska nivåer styras i alla lägen om det på något vis ska vara stabilt.

Re: Priority encoder

Postat: 26 januari 2011, 11:32:51
av sodjan
> Aha, det har inte gjort.

OK. Då kommer de öppna ingångarna att fånga upp 50 Hz nätbrum
ur luften och (om det är en ingång som styr utgångarna) så kommer
utgångerna att ha en 50 Hz signal, som, beroende på hur man mäter,
kan upplevas som "fast hög". T.ex kan det vara svårt att se om en
lysdiod lyser fast eller blinkar med 50 Hz.

Re: Priority encoder

Postat: 26 januari 2011, 14:15:27
av jesse
eller så lägger de sig på en hög nivå, vanligtvis.

Du slog huvudet på spiken, Sodjan. Det var så självklart att jag inte ens kom på tanken.

Re: Priority encoder

Postat: 26 januari 2011, 14:55:43
av sodjan
> eller så lägger de sig på en hög nivå, vanligtvis.

Vilka ? In eller utgångarna ?

> Du slog huvudet på spiken, Sodjan. Det var så självklart att jag inte ens kom på tanken.

Nja, det var ju inte tydligt att det var det men å andra sidan så
är just det en ganska vanlig miss med CMOS kretsar... :-)

Re: Priority encoder

Postat: 26 januari 2011, 15:07:07
av jesse
Jag brukar inte se något 50Hz brum på öppna CMOS-ingångar om de inte är anslutna till en tråd eller liknande. Istället är det ganska vanligt att de ligger på en hög nivå - ingångarna alltså, men att det plötsligt kan ändras.

Re: Priority encoder

Postat: 26 januari 2011, 17:08:37
av prototypen
sodjan skrev:> eller så lägger de sig på en hög nivå, vanligtvis.

Vilka ? In eller utgångarna ?

> Du slog huvudet på spiken, Sodjan. Det var så självklart att jag inte ens kom på tanken.

Nja, det var ju inte tydligt att det var det men å andra sidan så
är just det en ganska vanlig miss med CMOS kretsar... :-)

Jag hade missat 2 st pullupmotstånd á 16 öre och en anläggning för ca 300 000 spänn uppförde sig väldigt labilt.
Då dessutom kunden hänger över en............ Har missat en gång tidigare också på ett annat kort.

Protte

Re: Priority encoder

Postat: 30 januari 2011, 17:06:00
av jnek
Det var precis som ni sa, när alla ingångarna var kopplade fungerade det precis som förväntat. Tack så mycket!