Fórum

FAÇA UM RELÓGIO CON...
 
Notifications
Clear all

FAÇA UM RELÓGIO CONTROLADOR DE 6 CANAIS (VERSÃO PARA DS1307) – COM PIC 16F628A E LCD (REF116)

5 Posts
2 Users
0 Likes
1,532 Leituras
(@nelsonpjt)
Eminent Member
Joined: 5 anos ago
Posts: 17
Topic starter  

Olá Cláudio,

Preciso de uma ajuda nesse projeto.

Ele está rodando normal no Proteus, entretanto, preciso fazer algumas modificações no projeto

Acontece que está dando vários erros na hora de compilar, relacionados a biblioteca do DS1307

[/IMG]" target="true"> [IMG] [/IMG]

O que pode ser isso?

This topic was modified 5 anos ago by NelsonPJT

   
Quote
(@clarios)
Reputable Member Admin
Joined: 12 anos ago
Posts: 357
 

O arquivo c fornecido não usa nenhuma biblioteca anexada, pois tem nele as rotinas de i2c. Quando você acrescenta uma biblioteca i2c do compilador, então ocorrerá uma mensagem avisando que 'o identificador já foi usando neste escôpo' ou seja, tem 2 funções usando o mesmo nome, o que não pode acontecer. Retire esta biblioteca do compilador e tente compilar somente o arquivo c.

Caso necessite usar a biblioteca i2c por algum motivo, então tente comentar a inteira função 'void i2c_start(void)' com '/*   ...........*/  ou // no início de cada linha da função em questão. Depois tente compilar.  Pode ser que outras funções apareçam  também como repetidas, tendo de fazer o mesmo com elas (comenta-las).

Obs. A rotina do compilador pode ter pinos diferentes sendo usados para a comunicação i2c. Confira isto antes de usa-la. Talvez pode ser necessário usar outros valores de resistores de pullup e colocar um resistor no pino 6 do DS1307 ao vcc. Tem a questão da velocidade de comunicação que tem que ser compatível para funcionar com DS1307.


   
ReplyQuote
(@nelsonpjt)
Eminent Member
Joined: 5 anos ago
Posts: 17
Topic starter  

Obrigado por responder Cláudio,

Não estou utilizando nenhuma biblioteca I2C, estou usando o arquivo original fornecido por vc (Relogio_Control_V4) e mesmo assim tá dando esse erro.

Não tem nenhuma biblioteca declarada

O que pode ser então? 


   
ReplyQuote
(@clarios)
Reputable Member Admin
Joined: 12 anos ago
Posts: 357
 

Bem estranho. O compilador está dizendo que a função já existe, que está duplicada. Será que, talvez em alguma operação de copiar e colar não foi acrescentado ela em repetição? Confira o código visualmente ou use o 'Editar'/'Localizar' para ver onde estão no código.

Caso esteja tudo certo, tente compilar com o CCS C compiler para confirmar. Estamos falando de um compilador externo ao Proteus.

As vezes uma dada versão do CCS mais moderna não compila os arquivos de versões mais antigas sem dar erro. Tente usar a versão mais antiga.

A verdade é que não sei o que realmente pode estar ocorrendo no seu caso.


   
ReplyQuote
(@nelsonpjt)
Eminent Member
Joined: 5 anos ago
Posts: 17
Topic starter  

Cláudio,

Bom, eu fiz o seguinte:

Peguei a biblioteca device do PIC (16F628.h) e comentei a parte da função I2C e mandei compilar.

Então eu mandei compilar o arquivo Relogio_Control_V4.c e pronto...funcionou!!!!!

Claro que salvei uma cópia da biblioteca do 16F628A.h

Obrigado mais uma vez amigo

Seus projetos são excelentes!!!!!


   
ReplyQuote
(@clarios)
Reputable Member Admin
Joined: 12 anos ago
Posts: 357
 

Cada versão que sai dos compiladores o programador sofre para se ajustar as novas mensagens de erro! Fazer o que, né!

Parabéns pelo seu sucesso! Continue sendo persistente e você resolverá qualquer desafio!

 


   
ReplyQuote
Back To Top