⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 morsecode.c

📁 用在EM78860单片机制作的摩斯密码机源文件
💻 C
字号:

#include "morsecode.h"



//=====================================================
// 0 表示 dit .
// 1 表示 dah -
const  char MorseCodeTable[] = 
{

    (char)MorseErrorCode,
    (char)MorseErrorCode,

    'E',    // 0
    'T',    // 1

    'I',    // 00
    'A',    // 01
    'N',    // 10
    'M',    // 11

    'S',    // 000
    'U',    // 001
    'R',    // 010
    'W',    // 011
    'D',    // 100
    'K',    // 101
    'G',    // 110
    'O',    // 111

    'H',    // 0000
    'V',    // 0001
    'F',    // 0010
    (char)MorseErrorCode, // 0011    
    'L',    // 0100
    (char)MorseErrorCode, // 0101
    'P',    // 0110
    'J',    // 0111
    'B',    // 1000
    'X',    // 1001
    'C',    // 1010
    'Y',    // 1011
    'Z',    // 1100
    'Q',    // 1101
    (char)MorseErrorCode, // 1110
    (char)MorseErrorCode, // 1111

    '5',    // 00000
    '4',    // 00001
    (char)MorseErrorCode, // 00010
    '3',    // 00011
    (char)MorseErrorCode, // 00100
    (char)MorseErrorCode, // 00101
    (char)MorseErrorCode, // 00110
    '2',    // 00111
    (char)MorseErrorCode, // 01000
    (char)MorseErrorCode, // 01001
    '+',    // 01010
    (char)MorseErrorCode, // 01011
    (char)MorseErrorCode, // 01100
    (char)MorseErrorCode, // 01101
    (char)MorseErrorCode, // 01110
    '1',    // 01111
    '6',    // 10000
    '=',    // 10001
    '/',    // 10010
    (char)MorseErrorCode, // 10011
    (char)MorseErrorCode, // 10100
    (char)MorseErrorCode, // 10101
    '(',    // 10110
    (char)MorseErrorCode, // 10111
    '7',    // 11000
    (char)MorseErrorCode, // 11001
    (char)MorseErrorCode, // 11010
    (char)MorseErrorCode, // 11011
    '8',    // 11100
    (char)MorseErrorCode, // 11101
    '9',    // 11110
    '0',    // 11111

    (char)MorseErrorCode, // 000000
    (char)MorseErrorCode, // 000001
    (char)MorseErrorCode, // 000010
    (char)MorseErrorCode, // 000011
    (char)MorseErrorCode, // 000100
    (char)MorseErrorCode, // 000101
    (char)MorseErrorCode, // 000110
    (char)MorseErrorCode, // 000111
    (char)MorseErrorCode, // 001000
    (char)MorseErrorCode, // 001001
    (char)MorseErrorCode, // 001010
    (char)MorseErrorCode, // 001011
    '?',    // 001100
    '_',    // 001101
    (char)MorseErrorCode, // 001110
    (char)MorseErrorCode, // 001111
    (char)MorseErrorCode, // 010000
    (char)MorseErrorCode, // 010001
    '"',    // 010010
    (char)MorseErrorCode, // 010011
    (char)MorseErrorCode, // 010100
    '.',    // 010101
    (char)MorseErrorCode, // 010110
    (char)MorseErrorCode, // 010111
    (char)MorseErrorCode, // 011000
    (char)MorseErrorCode, // 011001
    '@',    // 011010
    (char)MorseErrorCode, // 011011
    (char)MorseErrorCode, // 011100
    (char)MorseErrorCode, // 011101
    '\'',   // 011110 (单引号)
    (char)MorseErrorCode, // 011111
    (char)MorseErrorCode, // 100000
    '-',    // 100001
    (char)MorseErrorCode, // 100010
    (char)MorseErrorCode, // 100011
    (char)MorseErrorCode, // 100100
    (char)MorseErrorCode, // 100101
    (char)MorseErrorCode, // 100110
    (char)MorseErrorCode, // 100111
    (char)MorseErrorCode, // 101000
    (char)MorseErrorCode, // 101001
    ';',    // 101010
    '!',    // 101011
    (char)MorseErrorCode, // 101100
    ')',    // 101101
    (char)MorseErrorCode, // 101110
    (char)MorseErrorCode, // 101111
    (char)MorseErrorCode, // 110000
    (char)MorseErrorCode, // 110001
    (char)MorseErrorCode, // 110010
    ',',    // 110011
    (char)MorseErrorCode, // 110100
    (char)MorseErrorCode, // 110101
    (char)MorseErrorCode, // 110110
    (char)MorseErrorCode, // 110111
    ':',    // 111000
    (char)MorseErrorCode, // 111001
    (char)MorseErrorCode, // 111010
    (char)MorseErrorCode, // 111011
    (char)MorseErrorCode, // 111100
    (char)MorseErrorCode, // 111101
    (char)MorseErrorCode, // 111110
    (char)MorseErrorCode  // 111111
    
};


//=====================================================
char morse_decode(char morse_ch)
{
    //if (morse_ch >= sizeof(MorseCodeTable))  // 由调用者保证,提高效率
    //    return MorseErrorCode;

    return MorseCodeTable[morse_ch];
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -