标题：rtty数据通讯
与 0，MARK 与 SPACE
电传打字机发明的时候还没有阴极射线管，更别提有电脑了，那时候要发送电文，是先用打孔机在纸带上打孔，数 据的 1 就打孔，称为 MARK，0 则不打孔，称为 SPACE，然后用读纸带机将信号发出去。接收方收到信号后也是先 在纸带上打孔，接着纸带进入解码机，使打字机印出相关的字来。 
虽然今日我们已经不使用纸带，但因为电传打字电报的历史相当久远了，MARK 与 SPACE 这样的名称也沿用下来。 MARK 代表 1，SPACE 则代表 0。 RTTY 使用 FSK 的传送方式，MARK 代表比较高的频率，SPACE 代表比较低的频 率，有关这点，后面有更详细的介绍。
Baudot 编码方式
电传打字电报的编码方式是由 Baudot 先生所发明，它只用了 5 个位元。5 个位元只能表示 32 种不同的变化， 可是 26 个英文字母以及 10 个数字再加上常用的标点符号大概就有 50 个，解决的方法就是将它们分成字母 (Letter) 以及符号 (Figure)( 数字及标点符号 )两组，然后用 32 种组合里的一个组合来宣告后面的电文为文字 ，同理，也用一个组合来宣告后面的电文为符号。看起来有点复杂，先看下面的编码表，然后举例说明就不难了。 
No Code Letters Figures No Code Letters Figures 
== ===== ====== ====== == ===== = ===== 
00 00000 Blank Blank 16 00001 T 5 
01 10000 E 3 17 10001 Z 
02 01000 LF LF 18 01001 L ) 
03 11000 A - 19 11001 W 2 
04 00100 SPACE SPACE 20 00101 H 
05 10100 S 21 10101 Y 6 
06 01100 I 8 22 01101 P 0 
07 11100 U 7 23 11101 Q 1 
08 00010 CR CR 24 00011 O 9 
09 10010 D $ 25 10011 B ? 
10 01010 R 4 26 01011 G & 
11 11010 J ' 27 11011 FIG FIG 
12 00110 N , 28 00111 M . 
13 10110 F ! 29 10111 X / 
14 01110 C : 30 01111 V = 
15 11110 K ( 31 11111 LET LET 
Note: Above is US TTY Character Set 
上面的编码表，我是把低位元写在左边，例如 2，一般的写法是 00010，但是上面是写成 01000， 把低位元写在左边是为了凸显发送的顺序。此外，由上面的编码可以看出 Baudot 的编码共有 6 个共用字（不管是 LTR 或是 FIG 的状况下都是相同 的意义）， 而每个 LTR 对应的 FIG 看似没有规律，其实如果把它和键盘的对应位置来看，你就会发现其实是有些规律的： 
Q W E R T Y U I O P A S D F G H J K L Z X C V B N M 
1 2 3 4 5 6 7 8 9 0 - $ ! & ' ( ) " / : ; ? , . 
以上所写，并不是要大家把键盘背起来，而是有时候信号状况不良，LTR 或 FIG 字元没有接收到，那么后面解出 来的电文就不正确，例如原本要传送 599，但是 FIG 字元没收到，就会变成 TOO，如果对键盘对应有些了解，碰 到这种情形就不会‘雾沙沙’。 
例如要发送，BV3FG 就等于发送 (LTR)BV(FIG)3(LTR)FG 这 8 组鲍多码，也就是 11111,10111,01111,11011,10000,11111,100110,01011 一连串的 01 数据码（逗点是我故意加进去方便辨识的， 实际并没有逗点）。 
上面一连串的 01，如果发生传播状况不佳导致漏码，那么后面一连串的数据不就全部乱掉了，此外，就算是传播 状况良好，可以完全抄收，但是如果是从一半开始接收，该如何断字？因此必须导入同步技术以及使用起始及结束 位元来解决这个问题。 
同步的方法其实很简单，就是收发双方都使用相同的时间来收发一个位元，每秒发送多少个位元就称为 Baud Rate ，例如 100 的 Baud Rate 就是说每个位元的长度是 1/100 秒，就是 10ms。 
至于起始位元 start bit 则定义为一个 bit 的 0 (SPACE)，而结束位元 stop bit 则为一个 bit 以上的 1 (MARK)，一般是用 1.41, 1.5 或是 2 bit 长度的 MARK。如此假设在不传送资料的时候，一直发送 stop bit，一 旦开始传送资料，系统侦测到信号由 SPACE 变为 MARK，便开始计时。第一个 bit 为起始位元，接着依次接收 1,2~5 位元，然后是 stop bit，再来又碰到由 SPACE 转为 MARK 又开始计时，如此周而复始。 
随着电脑的发明，也有人开使用 RTTY 传送 ASCII 码，如此就能有大小写以及更多的特殊符号，不过在业馀通讯 上主要是用键盘来交谈，对于特殊符号的要求不高，所以业馀的 RTTY 还是使用 Baudot。（注：其实 Baudot 还 有好几种标准，业馀界所用的称为 US TTY 或 US Code）
MARK, SPACE, SHIFT 与 FSK, AFSK
前面提到 MARK 与 SPACE 的来由，而在有线电电传打字电报，MARK 与 SPACE 其实是由正电压与负电压来代表， 而在 RTTY 要发送 MARK 则是发送一个较高的频率，发送 SPACE 则是发送一个较低的频率，这两个频率必须保持 一定的差值，称为 SHIFT。你可以想像你用了两部无线电发射机，一台频率调在 14000.2KHz 另一部调在 14000.0KHz，然后用电脑控制交互发送 CW 信号，这种方式称为‘移频键送’ Frequency SHIFT Keying，就是所 谓的 FSK。 
接收信号的人如果在 13999KHz 用 USB 去收这个信号，他会听到 1.2KHz 以及 1KHz 两个声音交替出现，如果他 用两个频宽很窄的声频滤波器，就可以感测有无信号通过滤波器来解出 MARK 与 SPACE，接着再透过软体将一连 串的 MARK, SPACE 解成文字显示在荧幕上。 
上面用两台无线电机来发射只是为了方便解说，实际上的作法有两种： 
使用一部无线电机，当它要发送 MARK，就在 14000.2KHz 发送 CW 信号，当它要发送 SPACE，就跳频到 14000.0KHz 发送 CW 信号。 
使用一部无线电机，设定在 13999.0 KHz USB，然后从 MIC 灌入 1.2KHz 的声音作为 MARK，灌入 1.0KHz 的 声音作为 SPACE。或者是设定在 13998.0 KHz USB，然后从 MIC 灌入 2.2KHz 的声音作为 MARK，灌入 2.0KHz 的声音作为 SPACE。这是因为 USB 实际发射的频率就是载波频率（面板的频率）加上从 MIC 进去的频率。 
将无线电机设在 14001.2 KHz LSB，然后从 MIC 灌入 1.0KHz 的声音作为 MARK，灌入 1.2KHz 的声音作为 SPACE。或者是设定在 14002.0 KHz LSB，然后从 MIC 灌入 1.8KHz 的声音作为 MARK，灌入 2.0KHz 的声音作 为 SPACE。这是因为 LSB 实际发射的频率就是载波频率（面板的频率）加上从 MIC 进去的频率。 
2, 3 的方法是最常用的，称为 AFSK, Audio Frequency Shift Keying，只要无线电机有 SSB 功能，就可以用 AFSK 来做 RTTY。有的无线电机虽然号称有 FSK，其实它的内部就是 AFSK，只不过 MARK 与 SPACE 的声音是直接 由无线电机内部产生并灌入调制器，如此而已。 
此外，从接收的角度来看，当你收到 RTTY 信号，你并没有办法分辨对方是用 FSK 或是 AFSK 在发送。我要讲的重点是： 尽管 FSK 与 AFSK 的作法不同，但是结果相同，只要你的无线电机有 SSB 功能，就可以收发 RTTY。（有些人误 以为无线电机有提供 FSK 才能进行 RTTY 通讯，这观念是错的。） 
此外，你应该有注意到，在 USB 的时候，我们是灌入比较高的声音作为 MARK，灌入比较低的声音作为 SPACE，而 在 LSB 却刚好相反。这里就会有一个常犯的错误发生了：例如你的数据机或软体认为你的无线电机设在 LSB，所 以它灌入比较低的声音作为 MARK，灌入比较高的声音作为 SPACE，但是你的无线电机却设在 USB，结果就是你把 MARK 与 SPACE 颠倒了（收、发都搞反了，俗称 up side down 或 reverse），这时候你发射出来的信号别人解不 出来，你也解不出别人的信号。解决的方法就是改用正确的 side band 或是把软体或数据机的 REV (reverse) 键 按下去。 
实际举例来说：你的无线电机面板频率是 14000KHz, USB，但你的软体以为你在 LSB，所以它灌入 2KHz 的声音作 为 MARK，灌入 2.2KHz 的声音作为 SPACE，所以实际发射出去的是 14002KHz MARK, 14002.2 SPACE。因为我们规 定 MARK 是比较高的的射频，SPACE 是比较低的射频，如果接收信号的人如果也是在 14000KHz, USB，它会把收到 2.2KHz 的声音当作 MARK，2.0KHz 的声音当作 SPACE，结果与你当初发射的相反，所以他要用软体或数据机把收 到的 0, 1 对换，才能解出正确的内容。或者是他在 14004KHz LSB 接收，他收到 14004-14002.2=1.8KHz 为 MARK，14004-14002=2KHz 当作 SPACE，这样他不需 reverse 就可以正确解出内容。 
所以重点是：使用 LSB 与 USB 有没有公定的标准？其实没有，不过在业馀无线电的领域里，我们习惯使用 LSB 来做 RTTY 通信， SHIFT 的频率是 170Hz，MARK 订为 2125Hz，SPACE 订为 2295Hz （因为是使用 LSB）。把 MARK 与 SPACE 频率定得这么高的原因是避免灌进去的声音的倍频也被发射出去而造成干扰，例如 2125Hz 的倍频 是 4250Hz，因为 SSB 的频宽滤波器通常不超过 2300Hz，所以 4250Hz 只有很少量会通过调制器，如果选用 1KHz 作为 MARK，那么 2 倍频为 2KHz，仍然能够通过调制器而被发射出去。 
上面讲了一大堆，简单做个重点整理： 
业馀 RTTY 使用 Baudat 码，有些业务 RTTY 则使用 7 bits ASCII 或 8 bits ASCII。 
业馀 RTTY 使用 45.45 Baud Rate。Baud Rate 就是 bps，是指每秒发送几个几个位元。 
MARK 是指频率较高的射频，SPACE 是指频率较低的射频，两者频率差称为 SHIFT。在 USB 听到/发送比较高 的声音为 MARK，在 LSB 听到/发送比较低的声音为 MARK。 
业馀 RTTY 使用 LSB，MARK 的声音是 2125Hz，SPACE 的声音是 2295Hz，SHIFT 是 170Hz。 
不管使用 FSK 或 AFSK，其发送出的的信号都是一样的，但AFSK必须注意灌入麦克风的声音不可过调制。 
软体选择 
常用的软体请参考软硬体介绍，我个人是使用 MMTTY V1.65，这个软体是 JE3HHT 所写，原先只有日文版，后来许 多人发现这个软体实在不错，就与 JE3HHT 合作开发成英文版，并陆续加入更多实用的功能，也有人把 MMTTY 的 使用说明翻译成不同的语言。为了推广，JE3HHT 还同意其他软体使用 MMTTY 模组，我个人相当欣赏这种推广及共 享的精神，未来我如果有时间，也考虑把 MMTTY 的操作说明翻译成中文。
RTTY 常用频率
[ ]内为最常使用的频率 
80 meters: 3580 - 3650 [3580-3590] (3520 - 3525 in Japan) 
40 meters: 7030 - 7040 [7030-7040] (7080 - 7100 in the US) 
30 meters: 10110 - 11150 [11140-11150] 
20 meters: 14080 - 14099 [14080-14090] (avoid the beacons at 14100) 
17 meters: 18100 - 18105 
15 meters: 21080 - 21100 [21080-21090] 
12 meters: 24920 - 24925 
10 meters: 28080 - 28100 [28080-28090]
AFC 与 NET
AFSK 的操作有一个特色，那就是：‘接收的 MARK 频率’与‘发射的 MARK 频率’可以分别设定。 换句话说，你可以不用转动无线电机的频率，藉由改变 MARK 频率，就可以改变实际的收发频率，而且是收/发可以独立改变。 
在接收的时候，我们通常是移动 MARK 的对准线来改变‘接收的 MARK 频率’，一般来说，这样做就够了，但是如果要求频率 百分之百对准，可以启动 AFC, Auto Frequency Calibration 功能，由电脑软体自动把频率对得很准。主动呼叫 CQ 的电台通常会使用这个功能。 
如果是搜寻信号并回答他人的 CQ，就要强迫让发射的 MARK 频率与接收的 MARK 频率相同，这种功能称为 NET。要特别注意的是， 使用 NET 功能的时候，要记得取消 AFC 功能，以免你的 MARK 频率随着邻近的讯号跑来跑去。
Diddle
MMTTY 显示信号的小视窗，中间两条黄色的线是对准线，如果是用 LSB ，那么左边那条就是 MARK。 右边是示波器，如果两个椭圆形相互垂直，表示频率对得很准。下方是频谱轨迹 (WaterFall Spectrum)，方便使用 者追踪信号。 
当没有内容发送的时候（例如敲键盘的速度没有实际发送的快，或是还在想接下来要讲些什么），在 SSB 通常是 持续按着 PTT 然后发出嗯啊等无意义的声音，在 CW 则是发送 BK 藉此表示人还在这里持续发送。在 RTTY 则是 发送不会让软体解出字元的控制码，例如发送 STOP BIT (MARK)、BLANK、LTR 等。 
持续发送 STOP BIT 的好处是一旦有内容要发送就可以很快察觉，而且容易帮助 AFC 锁住频率，缺点是 STANDBY 的人完全无法从 STOP BIT 得知这个 RTTY 的其他资讯，例如 SHIFT, Baud rate，如果是发送 BLANK 或 LTR 称 为 Diddle，这是推荐使用的方式，因为接收者可以藉此继续校准 RTTY 信号。
对新入门的人来说，这可能是令人困扰的地方，至少我刚开始也困扰了一阵子，后来我发现实在不难。首先再复习 一下，业馀 RTTY 使用 LSB，MARK 声音为 2125Hz，SHIFT=170Hz，因为 SHIFT 是固定不变的，我就不去讨论它。 
1. 使用无线电机的 FSK： 
发射的时候，MARK 以及 SHIFT 由无线电机的设定来决定。理论上无线电机的设定通常可以改变，但是操作并不方 便，所以一般人固定都是 MARK=2125Hz。因此，我们就要确保软体的 MARK 也等于 2125Hz，在通讯的时候只要转 动无线电机的频率旋钮，让收到信号的 MARK 对准软体荧幕上的 MARK 对准线即可。 
1.1 主动呼叫的情形：启动无线电机的 RIT (接收频率偏移 )，将偏移量先设为 0。如果有人回应你的呼叫，但是他的 频率稍微偏了一些，那么就转动 RIT 去对准接收信号即可。 
1.2 搜寻信号并回答他人的 CQ：转动频率旋钮对准对方的信号即可。 
2. 使用 AFSK ： 
使用 AFSK 的人可以随时变动 MARK 频率，但是要先搞懂 AFC 及 NET 功能，这是精髓所在。假设你在 14080 (你 无线电机的面板频率 )收到一个信号与你的 MARK 对准，而你的 MARK 设在 1700Hz。这代表不管对方面板频率在 哪里，MARK 设为多少，反正他的 MARK 就是在 14080-1.7=14078.3KHz。假设对方的 MARK 设为 2000Hz，代表他 的面板频率在 14078.3 2=14080.3KHz。双方能够通讯的基点建立在共同的 MARK 频率，就是 14078.3KHz， RTTY 通讯软体的接收 MARK 与发射 MARK 是可以独立设定的，换言之，当你移动软体的对准线，就是变换接收的 MARK ，效果就像是你转动无线电机的 RIT 一样。AFC 功能就是频率自动校准，当你在接收信号的时候，它会让对准线 自动对准信号。NET 功能就是强制让发射的 MARK 等于接收的 MARK。 
2.1 主动呼叫的情形：取消无线电机的 RIT 功能（或把 RIT 设为 0），取消 NET 功能，而且确认接收 MARK 等于发 射的 MARK。当对方回应你的呼叫，但频率有点偏的时候，把软体的 MARK 对准线对准信号的 MARK 波峰即可。如 果你有启动 AFC，它可以让频率对得更准，前提是对方信号不能太弱，以免对不准。 
2.2 回应别人的呼叫：取消无线电机的 RIT 功能（或把 RIT 设为 0），启动 NET 功能。因为你启动的 NET 功能，所 以你发射与接收的 MARK 一定相同。所以你只要看到荧幕上有信号，把对准线移过去对准就可以了。这时候建议你 不要用 AFC，因为 AFC 会自动变换接收 MARK，但是你又用了 NET，换言之，你的发射频率会小幅度的改变，使得 对方每次都要对准你的信号。
如何利用 CW 窄频滤除器来接收 RTTY 信号
业馀 RTTY 的 SHIFT 是 170Hz，用 SSB 的方式来操作，然而当 RTTY 信号多而拥挤的时候，一般 SSB 的 2.3K 频宽的滤波器相对于 170Hz 显然太宽，变通的方式是使用 CW 的窄频滤波器。如果清楚收发频率差并配合使用 SPLIT 功能，就可以这样做。 
了解 BFO 方式：为了省略频率计算以免越看越不懂，在此就直接以现象来说明。大部分 ICOM 的无线电机， 它的 CW 接收方式与 LSB 相似，就是说当你听到一个信号的音调明显偏高，就把把频率往下调整，若音调太低， 就往上调整，在此我把它称为‘ LSB 方式’。而 YAESU, KENWOOD 则是‘ USB 方式’，就是音调太高，就把频率 往上调，音调太低，就把频率往下调。如果你的 CW 是‘ USB 方式’那么你在接收业馀 RTTY 的时候，收到的 MARK SPACE 声音刚好颠倒，必须启动软体或数据机的接收 reverse 功能，如果是‘ LSB 方式’则无此顾虑。 
决定收发频率差：找一个固定频率的 CW 信号，用 LSB mode 来接收，转动频率旋钮，将该信号对准软体 MARK 的对准线，记下频率 (FL) 。同理，换用 CW narrow 来接收，转动频率旋钮，将该信号对准软体 MARK 的对 准线，记下频率 (FC)，如果你是用 AFSK，那么你可以改变 MARK 频率，使得 FC 与 FL 的频率差是一个容易记忆 的整数，例如 2KHz or 1.5KHz 等。 
关掉 AFC 及 NET 功能，设定无线电机为 SPLIT，用 CW narrow 来接收，LSB 来发射，记得两者频率要保持 固定的频率差。所以你每次换频率都要记得转动接收及发射频率。 
以上方式最适合主动呼叫 CQ 及处理 Pile UP 来使用，在这种状况下，因为你的发射频率固定不变，只要变 换接收频率，使用起来并不会不方便。
几个实际经验
发射功率的考量：CW 通讯每一音节中间一定有停顿，SSB 通讯讲话有大小声，所以平均的功率不太会超过最设定大功率的 70%，可 是 RTTY 的发射就跟 FM 一样，一发射就是设定功率。所以如果无线电机散热不是很好，最好不要将功率旋钮转到 最大，以免无线电机过热。如果是参加 RTTY 比赛或是处理 Pileup，由于每一次发射的时间短，加上接收的时间 ，平均发射功率大概只有 50 %，所以将功率旋钮转到最大应该无妨。 
保持耐心与礼让，不要硬干： 
SSB, CW 的接收是靠人的判断，而 RTTY 完全靠电脑，如果信号干扰达到一个程度就完全无法通讯。 如果同时有两三个电台同时在抢一个稀有电台时，加大功率硬干的方式，在 SSB, CW 或许有用，但是对于 RTTY 可能只是浪费大家的时间而已，碰到这种情形，只有彼此间互相礼让，才是提升速率的良策。 
打错字用 XXXX 来修正： 
由于 Baudot 编码并没有后退键，打错字又已经发送出去了要怎么改呢？有些人的习惯是重打一次，对于可以望 文生义的部分，这样做或许有效，例如 MY NSME NAME IS ROBERT SUEN，一看就知道 NAME 打错重打。如果是 MY NAME IS ROBERT SUN SUEN，由于对方并不认识我，他压根无法判断我是否打错我的名字，搞不好他误认为 我的英文名字叫做 ROBERT，而中文名字叫做 SUN SUEN，标准的修正方法是用连续 4 个 XXXX，例如 MY NAME IS ROBERT SUNXXXX SUEN，就知道 SUN 是错字。 
善用空格键以及换行来避免杂讯字元： 
HF 通讯一般很少用 squelch 功能，但是 RTTY 通讯时为了避免软体将空白噪音视为讯号，而解出一堆无意义的垃 圾字元出现在荧幕上，所以就会使用 RTTY 通讯软体里的 squelch 功能。此时有两件事情要注意 
当你要发射的时候，音效卡的输出可能会有瞬间的杂讯，导致你所发送的第一个字元错误。例如我要发射 CQ DE BV3FG，结果是发送出 MQ DE BV3FG 
当你结束发射的时候，接收者 squelch 从 off 到 on 会有极短的时间差，所以接收者的荧幕可能会多出现一 个垃圾字元。例如我发射 CQ DE BV3FG，结果你收到的是 CQ DE BV3FGU 
可能同时在邻近频率也有人在通讯，虽然你的信号比较强，接收者可以轻易的抄收，但是当你不发射的时候， 接收者会收到另一组信号，换言之，在接收者的荧幕出现的是别人的通讯内容 你的内容 别人的通讯内容 。例如我发射 CQ DE BV3FG，结果你收到的是...ANT DIPCQ DE BV3FGOWER 100W 100W... 
为了避免这些状况，在发送信号的一开始的时候，可以先发送两个空格字元或是换行字元，结束时，则在内容最后 加发两个空格字元或换行。善用 AFSK 的特点及软体的接收功能使用 AFSK 最大的优点是可以自由改变 MARK 频率及使用 AFC, NET 功能，因此只要讯号出现在合理的音频范围内 ，藉由改变 MARK 及使用 NET, AFC 功能就不需转动无线电机的频率旋钮。此外许多 RTTY 软体具有优秀的音效处 理功能，如果加以好好利用，可以大幅提高信号辨识率，提升 QSO 成功率。