Innholdsfortegnelse:

Letter to Morse Code Translator: 5 trinn
Letter to Morse Code Translator: 5 trinn

Video: Letter to Morse Code Translator: 5 trinn

Video: Letter to Morse Code Translator: 5 trinn
Video: CYLUM AIRDROP INSTRUCTION HOW TO GET COINS 2024, Juli
Anonim
Brev til Morse Code Translator
Brev til Morse Code Translator

Å se Morse Code -representasjoner på nettet for å lære det er nyttig, men kan ikke sammenlignes med å se det personlig med ekte blinkende lys/lyder. Denne oversetteren lar deg velge bokstaven du vil lære i Morse Code, og oversette den rett foran øynene dine ved å blinke LED -er i mønsteret den representerer for den spesifikke bokstaven! Denne oversetteren tar inn en binær representasjon av en bokstav i alfabetet, (et diagram kan sees senere for hver bokstavs binære ekvivalent, men anta at A - 01, B - 10, C - 11, og så videre) og konverterer den til en morsekode -ekvivalent ved å blinke lys for brukeren. Desimalversjonen av tallet vises imidlertid også på et syv segment display, for å fortelle deg at du oppretter den riktige binære ekvivalenten.

Det binære tallet opprettes med bryterne på høyre side, og stiger fra den minst signifikante biten, omtrent som du forventer når du oppretter et binært tall. Tallet du oppretter vises på displayet med syv segmenter som nevnt tidligere og er plassert til venstre på brettet. Det vil bare fortelle deg om du gjorde en feil eller ikke representerte det binære tallet med bryterne, eller bekreftet at du gjorde riktig nummer. Den tar inn 1 bokstav om gangen, lagrer den i minnet, og skriver deretter ut morse -koden når brukeren er klar ved å aktivere "Utskriftsbryteren" som finnes helt til venstre på BASYS3 -kortet (dette er ganske enkelt en annen bryter som vi tildelt "Print Switch", eller en annen switch hvis du bruker en annen type FPGA -kort og tilordner en annen switch (Se trinn 3). Det anbefales at du bruker et BASYS3 Board for enkelhets skyld, men det er ikke nødvendig.

Trinn 1: Trinn 1: Samle materialet ditt

For dette prosjektet trenger du bare følgende:

Hardware- Basys3 Board (Eller en tilsvarende FPGA som du kan koble deretter)

-(VALGFRITT) Ledninger hvis du planlegger å koble ekstra LED -er eller forskjellige brytere til en alternativ FPGA

Software-Vivado Design Suite (Vi anbefaler 2014+)

Trinn 2: Trinn 2: Lag en fil

Dette er filen skrevet i VHDL for å kjøre Morse Code 1 Bit -oversetteren i Vivado. Denne filen fungerer med alle versjoner av Vivado. Hvis det er problemer med nedlasting av filer, kan du finne en tekstrepresentasjon av koden i en annen fil nedenfor, og den kan enkelt kopieres inn i filmappen du oppretter. Sørg for at både hovedkilden og begrensningsfilen er tilstede og i sine egne separate kilder før du prøver å generere en bitstrøm eller syntetisere noe. For de som ønsker å forstå en mer grundig forklaring av koden og hva den egentlig gjør, sjekk ut trinn 3. Hvis du bare vil komme til poenget og begynne å oversette, hopper du videre til seksjon 4.

Trinn 3: Trinn 3: Koden

Koden vår har fire separate prosesser som alle kjører samtidig. Hver av de følgende underseksjonene i dette trinnet vil gå mer i dybden inn i hva hver av dem gjør.

Prosess 1:

Den første prosessen vi opprettet brukte en klokkeavdeler for å få displayet til syv segmenter til å fungere for to segmenter for å vise den binære ekvivalenten til bokstaven som personen opprettet. Vi trengte å sørge for at klokken viser nummeret til de riktige syv segmentdelene vi ønsket. Vi tildelte segmentene tilsvarende, slik at de ville vise visse sifre når vi spurte dem også, og fikk det til å bla gjennom de to siste sifrene fordi vi bare trengte 2 for å vise alle tallene i alfabetet. Vi laget de syv segmentene i desimaltallsystemet, slik at det var lettere for folk å se hvilken bokstav de prøvde å representere, siden flertallet av befolkningen bruker basistall -tallsystemer.

Prosess 2:

Den andre prosessen skaper klokken vår for LED -lampene å kjøre på, slik at vi kan se pulser tydelig og skille mellom Dot og Dash, samt ha tilstrekkelig tid mellom hver del av Morse -koden. Vi brukte et signal for å passere en buss full av Morse Code LED -utganger utenfor prosessen og på lysdiodene på brettet, slik at vi kunne lyse opp flere på en gang, i stedet for bare å ha en LED -blits.

Prosess 3:

Vår tredje prosess ser på bryterens nåværende tilstander, og tildeler bokstaven til hvilken som helst binær representasjon som vises på det tidspunktet. Dette går gjennom hver av bokstavene, sammen med et mellomrom, et punktum og et komma. Denne prosessen slutter her, og alle delene samles inn i den fjerde prosessen for å fullføre oversettelsen.

Prosess 4:

Den fjerde prosessen er "oversetter" -prosessen, som tar inn all informasjonen vi har samlet så langt, for eksempel om lagringsknappen er aktivert eller ikke, om utskriftsbryteren er på eller av, og hvilket nummer som blir representert av bryterne. Dette ser deretter inn i en matrise vi har laget, som har Morse -representasjoner av hva utgangen ville være med 1'er og 0'er som tilsvarer På/Av -kommandoer for LED -ene. I stedet for å bruke to separate driftssyklusklokker, lagde vi en enkelt 50% driftssyklusklokke som vi syntes var en god hastighet for morsekoden, og lot den utføre en prikk med 1 høy "puls" og en dash for 3 høy " pulser. " For å forenkle koden og få den til å kjøre raskere, har vi nettopp laget en prikk som er lik "010" og en strekk som er lik "01110".

Trinn 4: Trinn 4: Generer Bistream og Implement

Dette prosjektet er veldig enkelt å sette opp hvis du har et BASYS3-kort, siden alle nødvendige brytere og knapper allerede er tilstede på brettet for å bruke, sammen med begrensningene som er forhåndsinnstilt til pinnene du vil ha dem. Hvis du bruker en annen FPGA, må du gå inn i koden og finne begrensningene og omdirigere dem til de riktige begrensningene for FPGA. Dette er også sant hvis du planlegger å koble andre lysdioder og brytere til brettet ditt for bruk. Vi vil ikke gå inn på eksempler på dette, men bruk av bruksanvisningen til din spesifikke FPGA ville være veldig nyttig for å bestemme hvordan du skal koble og føre alt til de riktige pinnene.

På dette tidspunktet, når du har lastet ned koden og åpnet filen, kan du bare generere bitstrømmen i Vivado og programmere enheten. Når du har gjort det, kan du begynne å skrive inn bokstaver som skal oversettes til Morse Code! Nyt!

*MERK: "Utskriftsbryteren" er plassert helt til venstre på brettet (bryter R2 for BASYS3 -kortet) og "Lagringsknappen" er knapp U18 (midtknappen i BASYS3 -kortet) hvis begrensningene tas direkte fra vår eksempelkode.

Trinn 5: Problemer/feilsøking

Hvis du har problemer med å laste ned filen, kan du kopiere og lime inn koden manuelt fra denne word -filen. Det er også et vedlegg for deg å sjekke ut for enkle konverteringer mellom binær til bokstaven, og hva bokstaven skal representere, så vi anbefaler deg å sjekke dem ut! Hvis du bruker BASYS3 -kortet, bør du kunne følge disse instruksjonene og laste ned koden uten problemer, og implementere den uten problemer når du har koblet til kortet og programmert den.

*MERK: hvis du finner ut at oversetteren din virker som om den går tregt, er dette normalt! Det er en liten tidsforsinkelse mellom når du trykker på utskrift, og når du ser Morse Code -representasjonen av den. Hvis du stopper syklusen ved å slå av utskriftsbryteren, må koden fullføre syklusen før du skriver ut den nye bokstaven, slik at du venter på at syklusen skal være ferdig og neste bokstav starter.

Anbefalt: