Configurar timer para 100khz.

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Configurar timer para 100khz.

Mensagempor Smarley » 04 Mar 2010 16:37

Olá pessoal!
Eu gostaria de fazer uma comunicação entre 2 pics.
Olhando no manual do CCS, ele sugere que quando utilizar o comando kbhit() ler pelo menos a 10 vezes a velocidade de um bit, ou seja, 9600bps, ler o kbhit a 96khz.
Eu gostaria de configurar o timer0 ou timer1 para isso mas não estou conseguindo.
Bom, pensando no timer0. Eles estoura em 256, então utilizando preescaler 1 teríamos estouros a cada 4000000/4/256 = 3906,25Hz.
Configurando o timer0 assim:

#int_timer0
void timer0()
{
static int cont;
static boolean led=0;
set_timer0(0 + get_timer0());

led=!led;
output_bit(PIN_D0,led);

}

Para eu aumentar a frequência eu teria que setar um valor para o timer, certo? Como por exemplo, set_timer0(120 + get_timer0());
Assim ele não iria contar até 256 e sim até 136 resultando em 4000000/4/136 = 7352Hz.
Seguindo este pensamento, eu fui aumentando este valor até o máximo possível 254. Só que com esse valor eu consigo 3600Hz.
A maior frequencia que consigo é de 12Khz utilizando set_timer0(180 + get_timer0());
A minha idéia era deixar ele contar somente 10, para eu consegui os 100Khz pretendidos.
Isso não é possível?

Obrigado pela ajuda!
Abraços!
Smarley
Bit
 
Mensagens: 48
Registrado em: 17 Jul 2008 17:05

Mensagempor _blackmore_ » 04 Mar 2010 18:19

já tentou trocar o cristal?
acho que 20MHz ... e a contagem do timer com 205 ... dah os 100KHz ...

(20e6/4)/50 ....

Ou utilizando o cristal de 4MHz ... a contagem do timer com 245 ...

(4e6/4)/10 ...


abrax!
_blackmore_
Dword
 
Mensagens: 1397
Registrado em: 28 Set 2008 13:26

Mensagempor Smarley » 04 Mar 2010 18:35

Sim, foi o que eu tentei.
4Mhz com a contagem em 245.
Mas a frequencia fica em 2Khz. Achei muito estranho isso.
Eu estou compilando e simulando no Proteus.
Nunca tive erros no Proteus, por isso ficou confuso isso.

Abraço!
Smarley
Bit
 
Mensagens: 48
Registrado em: 17 Jul 2008 17:05


Voltar para PIC

Quem está online

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

cron

x