Скачать 1.47 Mb.
|
^ Программное обеспечение разрабатывается для всех устройств, реализуемых программно. Листинг программы должен сопровождаться подробными комментариями. Для гарантии того, что программа работоспособна, необходимо производить отладку с помощью специальных средств. Пример 4.27. Разработать программное обеспечение устройства защиты от ошибок (УЗО) передатчика системы передачи цифровой информации (СПЦИ). УЗО обеспечивает защиту данных кодом с двойной проверкой на четность и решающую обратную связь с адресным повторением (РОС–АП). Решение. Программное обеспечение включает в себя основную программу, подпрограмму взаимодействия коммутатора и УЗО передатчика, подпрограмму приема блока данных от источника информации и подпрограмму передачи данных в УПС передатчика, которые приведены ниже. Программа работы УЗО передатчика АПД проектируемой системы начинается с инициализации векторов прерывания: 0002 ORG 03H ; формирование вектора 0003 JMP RECEIV ; внешнего прерывания INT0 000A ORG 0ВH ; формирование вектора 000B JMP SK ; прерывания от таймера Т0 Основная программа имеет следующий вид: 000E ORG 0EH ; основная программа 000E MOV 20H, #01H ; адрес 1–го блока 0010 MOV 21H, #01H ; 0012 MOV 22H, #01H ; адрес 2–го блока 0014 MOV 23H, #FCH ; 0016 MOV 24H, #02H ; адрес 3–го блока 0018 MOV 25H, #F7H ; 001A MOV 26H, #03H ; адрес 4–го блока 001C MOV 27H, #F2H ; 001D MOV 28H, #04H ; адрес 5–го блока 001F MOV 29H, #EDH ; 0022 MOV 2AH, #05H ; адрес 6–го блока 0024 MOV 2BH, #E8H ; 0026 MOV 2CH, #06H ; адрес 7–го блока 0028 MOV 2DH, #E3H ; 002A MOV 2EH, #07H ; адрес 8–го блока 002C MOV 2FH, #DEH ; 002E MOV 30H, #08H ; адрес 9–го блока 0032 MOV 31H, #D9H ; 0034 MOV 32H, #09H ; адрес 10–го блока 0036 MOV 33H, #D4H ; 0038 MOV 34H, #0AH ; адрес 11–го блока 003A MOV 35H, #CFH ; 003C MOV 36H, #0BH ; адрес 12–го блока 003E MOV 37H, #CAH ; 0042 MOV 38H, #0CH ; адрес 13–го блока 0044 MOV 39H, #C5H ; 0046 MOV 3AH, #0DH ; адрес 14–го блока 0046 MOV 3BH, #C0H ; 0048 MOV 3CH, #0EH ; адрес 15–го блока 004A MOV 3DH, #BEH ; 004C MOV R1, #20H ; адрес начала табл. адресов блоков 004E MOV R7, #0FH ; 15 блоков 0052 MOV DPTR, #0100H ; адрес начала кадра 0056 MOV A, #01111110B ; маркер начала кадра 0058 MOVX @DPTR, A ; пересылка в ВПД 005C MOV DPTR, #0FC6H ; адрес конца кадра 005E MOV A, #00000000B ; маркер конца кадра 0062 MOVX @DPTR, A ; пересылка в ВПД 0066 INC DPTR ; формирование маркера конца кадра 0068 MOVX @DPTR, A ; пересылка в ВПД 0072 MOV R0, #10H ; адрес таблицы адресов РОС–АП 0074 MOV R4, #32H ; количество принимаемых байт (50×4) 0076 CLR SCON.6 ; установка режима работы 0078 SETB SCON.7 ; УАПП (режим 1 – 012) 007A CLR TMOD.2 ; режим внутреннего таймера 0 007C CLR TMOD.6 ; режим внутреннего таймера 1 007E CLR TMOD.1 ; таймер Т/С0 в 16–разрядном 0082 SETB TMOD.0 ; режиме 0084 CLR TMOD.5 ; таймер Т/С1 в 16–разрядном 0086 SETB TMOD.4 ; режиме 0088 MOV TH0, #E0H ; загрузка таймера 0 008A MOV TL0, #00H ; 008C CLR IE.1 ; запрет прерывания от таймера 0 008E SETB TCON.4 ; запуск таймера 0 (синхр. по кадрам) 0092 CLR P2.7 ; бит готовности к приему 0094 MR: JB SCON.0, MR ; ожидание байта в приемнике УАПП 0096 LCALL RIUART ; подпрограмма обработки сообщения 009A JNB P2.7, MR ; ожидание адреса блока данных итс. 009C СJNE R7, #00H, MR2 ; ожидание готовности кадра данных 00A2 MOV R0, #10H ; перезагрузка R0 00A4 MOV R1, #20H ; перезагрузка R1 00A6 MOV R7, #0FH ; перезагрузка R7 00A8 MOV TH1, #F0H ; загрузка таймера 1 00AA MOV TL1, #00H ; длина кадра 15×256, т.е. F000h 00AC MOV DPTR, #0100H ; адрес начала кадра 00B0 SETB IE.1 ; разрешение прерывания от таймера 0 00B2 JMP MR ; ожидание прерывания от таймера 0 00B4 MR2: SETB IE.7 ; разрешение всех прерываний 00B6 SETB IE.0 ; разрешение внешнего прерывания 0 00B8 JMP MR ; ожидание прерывания от INT0 Подпрограмма взаимодействия коммутатора и УЗО передатчика: 00C0 RIUART: MOV A, SBUF ; прием байта от приемника УАПП 00C2 CLR SCON.0 ; сброс бита прерыв–я приемника УАПП 00C4 CJNE A, #F0H, MROS1 ; идент. маркера адресов РОС ПР1 00C8 CJNE A, #0FH, MROS2 ; идент. маркера адресов РОС ПР2 00CC MU4: INC R0 ; 00CE CJNE @R0, #00H, MU1 ; повторение адресов РОС 00D2 MOV A, @R1 ; формирование адреса свободного 00D4 MOV DPH, A ; для использования блока кадра, т.е. 00D6 INC R1 ; не требующего повтора 00D8 MOV A, @R1 ; 00DA MOV DPL, A ; 00DC INC R1 ; 00DE DEC R7 ; 00F0 JMP MU3 ; 00F2 MU1: INC R1 ; 00F4 INC R1 ; 00F6 DEC R7 ; 00F8 JMP MU4 ; 00FA MU3: MOVX @DPTR, A ; установка адреса блока данных 00FE INC DPTR ; адрес блока данных кадра 0100 SETB P2.7 ; сброс готовности к приему данных 0102 JMP MR3 ; 0104 MROS1: SETB P2.7 ; сброс готовности к приему данных 0106 MOV DPTR, #0FB6H; установка адреса блока РОС кадра в ВПД 010A MROS11: JB SCON.0, MROS11; ожидание байта в приемнике УАПП 010E CLR SCON.0 ; сброс бита прерывания приемника УАПП 0110 MOV R5, SBUF ; прием байта 0112 MROS12: JB SCON.0, MROS12; ожидание байта в приемнике УАПП 0116 CLR SCON.0 ; сброс бита прерывания приемника УАПП 0118 MOV A, SBUF ; прием байта 011A MOVX @DPTR, A ; запись адреса РОС в ВПД 011E INC DPTR ; следующий адрес 0120 DJNZ R5, MROS12 ; цикл приема адресов РОС–АП от ПР1 0124 CLR P2.7 ; бит готовности к приему 0126 JMP MR3 ; 0128 MROS2: SETB P2.7 ; сброс бита готовности к приему данных 012A MROS21: JB SCON.0, MR1 ; ожидание байта в приемнике УАПП 012E CLR SCON.0 ; сброс бита прерывания приемника УАПП 0130 MOV @R0, SBUF ; прием байта 0132 MOV R5, @R0 ; количество адресов 0134 INC R0 ; 1–ый адрес адреса РОС ПР2 0136 MROS22: JB SCON.0, MR2 ; ожидание байта в приемнике УАПП 013A CLR SCON.0 ; сброс бита прерывания приемника УАПП 013C MOV @R0, SBUF ; прием байта 013E INC R0 ; следующий адрес 0140 DJNZ R5, MR2 ; цикл приема адресов РОС–АП 0144 MOV R0, #10H ; перезагрузка R0 0146 CLR P2.7 ; бит готовности к приему 0148 MR3: RET Подпрограмма приема блока данных от источника информации: 0150 RECEIV: CLR IE.7 ; запрет всех прерываний 0152 MK2: MOV R2, #04H ; прием и кодировка 4–байт 0154 MOV R5, #00H ; байт дв. проверки четности 0156 MK1: MOV A, P1 ; считывание данных с порта Р1 0158 MOVX @DPTR, A ; запись принятого байта в кадр ВПД 015C INC DPTR ; следующий адрес 0160 XRL ACC.3, ACC.1; 0162 XRL ACC.5, ACC.7; 0164 XRL ACC.5, ACC.3; 2–ой бит четности 0166 XRL ACC.2, ACC.0; 0168 XRL ACC.4, ACC.2; 016A XRL ACC.6, ACC.4; 016C XRL ACC.6, ACC.5; 1–й бит четности 016E ANL A, #01100000B; 0170 XCH A,R5 ; 0172 RL A ; 0174 RL A ; 0176 ORL R5, A ; 0178 DJNZ R2, MK1 ; цикл 4–х байт 017C XCH A,R5 ; 017E RL A ; 0180 MOVX @DPTR, A ; запись принятого байта в кадр ВПД 0184 INC DPTR ; следующий адрес 0188 DJNZ R4, MK2 ; синхрон. по блокам источника 018C MOV R4, #32H ; перезагрузка 018E CLR P2.7 ; бит готовности к приему 0190 RETI Подпрограмма передачи данных в УПС передатчика: 01A0 SK: CLR IE.7 ; запрет всех прерываний 01A2 SETB TCON.6 ; запуск таймера 1 01A4 SK1: MOVX A, @DPTR ; пересылка байта из ВПД 01A8 INC DPTR ; формирование следующего адреса 01AC SETB P2.6 ; строб–сигнал байта 01AE CLR P2.6 ; 01B0 JNB TCON.7 , SK1 ; флаг переполнения таймера 1 01B4 RETI 01F0 END |
Методические указания к курсовому проектированию по дисциплине «Основания и фундаменты» Основания и фундаменты. Методические указания к курсовому проектированию. – Павлодар: Издательство ниц | Методические указания к курсовому проектированию по дисциплине «Основания и фундаменты» Основания и фундаменты. Методические указания к курсовому проектированию. – Павлодар: Издательство ниц |
Методические указания к практическим занятиям по дисциплине «Теория организации» Настоящие методические указания разработаны с целью закрепления лекционного материала, приобретения студентами навыков в решении... | Методические указания по курсовому проектированию по дисциплине «основы... Методические рекомендации по выполнению курсового проекта разработаны преподавателем спец дисциплин Н. А. Салий |
Методические указания по курсовому проектированию для студентов специальностей Основания и фундаменты: Методические указания / Белорусская государственная сельскохозяйственная академия; с о с т. В. И. К у м а... | Методические указания по курсовому проектированию для студентов специальности... Методические указания по курсовому проектированию для студентов специальности 1-25 01 07 «Экономика и управление на предприятии»... |
К курсовому проектированию для студентов специальности 1-50 01 02 Методические указания к курсовому проекту по курсу «Композиция костюма» для студентов специальности 50. 01. 02 «Конструирование... | Методические указания к курсовому проектированию по дисциплине «Механика... Основная цель настоящих методических указаний состоит в том, чтобы помочь студентам освоить основные принципы проектирования и устройства... |
Методические указания по курсовому проектированию по курсу «Гидротехнические сооружения» Часть 2 Гидротехнические сооружения: Методические указания / Брестский государственный технический университет/ Сост. М. Ф. Мороз, Н. Н.... | Методические указания к курсовому проекту по дисциплине «Технология швейных изделий» Авторы: Раймхен Е. П. Методические указания курсовому проекту по дисциплине «Технология швейных изделий» для студентов специальности... |