Новичок
Регистрация: 31.05.2008
Сообщений: 3
Репутация: 10
|
Есть программа передачи массива с одного компа на другой через 8251 в синхронном режиме, препод говорит, что есть две возможности синхронизировать два компа. 1 ждать DSR, вторую я не знаю. А вот моя реализация:
Но он говорит здесь есть ошибка связанная с ложной записью, кто-нибудь может подсказать в чем проблема? Пожалуйста помогите, а то достало уже. Нет ни книг описывающий как писать программы для 8251, ни препод не написал хотя бы методичку как писать. Передатчик Код:
mvi a, 82h ; INIT ВВ55 out 83h mvi a, 36h ; INIT ВИ53 out 87h ; CT0, режим 3, 2 байта mvi a, 0a7h ; мл. байт коэф. пересчета out 84h mvi a, 00h ; ст. байт out 84h lxi d, 3377h ; синхросимволы xra a ; INIT ВВ51 out 89h ; поиск CI out 89h out 89h mvi a, 40h ; сброс out 89h mvi a, 08h ; синхр.режим, 7 бит, 2 синхр.си out 89h ; внутр. синхр., нет контроля mov a, d ; первый синхр. символ out 89h mov a, e ; второй синхр. символ out 89h in 88h ; ложное чтение mvi a, 31h ; TxEN ER RTS out 89h out 88h ; ложная запись lxi b, 100h ; коэф. задержки w1: in 89h ; ждем TxRDY (CTS) ani 01h jz w1 w2: dcr c ; задержка jnz w2 dcr b jnz w2 w3: in 89h ; ждем TxRDY ani 01h jz w3 mvi a,55h ; Тупо выводим 55h out 88h ; выводим dcr b jnz w3 ; цикл rst7 Приемник mvi a, 76h ; INIT ВИ53 out 87h ; CT1, режим 3, 2 байта mvi a, 0a7h ; мл. байт коэф. пересчета out 85h mvi a, 00h ; ст. байт out 85h lxi d, 3377h ; синхросимволы xra a ; INIT ВВ51 out 89h ; поиск CI out 89h out 89h mvi a, 40h ; сброс out 89h mvi a, 08h ; синхр. режим, 7 бит, 2 синхр.симв. out 89h ; внутр. синхр., нет контроля mov a, d ; первый синхр. символ out 89h mov a, e ; второй синхр. символ out 89h in 88h ; ложное чтение mvi a, 94h ; EN ER RxEN out 89h lxi h, 0899h ; пишем в память с 0900h mvi b, 00h ; прием 256 символов w1: in 89h ; ждем DSR ani 80h jz w1 mvi a, 06h ; RxEN DTR out 89h w2: in 89h ; ждем RxRDY ani 02h jz w2 in 88h ; читаем cmp d ; сравниваем с 1-м синхр.симв. jz w2 cmp e ; сравниваем со 2-м синхр.симв. jz w2 inx h ; HL++ mov m, a ; пишем в память dcr b ; B-- jnz w2 ; цикл rst7 |
||
Оценка
|
Новичок
Регистрация: 13.02.2008
Адрес: Ставрополь
Сообщений: 493
Репутация: 39
|
Просто интересно почему преподают старье? (Самому смешно -ответ то известный ) Ведь чтобы проверить надо собрать целую микро ЭВМ 80-х годов.
Проще взял PIC - написал прогу . нужен простой программатор и макетка. А дальше экспериментируй...... И в конфе многие посоветуют |
||
Оценка
|
Гуру
Регистрация: 13.05.2006
Сообщений: 3,908
Репутация: 1247
|
Цитата:
Есть программа передачи массива с одного компа на другой
|
||
Оценка
|
Новичок
Регистрация: 13.02.2008
Адрес: Ставрополь
Сообщений: 493
Репутация: 39
|
Я сам был задействован в процесе обучения в одном из ВУЗов. Так система образования такая консервативная и очень медлительная на новые технические решения, потому что сначала нужно самому изучить , затем написать учебник, его должны утвердить, а затем внести его в программу и только потом учить студентов.
если что упустил пусть меня поправят. Плюс редко кто хорошо владеет теорией и практикой одновременно , что бы написать толково - вот и пользуются старьем. Но это уже совсем не техническая тема ....... Не в обиду LEAS работаю на них потому , что знаю их лучше всего. А стартовал я с комплекта 580 , а также других процев. А сейчас работаю на PIC. |
||
Оценка
|
Обратная связь РадиоЛоцман Вверх |