>> Tecnologia Eletrônica >  >> Telefones >> Viva-voz de Conferência

Assembly 8085: Programa de Interface Relé com Atraso

Programa Completo Anotado

; ============================================ ; Interface Relé para Microprocessador 8085 ; Liga relé por 5 segundos, depois desliga ; ============================================ ; --- Equates --- RELAY_PORT EQU 08H ; Endereço porta de saída DELAY_COUNT EQU 05H ; 5 loops de segundos (externo) ; --- Programa Principal --- ORG 1000H ; Endereço inicial típico START: MVI A, 00H ; Limpa acumulador OUT RELAY_PORT ; Garante relé DESLIGADO inicialmente MVI A, 01H ; Padrão relé LIGADO (bit 0 = 1) OUT RELAY_PORT ; Ativa relé ; --- Atraso de 5 Segundos --- MVI B, DELAY_COUNT ; Loop externo = 5 OUTER: CALL DELAY_1SEC ; Subrotina atraso 1 segundo DCR B ; Decrementa contador JNZ OUTER ; Repete até B=0 MVI A, 00H ; Padrão relé DESLIGADO OUT RELAY_PORT ; Desativa relé HLT ; Para CPU ; --- Subrotina Atraso 1 Segundo (aprox, clock 3 MHz) --- DELAY_1SEC: LXI H, 0F424H ; 62.500 decimal (3M/48 ≈ 1s) DELAY_LOOP: DCX H ; 6 T-states MOV A, H ; 4 T ORA L ; 4 T JNZ DELAY_LOOP ; 10/7 T RET ; 10 T END 

Explicação

  • RELAY_PORT (08H): Conecte driver de relé (transistor + diodo) ao bit 0 desta porta.
  • OUT RELAY_PORT: Envia acumulador para porta — energiza bobina do relé.
  • Atraso: DELAY_1SEC usa par de registradores HL como contador de 16 bits. A 3 MHz, 62.500 loops ≈ 1 segundo. Loop externo roda 5 vezes.
  • HLT: Para processador; relé permanece desligado.

Notas de Hardware

  • Use ULN2803 ou 2N2222 + 1N4007 na bobina.
  • Porta 08H deve ser decodificada para escrita apenas.
  • Ajuste constante de atraso para sua frequência de clock.