Mục lục:

Người dịch mã thư cho Morse: 5 bước
Người dịch mã thư cho Morse: 5 bước

Video: Người dịch mã thư cho Morse: 5 bước

Video: Người dịch mã thư cho Morse: 5 bước
Video: Kỹ năng Morse Phần 1: Ôn luyên nhận tín hiệu Morse bằng âm thanh BT 2 - CLB KN Sao Chiến Sĩ 2024, Tháng bảy
Anonim
Thư gửi người dịch mã Morse
Thư gửi người dịch mã Morse

Xem các biểu diễn Mã Morse trực tuyến để tìm hiểu nó là hữu ích, nhưng không thể so sánh với việc nhìn thấy nó trực tiếp với đèn / âm thanh nhấp nháy thực sự. Trình dịch này sẽ cho phép bạn chọn ký tự bạn muốn học trong Mã Morse và dịch nó ngay trước mắt bạn bằng cách nhấp nháy đèn LED theo mẫu mà nó đại diện cho ký tự cụ thể đó! Trình dịch này nhận dạng biểu diễn nhị phân của một chữ cái trong bảng chữ cái, (sau này có thể nhìn thấy biểu đồ cho tương đương nhị phân của mỗi chữ cái, nhưng giả sử rằng A - 01, B - 10, C - 11, v.v.) và chuyển đổi nó thành mã Morse tương đương bằng cách nhấp nháy đèn cho người dùng. Tuy nhiên, phiên bản Thập phân của số cũng được hiển thị trên màn hình bảy phân đoạn, để cho bạn biết rằng bạn đang tạo số tương đương nhị phân chính xác.

Số nhị phân được tạo bằng các công tắc ở phía bên tay phải và tăng dần từ bit ít quan trọng nhất, giống như bạn mong đợi khi tạo số nhị phân. Số bạn tạo được hiển thị trên màn hình bảy phân đoạn như đã nêu trước đó và nằm ở bên trái của bảng, nó sẽ chỉ cho bạn biết liệu bạn có mắc sai lầm hay không khi biểu diễn số nhị phân bằng các công tắc hoặc xác nhận rằng bạn đã thực hiện số chính xác. Nó cần từng chữ cái một, lưu trữ trong bộ nhớ và sau đó in ra mã Morse khi người dùng đã sẵn sàng bằng cách kích hoạt "Công tắc in" được tìm thấy ở ngoài cùng bên trái của bảng BASYS3 (đây chỉ đơn giản là một công tắc khác mà chúng tôi được chỉ định là "Công tắc in" hoặc một công tắc khác nếu sử dụng loại bo mạch FPGA khác và gán một công tắc khác (Xem bước 3). Bạn nên sử dụng Bo mạch BASYS3 cho đơn giản, nhưng không bắt buộc.

Bước 1: Bước 1: Thu thập tài liệu của bạn

Đối với dự án này, bạn sẽ chỉ cần những thứ sau:

Phần cứng- Bảng Basys3 (Hoặc FPGA tương đương mà bạn có thể nối dây cho phù hợp)

- (TÙY CHỌN) Dây nếu bạn đang có kế hoạch kết nối đèn LED bổ sung hoặc các công tắc khác với FPGA thay thế

Software-Vivado Design Suite (Chúng tôi khuyên bạn nên sử dụng 2014+)

Bước 2: Bước 2: Tạo tệp

Đây là tệp được viết bằng VHDL để chạy trình dịch Morse Code 1 Bit trong Vivado. Tệp này hoạt động với tất cả các phiên bản của Vivado. Nếu có vấn đề với quá trình tải xuống tệp, bạn có thể tìm thấy biểu diễn văn bản của mã trong một tệp khác bên dưới và có thể dễ dàng sao chép, dán vào thư mục tệp bạn đang tạo. Đảm bảo rằng cả nguồn Chính và tệp ràng buộc đều có mặt và trong các nguồn riêng biệt của chúng trước khi cố gắng tạo dòng bit hoặc tổng hợp bất kỳ thứ gì. Đối với những người muốn hiểu giải thích sâu hơn về mã và những gì nó thực sự đang làm, hãy xem bước 3. Nếu bạn chỉ muốn đi sâu vào vấn đề và bắt đầu dịch, hãy chuyển sang phần 4.

Bước 3: Bước 3: Mã

Mã của chúng tôi có 4 quy trình riêng biệt chạy đồng thời. Mỗi phần phụ sau đây trong bước này sẽ đi sâu hơn vào những gì mỗi phần trong số chúng thực hiện.

Quy trình 1:

Quy trình đầu tiên chúng tôi tạo đã sử dụng bộ chia đồng hồ để làm cho hiển thị bảy phân đoạn hoạt động cho hai phân đoạn nhằm hiển thị tương đương nhị phân của ký tự mà người đó đang tạo. Chúng tôi cần đảm bảo rằng đồng hồ đang hiển thị chính xác số cho đúng bảy phần phân đoạn mà chúng tôi muốn. Chúng tôi đã chỉ định các phân đoạn tương ứng để chúng sẽ hiển thị một số chữ số nhất định khi chúng tôi hỏi chúng và để nó xoay vòng qua 2 chữ số cuối cùng vì chúng ta chỉ cần 2 để hiển thị tất cả các số trong bảng chữ cái. Chúng tôi đã hiển thị bảy phân đoạn trong Hệ thống số thập phân để mọi người dễ dàng biết họ đang cố gắng biểu thị chữ cái nào hơn, vì phần lớn dân số sử dụng hệ thống số cơ số 10.

Quy trình 2:

Quá trình thứ hai tạo ra đồng hồ của chúng tôi để đèn LED chạy ở tốc độ, để chúng tôi có thể nhìn thấy các xung rõ ràng và phân biệt giữa Dấu chấm và Dấu gạch ngang, cùng với thời gian thích hợp giữa mỗi phần của mã Morse. Chúng tôi đã sử dụng một tín hiệu để vượt qua một Bus chứa đầy các đầu ra LED Mã Morse bên ngoài quy trình và lên đèn LED trên bảng để chúng tôi có thể chiếu sáng nhiều đèn cùng một lúc, thay vì chỉ có một đèn flash LED.

Quy trình 3:

Quy trình thứ ba của chúng tôi xem xét các chuyển đổi trạng thái hiện tại và gán ký tự cho bất kỳ biểu diễn nhị phân nào đang được hiển thị tại thời điểm đó. Điều này đi qua mỗi chữ cái, cùng với dấu cách, dấu chấm và dấu phẩy. Quá trình này kết thúc ở đây và tất cả các phần được thu thập vào quá trình thứ tư để hoàn thành bản dịch.

Quy trình 4:

Quy trình thứ tư là quy trình "phiên dịch", lấy tất cả thông tin mà chúng tôi thu thập được cho đến nay, chẳng hạn như nút lưu trữ đã được kích hoạt hay chưa, công tắc in có đang bật hay tắt hay không và số nào đang được. đại diện bởi các công tắc. Sau đó, điều này sẽ xem xét một mảng mà chúng tôi đã thực hiện, có các biểu diễn mã Morse về đầu ra sẽ như thế nào với các lệnh Bật / Tắt cân bằng của 1 và 0 cho đèn LED. Thay vì sử dụng hai đồng hồ chu kỳ nhiệm vụ riêng biệt, chúng tôi đã tạo một đồng hồ chu kỳ nhiệm vụ 50% duy nhất mà chúng tôi cảm thấy là tốc độ tốt cho mã Morse và để nó thực hiện một Dấu chấm với 1 "xung" cao và Dấu gạch ngang cho 3 mức cao " xung. " Để đơn giản hóa mã và làm cho nó chạy nhanh hơn, chúng tôi chỉ tạo Dấu chấm bằng "010" và Dấu gạch ngang bằng "01110".

Bước 4: Bước 4: Tạo Bistream và triển khai

Dự án này rất dễ thiết lập nếu bạn có Bảng BASYS3 vì tất cả các công tắc và nút cần thiết đã có sẵn trên bảng để bạn sử dụng, cùng với các ràng buộc được đặt trước cho các chân bạn muốn. Nếu bạn đang sử dụng một FPGA khác, bạn sẽ cần phải đi vào mã và tìm các ràng buộc và định tuyến lại chúng đến các ràng buộc chính xác cho FPGA của bạn. Điều này cũng đúng nếu bạn đang có kế hoạch kết nối các đèn LED khác và chuyển sang bảng của bạn để sử dụng. Chúng tôi sẽ không đi vào các ví dụ về điều này, nhưng sử dụng hướng dẫn sử dụng FPGA cụ thể của bạn sẽ rất hữu ích trong việc xác định cách đấu dây và định tuyến mọi thứ đến các chân chính xác.

Tại thời điểm này, khi bạn đã tải xuống mã và mở tệp, chỉ cần tạo dòng bit trong Vivado và lập trình thiết bị của bạn. Khi bạn đã có, bạn sẽ có thể bắt đầu nhập các chữ cái để được dịch sang Mã Morse! Thưởng thức!

* LƯU Ý: "Công tắc In" nằm ở ngoài cùng bên trái của bảng (Công tắc R2 cho Bảng BASYS3) và "Nút Lưu trữ" là nút U18 (Nút trung tâm trong Bảng BASYS3) nếu các ràng buộc được lấy trực tiếp từ mã ví dụ của chúng tôi.

Bước 5: Sự cố / Khắc phục sự cố

Nếu bạn gặp sự cố khi tải xuống tệp, bạn có thể sao chép, dán mã vào theo cách thủ công từ tệp word này. Ngoài ra còn có một tệp đính kèm để bạn kiểm tra các chuyển đổi dễ dàng giữa nhị phân sang chữ cái và chữ cái sẽ đại diện cho điều gì, vì vậy chúng tôi khuyên bạn nên xem chúng! Nếu bạn đang sử dụng Bảng BASYS3, bạn có thể làm theo các hướng dẫn này và tải xuống mã mà không gặp bất kỳ sự cố nào và triển khai nó mà không gặp vấn đề gì sau khi bạn đã kết nối bảng và lập trình nó.

* LƯU Ý: nếu bạn thấy rằng trình dịch của bạn có vẻ như đang chạy chậm, điều này là bình thường! Có một khoảng thời gian trễ nhỏ giữa thời điểm bạn nhấn in và khi bạn nhìn thấy phần trình bày Mã Morse của nó. Nếu bạn tạm dừng chu trình bằng cách tắt công tắc in, mã sẽ phải hoàn thành chu trình trước khi in ra ký tự mới, để bạn đợi chu trình kết thúc và bắt đầu ký tự tiếp theo.

Đề xuất: