Página 1 de 1
Pic12F629 Sera que queimou ?

Enviado:
05 Ago 2007 05:45
por geraldomelo
Ola pessoal . Está acontecendo uma coisa aqui , que estou realmente preocupado ... há um tempo atrás , uns 40 dias , eu deixei um pic 12F629 piscando 2 leds alternados , e deixei isso funcionando por uns 15 dias ..quando retirei o pic (estava tudo funcionando como eu deixei) coloquei no gravador , ai fiz uma modificação no programa , gravei de novo e ai não funcionava mais .. ai gravei o mesmo programa de novo , e nada .. bom deixei pra lá , pois achava que o pic estava bichado mesmo , ai gravei outro , com o mesmo programa , e coloquei pra funcionar .. ai beleza , tudo funcionando normalmente .. retirei , e gravei umas 20 ou 30 vezes ainda esse pic , durante uns 5 dias , com o mesmo programa , só modificando os valores dos delays , e sempre deixando o pic funcionando .. ai , não retirei mais , deixei mais uns 30 dias funcionando direto ,e hj , quando desliguei (tudo tava funcionando perfeitamente) e fui gravar o mesmo programa , ele gravou , verificou , tudo certo , voltei para a mesma placa onde ele estava funcionando , e BIMBA , nada de funcionar .... ai , apaguei , gravei , apaguei , gravei ............ , apaguei ...... , e nada ... o pior é que eu deixei configurado para o pino gpio.4 ligado ao Clock/4 ... e medindo com o frequencimetro esse pino , tava lá o seus 1MHZ , ou seja tava funcionando , mas nada de ascender os leds ... ai mudei as portas , para umas que não tinha sido usadas , e também não funcionou ...
Bom pessoal .. qq pode estar acontecendo ... como o pic só queima quando eu desliguei ele ? será que se eu não tivesse desligado ele , e regravado , ele estaria funcionando ainda ? por quanto tempo ????
Bom , abro o espaço para vcs ..
abraços
Geraldo .

Enviado:
05 Ago 2007 09:03
por RobL
Não é o Pic é o programa.
Se estiver com WDT desligue-o e teste.
Se aparecem os pulsos na saida e nao acendem os leds é porque ficou preso em um loop que gera essa frequencia.
Se estiver usando interrupção, esta pode estar atuando seguidamente, não permitindo executar o restante do programa.
Dependendo do seu programa, pode haver algo em seu circuito que com a mudança de temperatura, saia da faixa esperada, ou capacitância nas entradas.
Podem ser outras coisas que no momento não me vem à cabeça mas que outros vão sugerir.

Enviado:
06 Ago 2007 01:43
por geraldomelo
Ola . Não está com o wdt ligado .. o circuito e o programa é o mais simples possivel .. ... é esse :
#include <12F629.h>
#fuses INTRC,NOWDT,NOPROTECT,NOMCLR // INTRC_IO --> IO significa GPIO4 como I/O normal
#use fast_io (A) // INTRC ----> sem a sintaxe IO , liga GPIO ao OSC interno =F/4
#use delay(clock=4000000)
#include <regs_12F6xx.h>
main()
{
osccal=0x59;
trisio=0;
cmcon = 7 ;
option = 0b11111111; // isso aqui coloquei depois para ver se
// era isso .. é com esses valores que o
// pic inicia .
while (true)
{
gpio=0;
gpio=0b00000001;
delay_ms(150);
gpio=0b00000010;
delay_ms(150);
}
}

Enviado:
06 Ago 2007 07:40
por ze
talvez não resolva, mas tente um loop diferente:
gpio=0b00000010;
while (true)
{
gpio^=0b00000011;
delay_ms(150);
}
abrç.

Enviado:
06 Ago 2007 08:59
por scheleder
Tive um problema parecido com um 12F675 (praticamente igual), só resolvi quando montei um outro gravador, pois o meu JDM não gravava direito estes MCUs. Montei um desse:
http://feng3.cool.ne.jp/en/rcd.html

Enviado:
06 Ago 2007 16:14
por geraldomelo
Acho que não é problema de gravador .. o Meu é o Picstart da Mosaico ..
tentei com o outro código tbm e nada
abraços
geraldo .

Enviado:
06 Ago 2007 16:23
por andre_bcs
Pessoal, eu ia criar outro tópico mas vou aproveitar o encejo do nosso amigo Geraldo.
Meu problema é o seguinte:
Tenho um 18F4585 aqui comigo (inclusive, ganhei no Masters 2005, no kit)
Trabalhei com ele há uns meses atrás, e tive que deixar o projeto de lado pra mexer com outra coisa aqui... Ele ficou montado no meu proto board, sem nenhuma modificação física ou de software. Não uso WDT, já chequei as ligações com o proto board, e acho que não é meu gravador.
Programei o software nele de novo hj com meu ICD2br, e cada hora dá uma mensagem do tipo:
ICD0161: Verify failed (MemType = Program, Address = 0xE0, Expected Val = 0x0, Val Read = 0x404)
ICD0275: Programming failed.
ICD0161: Verify failed (MemType = Program, Address = 0x4, Expected Val = 0x12, Val Read = 0xA)
ICD0275: Programming failed.
ICD0161: Verify failed (MemType = Program, Address = 0x5E, Expected Val = 0x6F62, Val Read = 0x404)
ICD0275: Programming failed.
Se atentem que os endereços que falham são aleatórios. Se eu der Erase, depois Read, deois Verify, depois Program, aí ele programa certinho, mas o programa não funciona na prática. Será que pifou esse PIC só de ficar parado um tempo!???
Estranho, muito estranho!!