prob INT com PIC!

F

Faizan Junior

Guest
My prog de teste não está funcionando ... O LED está intermitente, mas b0 LED B1 não está piscando em todos .... Alguém pode descobrir onde está o erro pls?Prog está escrito no CCS C Compiler

/////////////////// TEST_INT ///////////////////////////
# include <16F876.h>
# fuses HS, NOWDT, NOPROTECT, NOLVP
# use delay (clock = 4000000)
# int_timer1

wave_timer void ()
(
output_toggle (pin_b1);
)

main ()
(
set_tris_b (0xff);
set_timer1 (0);
setup_timer_1 (T1_INTERNAL | T1_DIV_BY_8);
enable_interrupts (INT_TIMER1);
enable_interrupts (global);
while (1)
(
output_toggle (pin_b0);
delay_ms (100);
)
)

 
adicionar esta em fusíveis,

# Fuses PUT / / Power Up Timer

B ur utilizando como porta de saída não como entrada mais baixa

set_tris_b (0x00);

Agora, ele vai trabalhar 100%

 
Graças hameeds01 ... Vc pode me dizer como fazer u relacionar PUT com Timer?Adicionado após 7 minutos:Eu fiz u modificações feitas, mas ainda só b0 LED está piscando e B1 não está piscando ....

 
Escreva desta forma:setup_timer_1(T1_DIV_BY_8 | T1_INTERNAL); estouro do cronômetro será depois = 2,04 ms

Este é um tempo muito curto para um olho para observar que o LED está piscando ...........

usar um osciloscópio para observar a mudança ou inserir uma variável de contador e verificar o contador para alternar o estado LED

 
Salam!
Tem circuito ur começou a trabalhar.Duvido que o cálculo que eu acho que deveria ser

time = 1000000 / (8 * 65535);
deve ser 1.90Hz.

Para o tempo eu penso 100msec u deve começar 5Hz freqüência que devem ser visíveis.
Eu software ur simulada e que está trabalhando, mas vou tentar verificar em detalhe.
----- Hafiz.

 
Thanks to both of u but i got a very strange prob...I`ve also simulated the software in PIC SIMULATOR IDE its working fine...But when i burn the IC it doesnt work...Any ideas...Not apenas isso, mas função de captura do timer 2 também não está funcionando ... Apenas e só funciona PWM ... Programmer Fault?

 
Desculpa eu estava considerando timer1 como 8-bit

Deixe-me corrigir cálculos ur waseem senhor se u don't mind

Ao longo do tempo de fluxo = (8 * 65535) / 1000000 = 0,524 sec
Período de tempo = 2 x 0,524 = 1,048 sec
Freqüência = 1 / T = 0,9536 Hz

 
AOA,
Sim Hameed ur right eu tinha escrito o cálculo para a freqüência de não interromper o tempo.
Atenciosamente.Adicionado após 1 minuto:bem que não pode ser a razão para o programa não está funcionando.Algo ainda está errado com o código de ur.Post ur código completo e, se possível, o hardware esquemática do circuito ur.

 

Welcome to EDABoard.com

Sponsor

Back
Top