Ciao a tutti.
Sono un nuovo iscritto ed ho sempre programmato gli Atmel con un programmatore parallelo. Nel nuovo progetto che utilizza un ATMega8 vorrei andare di ISP.
Leggendo il manuale del micro mi pare di capire che dopo il reset lo stesso sia settato come SLAVE e SPI abilitato che immagino sia la configurazione che accetta la programmazione ISP. Vedo anche che il fuse SPIEN non è disponibile nella programmazione ISP.
Nel mio progetto posso lasciare totalmente disponibili i pin PB3, PB4 e PB5 mentre il PB2 è previsto come input chiuso a GND con una resistenza (riceve uno switch normalmente aperto). Il PC.6 è dedicato al reset (con condensatore).
Ho una serie di dubbi che vado ad elencare:
Non mi è chiaro se occorra prevedere qualche istruzione a livello software quali il config dell'SPI e/o la sua abilitazione nonchè la gestione del pullup del PORTb.3 (MOSI) e del PORTb.5 (SCK).
Per i primi 2 punti basta settare nelle opzioni del compilatore BASCOM "use hardware SPI" ?
Questa opzione DEVE essere comunque usata nel caso di utilizzo del micro in oggetto nella configurazione SPI standard?
Ci sono possibilità di problemi nei confronti della capacità usata per il reset e per il PB2 così come utilizzato?
Un paio di dubbi ulteriori:
Non essendo disponibile lo SPIEN nella programmazione ISP ed essendo che i settaggi fatti a livello sw intervengono dopo una eventuale programmazione forse potrei usare i pin dedicati di default alla ISP anche come input/output GPIO ma il fatto di non poter disabilitare la SPI non determina comunque l'impossibilità di un simile uso riservando tali pin proprio alla ISP?
Nel caso di una programmazione del RSTDISBL per attivare il reset "interno" e rendere disponibile il PC6 ad altri scopi non rende inutilizzabile la programmazione ISP senza peraltro intervenire sui relativi pin che resterebbero SPI dedicati e costringendo ad eventuali successive programmazioni solo per via parallela?
Grazie a tutti in anticipo
Pier