Show Posts
Pages: 1 ... 38 39 [40] 41 42 ... 62
586  International / Hardware / Re: Scelta dev. board on: October 09, 2012, 10:33:39 am
Dai va bene scherzare un pò ma almeno non quotate i messaggi subito precedenti!!  smiley-cry
Niki the cleaner...
587  International / Hardware / Re: Scelta dev. board on: October 09, 2012, 10:15:07 am
Certo però Michele che la metafora dell'uovo bollito col tuo avatar....

Fammi strare zitto và   smiley-yell  smiley-yell
588  International / Hardware / Re: Scelta dev. board on: October 09, 2012, 09:53:03 am
Michele ma il vaffa era gratis!
Mi dispiace che ti sei offeso, ma mi si sono svegliate cosi tante madonne appena ho trovato quella issue...
Vado dietro la lavagna ...
smiley-zipper
589  International / Hardware / Re: Scelta dev. board on: October 09, 2012, 09:25:40 am
Di evidente ci sono solo le tue parole scritte su un forum  smiley-wink
E ti pare poco?  smiley-mr-green smiley-mr-green

Cerco solo di capire com'è che tutti si sbattono per scrivere un core quando poi l'IDE supporta il 1284 attraverso la toolchain Avr
Mhh forse perchè prima della 1.0.1 quel supporto non c'era?
Comunque stai facendo confusione tra toolchain e core di arduino .

Se così fosse allora qualunque micro Atmel potrebbe essere programmato tramite l'IDE semplicemente creando la relativa board?
Hai provato con i Tiny, senza usare il core Tiny? Osservando il core Arduino ho spesso incontrato diverse volte definizioni per i Tinyx5 e Tinyx4.
No , non qualunque micro Atmel, tra loro alcuni sono profondamente diversi quindi non generaliziamo, ma potenzialmente tutti i micro che hanno gli stessi timer alla stessa risoluzione e supportano le stesse feature utilizzate nel core , ma in tutti i casi NON senza effettuare modifiche.
Quello che vorrei farti capire è che non è per magia che il 1284p funziona con il core di arduino originale, ma perchè qualcuno ci ha messo le mani per farlo funzionare!


P.S. MA PERCHè non ve ne nnate a ff........ !!! smiley-eek

LINK

LEGGERE NOOO???  smiley-mr-green

590  International / Hardware / Re: Scelta dev. board on: October 09, 2012, 07:49:54 am
File Wstring.h
Nel codice arduino core
class __FlashStringHelper;
#define F(string_literal) (reinterpret_cast<__FlashStringHelper *>(PSTR(string_literal)))

Nel codice 1284p   core
class __FlashStringHelper;
#define F(string_literal) (reinterpret_cast<const __FlashStringHelper *>(PSTR(string_literal)))
Questa è una correzione effettuata a causa di un bug nel core più recente --> http://code.google.com/p/arduino/issues/detail?id=866&can=1&q=__FlashStringHelper

Questa si che è interessante... ora il cerchio è praticamente chiuso.  smiley-cool

Quote

La spiegazione di Leo riguardo la questione PROGMEM mi sembra assolutamente plausibile;


plausibilissima ma da me non condivisa, se miri a fare un core quanto più simile come comportamento all'originale non puoi fare una cosa diversa perchè ti fa comodo !

Per il resto se non vi arrendete nemmeno davanti all'evidenza bhe, vi lascio pure tutto il tempo di sperimentare di persona, quando avrete tempo e con comodo, tanto per me non c'è altro da chiarire !  smiley-mr-green





591  International / Hardware / Re: Scelta dev. board on: October 08, 2012, 05:13:16 pm
Allora, i test che ho fatto oggi consistono in questo:
Preso ide arduino 1.0.1, creata una entry in boards.txt che avesse come build.core=arduino e come build.mcu=atmega1284p e come build.variant=standard
Avviato ide arduino, preso sketch blink e modificato aggiungendo Serial.begin(57600) su setup e Serial.println("bing") tra lo spegnimento e l'accenzione del led dello sketch penso più famoso del mondo.
Prelevato il file hex dalla cartella temporanea creata, caricato nel simulatore (non faccio nomi ma non il giocattolo), collegato un virtual terminal al 1284p ed un analizzatore di segnali avviata la simulazione e ottenuto onda quadra ad 1 hz e messaggi bing che popolavano lo schermo del virtual terminal.
Spero di essere stato abbastanza chiaro.

Ora veniamo alle cose serie.
Mi sono preso uno dei famosi core che dovrebbero fare il mestiere di supportare il famoso atmega1284p.(QUESTA)
Analizzando il codice di tutti i file ho riscontrato che vi sono in molti file differenze illusorie, ovvero righe di codice scritte in maniera diversa ma che alla fine danno lo stesso risultato.
Vi sono anche differenze che non sono illusorie, e ho riscontrato anche che nelle librerie dedicate al 1284p vi sono mancanze (es. in quella che ho io non è definita la costante INPUT_PULLUP, forse perchè  è derivata da una versione arduino core più vecchia).

Alcune cose mi hanno incuriosito, e ve le riporto sotto :

File Arduino.h
Nel codice arduino core
 extern const uint16_t PROGMEM port_to_mode_PGM[];

Nel codice 1284p   core
 extern const uint16_t port_to_mode_PGM[];

File Wstring.h
Nel codice arduino core
class __FlashStringHelper;
#define F(string_literal) (reinterpret_cast<__FlashStringHelper *>(PSTR(string_literal)))

Nel codice 1284p   core
class __FlashStringHelper;
#define F(string_literal) (reinterpret_cast<const __FlashStringHelper *>(PSTR(string_literal)))

File Print.cpp
Nel codice arduino core
size_t Print::print(const __FlashStringHelper *ifsh)
{
  const char PROGMEM *p = (const char PROGMEM *)ifsh;
  size_t n = 0;
  while (1) {
    unsigned char c = pgm_read_byte(p++);
    if (c == 0) break;
    n += write(c);
  }
  return n;
}

Nel codice 1284p   core
size_t Print::print(const __FlashStringHelper *ifsh)
{
  const char *p = (const char PROGMEM *)ifsh;
  size_t n = 0;
  while (1) {
    unsigned char c = pgm_read_byte(p++);
    if (c == 0) break;
    n += write(c);
  }
  return n;
}

Alla fine secondo me si riduce tutto a questo, ma perchè manca PROGEMEM??

e questo è quanto.

Anche wiring_analog.h sembra contenere sostanziose differenze ma se si analizza bene il flusso logico del codice (e se non ho le travecole) è praticamente lo stesso funzionamento.
Ora datemi il tempo di indossare il casco e la tuta che sono pronto a ricevere tutte le vostre mazzate!!


P.S. poi di interessante ho letto pure QUESTO
592  International / Hardware / Re: Scelta dev. board on: October 08, 2012, 02:48:57 pm
La piedi natura a memoria mia passa per io.h che poi per il chip specifico viene prelevata da iom1284.h (basta aprire e leggere io.h).
La seriale suppongo Che ne vada di conseguenza,perlomeno la Serial, la 1 2 e compagnia bella non le ho provate.
Anche Il timer funziona,perlomeno quello usato da delay, altrimenti non avrebbe funzionato il blink.
593  International / Hardware / Re: Scelta dev. board on: October 08, 2012, 02:07:51 pm
Scanso equivoci oggi ho compilato uno sketch che fa uso di delay e seriale e non ho avuto problemi.
Arduino.h non mi pare faccia parte della toolchain avr, se il chip non fosse supportato che cosa l'hanno messo a fare?(Nelle versioni precedenti se non erro non c'era)
Comunque se Leo è sicuro di qualche cosa di diverso Per quel chip che potrebbe non funzionare sarò felice di provarlo.
Siamo qui per sperimentare, mica per litigare! smiley-mr-green
594  International / Hardware / Re: Scelta dev. board on: October 08, 2012, 09:45:42 am
Da arduino 1.0 in poi il 644p/1284p sono già supportati dal core principale, non occorre neanche un core dedicato.
Sei sicuro di ciò? Io non vedo nessuna particolare opzione nel core di Arduino 1.0.1, solo in un paio di file che definiscono le funzioni dei pin (wiring_analog, wiring_digital ed un altro che non ricordo). Ma non c'è traccia nelle sezioni relative alla gestione della seriale, degli interrupt e delle cose "importanti". Così come non ci sono board nel file boards.txt.
Non è che come me hai file boards.txt modificati o core aggiunti in un secondo tempo?

No, o meglio si , io ho il file board.txt modificato per definire una board con il 1284p, ma l'ho fatto in seguito dopo che ho visto che nel core di arduino (arduino.h) vi erano degli switch specifici per quel chip.
Inoltre è definito il suo pinout su io.h , ha il suo bel file di definizioni io1284p.h, stà  definito su wdt.h, sleep.h e power.h
Se devo essere sincero non ho provato a compilare molto di più di un semplice BLINK, ma posso sempre provare,non credo di trovare grosse sorprese.
Quello che vorrei sapere da te è cosa ti aspetti in un 1284p di profondamente diverso da un 1280 ?
595  International / Hardware / Re: Scelta dev. board on: October 08, 2012, 07:41:30 am

Allora se vuoi "giocare" con qualcosa di alternativo e simil-MEGA, prova gli Atmega644/1284. Esistono dei core già pronti per poter usare questi micro con l'IDE di Arduino. Hanno molti più pin e molta più memoria dei 328.


Da arduino 1.0 in poi il 644p/1284p sono già supportati dal core principale, non occorre neanche un core dedicato.
596  International / Hardware / Re: Parallelo RJ45 on: October 04, 2012, 09:43:36 am
Se ti può aiutare fino a pochi mesi fa io avevo un cavo cat.5 da 40 metri dove al suo interno facevo passare 2 utenze di rete.
Non sò se è la stessa cosa che intendi tu, quello che hai scritto sinceramente non mi è risultato molto chiaro ...  smiley-roll-blue

Quello che è sicuro è che nel mio caso non erano 2 utenze in parallelo ma 2 utenze di cui ognuna usava due coppie.
597  International / Software / Re: Programmare Arduino in C o C++ puro. on: October 04, 2012, 05:52:21 am

@niki77: in java se fai un errore di compilazione, c'è un c'è trace di tutte le funzioni chiamate "a cipolla" a partire dal main fino alla riga incriminata, e per ogni chiamata c'è il link diretto alla riga di codice.


Lo so, lo uso anche per java (android e applicazioni win 32).
Non aspettarti in C comportamenti e funzionalità profondamente diverse da quelle che hai con JAVA!  smiley-mr-green

@astro : Sono sicuro che avr studio sia migliore per lo sviluppo mirato per microcontrollori di questo tipo, ma preferisco avere tra le mani uno strumento che conosco e con la quale ho un buon appeal, rispetto ad avere il non plus ultra e non saperlo sfruttare.
Se te la devo dire tutta io uso molto di più visual studio (per lavoro), e proprio per questo motivo su eclipse mi sono rifatto tutte le combinazioni di tasti per avere lo stesso layout per non confondermi  smiley-mr-green
598  International / Software / Re: Programmare Arduino in C o C++ puro. on: October 04, 2012, 04:53:05 am

problema per cui ho proposto una modifica dell'ide giusto qualche settimana fa...
https://github.com/arduino/Arduino/pull/116


Io ho preferito modificarmi le librerie per conto mio, tanto l'ide di arduino non lo uso più.

Dai allora butta sù sto eclipse!!!

Così passi da fare  l' Indignados per le scarse potenzialità dell'ide di arduino all'Indigatos eclipse!
599  International / Software / Re: Programmare Arduino in C o C++ puro. on: October 04, 2012, 04:12:04 am
Certo che funziona, ma non solo per le librerie ufficiali, ma anche per quelle non ufficiali, per le classi utente e per le funzioni....
Praticamente quando inizi a scrivere codice se premi ctrl+barra ti propone i candidati , ogni candidato ha la sua icona accanto che ti permette di vedere se è un metodo , una proprietà, una enumerazione, una costante una classe etc etc etc.
Una volta individuato il tipo, mettendo il punto ti mostra tutte le possibilità che hai per quel tipo alla stessa maniera.

Un altra cosa carina è che appoggiando il mouse sul metodo di una libreria, nel tooltip te lo espande , e anche per le costanti e per le macro ti fà vedere il valore e/o la macro
600  International / Software / Re: Programmare Arduino in C o C++ puro. on: October 03, 2012, 08:49:24 am

Non ho mai provato core diversi (anche se a breve dovrò provare per il 1284p) , ma in caso lo provassi ti faccio sapere.


Mi rimangio quello che ho detto, non posso aiutarti in quanto ho già fatto le prove per il 1284p, che sono terminate con esito positivo, ma purtroppo non si può parlare di core diverso in quanto nelle versioni  arduino  > 1.0 quel chip è già supportato....
 
Pages: 1 ... 38 39 [40] 41 42 ... 62