

Moderatori: ragno, tapino, alez, zulu, davidea
Codice: Seleziona tutto
int incomingByte = 0; // for incoming serial data
void setup() {
Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
}
void loop() {
// send data only when you receive data:
if (Serial.available() > 0) {
// read the incoming byte:
incomingByte = Serial.read();
// say what you got:
Serial.print("I received: ");
Serial.println(incomingByte, DEC);
}
}
Sono d'accordo che l'atmelino non sia molto da "spremere" e non riesca a fare più di tanto, quindi per l'USB HOST sia effettivamente meglio puntare su un'architettura ARM o comunque + potente dei "rischini" tipo PIC o atmega.ragno ha scritto:Scusa alez, ma a cosa ti serve un host usb per arduino, prendi una dockstar allora
Per quanto riguarda V-USB invece, secondo me è tutta un'altra cosa: vedendo la periferca come USB HID il sistema non ha bisogno di gestirla come seriale, inoltre puoi emulare una tastiera / mouse USB che con FTDI non puoi fare, o sbaglio?Riguardo V-BUS, non credo che tu ne abbia bisogno, tutti gli arduino (eccetto il seriale) hanno una porta virtuale com-usb gestita dal solito chip FTDI.
Mi pare che usando la libreria V-USB portata per Arduino, si potrebbe usare sia l'IDE che il V-USBragno ha scritto:Mi pare di aver capito il tipo di richiesta.
...
Ma se utilizzi un bootloader compatibile arduino perdi la possibilita' di utilizzare il V-BUS e viceversa se utilizzi il V-BUS perdi la possibilita' di utilizzare l'IDE.
Chiaro, tra l'altro vedo che come opzioni di programmatore prevede appunto l'uso di USBasp e molti altriIn pratica c'e' un escamotage: visto che l'IDE genera un hex funzionante a tutti gli effetti si deve solo modificare il profilo della board (credo che sia possibile senza troppi problemi), flashando il chip non via seriale, ma direttamente tramite programmatore tipo usbasp, al limite anche manualmente, utilizzando avrdude come se il chip fosse vergine senza nessun bootloader: c'e' inoltre il vantaggio di poter disporre di tutta la memoria flash.
Si questo mi era chiaro, infatti prevedevo di costruire una semplice shield tipo questa:
E' chiaro che se l'atmega si deve poi presentare come periferica usb hid non puo essere utilizzato con la board arduino (a meno di modifiche hardware) e il codice deve contenere tutta la gestione (V-BUS) dello stesso e l'i/o deve essere indirizzato verso l'usb.
Per le comunicazioni standard e di debug penso anche io.Di norma invece se utilizzi una board arduino tutto l'i/o (da e verso il pc) e' seriale.
Nulla pero' ti impedisce di utilizzare una soluzione ibrida e piu' economica con il chip programmato direttamente (usbasp) con il codice sorgente che utilizza le librerie dell'ide arduino, senza bootloader e senza la board arduino, interfacciando il chip ad un convertitore usb-ttl (che costa pochi euro), un po' come funziona il fork sanguino.
Inoltre IMHO, rimane piu' semplice ed affidabile utilizzare la classe Serial() piuttosto che effettuare l'i/o su usb come periferica hid, anche perche' dal lato pc si puo' utilizzare un semplice script in bash per colloquiare col atmega.
saluti
ragno
Beh, anche se c'ho solo smanettato un po', a me e' sempre piaciuto come progetto (oltre a un poco di sano patriottismo): open, multipiattaforma, ben supportato dagli sviluppatori e molto gratito a livello community, con tanti utenti "enthusiast" e tante buone idee...alez ha scritto:
Quando mi parlasti la prima volta di Arduino allo scorso VDR DAY l'avevo un po sottovalutato, perché pensavo che fosse uno dei tanti chip proprietari tipo Basic Stamp ecc..., insomma il solito PIC o simile con un bel bootloader ed IDE a pagamento che funzionano solo su winzoz e non giustificano il costo.
Grazie a questa cosa dell'USB IR receiver mi sono messo finalmente a guardarlo e devo dire che è veramente una piattaforma interessante, per cui mi piacerebbe per quanto possibile sfruttarla e rimanere sul suo standard per realizzare qualcosa per VDR, in modo da continuare a contribuire nel contempo anche allo sviluppo di Arduino.
Grazie per avere condiviso le tue conoscenze
Sto buttando giù due appunti qui:
http://al3z77.altervista.org/dokuwiki/d ... rt:arduino