莫尔斯电码翻译器的设计

摘 要

摩尔斯电码在世界上的位置曾一度的被刷新,他简单的像个孩子,只有点与线。却被誉为永不消逝的电波。摩尔斯电码在上世纪五六十年代无线电历史上曾扮演着中流砥柱的角色,几乎每个从事通讯工作的人都知道的。由于随着通讯技术之进步,摩尔斯码全世界已于1999年全部停止使用,不过因为它所占的带宽是最少的,同时又包揽技术与艺术的特性,直到现在的生活中还是处处可见[1]。
基于单片机的摩尔斯电码翻译器系统, 是紧紧围绕单片机系统来工作的,论证中采用了Intel公司的89C52作为控制核心[6] 以单片机89C52为核心结及外围电路以实现对模拟输入的摩尔斯电码进行翻译并且由单片机驱动一块1602液晶显示器来显示翻译出信息。根据摩尔斯电码翻译器的功能效率要求,从功能要求、硬件设计、软件设计三个方面描述了一个以51单片机为核心的摩尔斯电码翻译系统。硬件线路及控制程序的设计是该系统的重要 组成部分。本文围绕摩尔斯电码翻译系统的硬件和软件进行设计,设计了一个简单可行的摩尔斯电码翻译系统,包括模拟信号的转化,模数转换,跟踪速度,编码翻译,显示等功能。硬件线路设计主要包括电键电路、中央处理器、摩尔斯电码显示、蜂鸣器。软件部分设计主要包括主函数、外部中断函数的设计[11]
关键词:单片机,摩尔斯电码,翻译器 ,二进制

Morse code Translate
Author : Ren Shaohua
Tutor : Wang Yuqiao
Abstract
Morse’s position in the world once he was refreshed, simple like a child, only the points and lines. But as the radio waves never. Morse code radio play a decisive role in the early on, each of the radio communication is required to know. Due to communication, technology progress, all countries agreed in 1999 to stop using Morse code, but because it accounts for at least the characteristics of bandwidth, and a technology and art, with the wide application of [1] in real life.Morse code translator system based on single chip microcomputer system to focus on work, this design uses Intel’s 89C52 as the control core of [6] (the development of this paragraph references references of sixth MCU), based on 89C52 microcontroller as the core chip bonding interface and peripheral circuit to realize the Morse code for analog input the translation and the single-chip drives a 1602 LCD display to the translation of information. According to the requirements of the functional efficiency of Morse code interpreter, requirements, hardware design and software design three aspects of one to 51 single-chip microcomputer as the core of the Morse code translation system is described from the function. The design of hardware circuit and the control program is an important part of the system. This paper focuses on the design of the Morse code translation software and hardware of the system, designed a simple and feasible Morse code translation system, including analog signal conversion, analog to digital conversion, the tracking speed, code translation, display and other functions. Hardware circuit design includes power, function and control system, the Morse code display. Control program design mainly includes the design of [11] main program, external interrupt service program (see reference eleven articles from the control system).
Keywords: single chip microcomputer, Morse code, STC89C52, translation

目 录

1绪论 1
1.1 课题背景及意义 1
1.2 莫尔斯电码的特点 2
1.3 STC51单片机特点 2
1.4 单片机特殊领域的应用 3
1.5摩尔斯电码翻译器对个人的意义 4
1.6电码翻译器对社会的意义 4
2系统设计的方案论证及选择 6
2.1方案论证与比较 6
2.1.1 拍报电键的选择 6
2.1.2 模数转换电路选择 6
2.1.3 控制器模块的选择 6
2.2 方案配置与计算 7
3 系统设计的理论依据 8
3.1系统设计总体分析 8
3.2信号采集质量分析 8
4 系统硬件电路的设计 10
4.1 系统硬件电路原理框图 10
4.2电源电路 10
4.3复位电路 11
4.4时钟电路 11
4.5按键电路 12
5 系统软件部分的设计 13
5.1 系统软件框图 13
6 系统调试 13
6.1软件调试 14
6.2硬件及总体电路调试 14
6.3系统改进方案 14
结 论 15
致 谢 16
参考文献 17
附 录 18
附录A 原理图 18
附录B PCB图 19
附录C 实物图 20

1绪 论

1.1 课题背景及意义
随着科技的发展各种电子产品的发展可谓是层出不穷,特别是通讯设备无论是民用还是军事,航天等各个领域都无所不在的高速更新,里我们最近的手机就可以看出发展之快真是日新月异,通讯设备的换代虽然很快,但万变不离其中,他们的原理还是很相像的。莫尔斯电码无非是他们几个当中最具有代表性和最经典的。摩尔斯电码[10表达英文字母、数字和标点符号靠的是时通时断的信号代码通过不同的排列顺序。在1837年一个叫艾尔菲德•维尔于的美国人发明了它。 摩尔斯电码[3]是一种早期化的数字化通信形式,但是它不同于现代数字通信电路中的0和1两种电平状态的二进制字两种电平在时间上长短上是一样的而莫尔斯电码不一样它由各种不同长短的点与线以不同的组合,在它的代码包括五种: 点、划、点与划之间的停顿、而每个字符间短的停顿(在点和划之间)、每个词之间的小停顿以及句子之间长的停顿。
刚开始了解这些东西,像小蚂蚁一样参差不齐或许不是太和谐。大家一定会有诸多疑问。摩斯密码究竟是什么东西?那么,我先简单介绍一下,摩斯电码是类似信号的传播。就像在茫茫的大海上间歇性的鸣笛也可以被用来传播Morse代码,如果按照不同的鸣笛频率来进行辨别,不难得出,它所含有的意义的就可以不依靠其他任何东西进行通讯了。假如我们在飞机上,看到地面海滩的水面上有一闪一闪的火光,我们就有必要仔细识辨别一下了。假如我们看到火光顺序是按照“短亮 、短亮 、短亮 、长亮、长亮、长亮、短亮、短亮、短亮”这个规律来闪动的话,那么它所代表的意思就是全球通用求救信号SOS。对了。“短亮暗、短亮、暗、短亮、暗”代表字母S,“长亮、暗、长亮、暗、长亮暗”则代表字母O。根据信号规律和莫尔斯电码列表࿰

莫尔斯电码是一种用于发送电报的编码方式,其中字母和数字被编码成长短不同的信号,例如点和划线。如果您想在MATLAB中生成莫尔斯电码,可以按照以下步骤进行: 1. 定义莫尔斯电码的字母和数字对应的编码方式。例如,字母A的莫尔斯电码为“.-”,数字1的莫尔斯电码为“.----”。 2. 将需要转换为莫尔斯电码的本分解成单个字符。 3. 将每个字符转换为其莫尔斯电码等效项,例如“-”和“.”。 4. 将每个字符的莫尔斯电码等效项连接起来,以形成完整的莫尔斯电码序列。 以下是一个简单的MATLAB代码示例,用于将字符串“HELLO WORLD”转换为莫尔斯电码: ```matlab % 定义莫尔斯电码字母和数字对应的编码方式 morseCode = struct('A', '.-', 'B', '-...', 'C', '-.-.', 'D', '-..', 'E', '.', 'F', '..-.', 'G', '--.', 'H', '....', 'I', '..', 'J', '.---', 'K', '-.-', 'L', '.-..', 'M', '--', 'N', '-.', 'O', '---', 'P', '.--.', 'Q', '--.-', 'R', '.-.', 'S', '...', 'T', '-', 'U', '..-', 'V', '...-', 'W', '.--', 'X', '-..-', 'Y', '-.--', 'Z', '--..', '0', '-----', '1', '.----', '2', '..---', '3', '...--', '4', '....-', '5', '.....', '6', '-....', '7', '--...', '8', '---..', '9', '----.'); % 要转换的字符串 text = 'HELLO WORLD'; % 将字符串转换为大写形式 text = upper(text); % 将每个字符转换为莫尔斯电码等效项 morseText = cell(size(text)); for i = 1:length(text) if isfield(morseCode, text(i)) morseText{i} = morseCode.(text(i)); else morseText{i} = ''; end end % 将每个字符的莫尔斯电码等效项连接起来,以形成完整的莫尔斯电码序列 morseSequence = strjoin(morseText, ' '); % 输出结果 disp(morseSequence); ``` 该代码将输出以下结果: ``` .... . .-.. .-.. --- / .-- --- .-. .-.. -.. ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值