Автор работы: Пользователь скрыл имя, 20 Мая 2012 в 21:00, дипломная работа
В дипломном проекте рассмотрен проект создания системы защиты от ошибок в сетях передачи информации. В дипломном проекте разработан помехоустойчивый систематический код для реализации в устройстве на базе микроконтроллера .
Введение ………………………………………………….. 3
1. Обследование………………………………………………...4
1.1 Актуальность разработки системы защиты от ошибок в сетях
передачи данных. ………………………………………………………3
1.2 Негативные влияния в каналах связи………………………………….5
1.3 Проводные Линии связи………………………………………………...8
1.3.2 Телефонные каналы…………………………………………………..10
1.4 Внутриаппаратные тракты……………………………………………..10
1.5 Общие сведения о кодах и системах кодированной связи………….12
1.6 Помехоустойчивое кодирование……………………………………….17
1.7 Применение помехоустойчивых кодов в системах
железнодорожной автоматики, телемеханики и связи…………………...19
2 Постановка задачи………………………………………………………..24
2.1 Построение систематических кодов и их свойства…………………...24
2.2 Кодер и декодер систематического кода………………………………28
2.3 Каноническая форма систематических кодов…………………………30
2.3.1 Обоснование выбора микроконтроллера 16F84……………………..34
2.3.2 Выбор среды проектирования и реализация кодера………………...36
2.3.3 Реализация декодера………………………………………………...43
2.4 Вывод…………………………………………………………………..44
3.1 Реализация устройства на микроконтроллере PIC16F84…………….44
3.2 Практическая схема реализации………………………………………..45
3.3 Пример применения устройства в информационной системе………..46
4 Безопасность и экологичность проекта
4.1 Электробезопасность в локальных вычислительных сетях…………...47
4.2.Действие электрического тока на организм человека. ………………..47
4.3 Требования к электроинструменту, ручным электрическим
машинам и ручным электрическим светильникам…………………..49
4.4 Защита от опасных и мешающих напряжений и токов………………..55
4.5 Электропитание и заземление активного сетевого оборудования……57
4.6 Общие требования к оборудованию……………………………………58
4.7 Требования к помещениям с ПЭВМ……………………………………60
4.8 Требования к применению средств защиты ……………………………61
5 Экономическое обоснование необходимости разработки…………….....64
5.1 Характеристика программного продукта………………………………..64
5.2 Определение затрат труда на разработку системы……………………...65
Заключение………………………………………………………………...70
Приложение А……………………………………………………………..71
Приложение Б……………………………………………………………..74
Список литературы………………………………………………………..85
#define P19 B'11000';
#define P20 B'11001';
#define P21 B'11010';
#define P22 B'11011';
#define P23 B'11100';
#define P24 B'11101';
#define P25 B'11110';
#define P26 B'11111';
;адреса регистров данных
#define R1 0x0c;
#define R2 0x0d;
#define R3 0x0e;
#define R4 0x0f;
; адреса дополнительных
#define X 0x10;
#define Y 0x11;
; загрузка данных в регистры данных
MOVLW 0x3b;
MOVWF R1;
MOVLW 8d; ЗДЕСЬ ИМИТАЦИЯ ОШИБКИ с 0xCD на 8D
MOVWF R2;
MOVLW 0xac;
MOVWF R3;
MOVLW 0x8f;
MOVWF R4;
; обнуляем акб
CLRW;
; обределяем факт ошибки, адресс
регистра с ошибкой и
BTFSC R1,6;
XORLW P1;
BTFSC R1,5;
XORLW P2;
BTFSC R1,4;
XORLW P3;
BTFSC R1,3;
XORLW P4;
BTFSC R1,2;
XORLW P5;
BTFSC R1,1;
XORLW P6;
BTFSC R1,0;
XORLW P7;
BTFSC R2,7;
XORLW P8;
BTFSC R2,6;
XORLW P9;
BTFSC R2,5;
XORLW P10;
BTFSC R2,4;
XORLW P11;
BTFSC R2,3;
XORLW P12;
BTFSC R2,2;
XORLW P13;
BTFSC R2,1;
XORLW P14;
BTFSC R2,0;
XORLW P15;
BTFSC R3,7;
XORLW P16;
BTFSC R3,6;
XORLW P17;
BTFSC R3,5;
XORLW P18;
BTFSC R3,4;
XORLW P19;
BTFSC R3,3;
XORLW P20;
BTFSC R3,2;
XORLW P21;
BTFSC R3,1;
XORLW P22;
BTFSC R3,0;
XORLW P23;
BTFSC R4,7;
XORLW P24;
BTFSC R4,6;
XORLW P25;
BTFSC R4,5;
XORLW P26;
MOVWF X;
MOVLW B'00011111';
ANDWF R4,0;
XORWF X,1;
;MOVWF Y;
BCF STATUS,2;
MOVF X,0;
XORLW P1;
MOVLW 0x16
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P2;
MOVLW 0x15
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P3;
MOVLW 0x14
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P4;
MOVLW 0x13
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P5;
MOVLW 0x12
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P6;
MOVLW 0x11
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P7;
MOVLW 0x10
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P8;
MOVLW 0x27
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P9;
MOVLW 0x26
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P10;
MOVLW 0x25
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P11;
MOVLW 0x24
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P12;
MOVLW 0x23
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P13;
MOVLW 0x22
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P14;
MOVLW 0x21
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P15;
MOVLW 0x20
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P16;
MOVLW 0x37
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P17;
MOVLW 0x36
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P18;
MOVLW 0x35
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P19;
MOVLW 0x34
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P20;
MOVLW 0x33
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P21;
MOVLW 0x32
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P22;
MOVLW 0x31
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P23;
MOVLW 0x30
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P24;
MOVLW 0x47
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P25;
MOVLW 0x46
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW P26;
MOVLW 0x45
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW B'10000';
MOVLW 0x44;
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW B'01000';
MOVLW 0x43
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW B'00100';
MOVLW 0x42
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW B'00010';
MOVLW 0x41
BTFSC STATUS,2;
GOTO ERR;
MOVF X,0;
XORLW B'00001';
MOVLW 0x40
BTFSC STATUS,2;
GOTO ERR;
; если ошибки нет то переходим к FIN
GOTO FIN;
ERR;
;исправляем ошибку
MOVWF X; копируем акб
MOVWF Y; копируем акб
SWAPF X,0; В Х храница смещение номера регистра с ошибкой
ANDLW B'00000111';
ADDLW 0x0B;
MOVWF FSR; загружаем указатель на регистр с ошибкой
MOVF Y,0;
ANDLW B'00001111';
MOVWF Y; в Y храница номер бита с ошибкой
MOVLW 0x0; ОБНУЛЯЕМ РЕГИСТР Х
MOVWF X;
MOVF Y,0; ЗАГРУЖАЕМ Y В АКБ
ADDLW 1;
MOVWF Y;
BCF STATUS,2; сбрасываем флаг нулевого результата
DECF Y,1; отнимаем 0 от акб
BTFSC STATUS,2;
BSF X,0;
BTFSC STATUS,2;
GOTO UNR;
DECF Y,1; отнимаем 1 от акб
BTFSC STATUS,2;
BSF X,1;
BTFSC STATUS,2;
GOTO UNR;
DECF Y,1; отнимаем 2 от акб
BTFSC STATUS,2;
BSF X,2;
BTFSC STATUS,2;
GOTO UNR;
DECF Y,1; отнимаем 3 от акб
BTFSC STATUS,2;
BSF X,3;
BTFSC STATUS,2;
GOTO UNR;
DECF Y,1; отнимаем 4 от акб
BTFSC STATUS,2;
BSF X,4;
BTFSC STATUS,2;
GOTO UNR;
DECF Y,1; отнимаем 5 от акб
BTFSC STATUS,2;
BSF X,5;
BTFSC STATUS,2;
GOTO UNR;
DECF Y,1; отнимаем 6 от акб
BTFSC STATUS,2;
BSF X,6;
BTFSC STATUS,2;
GOTO UNR;
DECF Y,1; отнимаем 7 от акб
BTFSC STATUS,2;
BSF X,7;
BTFSC STATUS,2;
GOTO UNR;
UNR;
;инвертируем ошибочный бит
MOVF X,0;
XORWF 0x0,1;
FIN;
; переходим в спящий режим
sleep;
end
Список литературы:
Москва: Изд. Транспорт,1999 -416с.
Информация о работе Разработка системы защиты от ошибок в сетях передачи данных