![]() |
Il pic disubbidiente (16F84) Salve a tutti, ho un po di problemi da porvi sul solito pic 16F84a: Prima di tutto cancellando il pic e poi provando a rileggerlo con ic-prog non risulta vuoto nella prima riga: 0000: 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 0560 3FFF ÿÿÿÿÿÿ`ÿ Cosa potrebbe essere? Ne winpic800 ne WinPic non lo vedono! :blink: Secondo problema: Essendo alle prime armi con i PIC mi stavo dilettando a far lampeggiare un led. Ma i lampeggi erano molto influenzati dalla presenza del mio pollice vicino al quarzo! :mumble: Terzo ed ultimo problema: Ho realizzato altri due circuitini: uno che doveva far accendere dei led in sequenza e uno stile supercar. In entrambi circuiti spesso la sequenza si blocca per un secondo o poco più!:wacko: Vi linko un video per rendere meglio l'idea!! ^_^ http://www.youtube.com/watch?v=dEZSzpgrEYY MA, i condensatori da 22pF vicino al quarzo ballano un po' sulla breadboard :rolleyes: , potrebbe essere quello la causa? ora li monterò su una basetta millefori per vedere se migliora, e proverò a cambiare pic!!:P |
Citazione:
Michele |
I due programmi sono quelli pubblicati sulla guida Tanzilli by exemples. allego i due ASM (li salvo in .txt perchè l'estensione .asm non è valida) Non rieco ad allegarli (mi dice che l'invio è fallito:huh: ) Posto il primo qua sotto: PROCESSOR 16F84A RADIX DEC INCLUDE "P16F84A.INC" ERRORLEVEL -302 ;Setup of PIC configuration flags ;XT oscillator ;Disable watch dog timer ;Enable power up timer ;Disable code protect __CONFIG 0x3FF1 ORG 0x0C Count RES 2 Shift RES 1 ;Reset Vector ;Program start point at CPU reset ORG 0x00 bsf STATUS,RP0 movlw B'00011111' movwf TRISA movlw B'11110000' movwf TRISB bcf STATUS,RP0 movlw B'00000001' movwf Shift MainLoop movf Shift,W movwf PORTB bcf STATUS,C rlf Shift,F btfsc Shift,4 swapf Shift,F call Delay goto MainLoop ; Subroutines Delay clrf Count clrf Count+1 DelayLoop decfsz Count,1 goto DelayLoop decfsz Count+1,1 goto DelayLoop return END |
In effetti questo funziona e non potrebbe essere diversamente data la semplicità del programma! Se hai un pic che non si cancella o che non viene sempre riconosciuto dal programmatore, come prima cosa prova a cambiarlo e vediamo se migliora. Michele |
secondo me sei lontanissimo con il quarzo... non so a quanti mhz viaggi però il quarzo va sempre messo vicino per fare in modo che la sinusoide arrivi bella pulita... poi... non conosco il linguaggio dei pic ma... boh sembra che dopo un certo tot si resetti... il watchdog sei sicuro di averlo disattivato completamente? |
uso un quarzo di 4 mhz, all'inizio avevo montato il quarzo vicinoai pin del pic, ma la situazione era ancora peggio!:angry: si, il watchdog è disattivato; non capisco perchè solo ic-prog non vede il pic vuoto, mentre altri programmatori no. Ora proverò a cambiare quarzo e pic.<_< |
Citazione:
Michele |
Si, Il piedino MCLR è collegato trammite un resistenza da 10 Kohm all' alimentazione 5 Volt. |
Citazione:
sei sicuro che il tuo programmatore riesca a programmare la versione "A" del Pic ? Da quello che mi ricordo, questa versione ha più bisogno di corrente per essere programmata. Saluti |
Si, programmo con una tensione di vpp da 13,2 a 13,5 volt,non mi hai mai dato errore. (apparte che con Ic-Prog, li diventa un dramma!) :angry: |
| Tutti gli orari sono GMT +2. Adesso sono le 23:41. |
Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002