Show Posts
Pages: 1 2 [3] 4 5 ... 457
31  International / Software / Re: come "uscire" da una void una variabile?? on: April 22, 2014, 06:53:46 am
Non ho mai provato ad allegare video.
Forse se lo pubblichi su Youtube e metti il link...
32  International / Software / Re: Bug funzione delay? on: April 22, 2014, 06:24:48 am
Se vero bisogna aprire una issue su GitHub (https://github.com/arduino/Arduino).
Lesto sei tu il nostro reference user.  smiley-mr-green

p.s.
il codice della init() è in wiring.c
Code: (https://github.com/arduino/Arduino/blob/master/hardware/arduino/cores/arduino/wiring.c)
void init()
{
// this needs to be called before setup() or some functions won't
// work there
sei();

// on the ATmega168, timer 0 is also used for fast hardware pwm
// (using phase-correct PWM would mean that timer 0 overflowed half as often
// resulting in different millis() behavior on the ATmega8 and ATmega168)
#if defined(TCCR0A) && defined(WGM01)
sbi(TCCR0A, WGM01);
sbi(TCCR0A, WGM00);
#endif 

// set timer 0 prescale factor to 64
#if defined(__AVR_ATmega128__)
// CPU specific: different values for the ATmega128
sbi(TCCR0, CS02);
#elif defined(TCCR0) && defined(CS01) && defined(CS00)
// this combination is for the standard atmega8
sbi(TCCR0, CS01);
sbi(TCCR0, CS00);
#elif defined(TCCR0B) && defined(CS01) && defined(CS00)
// this combination is for the standard 168/328/1280/2560
sbi(TCCR0B, CS01);
sbi(TCCR0B, CS00);
#elif defined(TCCR0A) && defined(CS01) && defined(CS00)
// this combination is for the __AVR_ATmega645__ series
sbi(TCCR0A, CS01);
sbi(TCCR0A, CS00);
#else
#error Timer 0 prescale factor 64 not set correctly
#endif

// enable timer 0 overflow interrupt
#if defined(TIMSK) && defined(TOIE0)
sbi(TIMSK, TOIE0);
#elif defined(TIMSK0) && defined(TOIE0)
sbi(TIMSK0, TOIE0);
#else
#error Timer 0 overflow interrupt not set correctly
#endif

// timers 1 and 2 are used for phase-correct hardware pwm
// this is better for motors as it ensures an even waveform
// note, however, that fast pwm mode can achieve a frequency of up
// 8 MHz (with a 16 MHz clock) at 50% duty cycle

#if defined(TCCR1B) && defined(CS11) && defined(CS10)
TCCR1B = 0;

// set timer 1 prescale factor to 64
sbi(TCCR1B, CS11);
#if F_CPU >= 8000000L
sbi(TCCR1B, CS10);
#endif
#elif defined(TCCR1) && defined(CS11) && defined(CS10)
sbi(TCCR1, CS11);
#if F_CPU >= 8000000L
sbi(TCCR1, CS10);
#endif
#endif
// put timer 1 in 8-bit phase correct pwm mode
#if defined(TCCR1A) && defined(WGM10)
sbi(TCCR1A, WGM10);
#elif defined(TCCR1)
#warning this needs to be finished
#endif

// set timer 2 prescale factor to 64
#if defined(TCCR2) && defined(CS22)
sbi(TCCR2, CS22);
#elif defined(TCCR2B) && defined(CS22)
sbi(TCCR2B, CS22);
#else
#warning Timer 2 not finished (may not be present on this CPU)
#endif

// configure timer 2 for phase correct pwm (8-bit)
#if defined(TCCR2) && defined(WGM20)
sbi(TCCR2, WGM20);
#elif defined(TCCR2A) && defined(WGM20)
sbi(TCCR2A, WGM20);
#else
#warning Timer 2 not finished (may not be present on this CPU)
#endif

#if defined(TCCR3B) && defined(CS31) && defined(WGM30)
sbi(TCCR3B, CS31); // set timer 3 prescale factor to 64
sbi(TCCR3B, CS30);
sbi(TCCR3A, WGM30); // put timer 3 in 8-bit phase correct pwm mode
#endif

#if defined(TCCR4A) && defined(TCCR4B) && defined(TCCR4D) /* beginning of timer4 block for 32U4 and similar */
sbi(TCCR4B, CS42); // set timer4 prescale factor to 64
sbi(TCCR4B, CS41);
sbi(TCCR4B, CS40);
sbi(TCCR4D, WGM40); // put timer 4 in phase- and frequency-correct PWM mode
sbi(TCCR4A, PWM4A); // enable PWM mode for comparator OCR4A
sbi(TCCR4C, PWM4D); // enable PWM mode for comparator OCR4D
#else /* beginning of timer4 block for ATMEGA1280 and ATMEGA2560 */
#if defined(TCCR4B) && defined(CS41) && defined(WGM40)
sbi(TCCR4B, CS41); // set timer 4 prescale factor to 64
sbi(TCCR4B, CS40);
sbi(TCCR4A, WGM40); // put timer 4 in 8-bit phase correct pwm mode
#endif
#endif /* end timer4 block for ATMEGA1280/2560 and similar */

#if defined(TCCR5B) && defined(CS51) && defined(WGM50)
sbi(TCCR5B, CS51); // set timer 5 prescale factor to 64
sbi(TCCR5B, CS50);
sbi(TCCR5A, WGM50); // put timer 5 in 8-bit phase correct pwm mode
#endif

#if defined(ADCSRA)
// set a2d prescale factor to 128
// 16 MHz / 128 = 125 KHz, inside the desired 50-200 KHz range.
// XXX: this will not work properly for other clock speeds, and
// this code should use F_CPU to determine the prescale factor.
sbi(ADCSRA, ADPS2);
sbi(ADCSRA, ADPS1);
sbi(ADCSRA, ADPS0);

// enable a2d conversions
sbi(ADCSRA, ADEN);
#endif

// the bootloader connects pins 0 and 1 to the USART; disconnect them
// here so they can be used as normal digital i/o; they will be
// reconnected in Serial.begin()
#if defined(UCSRB)
UCSRB = 0;
#elif defined(UCSR0B)
UCSR0B = 0;
#endif
}
33  International / Software / Re: come "uscire" da una void una variabile?? on: April 22, 2014, 05:26:15 am
Puoi usare gli operatori && (and) e II (or).

Esempio
Code:
if (media1>media2 && media1>media3 && media1>media4 && media1>media5)
  {
   .....
  }
  else
   {
    if (media2>media3 && media>media4)
      {
        ....
     }
   }

Però mi sa che tu vuoi fare qualcos'altro...
34  International / Hardware / Re: problema ethernet shield on: April 22, 2014, 05:15:50 am
Foto?
Nome sul chip più grande?
35  International / Generale / Re: Velocità protocollo I2C on: April 22, 2014, 05:13:55 am
Se la distanza è notevole puoi provare con degli I2C extender --> http://store.fungizmos.com/items/343
--> http://www.nxp.com/products/interface_and_connectivity/i2c/i2c_bus_repeaters_hubs_extenders/series/P82B715.html
36  International / Software / Re: Arduino rifà la setup on: April 22, 2014, 03:18:57 am
quindi all'esaurimento della ram, il micro si resetta!

Non è detto.
All'esaurimento della RAM il micro ha un comportamento imprevedibile.
Di solito però si pianta più che resettarsi, almeno che non sia attivo il WatchDog.
Comunque usando la funzione F() ha liberato moltissima memoria. Quindi un blocco per memoria esaurita adesso è meno probabile.
37  International / Software / Re: Trasferimento seriale on: April 22, 2014, 03:07:52 am
Guarda l'ultimo esempio qui --> http://www.gammon.com.au/forum/?id=11425
Ci sono anche funzioni già pronte --> http://arduino.cc/en/Reference/ParseInt e http://arduino.cc/en/Serial/ParseFloat
Esempio --> http://arduino.cc/en/Tutorial/ReadASCIIString (lo trovi nell'IDE negli sketch di Esempio)
38  International / Generale / Re: inverter 12/115v 400hz on: April 22, 2014, 02:55:04 am
Ciao Luca, bentornato.
39  International / Software / Re: Funzioni Php mancanti su Arduino Yùn on: April 21, 2014, 03:30:16 am
Il più esperto di Arduino YUN è Pitusso,  smiley-wink
40  International / Hardware / Re: Arduino Uno r3 collegamento TFT 3.2 on: April 20, 2014, 01:52:14 pm
Non vedo il link, ma suppongo ti manchi uno shield per il collegamento.
41  International / Generale / Re: SD non comunica on: April 20, 2014, 01:02:20 pm
Se vanno ai pin 50/53 allora la devi semplicemente collegare alla MEGA o ad un altro Arduino con dei cavetti e utilizzarla come una normale SD, con l'accortezza di specificare il pin SS o CS che sarà il 53 (nel caso della MEGA) e non il 4 o il 10 (come avviene di solito).
42  International / Generale / Re: SD non comunica on: April 20, 2014, 11:14:41 am
La SD potrebbe essere collegata al controller del TFT e utilizzata per caricare immgini sul display, quindi non disponibile ad Arduino.
Per avere certezze bisogna chiedere lo schema dello shield al venditore.
Oppure segui le piste e vedi com'é collegata la SD.
43  International / Generale / Re: da 24 volt AC a 5 volt DC, cosa usare? on: April 19, 2014, 10:06:02 am
Anche.  smiley-mr-green
44  International / Generale / Re: da 24 volt AC a 5 volt DC, cosa usare? on: April 19, 2014, 08:55:12 am
Led che funzionano con corrente alternata mi é nuova ma ormai non bisogna stupirsi di niente.
Se non vuoi fornire 24V direttamente al 7805 puoi metterlo in cascata a un 7812 così ripartisci il salto su 2 integrati. Srmpre con le alette.
45  International / Software / Re: Arduino Multitasking on: April 19, 2014, 08:43:28 am
Interessante. smiley-wink
Pages: 1 2 [3] 4 5 ... 457