User Tag List

Показано с 1 по 10 из 562

Тема: DSDOS для ПРК "Орион-128"

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,234
    Спасибо Благодарностей отдано 
    490
    Спасибо Благодарностей получено 
    989
    Поблагодарили
    641 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    Cool Порт COM1 на КР580ВВ51А / MSM82C51A-2

    В добавок к предыдущему посту вариант реализации интерфейса RS-232 (порт COM1, v.2) на микросхеме КР580ВВ51А (или MSM82C51A-2):



    альтернативная ссылка на схему

    Подробно описывать не буду, ибо, что называется, действующие лица в общем-то те же. Для упрощения схемотехники из оригинальной схемы выкинут таймер КР580ВИ53, вместо него тактирование протокола выполняет синтезатор частот на интегральном генераторе и счётчике-делителе. Схема позволяет устанавливать либо отечественный УСАПП - КР580ВВ51А (скорость обмена 38400 Бод, перемычки J1 и J2 в нижнем положении), либо быструю КМОП-версию UART от OKI - MSM82C51A-2 (скорость обмена 115200 Бод, перемычки J1 и J2 в верхнем положении).
    Программно данный порт полностью совместим с оригинальным (из ж. РАДИО), всё ранее написанное ПО (LINK$, VDISK) с ним совместимо (скорость обмена аппаратно зафиксирована, программная настройка игнорируется).


    Информация по программированию порта COM1:

    Код:
    ; BIOS (2/2) для DSDOS v3.81 (Орион-128.2)
    ; (C) 1998-2016 Соловьев Д.Н. /Санкт-Петербург/
    ; 18.06.2016
    
    ; Порт COM1 (ВВ51А)
    
    PT_TM0:EQU 0F730H
    PT_CTM:EQU 0F733H
    PT_SP0:EQU 0F740H
    PT_SP1:EQU 0F741H
    
    
    IniCOM:
    ; Инициализация порта COM1
    
    ; Настройка таймера ВИ53
    MVI A,36H
    STA PT_CTM
    
    LXI H,PT_TM0
    MVI A,9; 14400 Бод
    MOV M,A
    XRA A
    MOV M,A
    
    ; Настройка УСАПП ВВ51А
    LXI H,PT_SP1
    MVI A,1
    MOV M,A
    MOV M,A
    MVI A,40H
    MOV M,A
    MVI A,4EH; настройка протокола (8,N,1)
    MOV M,A
    MVI A,27H
    MOV M,A
    DCX H; [HL]=PT_SP0
    MOV A,M; очистка порта ввода
    RET
    
    
    SvbCOM:
    ; Запись байта в порт COM1
    ; I: [C]-записываемый байт
    ; O: <C>=0 - [A]=записанный байт,
    ;    <C>=1 - порт не готов
    MVI B,0; time-out const = 256
    
    SVB1:
    ; ожидание готовности
    DCR B
    JZ LDB1_4
    LDA PT_SP1
    RRC
    JNC SVB1
    MOV A,C
    STA PT_SP0
    CMC
    RET
    
    
    LdbCOM:
    ; Чтение байта из порта COM1
    ; O: C=0 - [A]-считанный байт
    ;    C=1 - ошибка (тайм-аут)
    
    ; проверка на преждевременную готовность
    LDA PT_SP1
    ANI 2
    JNZ LDB1_2
    
    ; ожидание поступления данных
    PUSH B
    LXI B,33000; time-out const
    
    LDB1_1:
    DCX B
    MOV A,B
    ORA C
    JZ LDB1_3
    LDA PT_SP1
    ANI 2
    JZ LDB1_1
    POP B
    
    LDB1_2:
    LDA PT_SP0
    RET
    
    LDB1_3:
    POP B
    
    LDB1_4:
    STC
    RET
    Последний раз редактировалось Denn; 11.02.2024 в 11:49. Причина: Изменение путей ссылок
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 17
    Последнее: 26.12.2015, 23:22
  2. продам платы "Орион-128"
    от AHTuXPuCT в разделе Барахолка (архив)
    Ответов: 70
    Последнее: 19.06.2012, 20:39
  3. Платы ром-диска "Орион-128"
    от AL.EX в разделе Барахолка (архив)
    Ответов: 45
    Последнее: 10.06.2012, 12:54
  4. Куплю плату "Орион-ПРО"
    от АлександрПП в разделе Барахолка (архив)
    Ответов: 3
    Последнее: 15.05.2011, 20:48
  5. Ответов: 0
    Последнее: 15.08.2010, 14:38

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •