DUVIDAS COMANDO ASSEMBLY

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

DUVIDAS COMANDO ASSEMBLY

Mensagempor antsergio » 08 Ago 2008 19:13

Olá pessoal do forum,estou de volta,boa noite á todos.
Gostaria que o pessoal verificassem o porque a chave RA4 não desliga o BUZZER,estou rancando cabelos para entender,resolvi parar e perguntar,pois do contrario ficarei sem um fio de cabelo.À proposito estou com saudades dos amigos"Fabin e do Lellis,e aproveito falar que a foto antiga do Fabin era mais legal do que a nova foto.Aproveito e colo o meu projeto para que alguem ai me ajude.Já ia me esquecendo o PIC é o
16F628A,e a chave liga é o RA7,sendo RA6 saida do BUZZER.
Desde já um forte abraço a todos.
:oops:
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
;* ROTINA PRINCIPAL *
;* DIGITE O SEU PROGRAMA ENTRE: MAIN E END *
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
MAIN
BCF BUZZER ;DESLIGA
TESTA_LIGA
BTFSC LIGA
GOTO LIGA_BUZZER
TESTA_DESLIGA
BTFSC DESLIGA
GOTO DESLIGA_BUZZER
GOTO MAIN
LIGA_BUZZER
BUZZER_ON
BSF BUZZER
CALL DELAY_05MS
DESLIGA_BUZZER
BUZZER_OFF
BCF BUZZER
CALL DELAY_05MS
GOTO LIGA_BUZZER
DELAY_05MS
CARREGA_T1
MOVLW .125
MOVWF TEMPO1
DEC_T1
NOP
DECFSZ TEMPO1,F
GOTO DEC_T1
RETURN
END ;FIM DO PROGRAMA
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
antsergio
Bit
 
Mensagens: 17
Registrado em: 11 Fev 2008 19:24

Mensagempor Djalma Toledo Rodrigues » 08 Ago 2008 21:01

RA4, RA6 e RA7 estão equ e com o Trisa configurados corretamente ?
E o Pull up tmb ?
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor antsergio » 09 Ago 2008 07:46

Djalma Toledo Rodrigues escreveu:RA4, RA6 e RA7 estão equ e com o Trisa configurados corretamente ?
E o Pull up tmb ?


:oops:
Olá Djalma,bom dia.
Realmente esqueci de passar os dados principais,pois as condições são:
CBLOCK
CONTADOR
TEMPO1

ENTRADAS
#DEFINE LIGA PORTA,7
#DEFINE DESLIGA PORTA,4

SAIDAS
#DEFINE BUZZER PORTA,6

CONFIGURAÇÕES DOS BITS
TRISA -B'10111111
TRISB -B'00000000
Já os PULLUP,não estou utilizando,não aprendi ainda,se trata de placa didatica,se for isto,ferrou.
Pois foi assim que eu montei o programa,não sei imaginar onde esta faltando comando,ou se escrevi errado.Gostaria que me ajudasse com esta falha e duvidas,desde já muito obrigado por sua atenção.
Um abraço.
antsergio
antsergio
Bit
 
Mensagens: 17
Registrado em: 11 Fev 2008 19:24

Mensagempor Djalma Toledo Rodrigues » 09 Ago 2008 10:20

Se vc não esta usando o Pull up então necessáriamente tera que usar um resistor ligado do pino de RA4 ao + 5 V e outro resistor do pino RA7 ao + 5 V tmb. ( Isto supondo que as chaves ao serem acionadas coloquem RA4 e RA7 ao nível baixo , 0 Volt )
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor antsergio » 09 Ago 2008 11:43

Djalma Toledo Rodrigues escreveu:Se vc não esta usando o Pull up então necessáriamente tera que usar um resistor ligado do pino de RA4 ao + 5 V e outro resistor do pino RA7 ao + 5 V tmb. ( Isto supondo que as chaves ao serem acionadas coloquem RA4 e RA7 ao nível baixo , 0 Volt )


Olá Djalma.
Como seria a utilização de PULL up,e como explica o funcionamento de RA7,porque através desta chave eu consigo ligar o BUZZER,mas não consigo desligar através da chave RA4,espero que esteja entendendo á minha dificuldade,tudo isto esta acontecendo por causa do professor que não responde ao meu email,explicando o porque desta situação,e para completar ainda mais a compreensão das duvidas,executei o mesmo programa,só que para acionar um ventilador,e para surpresa RA7 liga,RA4 desliga normalmente,nesta fiquei viajando.
Se fosse caso de PULLup,se estou enganado me corrija;RA7 tambem não iria funcionar.Volto a falar que estou aplicando todos os exercicios na placa didatica do professor.E gostaria de mais parecer seu para esta situação.
Um abraço
antsergio
antsergio
Bit
 
Mensagens: 17
Registrado em: 11 Fev 2008 19:24

Mensagempor RobL » 09 Ago 2008 15:47

Você transformou as postas A em digital?
Veja se tem isso na inicialização:

movlw 0x7
movwf CMCON

A porta A4 é Smith Trigger, portanto o 1L tem que ser maior que 0,8 x Vcc e 0L menor que 0,2 Vcc.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor Djalma Toledo Rodrigues » 09 Ago 2008 16:38

Antsergio desculpe minha falha a respeito do Pull up , é que a Pota A não tem esse recurso. A Porta B tem e é configurado no reg. Option

Terá então que usar resistores externos para Pull up.

Parece que há um erro de lógica em seu programa,

Fiz aqui uma alteração mas, não testei . Verifique ai:


MAIN
BCF BUZZER ; BUZER DESLIGADO


TESTA_LIGA
BTFSS LIGA
GOTO LIGA_BUZZER
GOTO MAIN

LIGA_BUZZER
BUZZER_ON
BSF BUZZER
CALL DELAY_05MS
DESLIGA_BUZZER
BUZZER_OFF
BCF BUZZER
CALL DELAY_05MS

TESTA_DESLIGA
BTFSS DESLIGA
GOTO MAIN

GOTO LIGA_BUZZER




DELAY_05MS ; SUB ROTINA
CARREGA_T1
MOVLW .125
MOVWF TEMPO1
DEC_T1
NOP
DECFSZ TEMPO1,F
GOTO DEC_T1
RETURN

END ; FIM DO PROGRAMA
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor antsergio » 09 Ago 2008 17:02

Djalma Toledo Rodrigues escreveu:Antsergio desculpe minha falha a respeito do Pull up , é que a Pota A não tem esse recurso. A Porta B tem e é configurado no reg. Option

Terá então que usar resistores externos para Pull up.

Parece que há um erro de lógica em seu programa,

Fiz aqui uma alteração mas, não testei . Verifique ai:


MAIN
BCF BUZZER ; BUZER DESLIGADO


TESTA_LIGA
BTFSS LIGA
GOTO LIGA_BUZZER
GOTO MAIN

LIGA_BUZZER
BUZZER_ON
BSF BUZZER
CALL DELAY_05MS
DESLIGA_BUZZER
BUZZER_OFF
BCF BUZZER
CALL DELAY_05MS

TESTA_DESLIGA
BTFSS DESLIGA
GOTO MAIN

GOTO LIGA_BUZZER




DELAY_05MS ; SUB ROTINA
CARREGA_T1
MOVLW .125
MOVWF TEMPO1
DEC_T1
NOP
DECFSZ TEMPO1,F
GOTO DEC_T1
RETURN

END ; FIM DO PROGRAMA


Olá Djalma,boa tarde.
Acho que você esta certo,vi as mudanças e acredito que seja isto mesmo,só não vou testar agora porque o MALA do meu filho esta ensaiando musica sertaneja em meu departamento tecnico,talvez amanha de manha te retorno falando como foi.
Um abraço
antsergio :)
antsergio
Bit
 
Mensagens: 17
Registrado em: 11 Fev 2008 19:24

Mensagempor Djalma Toledo Rodrigues » 10 Ago 2008 10:09

Observe o exemplo de Iniciação de Porta , do Data Sheet:

CLEAR PORTA
MOVLW 07H
MOVWF CMCON ; (Como observou o RobL )
BCF STATUS, RP1
BSF STATUS, RP0 ; Banco 1
MOVLW B'10111111' ; No seu caso
MOVWF TRISA
BCF STATUS, RP0 ; Volta ao Banco 0


Com + os dois resistores para Pull up deverá funcionar .
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor antsergio » 14 Ago 2008 06:25

Djalma Toledo Rodrigues escreveu:Antsergio desculpe minha falha a respeito do Pull up , é que a Pota A não tem esse recurso. A Porta B tem e é configurado no reg. Option

Terá então que usar resistores externos para Pull up.

Parece que há um erro de lógica em seu programa,

Fiz aqui uma alteração mas, não testei . Verifique ai:


MAIN
BCF BUZZER ; BUZER DESLIGADO


TESTA_LIGA
BTFSS LIGA
GOTO LIGA_BUZZER
GOTO MAIN

LIGA_BUZZER
BUZZER_ON
BSF BUZZER
CALL DELAY_05MS
DESLIGA_BUZZER
BUZZER_OFF
BCF BUZZER
CALL DELAY_05MS

TESTA_DESLIGA
BTFSS DESLIGA
GOTO MAIN

GOTO LIGA_BUZZER




DELAY_05MS ; SUB ROTINA
CARREGA_T1
MOVLW .125
MOVWF TEMPO1
DEC_T1
NOP
DECFSZ TEMPO1,F
GOTO DEC_T1
RETURN

END ; FIM DO PROGRAMA


Olá Djalma,bom dia.
Realmente era o programa que estava errado,corrigi conforme citação sua acima,compilei e gravei o PIC na placa didatica,funcionou 100%.Quanto aos PULLup,realmente ja existe na placa didatica,é por isto que eu não aprendi ainda,as proximas aulas,sera este conteudo.
Desde já agradeço muito a sua atenção.
Um abraço :D
antsergio
Bit
 
Mensagens: 17
Registrado em: 11 Fev 2008 19:24

Mensagempor xultz » 14 Ago 2008 08:52

Normalmente o pino A4 é somente entrada nos PICs, tme cuidado com isso!
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor Djalma Toledo Rodrigues » 14 Ago 2008 11:53

Xultz o pino A4 é saida também, só que com Dreno aberto, necessitando portanto de uma RL .
Verifique.

Abraço e boa saida.
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor antsergio » 15 Ago 2008 21:04

xultz escreveu:Normalmente o pino A4 é somente entrada nos PICs, tme cuidado com isso!


:D

Olá xultz,boa noite.
Agradeço-lhe muito por teu parecer com meu programa,isto é,os comandos assembly,e é mais uma dica importante,e que ainda não cheguei ai,mas valeu e muito.
Um abraço
antsergio
antsergio
Bit
 
Mensagens: 17
Registrado em: 11 Fev 2008 19:24

Mensagempor Djalma Toledo Rodrigues » 17 Ago 2008 11:34

Se +++ precisar, não hesite .
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

cron

x