Vai al contenuto
PLC Forum


Programmazione Pic


del_user_23188

Messaggi consigliati

del_user_23188

Ciao a tutti sono nuovo e scrivo da Crevalcore (BO). Di recente ho iniziato un lavoro con i pic, dapprima con il pic16c73a su consiglio di un collega programmatore che li "usa", o li programma soltanto non so, poi sono sempre più intenzionato alla coppia 16f628 e 16f876. il cambio di pic è dovuto al fatto che mi sembra di aver capito che il primo pic non è riprogrammabile (giusto?).

Ma passiamo alla domanda. Ora sto usando un vecchio notebook lentino per programmare al lavoro, dato che ha la parallela, ma visto che vorrei imparare qualcosa in più e più velocemente mi vorrei portare il lavoro a casa ed utilizzare il mio notebook che però non ha la parallela. Ho preso allora un cavo usb-parallelo avendo letto della possibilitàù in rete, ma con il programmatore che uso, ICPROG, non viene visualizzata nessuna porta lpt. Avete consigli su come fare a farla saltere fuori?

Grazie, ciao a tutti

Enea

Link al commento
Condividi su altri siti


Usa ICD2 di Microchip. E' economico, velocissimo (USB2), ti permette il debug in real time e, sopra a tutto, affidabilissimo e ovviamente è integrato nella suite MPLAB (gratuita sul sito Microchip).

Dimenticavo, supporta praticamente tutti i tipi di PIC programmabili in_circuit

Link al commento
Condividi su altri siti

Mi interessava capire meglio cosa significa in-circuit e le potenzialità.

Mi sembra di capire che questo è possibile esclusivamente nei micro predisposti per questa finzione e cioè quelli che hanno integrata una porta (tx/rx)

Posso programmare ed eseguire il debug senza dover rimuovere il micro dalla scheda?

Se utilizzo la porta per comunicare con altri dispositivi, la funziona in-circuit è ancora disponibile?

In alternativa alla Microchip è possibile utilizzare anche lo YAPP4?

Grazie

Link al commento
Condividi su altri siti

I microcontrollori PIC della serie 1XFyzw hanno incorporata una memoria di tipo FLASH programmabile e cancellabile elettricamente. In questa memoria viene caricato il programma applicativo. Per scrivere, leggere e cancellare la mememoria di programma si usa un protocollo seriale sincrono. In altri termini il dispsoitivo di programmazzione invia ad un pin del micro un segnale di clock ed ad un altro pin il segnale dei dati. Il dato viene letto ad ogni fronte di clock. Il dato può essere un indirizzo o un dato vero e proprio. Questa trasmissione è eseguita in conformità di un protocollo stabilito da Microchip per i suoi dispositivi.

Se la scheda con il micro dispone del connettore di programmazione con i relativi collegamenti (Rest, PDA, PDB, e 0v) allora potrai programmare il micro senza toglierlo dalla scheda.

Non solo, se usi un programatore come ICD, puoi anche eseguire il debug on line. Cosa significa? Significa che, durante l'esecuzione del programma, puoi stabilire che, ad una data istruzione, il programma si ferma. In questo modo puoi verificare se il tuo programma segue il percorso stabilito, puoi leggere lo stato ed il valore delle variabili e dei registri. puoi forzare registri, variabili, porte, etc.

Link al commento
Condividi su altri siti

del_user_23188

News dai pic programmer selfmade.

Ciao, ho copiato il programmatore che c'è in rete, nel sito http://www.elettronicashop.com/he/PicSheet...ext/picstartup/ ed anche quello su http://www.olimex.com/dev/pic-pg2c.html , insomma il JDM seriale. Non riesco a farlo andare con il notebook nuovo, sprovvisto di ser e par. Gli ho collegato una adattatore usb/par e usb/ser ma non c’è verrso di poter programmare. Hai qualche suggerimento?

Invece con il notebook vecchio direttamente sulla seriale o sulla parallela, il programmatore parallelo naturalmente, posso programmare quante volte voglio.

A questo punto sono abbastanza sicuro che non è mica questione del programmatore, ma dell'adattatore usb. Dai che qualcuno che ne sa c'è......

Grazie ancora, ciao

Link al commento
Condividi su altri siti

Di solito gli adattatori usb/ser vengono forniti con un CD che installa un driver virtuale per la porta seriale. Il tuo ne è provvisto? Ti basterà installarlo e configurarlo opportunamente. In questo modo i tuoi programmi vedranno una porta seriale virtuale, che in realtà dirotterà il flusso di dati ricevuto sulla porta usb dov'è collegato l'adattatore.

Io ne ho provato uno e ha funzionato. Lo stesso discorso dovrebbe applicarsi per la porta parallela.

Per vedere se sono già installate delle porte virtuali puoi andare sul pannello di controllo - sistema - periferiche hardware.

Spero di esserti stato d'aiuto.

Link al commento
Condividi su altri siti

Se il tuo non ha una alimentazione esterna , ma prende le tensioni direttamente dalla porta seriale , allora potrebbe essere che l'adattatore USB non riesce a fornire una tensione sufficientemente alte per programmare i pic.

Io ho comprato un clone di un ICD2 Flash e funziona benissimo .

A valte fare un piccolo investimento salva da grandi mal di testa.

Link al commento
Condividi su altri siti

  • 3 weeks later...
del_user_23188

Ciao a tutti. Ho acquistato qui in ditta il Mplab icd2 debugger l'ho connesso al mio targhet lui dice che si programma ma il led su rb0 non lampeggia. Avete qualche idea?

Grazie, ciao

Link al commento
Condividi su altri siti

Sei sicuro che l'ICD2 ha mollato il reset del micro....l'MPLAB ha un bottone per cambiare

lo stato del reset del uC.Volendo puoi configurartelo in modo da far partire il micro automaticamente alla fine della programmazione.

COMUNQUE BRUTTA ROBA I PIC.....MEGLIO AVR (ATMEL) ED IN "C"....

Ciao.

Link al commento
Condividi su altri siti

Ciao a tutti. Ho acquistato qui in ditta il Mplab icd2 debugger l'ho connesso al mio targhet lui dice che si programma ma il led su rb0 non lampeggia. Avete qualche idea?
Link al commento
Condividi su altri siti

Il pic tendenzialmente non si presta all'uso del "C" vista la accessibilita' allo stack che si

ritrova....forse la famiglia 18 e migliorata sotto questo aspetto...

Non dimentichiamoci che il core AVR esegue buona parte delle istruzioni in un solo colpo di clock ed avendo una struttura a registri (ben 32) rende molto di piu' in "C" rispetto i suoi concorrenti e poi programmatore lo realizzi con 2 o 3 euro....ecc...ecc...

salve...

Link al commento
Condividi su altri siti

Il pic tendenzialmente non si presta all'uso del "C" vista la accessibilita' allo stack che si

ritrova..

Link al commento
Condividi su altri siti

Capisco....mi sa' che il modo AVR non e' molto conosciuto in questo forum....

strano perche' basta digitare "AVR project" su goggle e veniamo travolti da una miriade di progetti...con tanto di sorgenti compilati con il compilatore gratuito GNU.

In certi ambienti sembra che solo il PIC e' alla portata di un hobbysta...io non la penso cosi', programmo per lavoro microntrollori AVR, ARM, 8051....e tutte le volte che o dovuto fare qualcosa per forza con un PIC ho sempre trovato dei limiti....

E' assolutamente vero che il programmatore per AVR so si fa' con pochi euro...

serve solo un conn. vasch. 25 poli maschio per la parallela, un 74HC244 o simili , 1/2 metro di cavo flat 10 poli, connettore 10 vie (2x5) ed un minuscolo pezzettino di millefori e programmi in-circuit.....con una miriade di software gratuiti..

In fine i tempi di programmazione sono mediamente la meta' ed il numero di programmazioni il doppio....

Saluti.

Link al commento
Condividi su altri siti

Dimenticavo tutte le volte che faccio questi confronti con gli utilizzatori di PIC mi

rispondono che il PIC da il meglio di se in assembler dimenticandosi che naturalmente esiste l'assembler anche per l'AVR.

Per carita' qualche limitazione c'e' negli AVR ad esempio la scomodita' di non avere il

range di alimentazione esteso 2.5-5.5V ma bensi due ed avvolte tre versioni dello stesso dispositivo (1.5-3.3;2.5-3.5;4-5.5)...beh non si puo' avere tutto....

rinnovo i saluti...

Link al commento
Condividi su altri siti

ehi...dove e' finito il mio ultimo post....oh scusate non avevo visto che vi e' una seconda pagina.....

Modificato: da DPiero
Link al commento
Condividi su altri siti

Caro DPiero, come ho scritto nel post precedente ognuno ha le sue preferenze.

Ho cominciato ad usare, professionalmente, i micro ai tempi dello F8 (chi sa se c'è qualcuno che si ricorda cosa sia) e del 4004 Intel. Una cosa è certa: se si paragonano due dispositivi questi devono essere omogenei. Quindi si possono paragonare le prestazioni tra due micro prendendo come base comune il costo, o lo spazio occupato, o il consumo o la velocità, o altro. Paragonare genericamente PIC ed AVR dice poco. La famiglia generica PIC parte dal più piccolo controllore con solo 6 pins, fino ai mostri con un centinaio di pins, parecchie 28 kByte di flash ed alcuni k di RAM, più svariati canali di A/D, uscite PWM, interfaccia encoders etc. con set di istruzioni matematico dove una divisione si effettua in un ciclo di istruzione.

Con questo non intendo sponsorizzare Microchip. Ci sono tanti bei controllori con ottime prestazioni e basso costo, come il Rabbit, pe.e.

C'è una ragione molto semplice della diffusione dei PICs: la quantità enorme di progetti in rete che usano PIC, progetti che spaziano tutto il campo hobbistico e professionale. Se a questo ci aggiungi un'infinità di tools praticamente gratis, spieghi la straordinaria diffusione di questi dispositivi

..serve solo un conn. vasch. 25 poli maschio per la parallela, un 74HC244 o simili , 1/2 metro di cavo flat 10 poli, connettore 10 vie (2x5) ed un minuscolo pezzettino di millefori e programmi in-circuit.....
Link al commento
Condividi su altri siti

a proposito di tools , sto cercando routine per eseguire sottrazione a 16 bit e moltiplicazione e divisione fra due numeri a 8 bit con risultato e resto a 8 bit; ho provato routine trovate nelle ApplicationNote della microchip ma ho avuto problemi fi funzionamento.

Cerco routine funzionanti per 16f873

grazie a tutti

Link al commento
Condividi su altri siti

del_user_23188

Allora, ci sono novità.

Preso dalla "disperazione" ma neanche tanta perchè ora mi hanno tolto il giochino di mano per fare un paio di settimane al collaudo, ho provato a programmare un pic16F628 con il solito timer da 1 sec. ed il led tra RB0 e massa, tanto per vedere se tutto funzionae. Bhè, non ci crederete ma questo lo programmo con tutti i programmatori e con tutti i programmi fatti fin'ora (uso Parsic). Il 16F876 non c'è verso di farlo andare, o meglio, si programma perchè se poi glielo faccio leggere trova il programma ma il led non lampeggia.

Grrrr, sto sbagliando io il chip funziona in modo diverso?

Chi ne sa?

Grazie, ciao

Enea

Link al commento
Condividi su altri siti

Gaurda che del 16F876 esiste anche la versione 16F876A. Verifica che versione e programmatore siano congruenti.

Link al commento
Condividi su altri siti

tra una trasferta e l'altra mi diletto in studi di micro ed fpga

Volevo fare delle cosette con i pic16f876A-628a-dsPic

solo che pero il mio icd2 non ne vuole sapere

di programmare .

dopo vari settaggi , addirittura da progetti passati gentilmente da un amico ,

faccio per scaricare il programma nella flash ma alla fine il tutto viene abortito

con 2 messaggi di errore , dicendo che l'indirzzo di memoria aspettato

e' diverso da quello trovato al momento del download

Premetto che l'icd2 e' stato correttamente installato con i suoi driver ,

che al comando connect risponde giusto , che legge il micro , cancella la memoria

ma all'atto di programmare si rifiuta

Ho provato con diversi pic ed anche dspic

Quindi ho smesso le attivita' dalla disperazione concentrandomi su un altro kit .

Nono capsico come mai ?

avete qualche suggerimento ?

Potrebbe essere la demoboard oppure l'icd2 in tilt ?

ciao

walter

Link al commento
Condividi su altri siti

Walter controlla bene nel menù di Configuration i Configuration bits, anche a me ogni tanto rompe i maroni. Poi, se non l'hai ancora fatto, scarica l'ultima versione di MPLAB (7.11). Non credo che sia la demo perchè probabilmente usiamo la medesima (**********). Ora sono in vacanza e, ovviamente, non ho il materiale e non posso fare una prova.

Link al commento
Condividi su altri siti

buona vacanza

io sono ritornato dalla turchia 2 settimane fa, e adesso mi stan facendo i documenti per andare in iran un paio di mesetti

:blink:

poi avro in programma l'europa ed a fine anno andro in brasile

a farmi le vacanze , optando per iniziare una nuova vita nel continente sud americano

:rolleyes:

ciao

walter

i configuration bits sono ok , uso mplab che hai anche tu

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...