You are on page 1of 5

c 

     




      !" #  $  %  &' ( 
    )         * +,
 
     (
  $   ( +-    # 
(   "#.    +

/# 0 1 


Ä 


,
    12   
  '   ') '  '  '    ' 3
$  1+




.  

-
       $ 34  +5 (  "
  3     !3(# +




 .  3   
c 
     


      !" #  $  %  &' ( 
    )         * +,
 
     (
  $   ( +-    # 
(   "#.    +

/# 0 1 






È
 .  (  

-
  $  (  +53 
6  $  3 3 3 ( )
    +





È
 .7#!   !8  
Na figura 3 ilustramos o gráfico que demonstra a transferência de dados do DS1302, tanto
para escrita como para leitura. Se o leitor observar atentamente verá que o modo de
comunicação é o 3-Wire (já demonstrado na revista Eletrônica Total no artigo ʹ Termômetro
Digital com Microcontrolador PIC ʹ edição nº111).

O nome ͞3-Wire͟ reflete diretamente o tipo de comunicação que temos neste componente:
uma comunicação do tipo ͞serial síncrona͟, com três fios: Dados (I/O), ͞Clock͟ (SCLK) e ͞Reset͟
(/RST). Neste tipo de comunicação o elemento de controle ͞mestre͟ (microcontrolador) é
responsável pela geração do ͞clock͟ de sincronismo para comunicação e também pelo
controle do ͞Reset͟. No caso do DS1302, o mesmo é feito levando o pino /RST ao nível lógico
͞1͟. Quando isto é feito, seu pino de dados é levado ao estado ͞tri-state͟ (alta impedância).
Èigura 4 - Gráfico dos tempos para transferência de dados - leitura.

Na figura 4 vemos o gráfico que demonstra os tempos para a transferência de dados entre o
DS1302 e um microcontrolador (microcontrolador lendo os registradores do DS1302).

Èigura 5 - Gráfico dos tempos para transferência de dados - escrita

Já na figura 5 observamos o gráfico que demonstra os tempos para a transferência de dados


entre um microcontrolador qualquer e o RTC (microcontrolador escrevendo nos registradores
do DS1302).

Nota: Os valores máximos, mínimos e médios para os tempos informados em ambos os


gráficos devem ser consultados no ͞datasheet͟ do componente inserido em nosso site.

Como dito anteriormente, não basta apenas conhecer o modo de comunicação e seus tempos.
É necessário compreender as funções dos registradores internos do DS1302, que fazem todo o
controle do CI. Na figura 6 o leitor encontrará estas informações.
Èigura 6 - Registradores internos de controle do DS1302

A interpretação dessa figura é bem simples. Na coluna ͞Register Address͟ temos o endereço
do registro, e na coluna ͞Register Definition͟ a definição e o modo de uso do registro. Como
exemplo, vamos analisar o registro de numero 80H (segundos).

Neste registro é possível escrever um valor ͞BCD͟ (Binary Coded Decimal ʹ Decimal Codificado
em Binário) de 0 a 59 (segundos). Este é o registro de escrita para o dado ʹ ͞segundos͟. O
endereço 81H permite a leitura do dado - ͞segundos͟.

A forma com que o dado é escrito ou lido é de fundamental importância. É importante que o
leitor compreenda que o dado é passado ou lido no formato ͞BCD͟ e não no formato binário
puro.

No formato BCD cada dígito de um valor decimal qualquer é codificado (ou representado)
separadamente. Como um digito decimal pode assumir valores entre 0 a 9, são necessários
quatro bits para a codificação em BCD de cada dígito. Considere o valor 953 decimal, sua
codificação BCD ficaria então:

Se a conversão do valor 953 fosse feita para o binário puro o resultado seria b1110111001. O
leitor deve ter notado que os bits foram dispostos de maneira completamente diferente para
ambos os casos. No caso binário puro a conversão é feita de forma direta, mas no caso BCD,
cada ͞digito decimal͟ foi convertido separadamente.
Todos os outros registradores do DS1302 como ͞minutos͟, ͞mês͟ e ͞dia da semana͟ (1 a 7)
seguem o mesmo princípio. O registrador que contém o dado ͞hora͟ tem apenas uma
diferença. Dependendo do valor inserido no bit7 deste mesmo registrador, o bit5 em conjunto
com o bit4 será utilizado para marcar o dígito da segunda dezena (0010) da hora para o
formato 24 horas, ou ainda um bit que indicará a nomenclatura ͞AM͟ ou ͞PM͟ para o formato
12 horas.

O leitor deve ter muita atenção ao lidar com os registradores do DS1302 para evitar
problemas. Lembre-se, os registradores são escritos e lidos no formato BCD !!!

Obs.: O DS1302 possui também recursos para carga da bateria de ͞backup͟. Este recurso não
será discutido neste artigo. O leitor interessado neste recurso poderá, através do ͞datasheet͟,
encontrar as informações necessárias para o seu uso.