Diferencia entre revisiones de «Trastejant amb arduino»

De Jose Castillo Aliaga
Ir a la navegación Ir a la búsqueda
(Página creada con «Aquest són els projectes extranys, inconclusos o frikis amb Arduino, però que vull documentar. ==Ruleta numèrica== En la meua col·lecció de fem tecnológic, he t...»)
 
Sin resumen de edición
Línea 8: Línea 8:


El primer problema és que no és un circuit fet per ser reutilitzable. És molt específic. Té dos connectors per darrere estàndars, però sols utilitza una fracció dels cables. Calía detectar la funció de cadascun.
El primer problema és que no és un circuit fet per ser reutilitzable. És molt específic. Té dos connectors per darrere estàndars, però sols utilitza una fracció dels cables. Calía detectar la funció de cadascun.
Aquest dibuix cutre representa el que vaig averiguar:
[[Archivo:Eptagonoled.png]]


El segon problema és que els displays de LEDs són de ánode comú, quant jo tinc un integrat cd4511be, fet per a càtode comú. No podia utilitzar l'integrat. Necessitava 7 eixides d'arduino per als segments i pensar al contrari. (El 0 és encés i el 1 és apagat.)  
El segon problema és que els displays de LEDs són de ánode comú, quant jo tinc un integrat cd4511be, fet per a càtode comú. No podia utilitzar l'integrat. Necessitava 7 eixides d'arduino per als segments i pensar al contrari. (El 0 és encés i el 1 és apagat.)  

Revisión del 21:24 8 dic 2013

Aquest són els projectes extranys, inconclusos o frikis amb Arduino, però que vull documentar.

Ruleta numèrica

En la meua col·lecció de fem tecnológic, he trobat una espècie de ruleta, probablement, de una màquina de premi. Com que són displays de 7 segments de LEDs, pareixía fàcil tornar a donar vida al circuit.

Si voleu vorer la foto: [1]

El primer problema és que no és un circuit fet per ser reutilitzable. És molt específic. Té dos connectors per darrere estàndars, però sols utilitza una fracció dels cables. Calía detectar la funció de cadascun.

Aquest dibuix cutre representa el que vaig averiguar:

Eptagonoled.png

El segon problema és que els displays de LEDs són de ánode comú, quant jo tinc un integrat cd4511be, fet per a càtode comú. No podia utilitzar l'integrat. Necessitava 7 eixides d'arduino per als segments i pensar al contrari. (El 0 és encés i el 1 és apagat.)

Vaig utlitzar 7 eixides per als segments i 7 per a cadascun dels displays. El del mig va sempre.

El codi sols és una demo del que es pot fer:

const int leds[] = {2,3,4,5,6,7,8};

int n=0;
int d=0;
byte displays[10]={0,1,9,10,11,12,13};
byte numbers[10][7]={
{0,0,1,1,1,1,1},
{0,1,0,0,1,0,0},
{0,0,0,0,1,1,0},
{0,0,1,1,0,1,0},
{1,0,0,0,0,1,0},
{1,0,1,0,0,0,0},
{0,0,0,1,1,1,1},
{0,0,0,0,0,0,0},
{0,0,0,1,0,1,0},
{0,0,0,0,0,0,1}

};

float idelay=1;

void setup()
{
 
  for (int i=0;i<14;i++){ 
   pinMode(i,OUTPUT);
   
  }
 
 // digitalWrite(10,HIGH);
}

void loop()
{
  digitalWrite(displays[d],HIGH);
  int r=random(10);
  for(int i=0;i<7;i++){
  digitalWrite(leds[i],HIGH);
  digitalWrite(leds[i],numbers[r][i]);
  }
  
  delay(idelay);
  digitalWrite(displays[d],LOW);
  n=(n+1)%10;
  d=(d+1)%7;
  idelay=idelay*1.1;
  
}