Página 1 de 1
Saida de clock do timer 2 do AT89S8252

Enviado:
03 Nov 2006 12:27
por 51
Estou intrigado, estou usando o timer 2 pela primeira como "programmable clock out", a saida, no pino p1.0, deveria ser 50%, certo? pois é a minha esta em 75%! Será que meu osciloscopio esta desajustado? Estranho...
Re: Saida de clock do timer 2 do AT89S8252

Enviado:
03 Nov 2006 13:47
por andre_luis
Se este pino for a SAIDA do oscilador, sem pré-scaller ( bufferizado, obviamente ), não há nada que condicione a ser obrigatoriedade um sinal simétrico, uma vez que o oscilador, algumas vezes é baseado em smith-trigger.
Se tivesse uma divisao de frequencia ( flip-flops ) após o oscilador, realmente deveria ser 50%/50%
+++

Enviado:
03 Nov 2006 13:54
por 51
André, tem um divisor por 4 e um divisor programavel de 16 bits entre o clock e a saida.

Enviado:
03 Nov 2006 17:11
por brasilma
Chefe,
Realmente em vários lugares é dito que o duty é de 50%, então acho que deve ser mesmo, (isso não vou nem perguntar: To configure the Timer/Counter 2 as a clock generator, bit C/T2 (T2CON.1) must be cleared and bit T2OE (T2MOD.1) must be set), será que o clock do controlador está 50%? Será que não é alguma coisa com a impedância da ponta? Tenta passar para x10.
Abraços,
MArcos.

Enviado:
07 Nov 2006 06:52
por 51
Logo após o setup do timer 2, a saida esta em 50%,mas, segundos depois estou fazendo alguma coisa que faz com ela vá para 75%, ainda não sei o que, me parece que tem a ver com a int da serial!
O mais estranho é que se eu recarregar os registradores de recarga tudo volta ao normal! Enfim, isso não gera problema para a minha aplicação.
Estou vendo isso apenas nos finais de semanas, vou tentar descobrir exatamente o que ocorre e escrevo aqui.

Enviado:
06 Dez 2006 19:52
por pomboeletronic
Montei um gerador de sinal com uma saida de 1Khz fixo usando o timer2..
E a int1 como frequencimetro... e não tive problemas...
veja como uso o timer2 com saida na p1.0
- Código: Selecionar todos
;***************************************************************************************************************************************
;
; Timer 0
; P1.0 - clock out
; CT2 ( T2CON.1 ) = 0
; T2OE ( T2MOD.1 ) = 1
; T2MOD (DCEN) = D=FANT =0
; EXEN2 = 0 (T2CON)
; CP/RL2 = 0
; RCLK = 0
; TCLK = 0
; ****************************************************
; T2CON
;
; 0 0 0 0 0 0 0 0 RESET
; TF2 EXF2 RLK TCLK EXN2 TR2 CT2 CP/RL2
; ************************************************************
; T2MOD
; 0 0 0 0 0 0 0 0
; - - - - - - T2OE DCEN
; RCAP2H
; RCAPL
; 22118400
; CLOCK = ------------------
; 4 ( 65536 - RCAP )
;
;
; 22118400
;(65536 - RCAP) = ---------------- ==>
; 4 CLOCK
;
;
; 22118400
; RACP = 65536- -----------
; 4 X CLOCK SENDO CLOCK = 1K
;
; RACP = 65536 - 22118400 ==> 60006
; ---------
; 4000
;TRANSFORMANDO ISSO PARA HEXA
;
;EA 66
;
;
;
;
;
;
;Alan Lopes Pombo
;
;
;
;***************************************************************************************************************************************
#include <89S8252.inc>
org 0 ljmp principal
principal:
mov RCAP2H,#eah;
mov RCAP2L,#66h;
mov th2,#eah;
mov tl2,#66h;
mov T2MOD,#00000010b;
setb tr2
end