Pages: 1 [2] 3 4 ... 21   Go Down
Author Topic: Pico85 SMD - La prima board Arduino compatibile di Gioblu Robotics  (Read 12628 times)
0 Members and 1 Guest are viewing this topic.
Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 415
Posts: 11993
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Se segui la mia guida, NON usare le librerie di Saporetti ma utilizza direttamente il Tiny Core. Facendo le debite modifiche, ovviamente.
Se hai bisogno di info, chiedi pure. Io ho "manomesso" anche altre lib (a ricordarsele tutte...  smiley-sweat) per farle andare sul Tiny. Cmq trovi tante info nel mega-thread "Giocando con l'Attiny85" che ho aperto su questo forum.
Leo, ogni volta che indirizzi alla tua Guida devi specificare questa cosa delle libs, ma non fai prima a modificare il Tutorial, pensando anche a quelli (molti di più secondo me....) che se la scaricano SENZA passare dal Forum e senza consultarti? Hai fatto un gran lavoro, metti pure la ciliegina, ti garantisco che sono tutte benedizioni ricevute.... smiley-wink

Quote
Io ho "manomesso" anche altre lib (a ricordarsele tutte...  smiley-sweat) per farle andare sul Tiny
Questo sarebbe un altro bel service all'umanità, mettere ordine e piazzare tutto sul tuo sito smiley-lol
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Milan
Offline Offline
Edison Member
*
Karma: 1
Posts: 1128
gioblu.com
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Pagina 26 datasheet http://www.atmel.com/dyn/resources/prod_documents/doc2586.pdf
High Frequency PLL Clock
There is an internal PLL that provides nominally 64 MHz clock rate locked to the RC Oscillator
for the use of the Peripheral Timer/Counter1 and for the system clock source.  
The system clock source, by programming the CKSEL fuses to ‘0001’, it is divide by four.

Il succo è che il PPL clock ad alta frequenza integrato nell'MCU puo' arrivare a 64mhz.
Programmando CKSEL fuse a 0001 lo si divide x 4 ottenendo 16mhz

Devo assolutamente provarlo a 64mhz ahahahah
Logged

Community robotica / programmazione Arduino
www.gioblu.com

Deep south of Italy
Offline Offline
Faraday Member
**
Karma: 7
Posts: 2961
The quieter you become, the more you can hear
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

l'oscillatore interno rc secondo mè a quelle frequenze non è affidabile, basta una variazione di temperatura per sballare il clock di molto.
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

abbia detto qualcosa di negativo a proposito di frequenze elevate non quarzate, ma non ricordo il contesto,

Se la memoria non mi inganna era relativamente all'utilizzo della Vusb senza quarzo e allo "smanettamento" dell'oscillatore RC per tirarlo a 12MHz, cosa fuori specifiche e poco raccomandabile.
Il discorso del PLL (8x) è diverso perché dal data sheet risulta che è possibile utilizzarlo anche come clock di sistema, l'uso primario è come clock delle periferiche, e grazie ad un divisore 1:4 dovrebbe essere possibile ottenere 16 MHz sul clock del micro.
Però il data sheet è un pochino criptico su questa cosa dato che c'è di mezzo anche un divisore per due sul clock RC in ingresso al PLL che sembra riportare il clock del micro a 8 MHz (8MHz / 2  * 8 / 4 = 8 MHz) quando si opta per il clock proveniente dal PLL invece che direttamente dall'oscillatore RC.
C'è da fare qualche prova pratica per capire come stanno realmente le cose.
Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 415
Posts: 11993
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Pagina 26 datasheet http://www.atmel.com/dyn/resources/prod_documents/doc2586.pdf
High Frequency PLL Clock
There is an internal PLL that provides nominally 64 MHz clock rate locked to the RC Oscillator
for the use of the Peripheral Timer/Counter1 and for the system clock source.  
The system clock source, by programming the CKSEL fuses to ‘0001’, it is divide by four.

Il succo è che il PPL clock ad alta frequenza integrato nell'MCU puo' arrivare a 64mhz.
Programmando CKSEL fuse a 0001 lo si divide x 4 ottenendo 16mhz

Devo assolutamente provarlo a 64mhz ahahahah

Se CKSEL settato a 0001 divide 64x4, chissà che a 0000 non divida per 0, praticamente un over-clock infinito, non reggerebbe la vetronite smiley-twist Scherzi a parte bisogna capire se non sia vera questa storia del cane che si morde la coda citata da Astrobeed (hai ragione, era sulla questione della virtual USB smiley)
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Milan
Offline Offline
Edison Member
*
Karma: 1
Posts: 1128
gioblu.com
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Un'altra cosa davvero criptica nel datasheet è limiti dell'uso del PIN reset come input o output, che viene definito weakpin.
Qualcuno di voi ha qualche info al riguardo?
Logged

Community robotica / programmazione Arduino
www.gioblu.com

Deep south of Italy
Offline Offline
Faraday Member
**
Karma: 7
Posts: 2961
The quieter you become, the more you can hear
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

la corrente di quel pin usato come output è più bassa degli altri pin digitali.
tornando al discorso del pll o High Frequency PLL Clock se non ho capito male viene attivato il generatore interno che è a 64mhz  ma ha il suo divisore x4 quindi in teoria se alimntato oltre i 4V dovrebbe far girare il timer1 a 16Mhz al massimo no?
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Un'altra cosa davvero criptica nel datasheet è limiti dell'uso del PIN reset come input o output, che viene definito weakpin.

Significa che può fornire molta meno corrente degli altri pin quando utilizzato come GPIO, sul data sheet ci sono varie tabelle che illustrano come varia la tensione in funzione della corrente sul reset, già a solo 2.5 mA siamo al limite dei livelli logici.
Logged

Milan
Offline Offline
Edison Member
*
Karma: 1
Posts: 1128
gioblu.com
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Dite che basta la corrente del reset per dare un HIGH logico?? E' possibile utilizzarlo come input analogico o digitale?
Vorrei capire se puo' essere utilizzata come una normale porta input o output e quali sono i limiti (es evitare di resettare la mcu  smiley-mr-green)
Logged

Community robotica / programmazione Arduino
www.gioblu.com

Deep south of Italy
Offline Offline
Faraday Member
**
Karma: 7
Posts: 2961
The quieter you become, the more you can hear
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

aspetta però, l'uso è esclusivo, nel senso che o è reset o è pin. (non è questione di soglie)
e quando è pin (output) la corrente che ti può dare in uscita è quella che ha detto astrobeed prima.
Occhio che se disabiliti il reset per usarlo come pin , dici addio alla programmazione icsp.
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Dite che basta la corrente del reset per dare un HIGH logico?? E' possibile utilizzarlo come input analogico o digitale?

Il livello logico dipende esclusivamente dalla tensione, quindi non ci sono problemi sotto questo profilo, però dato che questo pin non è in grado di erogare più un paio di mA, anzi meglio rimanere sotto il singolo mA.
Non si può usare il reset come GPIO per accendere un led o pilotare la base di un transitor, puoi usarlo per comandare un qualunque gate logico, un ingresso digitale di un micro, il gate di un piccolo mos a patto che sia un azionamento a bassa velocità, no pwm.
Il reset risulta anche come ADC0, quindi è utilizzabile come ingresso analogico e, ovviamente, anche come ingresso digitale.
Attenzione che se setti il reset come GPIO non puoi più programmare il micro tramite ISP, devi ricorrere alla modalità HV.
Sul data sheet relativamente al fuse RSTDISBL trovi queste note:

Code:
1. Controls use of RESET pin. See “Alternate Functions of Port B” on page 62.
2. After this fuse has been programmed device can be programmed via high-voltage serial mode only.
Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 415
Posts: 11993
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

In definitiva conviene, se proprio serve, utilizzarlo come ingresso A o D, sarebbe immediato e non richiederebbe logica esterna; mi pare che gbm accennasse ad una sorta di "protezione" della mcu, riferendosi certamente ad uno sketch precaricato; in effetti la programmazione HV non è proprio alla portata di tutti, quindi sarebbe una buona idea per un prodotto commerciale, non ci stiamo certo riferendo a copyright.
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21646
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@Mike:
che devo dire, si vede che sono uno che anticipa i tempi  smiley-lol
Cme adesso che sto usando i Tiny84 e mi trovo veramente bene.
Poi ho il 644 ancora da "scartare" e tra un po' ordino un nuovo micro, ci ho già messo gli occhi sopra. Devo capire se si può usare con l'IDE, il Tiny861.  smiley-razz

Il pin di reset del Tiny85 non va configurato come I/O altrimenti, come ha detto astrobeed, o si è dotati di un prrogrammatore professionale che ha anche l'A.T. oppure non ri riflasha più il micro. Fermo restando che riprogrammando i fuse lo si può rimettere "a posto" però diventa una menata ogni volta che devi cambiare lo sketch.
Logged


Milan
Offline Offline
Edison Member
*
Karma: 1
Posts: 1128
gioblu.com
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao Leo, ci abbiamo gia pensato noi con ArduOpen!!  smiley-mr-green
Come vedi dalla screen abbiamo integrato anche questo port insieme a moltissimi altri delle architetture AT90, ATmega e ATtiny, suddivisi da un comodo menu per tipologia. Anche secondo me è una delle MCU ATtiny piu' interessanti  smiley-mr-green

Se hai tempo prova ArduOpen!! Sono curioso di sapere cosa ne pensi.
Logged

Community robotica / programmazione Arduino
www.gioblu.com

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21646
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hai un link diretto per la versione Linux dell'IDE Arduopengià compilata? Una volta ho provato a tirarmi giù i sorgenti Java ma non sapevo neanche come compilarli ed ho lasciato perdere.  smiley-sweat

EDIT:
ops, mi sa che è quello che hai linkato. L'estensione .zip mi ha tratto in inganno. Ma perché non hai usato un archivo tar.gz?
« Last Edit: September 02, 2011, 02:24:15 pm by leo72 » Logged


Pages: 1 [2] 3 4 ... 21   Go Up
Jump to: