Funderingar och frågor om digitala signaler

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
Kretskort
Inlägg: 182
Blev medlem: 5 februari 2008, 08:07:45
Ort: Göteborg

Funderingar och frågor om digitala signaler

Inlägg av Kretskort »

Jag i nästan hela mitt liv undrat hur lite el i en kabel kan bli så fantastiska saker :)

Idag har jag läst igenom flera artiklar på Wikipedia och Howstuffworks utan att kunna få svar på mina funderingar.

Här har jag komponerat ett litet tankeexempel.

Säg att vi har en enkel enhet liknande en teleprinter. På ena sidan av mitt bord har jag en sändare och på andra sidan en mottagare. På min sändare vill jag skicka bokstaven A så jag trycker jag på bokstaven A, som bara är en switch.

Bokstaven A motsvaras låt oss säga av siffran 4, i binära tal 100 (läste lite om hur ASCII fungerar).

Signalen som motsvarar A blir då hög-låg-låg?

Men hur ska mottagaren koda av detta? Den kommer ju bara se först 5 v och sen 0 volt för en lång stund?

Hur kan den skilja på flera nollor eller ettor på rad?

Har man någon form av tidsstyrning här (oscillator?) som säger att en bit tar si och så lång tid? Och då signalen var låg i 4 ns, kanske den tolkar detta som fyra nollor då?

Men sen nästa problem. När jag tryckt ner min A tangent, vilket vi såg slutade med en låg signal, så kommer ju signalen fortsätta vara låg när jag släppt tangenten. För att inte mottagaren ska tro att signalen fortsätter, avslutas A-signalen med en liten signal som säger att "här är signalen slut, vänta på nästa nu"?

Jag har också förstått att man använder transistorer för att sätta signalen låg/hög.

Vi skulle kunna lagra bokstaven A med hjälp av några transistorer som "kommer ihåg sitt läge"? Hur hade dessa transistorer blivit kopplade?

En annan krets, med A tangenten som switch, hade sedan använts för att läsa detta minne med bokstaven A och därefter skicka detta till mottagaren? Hur hade denna krets sett ut?

Och sist men inte minst mottagaren? Hur hade denna kodat av och känt igen bokstaven A?

För att göra det enkelt kan vi anta att mottagaren bara får en diod att lysa eller så när den får bokstav A.

Jag är så fruktansvärt tänd på att verkligen förstå grunden till hur nästan all teknik i världen idag egentligen är uppbyggd. :)
sodjan
EF Sponsor
Inlägg: 43287
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Funderingar och frågor om digitala signaler

Inlägg av sodjan »

http://en.wikipedia.org/wiki/UART

> Och sist men inte minst mottagaren? Hur hade denna kodat av och känt igen bokstaven A?

Det beror ju helt på vad "mottagaren" är för något !!
Malm
Inlägg: 215
Blev medlem: 22 februari 2004, 12:55:06
Ort: Borås

Re: Funderingar och frågor om digitala signaler

Inlägg av Malm »

Du borde skaffa dig en grundläggande bok om digitalteknik för bra svar på de där frågorna.
Användarvisningsbild
psynoise
EF Sponsor
Inlägg: 7242
Blev medlem: 26 juni 2003, 19:23:36
Ort: Landvetter

Re: Funderingar och frågor om digitala signaler

Inlägg av psynoise »

Som sagt i grundläggande digitalteknik hittar du alla dina svar. På wikipedia kan du säkert läsa om (a)syncronöverföring samt sekvensiellanät.
Användarvisningsbild
prototypen
Inlägg: 11108
Blev medlem: 6 augusti 2006, 13:25:04
Ort: umeå

Re: Funderingar och frågor om digitala signaler

Inlägg av prototypen »

På sidan.

Transmission example




Finns beskrivet hur det fungerar med start och stop bit.

Protte
Nerre
Inlägg: 27393
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Funderingar och frågor om digitala signaler

Inlägg av Nerre »

Kretskort skrev:Har man någon form av tidsstyrning här (oscillator?) som säger att en bit tar si och så lång tid? Och då signalen var låg i 4 ns, kanske den tolkar detta som fyra nollor då?
Ja, man har i stort sett alltid en "klocka" som håller koll på timingen. Den här klockan kan styras på olika sätt.

1. Av sändaren. Då behöver man en extra "kanal" för klockan, varje gång det kommer en klockpuls där så läser mottagaren av datakanalen för att se om det är etta eller nolla.

2. Av mottagaren. Då gäller det att kunna synka den mot sändaren. Det kan göras på två sätt, synkront eller asynkront.

Asynkront så "börjar man om" för varje tecken. Synkront så skickar man först ett "synktåg" av en fastställt längd som mottagaren synkar in sig på, sen skickar man ett helt paket data på en gång.

Asynkront används av serieporten, synkront används av t.ex. ethernet.
Men sen nästa problem. När jag tryckt ner min A tangent, vilket vi såg slutade med en låg signal, så kommer ju signalen fortsätta vara låg när jag släppt tangenten. För att inte mottagaren ska tro att signalen fortsätter, avslutas A-signalen med en liten signal som säger att "här är signalen slut, vänta på nästa nu"?
Den krets som skickar tecknet bryr sig inte om hur länge tangenten hålls nere, den skickar ett komplett tecken för varje gång du tryckt ner tangenten. Om det är ett vanligt tangentbord så kommer den efter en stund att skicka om tecknet, men den skickar fortfarande ett helt tecken varje gång den skickar.
Vi skulle kunna lagra bokstaven A med hjälp av några transistorer som "kommer ihåg sitt läge"? Hur hade dessa transistorer blivit kopplade?
Ganska komplext. Googla på R/S-vippa (heter väl R/S flip-flop på engelska) och D-vippa (D flip-flop?). En vippa består av grindar, grindarna består av transistorer.

Det är dock bara statiskt RAM som fungerar så, dynamiskt RAM behöver bara en transistor per bit och utnyttjar kapacitancen för transistorns gate till att lagra laddningen. Den lagrar alltså i en kondensator iställer för en vippa.

Gamla minnen använde t.ex. magnetfält (kärnminne).
Skriv svar