Съдържание:

Преводач на писмо до Морзе: 5 стъпки
Преводач на писмо до Морзе: 5 стъпки

Видео: Преводач на писмо до Морзе: 5 стъпки

Видео: Преводач на писмо до Морзе: 5 стъпки
Видео: Напишите денежный код и всегда носите при себе. Коды денег и удачи. Какие цифры притягивают деньги 2024, Ноември
Anonim
Преводач на писмо до азбуката на Морз
Преводач на писмо до азбуката на Морз

Виждането на представления на Морзов код онлайн, за да научите това, е полезно, но не може да се сравни с това да го видите лично с истински мигащи светлини/звуци. Този преводач ще ви позволи да изберете буквата, която искате да научите в азбуката на Морз, и да я преведете точно пред очите си, като мигате светодиодите в модела, който представлява за тази конкретна буква! Този преводач приема двоично представяне на буква в азбуката ((диаграма може да се види по -късно за двоичния еквивалент на всяка буква, но приемете, че A - 01, B - 10, C - 11 и т.н.) и преобразува го превръща в еквивалент на азбука на Морз чрез мигащи светлини за потребителя. Десетичната версия на числото също се показва на седемсегментен дисплей, за да ви уведоми, че създавате правилния двоичен еквивалент.

Двоичното число се създава с превключвателите от дясната страна и се издига от най -малкия бит, подобно на това, което бихте очаквали при създаването на двоично число. Номерът, който създавате, се показва на седемсегментния дисплей, както е посочено по -горе, и се намира вляво от дъската, той просто ще ви каже дали сте направили грешка или не в представянето на двоичното число с превключвателите, или ще потвърдите, че сте направили правилния номер. Той приема по една буква наведнъж, съхранява я в паметта и след това отпечатва азбуката на Морз, когато потребителят е готов, като активира „Печатния ключ“, намиращ се в най -лявата част на платката BASYS3 (това е просто друг ключ, който ние присвоен да бъде "Печатащ превключвател" или друг превключвател, ако използвате различен тип FPGA платка и задайте различен превключвател (Вижте стъпка 3). Препоръчва се да използвате BASYS3 Board за простота, но това не е задължително.

Стъпка 1: Стъпка 1: Съберете вашите материали

За този проект ще ви трябва само следното:

Хардуер- Basys3 дъска (или еквивалентна FPGA, която можете да свържете съответно)

-(ОПЦИОНАЛНО) Проводници, ако планирате да свържете допълнителни светодиоди или различни превключватели към алтернативна FPGA

Софтуер-Vivado Design Suite (Препоръчваме 2014+)

Стъпка 2: Стъпка 2: Създайте файл

Това е файлът, написан на VHDL за стартиране на 1 -битов преводач на Морзов код във Vivado. Този файл работи с всички версии на Vivado. Ако има проблеми с изтеглянето на файла, текстово представяне на кода може да бъде намерено в друг файл по -долу и лесно може да бъде копирано, поставено във файловата папка, която създавате. Уверете се, че както основният източник, така и файлът с ограничения присъстват и в техните отделни източници, преди да се опитате да генерирате поток от битове или да синтезирате нещо. За тези, които искат да разберат по-задълбочено обяснение на кода и какво всъщност прави, проверете стъпка 3. Ако просто искате да стигнете до точката и да започнете да превеждате, преминете към раздел 4.

Стъпка 3: Стъпка 3: Кодът

Нашият код включва 4 отделни процеса, които работят едновременно. Всеки от следващите подраздели в тази стъпка ще разгледа по -задълбочено какво прави всеки от тях.

Процес 1:

Първият процес, който създадохме, използва разделител на часовника, за да накара седемсегментния дисплей да работи за два сегмента, за да покаже двоичния еквивалент на буквата, която човекът създава. Трябваше да се уверим, че часовникът показва правилно номера на правилните седем сегмента, които искаме. Съответно зададохме сегментите, така че те да показват определени цифри, когато ги попитаме, и накарахме да премине през последните 2 цифри, защото се нуждаехме само от 2, за да покажем всички числа в азбуката. Направихме седемсегментния дисплей в десетичната цифрова система, така че да е по -лесно хората да видят каква буква се опитват да представят, тъй като по -голямата част от населението използва базови 10 числа.

Процес 2:

Вторият процес създава часовника ни, за да работят светодиодите, така че да виждаме ясно импулсите и да правим разлика между Dot и Dash, заедно с достатъчно време между всеки раздел на азбуката на Морз. Използвахме сигнал за предаване на автобус, пълен с LED изходи на азбуката на Морзе извън процеса и върху светодиодите на дъската, така че да можем да светнем няколко такива наведнъж, вместо само една LED светкавица.

Процес 3:

Третият ни процес разглежда текущите състояния на превключвателите и присвоява буквата на каквото и да е двоично представяне, което се показва по това време. Това преминава през всяка от буквите, заедно с интервал, точка и запетая. Този процес завършва тук и всички части се събират в четвъртия процес, за да завършат превода.

Процес 4:

Четвъртият процес е процесът на „преводач“, който приема цялата информация, която сме събрали досега, като например дали бутонът за съхраняване е активиран или не, дали превключвателят за печат е включен или изключен и кой номер е представени от превключвателите. Това след това разглежда масив, който направихме, който има представяне на азбуката на Морз за това какъв би бил изходът с единици и нули, равни на команди за включване/изключване за светодиодите. Вместо да използваме два отделни часовника с работен цикъл, ние направихме един единствен часовник с 50% работен цикъл, който според нас беше добра скорост за азбуката на Морз, и го накарахме да изпълни точка с 1 висок „импулс“и тире за 3 високи” импулси. " За да опростим кода и да го направим по -бърз, просто направихме точка, равна на "010" и тире, равна на "01110".

Стъпка 4: Стъпка 4: Генерирайте Bistream и внедрете

Този проект е много лесен за настройка, ако имате BASYS3 Board, тъй като всички необходими превключватели и бутони вече присъстват на платката, за да можете да ги използвате, заедно с ограниченията, предварително зададени на щифтовете, които искате. Ако използвате различна FPGA, ще трябва да влезете в кода и да намерите ограниченията и да ги насочите отново към правилните ограничения за вашата FPGA. Това важи и ако планирате да свържете други светодиоди и превключватели към вашата платка за употреба. Няма да навлизаме в примери за това, но използването на ръководството с инструкции за вашата конкретна FPGA би било много полезно при определяне на начина на свързване и насочване на всичко към правилните щифтове.

В този момент, след като изтеглите кода и отворите файла, просто генерирайте потока от битове във Vivado и програмирайте устройството си. След като го направите, ще можете да започнете да въвеждате букви, които да бъдат преведени на азбуката на Морз! Наслади се!

*ЗАБЕЛЕЖКА: "Превключвателят за печат" се намира в най -лявата част на платката (превключвател R2 за платката BASYS3) и "бутонът за съхранение" е бутон U18 (централният бутон на платката BASYS3), ако ограниченията са взети директно от нашия примерен код.

Стъпка 5: Проблеми/отстраняване на проблеми

Ако имате проблеми с изтеглянето на файла, можете да копирате, поставете кода ръчно от този word файл. Има и прикачен файл, който можете да проверите за лесни преобразувания между двоично в буквата и какво трябва да представлява буквата, затова ви препоръчваме да ги проверите! Ако използвате BASYS3 Board, трябва да можете да следвате тези инструкции и да изтеглите кода без никакви проблеми и да го внедрите без проблеми, след като свържете платката и я програмирате.

*ЗАБЕЛЕЖКА: ако установите, че вашият преводач изглежда, че работи бавно, това е нормално! Има малко време закъснение между това, когато натиснете печат, и когато видите представянето на азбуката на Морз. Ако поставите цикъла на пауза, като изключите превключвателя за печат, кодът ще трябва да завърши цикъла, преди да отпечата новата буква, оставяйки да изчакате цикълът да завърши и следващата буква да започне.

Препоръчано: