Show Posts
Pages: 1 ... 3 4 [5] 6 7 ... 17
61  International / Hardware / Re: programmare il 644 ... ma come???? on: December 20, 2012, 10:26:09 am
eccomi:

quindi io dovrei fare così:
Quote from: leo72
Quindi, io partirei dal caricare lo sketch ArduinoISP sull'Arduino UNO. Poi chiudi l'IDE.
Ora il mio core 644_1284: scaricalo (prendi la versione per IDE 1.0.2 sia per l'IDE 1.0.2 che per l'IDE 1.0.3) ed installalo.
Avvia l'IDE, seleziona "Atmega644 @ 16 MHz w/bootloader" e poi scrivi il bootloader sul microcontrollore (così imposti anche i fuse corretti per lavorare a 16 MHz e riservare l'area al bootloader) con la tecnica ISP usando l'ArduinoISP come programmatore.
Adesso prenditi l'Arduino (lasciamo per ora da parte il tuo convertitore USB/seriale), staccagli il chip e fai questi collegamenti:
Arduino ---> 644P
Pin RST ---> pin 9
Pin RX ---> pin 15
Pin TX ---> pin 14
Pin 5V ---> pin 10 e 30
Pin GND ---> pin 11 e 31

Collega l'Arduino, apri l'IDE, poi scegli la voce "Atmega 644 @ 16 MHz w/bootloader", carica lo sketch Blink e spedisci con l'icona di upload. Adesso prendi un LED + R e collegali al pin 19 del 644: se il bootloader ha svolto il suo compito, lo sketch Blink dev'essere sul micro ed il LED deve lampeggiare.

.. e così:
Quote from: leo72
......
Sicuramente.
Ah, per dovere di cronaca. Con la pull-up da 10K anche sulla linea TX il caricamento va a buon fine sempre. Alcuni problemi che avevo menzionato, e cioè che il caricamento dava errori eppure pareva fosse stato portato a termine perché lo sketch partiva, erano dati dal fatto che in fase di verifica i dati non erano stati spediti correttamente verso il PC.

Per cui, riassumo i miei test:
1) R di pull-up da 10K (per 5V) sulle linee RX e TX: tutto OK
2) aggiunta del C da 0.1uF poliestere in serie alle linee RX e TX: ERRORE. Sembra dargli noia, non so il perché.
3) aggiunta di un C da 100pF ceramico in serie alle linee RX: tutto OK. Anzi, PERFETTO. Programmo al primo colpo.
4) aggiunta di un C da 100pF ceramico in serie alle linee RX e TX: ERRORE. Non programma il micro.

Quindi la combinazione vincente per me è:
R di pull-up da 10K su RX e TX, C in serie da 100 pF su RX



... ho capito bene???

62  International / Hardware / Re: programmare il 644 ... ma come???? on: December 20, 2012, 02:19:28 am
cavolo ... nessuna ipotesi di soluzione all'orizzonte!!!!  smiley-cry ... io ieri non ho potuto fare alcuna prova....

Ho visto che lo schetch arduino ISP utilizza  Serial.begin(19200)... mi chiedevo: può avere qualche rilevanza con la mancata comunicazione con il 644??

... intanto prendo atto della difficoltà di attivare il serial monitor quando sull'arduino programmatore cè lo schect arduinoISP .. ed è un problema serio perchè la visualizzazione su seriale mi è quasi indispensabile per fare il debug....

mi sa che mi conviene fare lo sviluppo della singola "implementazione" sul 328.. poi una volta resa funzionante traslo tutto sul 644 .....

 
63  International / Hardware / Re: programmare il 644 ... ma come???? on: December 19, 2012, 09:50:46 am
può essere una partita diversa di 644?
64  International / Hardware / Re: programmare il 644 ... ma come???? on: December 19, 2012, 07:38:28 am
Io seguo in silenzio .. e stasera riprovo anche io con i suggerimenti di michele.
Intanto ho spostato il micro in un'altra opsizione della board..  anche per ottimizzare le periferiche adiacendi (display, shift register, decoder dtmf, pin di input, audio etc...).. nonchè per otimizzare la lunghezza delle connessioni.

Ma state usando Arduino o un Convertitore? Mettete comunque sia la R di pull-up sul reset del 644 che il C in serie da 100nF, al limite provate ad aumentarlo a 220nF o anche fino a 1µF (NON polarizzato); vale sia per l'una che per l'altra tecnica, ovvio che stiamo sperimentando.... quindi niente obiezioni smiley-wink
Io ho provato sia con l'arduino che con la schedina convertitore di cui al primo post.
Michele scusa la domanda....  ma cosa cambia che il condensatore sia polarizzato o no? la capacità non è sempre quella?

65  International / Hardware / Re: programmare il 644 ... ma come???? on: December 19, 2012, 02:04:23 am
Michele.... ho provato anche così.....

.. ieri comunque sono riuscito a fare la comunicazione seriale al serial monitor.

della programmazione con la tecnica seriale neanche a parlarne....

Per la comunicazoine seriale ho proceduto così. Ho messo uno schetc vuoto, solo con i pin 0 e 1 impostati come input ed un loop vuoto. Così sono riuscito a vedere sul serial monitor i dati inviati dal 644...

adesso ho smontato tutto. ed ho iniziato a ricablare tutto, ottimizzando la posizione dei componenti, la lunghezza dei conduttori etc...

poi non mi rimane che cambiare 644 (ne ho altri 2) ...

leo attendo le tue prove...

ciao ...
 
66  International / Hardware / Re: programmare il 644 ... ma come???? on: December 18, 2012, 12:34:03 pm
avete rilevato errori macroscopici nei collegamenti?
67  International / Hardware / Re: programmare il 644 ... ma come???? on: December 18, 2012, 10:16:12 am
per la ersistenza di pull up, avevo messo 10 k tra il pin 9 del 644 ed i 5 v, poi tra mettere, togliere, provare e riprovare ... ho dimenticato di rimetterla!!!! ... stasera riprovo.
...
68  International / Hardware / Re: programmare il 644 ... ma come???? on: December 18, 2012, 08:01:29 am
@Leo
Bene, allora andiamo ancora più a ritroso:
1) foto del circuito
2) schema dei collegamenti

le foto sono queste ...




relativamente ai collegamenti cè ben poco da evidenziare.
ho disconesso quesi tutto...

Riferendosi alla prima foto:
l'integrato in alto a destra è il decoder dtm, che connetto alla porta B. Funziona perfettamente. Ho tolto tutte le connessionì perchè disturbavano la foto.

I tre integrati nella parte bassa sono gli shift register, anche quelli li ho disconessi, ma ho già sperimentato che funzionano perfettamente connessi alla porta A del 644...
tra i collegamenti del micro si vedodo i collegamenti 10 -30 e 11-31 filo blu e filo bianco. Il quarzo con i due suoi condensatori ... più l'atro condensatore tra +5v e GND

i valori dei componenti sono tutti verificati.

i collegamenti sulla porta C ( in alto a sinistra), quattro fili bianchi uno verde ed uno azzurro sono i controlli del display LCD che anche questo funziona benissimo ....
i tre fili bianchi con la resistenza push down in alto a sinistra  sono i input digitali sulla porta A...
io non rilevo errori di collegamento

ma confermo che non và in programmazine seriale ...


@michele
Ho messo il led sul tx del 644 ed ho riscontrato l'attività tx. In trasmissione và sicuramente bene...
Ho anche fatto di più... ho decodificato con un'analizzatore di stati logici la qualità della trasmissione seriale ed è tutto ok. Correttamente decodificata a 9600 bps.
Ti allego le immagini ottenute





.. vede l segnale sulla seriale, con i pacchetti intervallati da un delay(1000), ed anche gli stessi pacchetti decodificati (prima foto) ....

.. attendo le vs opinioni...
saluti








69  International / Hardware / Re: programmare il 644 ... ma come???? on: December 17, 2012, 12:52:04 pm
ok... adesso vado a casa e RIprovo.... compreso il reset come dice michele....

farò anche qualche foto...
ciao a domani

grazie...
70  International / Hardware / Re: programmare il 644 ... ma come???? on: December 17, 2012, 11:03:37 am
..
Ma hai provato ad usare l'Arduino smontando il chip come ponte USB/seriale come ti avevo detto?
confermo quanto detto prima.. provato e non funge lo stesso.....

71  International / Hardware / Re: programmare il 644 ... ma come???? on: December 17, 2012, 07:06:51 am
Ma hai provato ad usare l'Arduino smontando il chip come ponte USB/seriale come ti avevo detto?
.. su questo punto mi sta venendo il dubbio che forse NON ho settato la scheda da programmare come Atmega644 @ 16 MHz w/bootloader quendo facevo questa prova ...appena a casa riprovo...

per adesso vi ringrazio.. inserirò anche i led monitor per l'attività RX DX .. con una resistenza da 1 k o un po meno, giusto per evidenziare (anche se poco) l'attività sulle linee...

ciao
72  International / Hardware / Re: programmare il 644 ... ma come???? on: December 17, 2012, 05:45:57 am
Comunque in tutto questo marasma di problemi con il 644 ci sono anche note positive.
Ho convertito tutto lo schetch ed ora funziona tutto (eccezion fatta per il serial monitor .. che usavo per il debug)...
.. insomma ho convertito tutto il lavoro fatto e funziona benissimo anche sul 644, ora ho i pin in più per aggiungere le altre implementazioni ...
73  International / Hardware / Re: programmare il 644 ... ma come???? on: December 17, 2012, 05:42:52 am
Guarda che "Atmega644 @ 16 MHz w/Arduino as ISP" non è la stessa cosa di quello che ti ho detto io, "Atmega644 @ 16 MHz w/bootloader".
Nel primo caso non viene riservato spazio al bootloader per cui riflashando il micro il bootloader potrebbe venir sovrascritto.
La voce che ti ho invece consigliato riserva 1 kB di Flash per il bootloader, quindi questo resta protetto anche nelle successive scritture

si,, ho sbagliato scrivendo....
Atmega644 @ 16 MHz w/bootloader    ... l'ho utilizzato per tasferire il bootloader
Atmega644 @ 16 MHz w/Arduino as ISP  ... lo stavo utilizzando per trasferire gli schetc
74  International / Hardware / Re: programmare il 644 ... ma come???? on: December 17, 2012, 04:40:54 am
Questo funziona solo se usi un convertitore USB/seriale altrimenti i dati tra il PC ed il micro non puoi gestirli.
Basterebbe anche l'Arduino, basta sfilare l'Atmega328.
.....
.....
Senza bootloader sul chip non puoi farlo. ....
Ho provato usando il convertitore USB seriale con i collegamenti come dal post precedente di Michele..
Ho anche provato usando la tecnica seriale della guida di Michele;
Ho anche provato usando arduino uno, caricando uno script quasi vuoto, cioè con il setup imposto i pin 0 e 1 come input, e poi faccio eseguire un loop vuoto. collegando tx --> rx e rx <-- tx (644 - 328). Lo usavo er ricevere le stringhe NMEA dal ricevitore GPS e funzionava ... ma niente .. qui appare qualcosa nel serial monitor ma sembrano solo bestemmio. Naturlmente ho settato e provato con tutti i valori di bps. Ho anche verificato che il quarzo del 644 fosse da 16 Mhz... (sull'involucro cè stampigliato 16).

Credo che il bootloader ci sia... ho fatto anche la modifica da te suggerita per fare flashare il 2 pin .. ho messo uil valore 5 (credo 5 flash) .. ma è rapidissimo.... si vede che flasha ma non saprei dirti se sono 5 ....

Per le prove che mi hai suggerito di fare non potro farle prima di stasera ....

Se non riesci a dialogare col serial monitor ovvio che non riuscirai nemmeno a programmare via seriale; forse conviene restare su questo Topic, almeno per ora.
Dunque, facciamo questa prova facile facile:
1 - Carica uno sketch che invia dati alla seriale in continuazione, senza intervento umano, magari i  numeri da 1 a 1000 e poi ricomincia....; togli alimentazione al micro.
2 - Ad ognuno dei tre pin TX delle tre seriali del 644 collega una R da 330 ohm o maggiore (non superiore a 1kohm)
3 - All'altro capo delle R collega l'anodo di un LED, i catodi dei tre LED tutti a GND
4 - ridai alimentazione al micro, uno dei tre LED dovrebbe dare segno di vita, se è così poi vediamo come procedere. smiley
.. starera michele... poi scrivo dei risultati.. .. interessante comunque la tecnica per vedere se cè attivita tx RX ... : Magari si potrebbe inserire in modo stabile nel prpgetto???... potrebbe essere utile per il debug etc... ???.. che ne dici?


2 - Ad ognuno dei tre pin TX delle tre seriali del 644 collega una R da 330 ohm o maggiore (non superiore a 1kohm)
Il 644P ha 2 seriali (il 644 non P ne ha 1 sola).

io ho il 644PA .. ma sto usando sempre le rx0 e tx0 (pin 14 e 15 del micro 644)

@Paolo:
scusa, perché altrimenti ci perdiamo per strada....
facciamo (anzi, facci) un riassunto di cos'hai fatto fino ad ora?
L'HW che hai provato, il SW che stai usando ecc..

Ardware usato: -arduino UNo con botloader origianle; -644PA
software: IDE 1.0.2 aggiornato con il tuo package per il 644

Quindi, io partirei dal caricare lo sketch ArduinoISP sull'Arduino UNO. Poi chiudi l'IDE.
Ora il mio core 644_1284: scaricalo (prendi la versione per IDE 1.0.2 sia per l'IDE 1.0.2 che per l'IDE 1.0.3) ed installalo.
Avvia l'IDE, seleziona "Atmega644 @ 16 MHz w/bootloader" e poi scrivi il bootloader sul microcontrollore (così imposti anche i fuse corretti per lavorare a 16 MHz e riservare l'area al bootloader) con la tecnica ISP usando l'ArduinoISP come programmatore.
.. direi che tutto questo l'ho fatto e funzione .. ho anche fatto flashare il pin 2 come detto prima ..
aggiungo anche che faccio l'upload dello script così:
- carico lo script nell'IDE
- seleziono la scheda di destinazoine: Atmega644 @ 16 MHz w/ISP ...
- seleziono programmatore: arduino as ISP
poi faccio l'upload .. dal menu file --> carica con un programmatore. Qui evidenzio  che se uso il tasto per l'upload sulla barra dei comandi mi dà un errore e non carica. Non sò forse questa informazione è rilevante ..


Adesso prenditi l'Arduino (lasciamo per ora da parte il tuo convertitore USB/seriale), staccagli il chip e fai questi collegamenti:...
......
in realtà ho già provato.. stasera riprovo.

aggiungo questa infomarzione:
Tra le varie prove che ho fatto, solo sull'arduino UNO (non sul 644) ... ho provato ad eseguire lo schetc
esempi--> communication--> ASCIItable.. e non mi funziona sull'ide 1.02 e nenche sull'1.01. ma fuunziona sull'ide 022..
non sò forse è rilevante??.. bho=???
più tardi vedro le vs risposte...

ciao e grazie



75  International / Hardware / Re: programmare il 644 ... ma come???? on: December 16, 2012, 06:34:00 am
Chiedo scusa per il ritardo .. ma ieri ed non mi sono potuto collegare ...

per Michele
Non stai urtando nessuno,...... se pensi solo a chiedere e mai a rispondere poi diventa difficile aiutarti,....

non mi ero accorto di non aver risposto a qualcosae mi scuso per questo!!  ... si, certamente cerco di essere sempre sintetico al massimo e, di conseguenza, mi rendo conto che questo non faciliti il compito di chi potrebbe darmi una risposta. Certamente gli sarebbe più facile se avesse ben chiaro il pensiero di chi chiede, cosa esattamente ha fatto, cosa sta facendo, cosa ha capito etc.... .. 


Quote
io capisco che a chi è esperto e pratico le domande banali, magari su argomenti affrontati decine di volte, rischiano di urtare, ma chi ha bisogno chiede ... gentilmente e senza nessuna pretesa. Poi se uno ritiene di rispondere, innazitutto lo ringrazio, poi interloquisco, chiedo chiarimenti... sempre fintanto che all'interlocutore gli và di rispondere .....
Condivido in pieno, ma alle volte non va di rispondere con una soluzione, ma viene voglia di fare il professore, spiegando nel dettaglio. Sai, se c'è un altro, oltre a me, che sa quello che so io, ci sono più probabilità che questo risponda al posto mio, e così è stato fino a oggi.
Ciao.
... si ma io apprezzo comunque chi oltre alla risposta semplice e diretta mi da anche spiegazioni, spunti per leggere e capire magari più approfonditamente. Nessun problema insomma. Solo apprezzamenti. E' solo che dal tono di qualche risposta avevo percepito, come dire, che un leggero disturbo aveva afflitto i polpastrelli di chi digitava la risposta in quel momento ... (scherzo naturalmnete ...  smiley-wink ... ma qui si rischia di uscire OT ....)
Comunque voglio ribadire il mio ringraziamento per quegli utenti particolarmente attivi in questo forum che regolarmenmte affrontano e risolvono i più banali problemi di noi dilettanti, .... e che fanno in tempo a rispondere a tutti.



Per Leonardo
Ti avevo già risposto a questo quesito. Il bit meno significativo è quello più a destra. Quindi se leggi D0/D1/D2 ecc... i bit saranno il 1° il 2°, il 3° ecc... del byte in cui li metti.
Nel tuo caso, la seconda risposta: 00001111
... si Leo grazie ora ho capito bene!!!!

Ancora:
Ho fatto la conversione di buona parte dello script per il 644 .. ma ci sono ancora parti che non riesco a fare funzionare.. in particlolare il serial monitor e la prigrammazione via seriale... ma credo che sia meglio aprire un altro topic .. che ne dite?
Pages: 1 ... 3 4 [5] 6 7 ... 17