Boa noite galera alguém pode me ajudar a criar o seguinte programa em linguagem assembly.
Criar um programa para acionar um alarme cujos sensores que serão instalados nos laboratórios de Eletrônica: A, B, C, D, E, F, G e a Porta de vidro.
Ao sair a noite, o professor responsável por fechar os laboratórios acionará o alarme e o mesmo deverá ser ligado.
De manhã, quando o professor responsável por abrir os laboratórios chegar o mesmo terá 30 segundos para desligar o alarme caso contrario acionará uma sirene.
O alarme funcionará da seguinte maneira:
Ao abrir a porta de qualquer laboratório ou a porta de vidro, o circuito deverá contar um tempo de 30 segundos e ativar a sirene
Tags:
Deve ficar algo parecido com isso. Não testei... Para ligar só energizar o circuito.
// considerando P1 com todas as entradas, 1=porta aberta e 0=porta fechada. São 8 entradas.
// considerado P2.0 como saida da sirene.
CLR P2.0 //desliga sirene
MOV P1,#255 //Seta os bits da P1 pra virar entrada
Loop1:
MOV A,P1 // Le P1
JZ Loop1 //Enquanto todas as entradas estiverem em 0 fica nesse loop
MOV R0,#255
MOV R1,#255
MOV R2, #30 // Esses numeros vao contar os loops, tem que calcular o valor correto para o seu cristal e processador.
Loop2:
DJNZ R0,Loop2
DJNZ R1,Loop2
DJNZ R2,Loop2
SETB P2.0 // Liga sirene
FIM: JMP FIM
Obrigado cara vou fazer uns testes aqui
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por