· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.HELHEIM —› порты

Посл.отвђт Сообщенiе


Дата: Май 19, 2004 13:09:03

Для МП-системи, в яку входять, крім інших, мікропроцесор серії К580 і схема інтерфейсу КР580ВВ55А, скласти програму видачі звукового сигналу. Пе-редбачається, що гучномовець під'єднаний до виходу розряду В0 порту В схеми інтерфейса. В програмі передбачити “програмування інтерфейсу” і почерговий вивід через розряд В0 порту В (адреса порту – F9) рівнів “0” і “1” з відповідною затримкою. Як можна змінити тональність звукового сигналу.

если не знакомы с коммандами процессора K580 то можно на люом другом. HELP ME


Дата: Май 19, 2004 18:54:11 · Поправил: Aquila

何か。


Дата: Май 20, 2004 13:11:16

что это?


Дата: Май 21, 2004 08:22:57 · Поправил: Безпощадный даос

по-русски напиши, или по-английски. [матершина вырезана] не понятно.


Дата: Май 22, 2004 02:30:39

xman

К580 использовались в компьютерах: Микро-80, Радио-РК86, Специалист и многих других.
В сети можно найти эмуляторы и программы (возможно с исходниками) на них - звук там как раз был реализован на КР580ВВ55А.

Может быть поможет дизасм ROM Spectrum.
Это Z80, используется регистр IX и другой порт, так что нужно переделывать.
;-------------------------------
; Routine to control loudspeaker
;-------------------------------
;
; HL - tone, DE - lenght

;; BEEPER
L03B5   DI                      ; Disable Interrupts
        LD      A,L             ;
        SRL     L               ;
        SRL     L               ;
        CPL                     ;
        AND     $03             ;
        LD      C,A             ;
        LD      B,$00           ;
        LD      IX,$03D1        ; Address: BE-IX+3
        ADD     IX,BC           ;
        LD      A,($5C48)       ; BORDCR ; это не важно
        AND     $38             ;
        RRCA                    ;
        RRCA                    ;
        RRCA                    ;
        OR       $08            ; ; это тоже не важно

;; BE-IX+3
L03D1   NOP                     ;

;; BE-IX+2
L03D2   NOP                     ;

;; BE-IX+1
L03D3   NOP                     ;

;; BE-IX+0
L03D4   INC     B               ;
        INC     C               ;

;; BE-H&L-LP
L03D6   DEC     C               ;
        JR      NZ,L03D6        ; to BE-H&L-LP

        LD      C,$3F           ;
        DEC     B               ;
        JP      NZ,L03D6        ; to BE-H&L-LP

        XOR     $10             ;
        OUT     ($FE),A         ;
        LD      B,H             ;
        LD      C,A             ;
        BIT     4,A             ;
        JR      NZ,L03F2        ; to BE-AGAIN

        LD      A,D             ;
        OR      E               ;
        JR      Z,L03F6         ; to BE-END

        LD      A,C             ;
        LD      C,L             ;
        DEC     DE              ;
        JP      (IX)            ;

;; BE-AGAIN
L03F2   LD      C,L             ;
        INC     C               ;
        JP      (IX)            ;

;; BE-END
L03F6   EI                      ; Enable Interrupts
        RET                     ;

ЗЫ
Сорри, понял плохо :(


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.108