Show Posts
Pages: 1 [2] 3 4 ... 33
16  International / Generale / Re: Incontro comunità di Arduino 2014 on: March 16, 2014, 03:23:34 pm
Ciao a tutti.
Se decidete per Roma posso vedere di trovare uno spazio adeguato. Non prometto niente ma credo di potercela fare.
Forse anche qualche menata in più. vediamo. Ma quali sarebbero le esigenze esattamente ?
17  International / Hardware / Re: Arduino Wireless on: March 13, 2014, 10:26:33 am
attached qualche referenza
18  International / Software / Re: [Risolto] Confronto di variabili con approssimazione on: March 13, 2014, 10:08:56 am
 smiley-yell
bella
19  International / Software / Re: [Risolto] Confronto di variabili con approssimazione on: March 13, 2014, 10:06:37 am
figurati. basta che non mi parliate di hardware ... :-)
che poi a furia di frequentare tutta la brutta gente (hardwaristi) di questo forum qualcosa ho imparato pure io ...
20  International / Software / Re: confronto di variabili con approssimazione on: March 13, 2014, 09:59:16 am
divido lo scarto (differenza) assoluta tra due numeri per il numero maggiore. uso la differenza assoluta per avere l'invarianza del riusultato rispetto all'ordine dei due valori .
mi da la percentuale di differenza tra il numero maggiore e il numero minore.
Non era questo che ti serviva?
21  International / Software / Re: confronto di variabili con approssimazione on: March 13, 2014, 09:57:54 am
ingegnere ? :-)
22  International / Software / Re: confronto di variabili con approssimazione on: March 13, 2014, 09:53:54 am
... be lascio a te fare le conversioni tra interi e float ecc... se no che diverimento c'è?
23  International / Software / Re: confronto di variabili con approssimazione on: March 13, 2014, 09:52:37 am
abs(x)= da il valore assoluto (senza segno), nel tuo caso il valore assoluto della differenza tra le due misurazioni
max(x,y)=da il valore maggiore tra due numeri

esempio=
lettura a=7
lettura b=10

(abs(7-10)/max(7,10))>0,1
(abs(-3)/10)>0,1
(3/10)>0,1
0,3>0,1 -> maggiore della tolelranza impostata


24  International / Software / Re: confronto di variabili con approssimazione on: March 13, 2014, 09:44:40 am
ma qualcosa del genere (pseudocodice):

Code:
tolleranza=0,1  (0,1=10%, 0,2=20%)
...
if((abs(a-b)/max(a,b))>tolleranza)
then
     <tuo codice>

no?
25  International / Megatopic / Re: MENWIZ: una libreria per creare menu su LCD on: March 13, 2014, 08:50:26 am
quello era il penultimo esempio codice, che non funzionava.
nell'ultimo codice (ultimo post del topic) non vedo quelle linee di codice e navmenu restituisce i codici Menwiz corretti (MW_BTU ecc...)
26  International / Megatopic / Re: MENWIZ: una libreria per creare menu su LCD on: March 13, 2014, 07:28:50 am
Vai in questo topic.
potrai trovare sia il codice che lo schema. E' per 4 bottoni, ma estenderla dovrebbe essere banale.
C'è anche il debouncing.

http://forum.arduino.cc/index.php?topic=122636.15
27  International / Megatopic / Re: MENWIZ: una libreria per creare menu su LCD on: March 13, 2014, 02:09:21 am
la prima cosa che fa menwiz "standard" è quella di verificare se e quale bottone è stato premuto, tramite la seguente funzione "built in":

Code:
int menwiz::scanNavButtons(){

  if(btx->BTU.check()==ON){
    return MW_BTU;}
  else if (btx->BTD.check()==ON){
    return MW_BTD;}
  else if (btx->BTL.check()==ON){
    return MW_BTL;}
  else if (btx->BTR.check()==ON){
    return MW_BTR;}
  else if (btx->BTE.check()==ON){
    return MW_BTE;}
  else if (btx->BTC.check()==ON){
    return MW_BTC;}
  else
    return MW_BTNULL;
  }
Per far conoscere a menwiz quali sono i pin che utilizzo per i bottoni (mappatura) devo usare in setup la seguente funzione:
menu.navButtons(UP_BUTTON_PIN,DOWN_BUTTON_PIN,LEFT_BUTTON_PIN,RIGHT_BUTTON_PIN,ESCAPE_BUTTON_PIN,CONFIRM_BUTTON_PIN);


se un utente invece dei bottoni "standard" vuol usare una altra modalità/device deve semplicemente riscrivere una funzione come la precedente che ritorni gli stessi valori con logica di gestione "custom". Per esempio se voglio usare una keypad 4x4  scriverò la seguente funzione


Code:
int menuKeys()
{
  char keyPressed = customKeypad.getKey(); // read the keypad to see if a key has been pressed
 
  switch (keyPressed)
  {
    case NO_KEY:
      return MW_BTNULL; // no key pressed
    case '2':
      return MW_BTU; // key 2 pressed for direction UP
    case '8':
      return MW_BTD; // key 8 pressed for direction DOWN
    case '4':
      return MW_BTL; // key 4 pressed for direction LEFT
    case '6':
      return MW_BTR; // key 6 pressed for direction RIGHT
    case '*':
      return MW_BTE; // key * pressed for ESCAPE
    case '#':
      return MW_BTC; // key # pressed for CONFIRM
  }
}
per "dire" a menwiz che deve usare la mia funzione e non quella "built in" in setup devo usare al posto della chiamata a navButtons di cui sopra il metodo
menu.addUsrNav(menuKeys,6);

Questo fa si che menwiz non chiami più la funzione "built in" ma chieami quella definita dall'utente.

Un caso particolare è quello in cui per risparmiare pin di Arduino si utilizzi un solo pin analogico associndo a ciascun bottone una resistenza di valore noto e differente per ciascun botton, che permette, misurando il valore del pin analogico, di capire quale tasto è stato premuto sulla base del valore di input. esempi di utilizzo di questo metodo ce ne sonmo nei topics su menwiz in inglese, con esempi di scrittura della funzione "custom" che comunque è abbasAtnza semplice (come vedi tutto si riduce a poche righe di codice). Io non ho però un esempio disponibile, ma ne sono stati messi in linea.

Spero di essere stato chiaro.
28  International / Megatopic / Re: MENWIZ: una libreria per creare menu su LCD on: March 12, 2014, 02:02:31 pm
ouch! I pushbutton sono connessi con pin digitali. In alcuni casi i pin analogici vengono usati come digitali quando necessario.... come sto facendo io in questo momento ..) ma questa è un'altra storia....
29  International / Megatopic / Re: MENWIZ: una libreria per creare menu su LCD on: March 12, 2014, 07:08:41 am
... metti, come suggerito dal nome dei parametri, il pin di Arduino su cui attesti ciascun pushbutton.
Comunque se non provi a usare i pushbutton indipendentemente da menwiz, capendo come funzionano e come usare i pin analogici di Arduino, seguendo i link che ti ho dato o altri che troverai googlando è inutile continuare a chiedere aiuto su questo topic.
30  International / Megatopic / Re: MENWIZ: una libreria per creare menu su LCD on: March 12, 2014, 06:25:13 am
i pushbutton usano i pin analogici.
La libreria buttons.h fornita insieme alla libreria menwiz gestisce i bottoni.
Bisogna mappare i pin analogici utilizzati e dichiararli alla libreria menwiz, che poi chiamerà la libreria buttons a sua volta.
Tale mappatura si fa con la chiamata
 
Code:
menu.navButtons(UP_BUTTON_PIN,DOWN_BUTTON_PIN,LEFT_BUTTON_PIN,RIGHT_BUTTON_PIN,ESCAPE_BUTTON_PIN,CONFIRM_BUTTON_PIN);
 
dove si passano i "numeri" dei pin analogici che si sono utilizzati per i bottoni.

tutorial base per 1 pushbutton
http://arduino.cc/en/Tutorial/Button#.UyBFAfl5NOg
più bottoni:
http://www.ladyada.net/learn/arduino/lesson5.htm
Se poi si vuole utilizzare un altro device invece dei semplici bottoni (p.es. un keypad) ... bisogna legegre il manuale e fare una ricerca sul forum o leggere anche questo topic, un paio di pagine indietro...
Pages: 1 [2] 3 4 ... 33