Indholdsfortegnelse:

Landmand, ræv, gås, kornpuslespil: 6 trin
Landmand, ræv, gås, kornpuslespil: 6 trin

Video: Landmand, ræv, gås, kornpuslespil: 6 trin

Video: Landmand, ræv, gås, kornpuslespil: 6 trin
Video: Derfor kan hestehuller være livsfarlige 2024, Juli
Anonim
Landmand, ræv, gås, kornpuslespil
Landmand, ræv, gås, kornpuslespil

Da jeg var barn, hentede jeg en bog, der var mine fædre, kaldet The Scientific American Book Of Projects For The Amateur Scientist. Jeg har stadig bogen, og min forståelse er, at det er en hård bog at få i disse dage. Men du kan læse det online nu. Denne bog introducerede mig til mange ting, men det kapitel, der vakte min interesse, var det om matematiske maskiner. Det kan meget vel være det, der satte mig i gang med min eventuelle karriere inden for softwareudvikling.

I dette kapitel er beskrivelser af puslespillemaskiner, der brugte datidens kredsløb … som var forud for moderne integrerede kredsløb eller endda transistorer (ved hjælp af relæer). Men nogle af de samme begreber var der, for logiske enheder, der i det væsentlige er det samme, som moderne computere stadig bruger i dag.

I disse dage kan du nemt og billigt få hele computersystemer til et par dollars, og bare programmere dit puslespil eller spil. Men du kan også gøre mange ting på et lavere niveau ved hjælp af de logiske porte, som computere er bygget af, til at oprette tilpasset hardware til dit puslespil. Selvom dette måske ikke er praktisk eller ideelt, lader det dig lære, hvordan computere virkelig fungerer. Det er også lidt sjovt.

Trin 1: Materialer påkrævet

Du kan bygge dette helt i Tinkercad Circuits og simulere puslespillets faktiske funktion.

Hvis du vil bygge det fysisk, har du her brug for:

4 vippekontakter.

1 trykknap (kortvarig)

2 små brødbrætter.

9 lysdioder.

9 1K modstande.

1 7475 quad lås chip

2 7408 quad OG porte

1 7432 quad OR gate

1 batteripakke med 3 AA- eller AAA -celler.

sæt jumperwires.

Til chips i 74xx -serien kan du bruge enhver variation af disse. IE, 74xx -versionerne er de originale TTL, men du kan også bruge 74LSxx -versionerne (lavere strømforbrug) eller 74HCxx (endnu lavere effekt -cmos -versioner) osv. Bare husk, at versionerne 74xx og 74LSxx er lette at håndtere, men alle de andre variationer er følsom statisk elektricitet.

Trin 2: Boolsk logik

Boolsk logik
Boolsk logik
Boolsk logik
Boolsk logik

Boolsk logik kan lyde skræmmende, men det er faktisk ret simpelt. Boolsk betyder bare, at du kun har at gøre med 1'er og 0'er, eller sandt og falsk. Eller inden for elektronik, + og -. Den logiske del af det koger bare ned til en masse "hvis dette så er det". De mest grundlæggende logiske operationer er simpelthen disse tre ting: AND, OR og NOT. Disse kaldes porte, fordi de i det væsentlige fungerer som bogstavelige porte til strømmen af elektricitet gennem et kredsløb.

OG -porten fungerer som følger. Den har to indgange og en udgang. De to indgange kan være en 1 eller 0, og udgangen er en 1 eller 0. For AND -porten, hvis begge indgange er 1, er udgangen 1. Ellers udsender den en 0.

For OR -porten har den også to indgange og en udgang. Hvis den ene eller den anden indgang er en 1, er udgangen en 1.

Den sidste gate er NOT -porten, og den har kun en indgang og en udgang. Hvis input er et 1, så er output 0. Hvis input er 0, udsender det a 1.

OR- og AND -portene kan også have mere end 2 indgange. For at forenkle dem kan de vises med 2 eller flere linjer, der går ind i en port, men egentlig er en 3 -indgangsport kun to 2 indgangsporte, hvor den ene føder ind i den anden.

Du ved nu alt hvad du behøver at vide for at bygge en computer. Selv de mest moderne computere bruger bare disse tre ting, selvom de muligvis bruger millioner af dem.

Så lad os bygge et puslespil.

Trin 3: Landmand, ræv, gås og kornpuslespil

Landmand, ræv, gås og kornpuslespil
Landmand, ræv, gås og kornpuslespil

Den første ting i bogen er et logisk kredsløb for at skabe det klassiske puslespil om landmanden, ræven, gåsen og kornet. Dette puslespil har eksisteret i flere hundrede år i forskellige former. Det er et grundlæggende puslespil med logik med blot et par regler. Puslespillet er som følger.

En landmand har en ræv, en gås og noget korn. Han kommer til en flod, han skal krydse, og der er en båd, men den kan kun holde ham og en anden ting ad gangen.

Han kan ikke forlade ræven med gåsen, for ræven vil æde gåsen. Det er hvad ræve gør, det er bare deres natur.

Han kan ikke forlade gåsen med kornet, for gåsen vil spise den.

Hvordan kan han få dem alle tre sikkert over på den anden side af floden?

For at skabe dette puslespil har vi brug for et par ting. Først med start med fire kontakter, en til hver af landmanden, ræven, gåsen og kornet. Sådan sætter vi ind, som går på båden.

For det andet har vi brug for puslespillet for at huske, hvor alt er fra trin til trin.

Så har vi brug for en knap for at fortælle den, hvornår båden skal flyttes.

Endelig har vi brug for en vis logik for at håndhæve reglerne.

Trin 4: Hukommelse

Hukommelse
Hukommelse
Hukommelse
Hukommelse

For at huske placeringen af objekterne i dette puslespil vil vi bruge noget mere avanceret end de relæer, der blev brugt i det originale kredsløb. Dengang da denne bog blev skrevet, var der ingen transistorer, men de havde relæer. Disse relæer var tilsluttet sådan, at når du trykkede på en knap, ville de lukke og derefter forblive lukkede, indtil du trykkede på knappen på den anden side.

I dag bruger vi en almindelig og billig del kaldet en 4 bit lås. En 'bit' i computerlogik refererer bare til en enkelt 1 eller 0. Det er det samme som et ciffer. Dette integrerede kredsløb (eller "IC" eller "Chip") indeholder 4 logiske komponenter kendt som flip -flops. En flip -flop er bare et par porte konfigureret, så når du giver den en 1 eller 0 som input, vil den udsende en 1 eller 0 og derefter blive 'fast'. Deraf navnet flip / flop. Det vil vende fra en 1 til 0 eller flop fra en 0 til en 1 (eller er det omvendt?) Og derefter blive der. Dette gør stort set det samme som de fire relæer i det gamle kredsløb.

Du kan lave en simpel flip -flop med kun to porte, men dem i denne lås har en ekstra funktion (kræver et par porte mere). I stedet for straks at få outputændringen med inputændringen, har den en anden input, der aktiverer eller deaktiverer input. Normalt forbliver det deaktiveret. Dette lader dig indstille to af kontakterne (landmanden og en anden), før den forsøger at 'sende' båden til den anden side. Vores kredsløb er allerede smartere end det gamle.

Vi har nu mulighed for at angive og huske placeringen af alle principperne i vores puslespil.

Her er vores kredsløb indtil videre: 4 bit lås

Trin 5: Regler logik

Regler logik
Regler logik

For at håndhæve reglerne og angive, når der er et problem, bruger vi nogle boolske logiske porte til at implementere de begrænsninger, vi har brug for.

Vi skal bruge fire tests for at afgøre, om der er et problem - hvis en af disse er sande, så tænd advarselssignalet.

1. Hvis kornet og gåsen er på den anden side af floden og ikke landmanden.

2. Hvis ræven og gåsen er på den anden side af floden og ikke landmanden.

3. Hvis landmanden krydser floden, og der ikke er nogen ræv og uden gås med ham.

4. Hvis landmanden krydser floden, og der ikke er korn og gås med ham.

Bemærk den måde, hvorpå jeg har formuleret dette til nøjagtigt at matche den logik, vi vil bruge, som er OG -porte med enten de normale eller de inverterede output fra låsen, de inverterede fungerer som et "nej" eller et "IKKE".

Da nogen af dem kan være sande og forårsage et problem, føder de alle ind i en ELLER -gate.

Den færdige logik, inklusive 4 -bit -låsen, vises på skærmbilledet. Dette er fra et program kaldet logicaly. Dette program er glimrende til at vise logikstrømmen, mens du manipulerer omskifterne, og fremhæver forbindelserne med en '1' værdi med blåt. Jeg har vedhæftet den fil, du logisk kan indlæse.

Trin 6: Prototype et rigtigt kredsløb

Prototype et rigtigt kredsløb
Prototype et rigtigt kredsløb

Nu kan vi skabe et rigtigt arbejdskredsløb. Ved hjælp af Tinkercad kredsløb kan vi gøre dette med simulering af det virkelige udseende og funktionalitet af hardware.

Tinkercad har indbygget en 7475 4 bit lås, så den del er let. Til portene har jeg valgt at bruge to chips med 4 AND -porte hver (7408). For at oprette fire, 3 input OG -porte bruger vi to AND -porte, hvor output fra den ene går ind i 1 input af den anden. Dette efterlader 1 input på den anden og 2 input på den første, hvilket skaber en 3 input AND gate. For OR -porten gør jeg det samme. En fire OR -gate -chip bruger to OR -porte, hvor udgangene går ind i en tredje OR -gate. Den ene port står ubrugt.

Kør simuleringen på Tinkercad kredsløb

Anbefalede: