Mundarija:

Mors kodi tarjimoniga xat: 5 qadam
Mors kodi tarjimoniga xat: 5 qadam

Video: Mors kodi tarjimoniga xat: 5 qadam

Video: Mors kodi tarjimoniga xat: 5 qadam
Video: High speed morse telegraphy using a straight key 2024, Iyul
Anonim
Mors kodi tarjimoniga xat
Mors kodi tarjimoniga xat

Uni o'rganish uchun Mors kodini onlayn ko'rish juda foydali, lekin uni haqiqiy miltillovchi chiroqlar/tovushlar bilan ko'rish mumkin emas. Bu tarjimon sizga Mors kodidan o'rganmoqchi bo'lgan harfni tanlashga va shu harf uchun LED chizig'ini yondirib, uni ko'z o'ngingizda tarjima qilishga imkon beradi! Bu Tarjimon alifbodagi harfning ikkilik tasvirini oladi (jadvalni har bir harfning ikkilik ekvivalenti uchun keyinroq ko'rish mumkin, lekin A - 01, B - 10, C - 11 va boshqalarni nazarda tuting) va o'zgartiradi. uni foydalanuvchi uchun miltillovchi chiroqlar yordamida Morze kodining ekvivalentiga aylantirish. Raqamning o'nlik versiyasi, shuningdek, to'g'ri ikkilik ekvivalentni yaratayotganingizni bilish uchun etti segmentli displeyda ko'rsatiladi.

Ikkilik raqam o'ng tarafdagi kalitlar bilan yaratilgan va ikkilik raqamni yaratishda siz kutganingizdek, eng kichikdan yuqoriga ko'tariladi. Siz yaratgan raqam etti qismli displeyda ko'rsatilgandek ko'rsatilgandek va doskaning chap tomonida joylashganki, u sizga ikkilik raqamni kalit bilan ko'rsatishda xato qilganingizni yoki qilmaganligingizni ko'rsatadi yoki qilganingizni tasdiqlaydi. to'g'ri raqam. U bir vaqtning o'zida 1 ta harfni oladi, uni xotirada saqlaydi, so'ngra foydalanuvchi BASYS3 platasining chap tomonida joylashgan "Chop etish tugmachasini" faollashtirish orqali Morze kodini chop etadi (bu biz ishlatadigan boshqa kalit) "Chop etish tugmasi" yoki boshqa turdagi FPGA kartasidan foydalansangiz va boshqa kalitni tayinlasangiz (3 -qadamga qarang) tayinlangan. Oddiylik uchun BASYS3 kartasidan foydalanish tavsiya etiladi, lekin bu shart emas.

1 -qadam: 1 -qadam: Materiallaringizni to'plang

Ushbu loyiha uchun sizga faqat quyidagilar kerak bo'ladi:

Uskuna- Basys3 taxtasi (yoki unga mos keladigan FPGA ekvivalenti)

-(Ixtiyoriy) simlar, agar siz qo'shimcha LED yoki boshqa kalitlarni boshqa FPGA -ga ulashni rejalashtirmoqchi bo'lsangiz.

Software-Vivado Design Suite (tavsiya qilamiz 2014+)

2 -qadam: 2 -qadam: Fayl yarating

Bu Vivadoda Morse Code 1 Bit tarjimonini ishga tushirish uchun VHDLda yozilgan fayl. Bu fayl Vivadoning barcha versiyalari bilan ishlaydi. Agar faylni yuklash bilan bog'liq muammolar mavjud bo'lsa, kodning matnli ko'rinishini quyida joylashgan boshqa faylda topish mumkin va uni nusxasini siz yaratayotgan fayllar papkasiga osongina joylashtirish mumkin. Bit -oqim yaratish yoki biror narsani sintez qilishdan oldin, asosiy manba ham, cheklovlar fayli ham alohida manbalarda mavjudligiga ishonch hosil qiling. Kodning chuqur tushuntirishini va u nima qilayotganini tushunishni istaganlar uchun 3-qadamni ko'rib chiqing. Agar siz shunchaki nuqtaga etib, tarjima qilishni boshlamoqchi bo'lsangiz, 4-bo'limga o'ting.

3 -qadam: 3 -qadam: Kod

Bizning kodimizda bir vaqtning o'zida ishlaydigan 4 ta alohida jarayon mavjud. Ushbu bosqichda har bir keyingi bo'limlar, ularning har biri nima qilayotganini batafsilroq ko'rib chiqadi.

1 -jarayon:

Biz yaratgan birinchi jarayon, soat bo'luvchi yordamida etti segmentli displeyni ikki segmentda ishlashi uchun, u yaratgan harfning ikkilik ekvivalentini ko'rsatish uchun ishlatilgan. Biz soat biz xohlagan ettita segmentning to'g'ri sonini to'g'ri ko'rsatayotganiga ishonch hosil qilishimiz kerak edi. Biz segmentlarni shunga mos ravishda tayinladik, shunda ular biz so'raganimizda ma'lum raqamlarni ko'rsatishi va oxirgi 2 ta raqamni aylanib o'tishi kerak edi, chunki alifbodagi barcha raqamlarni ko'rsatish uchun bizga faqat 2 kerak edi. Biz o'nlik sanoq sistemasida etti segmentli displeyni yaratdik, shunda odamlarga qaysi harfni ko'rsatmoqchi bo'lganlarini ko'rish osonroq bo'lardi, chunki aholining ko'pchiligi 10 -sonli raqamli tizimlardan foydalanadi.

2 -jarayon:

Ikkinchi jarayon, LEDlarning ishlashi uchun bizning soatimizni yaratadi, shuning uchun biz impulslarni aniq ko'ramiz va nuqta bilan chiziqni farqlay olamiz, Morse kodining har bir bo'limi o'rtasida etarli vaqt bo'ladi. Biz signaldan foydalangan holda, Mors -kodli LED -chi LED -lar bilan to'la avtobusni jarayon tashqarisida va bortdagi LED -larga o'tishimiz mumkin edi, shunda biz bitta LED chirog'ini emas, balki bir vaqtning o'zida bir nechta chiroqni yoqishimiz mumkin edi.

3 -jarayon:

Bizning uchinchi jarayonimiz kalitlarning hozirgi holatini ko'rib chiqadi va xatni o'sha paytda ko'rsatiladigan ikkilik tasvirga tayinlaydi. Bu bo'shliq, nuqta va vergul bilan birga har bir harfdan o'tadi. Bu jarayon shu erda tugaydi va tarjimani tugatish uchun barcha qismlar to'rtinchi jarayonga yig'iladi.

4 -jarayon:

To'rtinchi jarayon - bu "tarjimon" jarayoni bo'lib, u biz hozirgacha to'plagan barcha ma'lumotlarni o'z ichiga oladi, masalan, do'kon tugmasi faollashtirilganmi yoki yo'qmi, bosish tugmasi yoqilganmi yoki o'chmaganmi va qaysi raqamda? kalitlari bilan ifodalanadi. Keyin biz yaratgan qatorni ko'rib chiqamiz, u 1 va 0 ni LEDlar uchun O'chirish/O'chirish buyrug'iga teng bo'lgan chiqishning Morze kodli tasvirini aks ettiradi. Ikkita alohida ish soatlarining o'rniga, biz Mors kodining yaxshi tezligi deb hisoblanadigan 50% ish tsiklini yaratdik va u 1 ta yuqori "zarba" va 3 balandlik uchun chiziqli nuqta bajargan. pulslar ". Kodni soddalashtirish va uni tezroq ishlashini ta'minlash uchun biz "010" ga teng nuqta va "01110" ga teng chiziqni qo'ydik.

4 -qadam: 4 -qadam: Bistream yaratish va amalga oshirish

Agar sizda BASYS3 taxtasi bo'lsa, bu loyihani o'rnatish juda oson, chunki siz ishlatishingiz uchun zarur bo'lgan barcha kalitlar va tugmalar allaqachon bortda mavjud bo'lib, ular kerakli pinlarga oldindan o'rnatilgan cheklovlar bilan ta'minlangan. Agar siz boshqa FPGA-dan foydalanayotgan bo'lsangiz, siz kodga kirishingiz va cheklovlarni topishingiz va ularni FPGA uchun to'g'ri cheklovlarga yo'naltirishingiz kerak bo'ladi. Agar siz boshqa LED va kalitlarni taxtangizga ulash uchun ulashni rejalashtirmoqchi bo'lsangiz, bu ham to'g'ri. Biz bunga misollar keltirmaymiz, lekin FPGA -ning maxsus qo'llanmasidan foydalanib, hamma narsani to'g'ri pimlarga qanday ulash va yo'naltirishni aniqlash juda foydali bo'ladi.

Shu nuqtada, siz kodni yuklab olgandan va faylni ochgandan so'ng, Vivadoda bit oqimini yarating va qurilmangizni dasturlashtiring. Bir marta, siz Morse kodiga tarjima qilinadigan harflarni kiritishni boshlashingiz mumkin! Xursand bo'ling!

*ESLATMA: "Chop etish tugmasi" taxtaning eng chap tomonida joylashgan (BASYS3 kartasi uchun R2 tugmasi) va "Do'kon tugmasi" - U18 tugmasi (BASYS3 kartasidagi markaziy tugma), agar cheklovlar to'g'ridan -to'g'ri bizning misol kodimiz.

5 -qadam: Muammolar/muammolarni bartaraf etish

Agar sizda faylni yuklashda muammo bo'lsa, kodni qo'lda nusxalashingiz mumkin. Ikkilik harfni osonlik bilan o'zgartirilishini va bu harf nimani anglatishini tekshirish uchun sizga ilova ham bor, shuning uchun ularni ko'rib chiqishingizni maslahat beramiz! Agar siz BASYS3 taxtasidan foydalanayotgan bo'lsangiz, siz ushbu ko'rsatmalarni bajarishingiz va kodni muammosiz yuklab olishingiz va taxtani ulab, dasturlashdan so'ng muammosiz bajarishingiz kerak.

*DIQQAT: agar siz tarjimoningiz sekin ishlayotganini ko'rsangiz, bu normal holat! Chop etish paytida va Morze kodining tasvirini ko'rsangiz, biroz vaqt kechiktiriladi. Agar siz bosish tugmachasini o'chirib, tsiklni to'xtatib qo'ysangiz, kod yangi harfni chop etishdan oldin tsiklni tugatishi kerak bo'ladi, shunda siz tsikl tugashini va keyingi harf boshlanishini kutasiz.

Tavsiya: