Retornar
ao topo
ao topo
Autor
Mensagem
Level 6
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
Olá pessoal, tudo bem? Não sei mais o que fazer com o PIC12F675. Acontece o seguinte: Se eu codifico algo que não utiliza a função delay do ccs, tudo funciona normalmente. Mas se por exemplo eu tento fazer um código para piscar um LED como o código abaixo, nada mais funciona Exemplo: Se eu colocar o seguinte código: Código: O pino A5 não acendeSe eu colocar o fusivel PUT desabilitado (NOPUT), o Led fica acesso
porem não pisca
![]()
Se eu trocar a função delay_ms por um for, para tentar retardar o tempo, acontece a mesma coisa, o Led fica acesso e não pisca
![]()
![]()
Já mudei para oscilador externo, já tentei trocar o microcontrolador, já tentei rodar no Proteus e lá funciona, já tentei desabilitar as entradas analógicas, os comparadores, o Timer1, porem, nada resolve este problema. Será que alguém tem alguma idéia nova? Grato.
Sim... troque a linguagem de programaçãoBrincadeira à parte, você precisa descobrir o que o CCS está fazendo de errado. Pois é... muita gente reclama que o CCS tem alguns erros... mas claro que o erro pode estar em seu programa, infelizmente eu não programo em C. Uma alternativa é achar um programa exemplo que possua esta função... e funcione pra comparar. Sorry !
_________________
Level 6
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
Grande Paulo, e ai tudo bem? Pois é cara, esqueci de falar, eu já fiz isso também![]()
Inclusive, o código que coloquei aqui é o mesmo que encontrei na net. Rodando no proteus funciona que é uma beleza. Não sei se seria possível, mas já to até achando que é problema com o gravador... Abrs
Ué ? Então grave o PIC desprotegido e faça uma verificação... mas qualquer programa descente verifica a gravação antes de programar os fusíveis ! Perguntinha besta... este pino está configurado para saída ?
_________________
Level 6
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
Nada, continua sem funcionar.
Sim o pino esta como saída, no Proteus funciona.
E agora mais uma novidade, o Timer0 também não funciona. Tentei fazer uma simulação com o código abaixo e o mesmo não faz nada.
Código:
Vou tentar com o 16F84 pra ver se acontece o mesmo erro.
Abrs
HP Escreveu: Olá pessoal, tudo bem?
Não sei mais o que fazer com o PIC12F675.
Acontece o seguinte:
Se eu codifico algo que não utiliza a função delay do ccs, tudo funciona normalmente. Mas se por exemplo eu tento fazer um código para piscar um LED como o código abaixo, nada mais funciona
Exemplo:
Se eu colocar o seguinte código:
Código:
O pino A5 não acende ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
_________________
Level 6
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
Galera, Obrigado pela ajuda de todos. Mas agora escuta essa. O meu problema está todo na fonte de alimentação. O ruído gerado pela fonte está interferindo no sistema em geral. Como eu descobri isso? Troquei a fonte de alimentação por uma bateria, e ai tudo funcionou. Procurando alguma coisa na internet, eu fiz algumas tentativas do tipo: 1 - Colocar um resistor de 10K em série com o pino MCLR do PIC. 2 - Colocar um capacitor de 100nF na alimentação do PIC 3 - Aterrar a carcaça do cristal 4 - Baixar a frequência do oscilador Resolveu um pouco, o Led agora pisca mas sem sincronismo algum. Como eu vou ter que colocar este circuito dentro de uma fábrica, onde temos motores, transformadores, milhares de solenoides, eu estava pensando em colocar o circuito dentro de uma caixa metálica. E ai fica minha pergunta, será que vai resolver? Alguém tem mais alguma idéia do que fazer para eliminar os ruídos? Grato.
Level 11
11674273 xp
Registrado em:
04/11/2008
Local:
Ubajara-Sobral / CE
Mensagens:
272
11674273 xp
Registrado em:
04/11/2008
Local:
Ubajara-Sobral / CE
Mensagens:
272
Olá, Pouco tempo atrás passei pelo mesmo problema que você, estava usando motores que geravam ondas eletromagnéticas que interferiam no clock do processador (acontecia o mesmo que está acontecendo com você, as interrupções e delays eram executados aleatoriamente). No caso do ruído externo a caixa metálica resolve (procure por gaiola de Faraday), até usando uma "caixa" de tela metálica, porém tem que ser bem fina para que interferências de frenquências mais altas não passem. No caso da interferência gerada pelos próprios circuitos a solução é usar capacitores de vários valores, pois, como me ensinaram, cada um vai filtrar uma certa faixa de frequência. Aliás, uma curiosidade que notei e queria saber se minha "teoria" está correta: Certo dia "descrimpei" um daqueles cabos flat de PC, notei que tinha, no mínimo, um cabinho negativo para cada positivo (ou sinal). Não tenho 100% de certeza, mas acho que é porque o campo elétrico que sai do positivo é em mesma quantidade que entra no negativo (no caso, estou falando como se estivesse representado em um papel) Explicando melhor: se eu tenho duas cargas, uma positiva com carregado com carga +Q e uma negativa com carga -Q. O campo que sai do Q é em mesma quantidade o que entra no -Q. Assim, sem campo elétrico "disponível" no meio, não se pode gerar DDP pela variação do fluxo. (lei de Lenz). Abraços.
Level 6
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
6444517 xp
Registrado em:
09/08/2006
Local:
Curitiba / PR
Equipe:
Guaxinim Furioso
Mensagens:
144
A respeito da caixa, amanhã vou providenciar, testar e informar os resultados. A respeito do cabo não consegui entender muito bem sua dedução hehe. E aproveitando o tópico, gostaria de deixar claro que os códigos que eu postei aqui foram feitos meramente para testar este funcionamento básico do CI. Até porque não tem cabimento realizar um sistema para ficar piscando um LED dentro de uma empresa![]()
![]()
Como o Zork falou:
Comentário:
Já que é indispensável o domínio do assembly para se programar em C
|


|
|
|
Todos os horários são GMT - 3 Horas | Você não tem permissão para escrever novas mensagens v não tem permissão para responder às mensagens Você não tem permissão para editar suas mensagens Você não tem permissão para deletar suas mensagens Você não tem permissão para classificar tópicos Você não tem permissão para classificar mensagens Você não tem permissão para votar em enquetes Anexar downloads : Proibido Fazer Download de Arquivos: Permitido |
Powered by phpBB © 2001 phpBB Group