Calendario do DS1307

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Mensagempor SoMeWhErE » 14 Mai 2008 17:50

Olá .....

valew pela ajuda mais não funcionou...

em relação ao cristal nunca testei é a primeira vez que estou usando, eu uso a PICGenios18F da Microgenios, o cristal já veio na placa.

coloquei uns leds para piscar pra saber se estava travando entre a função principal e a de leitura, está rodando normal, ta td piscando.

testei com a modificação e nada....

VALEW
Avatar do usuário
SoMeWhErE
Byte
 
Mensagens: 119
Registrado em: 20 Jun 2007 18:09
Localização: Charqueada

Mensagempor Sergio38br » 15 Mai 2008 08:25

Bom dia,

Voce esta transformando o valor lido para decimal com a função bcd2dec(variavel em bcd) antes de mandar para o display?

Não conheço esta placa, tenho uma bigpic4, como todas tem alguma coisa em comum, verifique os pull-ups, straps.


Sergio
Avatar do usuário
Sergio38br
Word
 
Mensagens: 759
Registrado em: 22 Nov 2007 13:39
Localização: São Paulo - SP

Mensagempor SoMeWhErE » 15 Mai 2008 08:41

Bom Dia.

Código: Selecionar todos
//********************* Rotina de conversão de dados para BCD ******************
void BCD(unsigned short x, unsigned short y,unsigned short var) {
var1 = (var >> 4) + 0x30;  //converte o primeiro nibble em BCD e após isso, em string
LCD_custom_Chr(x,y,var1);   //escreve caractere no LCD
var2 = (var & 0x0F) + 0x30; //converte o segundo nibble em BCD e após isso, em string
LCD_custom_Chr_Cp(var2);   //escreve caractere no LCD
}


Sim. ae está a função que faz isso.
Os Pull-ups estão ligados, são de 22k. Os straps tambem liguei.

valew
Avatar do usuário
SoMeWhErE
Byte
 
Mensagens: 119
Registrado em: 20 Jun 2007 18:09
Localização: Charqueada

Mensagempor ze » 15 Mai 2008 09:15

há algum tempo atrás tbém não conseguia ler 1 eeprom. tive que colocar 1 repstart().
Código: Selecionar todos
/******************************************************************************************/
void i2c_waitForIdle()
{
while ((SSPCON2 & 0x1F) | RW ); // wait for idle and not writing (PIC18F252)
//while ((SSPCON2 & 0x1F) | STAT_RW ); // wait for idle and not writing (PIC16F876A)
}
/******************************************************************************************/
void i2c_start()
{
i2c_waitForIdle();  //<<----------!!!!
SEN=1;
}
/******************************************************************************************/
void i2c_repStart()
{
i2c_waitForIdle(); //<<----------!!!!
RSEN=1;
}

seu disparo() tem um espere_a_carroça()?
Avatar do usuário
ze
Dword
 
Mensagens: 1655
Registrado em: 05 Jun 2007 14:32

Anterior

Voltar para PIC

Quem está online

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

x