Die Gewinner unseres Preisauschreibens, der dritte Platz - AZ-Delivery

Hola a todos

en primer lugar, me gustaría darle las gracias por las muchas entradas y la participación animada. Tomar una decisión no fue fácil, porque con tantos proyectos originales, a veces muy exigentes, gran parte de ella era muy difícil de elegir para nosotros. Pero como es tan a menudo el caso, sólo puede haber un ganador y por lo que hoy comenzamos con la presentación de nuestra tercer lugar:

El tercer lugar va a Baja Sajonia y Sr. Bettels puede ser contactado a través de un vale de compra en la cantidad de 50€ ¡En espera!

En AZ-Delivery, nos gustaría Entrada en la programación de microcontroladores hacer que sea lo más simple y fácil de usar posible y así ofrecer a tantos clientes como sea posible una plataforma para implementar sus propias ideas sobre la base de esto, o incluso para desarrollar sus propios productos.

El Sr. Bettels nos ha demostrado que comenzar con este tema no es un obstáculo insuperable y se ha tomado la molestia de combinar 8 de nuestras pantallas Matrix en horas de trabajo y con la ayuda de nuestras entradas de blog.

Con cuatro UnoR3 se utilizará en nuestro Pantallas de matriz un total de 2048 LED están controlados:

 

Aquí está el código: 

/*AZ-Matriz de entrega con bloque LED de 8x8x8 (Serie1)
* 19.12.2018 
* H.W.B.
* HWB-8x8x8-AZ-Delivery - Serie 1
*/
/*
LedControl funciona con Arduino Uno
pin 12 -> DIN - blanco
pin 11 -> CLK - verde
pin 10 -> CS - púrpura

Poder
5V - VCC - rojo
0V - GND - negro
*/

Biblioteca - LedContol.h
#include <Ledcontrol.H>
Ledcontrol Lc=Ledcontrol(12,11,10,8);

/* Temporizador */
Unsigned Largo T2s=2000;
Unsigned Largo T1=1000;
Unsigned Largo t05s=500;
Unsigned Largo t02s=200;
Unsigned Largo t01s=100;

Vacío Configuración() {
Lc.Apagado(0,Falso);Lc.setIntensidad(0,8);Lc.clearDisplay(0);
Lc.Apagado(1,Falso);Lc.setIntensidad(1,8);Lc.clearDisplay(1);
Lc.Apagado(2,Falso);Lc.setIntensidad(2,8);Lc.clearDisplay(2);
Lc.Apagado(3,Falso);Lc.setIntensidad(3,8);Lc.clearDisplay(3);
Lc.Apagado(4,Falso);Lc.setIntensidad(4,8);Lc.clearDisplay(4);
Lc.Apagado(5,Falso);Lc.setIntensidad(5,8);Lc.clearDisplay(5);
Lc.Apagado(6,Falso);Lc.setIntensidad(6,8);Lc.clearDisplay(6);
Lc.Apagado(7,Falso);Lc.setIntensidad(7,8);Lc.clearDisplay(7);


}
Vacío writeAZDelivery() {

AZ-Delivery Series-1 (2019)

Byte x2[8]={B00111000,B00100100,B00100000,B00010000,B00001000,B00111100,B0000000000,B0000000000};
Byte x0[8]={B00111100,B00100100,B00100100,B00100100,B00100100,B00111100,B0000000000,B0000000000};
Byte x1[8]={B00110000,B00101000,B00100100,B00100000,B00100000,B00100000,B0000000000,B0000000000};
Byte x9[8]={B00111100,B00100100,B00111100,B00100000,B00100000,B00111100,B0000000000,B0000000000};


Serie 1 2019
Lc.setRow(2,7,x2[0]);Lc.setRow(2,6,x2[1]);Lc.setRow(2,5,x2[2]);Lc.setRow(2,4,x2[3]);
Lc.setRow(2,3,x2[4]);Lc.setRow(2,2,x2[5]);Lc.setRow(2,1,x2[6]);Lc.setRow(2,0,x2[7]);
delay(t05s);
Lc.setRow(3,7,x0[0]);Lc.setRow(3,6,x0[1]);Lc.setRow(3,5,x0[2]);Lc.setRow(3,4,x0[3]);
Lc.setRow(3,3,x0[4]);Lc.setRow(3,2,x0[5]);Lc.setRow(3,1,x0[6]);Lc.setRow(3,0,x0[7]);
delay(t05s);
Lc.setRow(4,7,x1[0]);Lc.setRow(4,6,x1[1]);Lc.setRow(4,5,x1[2]);Lc.setRow(4,4,x1[3]);
Lc.setRow(4,3,x1[4]);Lc.setRow(4,2,x1[5]);Lc.setRow(4,1,x1[6]);Lc.setRow(4,0,x1[7]);
delay(t05s);
Lc.setRow(5,7,x9[0]);Lc.setRow(5,6,x9[1]);Lc.setRow(5,5,x9[2]);Lc.setRow(5,4,x9[3]);
Lc.setRow(5,3,x9[4]);Lc.setRow(5,2,x9[5]);Lc.setRow(5,1,x9[6]);Lc.setRow(5,0,x9[7]);
//
Retraso(T2s);
Lc.clearDisplay(0);Lc.clearDisplay(1);Lc.clearDisplay(2);Lc.clearDisplay(3);
Lc.clearDisplay(4);Lc.clearDisplay(5);Lc.clearDisplay(6);Lc.clearDisplay(7);
Retraso(T2s);
}

Vacío Bucle() {
writeAZDelivery();
}

 

 

/*AZ-Matriz de entrega con bloque LED de 8x8x8 (Serie2)
* 19.12.2018 
* H.W.B.
* HWB-8x8x8-AZ-Delivery - Serie 2
*/
/*
LedControl funciona con Arduino Uno
pin 12 -> DIN - blanco
pin 11 -> CLK - verde
pin 10 -> CS - púrpura

Poder
5V - VCC - rojo
0V - GND - negro
*/

Biblioteca - LedContol.h
#include <Ledcontrol.H>
Ledcontrol Lc=Ledcontrol(12,11,10,8); 

/* Temporizador */
Unsigned Largo T2s=2000;
Unsigned Largo T1=1000;
Unsigned Largo t05s=500;
Unsigned Largo t02s=200;
Unsigned Largo t01s=100;

Vacío Configuración() {

Lc.Apagado(0,Falso);Lc.setIntensidad(0,8);Lc.clearDisplay(0);
Lc.Apagado(1,Falso);Lc.setIntensidad(1,8);Lc.clearDisplay(1);
Lc.Apagado(2,Falso);Lc.setIntensidad(2,8);Lc.clearDisplay(2);
Lc.Apagado(3,Falso);Lc.setIntensidad(3,8);Lc.clearDisplay(3);
Lc.Apagado(4,Falso);Lc.setIntensidad(4,8);Lc.clearDisplay(4);
Lc.Apagado(5,Falso);Lc.setIntensidad(5,8);Lc.clearDisplay(5);
Lc.Apagado(6,Falso);Lc.setIntensidad(6,8);Lc.clearDisplay(6);
Lc.Apagado(7,Falso);Lc.setIntensidad(7,8);Lc.clearDisplay(7);


}
Vacío writeAZDelivery() {

AZ-Delivery Series-2
Byte Un[8]={B0000000000,B1000000000,B01000000,B01000000,B11000000,B01000000,B01000000,B0000000000};
Byte Z[8]={B0000000000,B00000111,B00000100,B00000100,B10111111,B00100100,B00100100,B00010000};
Byte X[8]={B0000000000,B00011100,B00100100,B10100100,B10100101,B10100100,B10100100,B10011100};
Byte D[8]={B0000000000,B10010000,B00010000,B10010011,B10010100,B10010111,B10010000,B10110011};
Byte E[8]={B0000000000,B0000000000,B0000000000,B10100010,B10100010,B10010010,B10001010,B10000110};
Byte L[8]={B0000000000,B0000000000,B0000000000,B01110011,B00010100,B00010111,B00010000,B00010011};
Byte Ⅰ.[8]={B0000000000,B0000000000,B0000000000,B00010001,B00010001,B00010001,B00010001,B00011111};

AZ-Delivery Series 2
Retraso(T2s);
Lc.setRow(0,7,Un[0]);Lc.setRow(0,6,Un[1]);Lc.setRow(0,5,Un[2]);Lc.setRow(0,4,Un[3]);
Lc.setRow(0,3,Un[4]);Lc.setRow(0,2,Un[5]);Lc.setRow(0,1,Un[6]);Lc.setRow(0,0,Un[7]);
delay(t05s);
Lc.setRow(1,7,Z[0]);Lc.setRow(1,6,Z[1]);Lc.setRow(1,5,Z[2]);Lc.setRow(1,4,Z[3]);
Lc.setRow(1,3,Z[4]);Lc.setRow(1,2,Z[5]);Lc.setRow(1,1,Z[6]);Lc.setRow(1,0,Z[7]);
delay(t05s);
Lc.setRow(2,7,X[0]);Lc.setRow(2,6,X[1]);Lc.setRow(2,5,X[2]);Lc.setRow(2,4,X[3]);
Lc.setRow(2,3,X[4]);Lc.setRow(2,2,X[5]);Lc.setRow(2,1,X[6]);Lc.setRow(2,0,X[7]);
delay(t05s);
Lc.setRow(3,7,D[0]);Lc.setRow(3,6,D[1]);Lc.setRow(3,5,D[2]);Lc.setRow(3,4,D[3]);
Lc.setRow(3,3,D[4]);Lc.setRow(3,2,D[5]);Lc.setRow(3,1,D[6]);Lc.setRow(3,0,D[7]);
delay(t05s);
Lc.setRow(4,7,E[0]);Lc.setRow(4,6,E[1]);Lc.setRow(4,5,E[2]);Lc.setRow(4,4,E[3]);
Lc.setRow(4,3,E[4]);Lc.setRow(4,2,E[5]);Lc.setRow(4,1,E[6]);Lc.setRow(4,0,E[7]);
delay(t05s);
Lc.setRow(5,7,L[0]);Lc.setRow(5,6,L[1]);Lc.setRow(5,5,L[2]);Lc.setRow(5,4,L[3]);
Lc.setRow(5,3,L[4]);Lc.setRow(5,2,L[5]);Lc.setRow(5,1,L[6]);Lc.setRow(5,0,L[7]);
delay(t05s);
Lc.setRow(6,7,Ⅰ.[0]);Lc.setRow(6,6,Ⅰ.[1]);Lc.setRow(6,5,Ⅰ.[2]);Lc.setRow(6,4,Ⅰ.[3]);
Lc.setRow(6,3,Ⅰ.[4]);Lc.setRow(6,2,Ⅰ.[5]);Lc.setRow(6,1,Ⅰ.[6]);Lc.setRow(6,0,Ⅰ.[7]);
//
delay(t2s);
lc.clearDisplay(0);
lc.clearDisplay(1);
lc.clearDisplay(2);
lc.clearDisplay(3);
lc.clearDisplay(4);
lc.clearDisplay(5);
lc.clearDisplay(6);
delay(t2s);

}

Vacío Bucle() {
writeAZDelivery();
}

 

 

/*AZ-Matriz de entrega con bloque LED de 8x8x8 (Serie3)
* 19.12.2018 
* H.W.B.
* HWB-8x8x8-AZ-Delivery - Series3

*/

Biblioteca - LedContol.h
#include <Ledcontrol.H>
Ledcontrol Lc=Ledcontrol(12,11,10,8);

/* Temporizador */
Unsigned Largo T2s=2000;
Unsigned Largo T1=1000;
Unsigned Largo t05s=500;
Unsigned Largo t02s=200;
Unsigned Largo t01s=100;

Vacío Configuración() {
Lc.Apagado(0,Falso);Lc.setIntensidad(0,8);Lc.clearDisplay(0);
Lc.Apagado(1,Falso);Lc.setIntensidad(1,8);Lc.clearDisplay(1);
Lc.Apagado(2,Falso);Lc.setIntensidad(2,8);Lc.clearDisplay(2);
Lc.Apagado(3,Falso);Lc.setIntensidad(3,8);Lc.clearDisplay(3);
Lc.Apagado(4,Falso);Lc.setIntensidad(4,8);Lc.clearDisplay(4);
Lc.Apagado(5,Falso);Lc.setIntensidad(5,8);Lc.clearDisplay(5);
Lc.Apagado(6,Falso);Lc.setIntensidad(6,8);Lc.clearDisplay(6);
Lc.Apagado(7,Falso);Lc.setIntensidad(7,8);Lc.clearDisplay(7);


}
Vacío writeAZDelivery() {
AZ-Delivery Series 3
Byte Z2[8]={B00001000,B00111100,B0000000000,B0000000000,B0000000000,B0000000000,B0000000000,B0000000000};
Byte y2[8]={B00010000,B00010000,B00001110,B0000000000,B0000000000,B0000000000,B0000000000,B0000000000};

Lc.setRow(1,7,Z2[0]);Lc.setRow(1,6,Z2[1]);Lc.setRow(1,5,Z2[2]);Lc.setRow(1,4,Z2[3]);
Lc.setRow(1,3,Z2[4]);Lc.setRow(1,2,Z2[5]);Lc.setRow(1,1,Z2[6]);Lc.setRow(1,0,Z2[7]);
delay(t05s);
Lc.setRow(6,7,y2[0]);Lc.setRow(6,6,y2[1]);Lc.setRow(6,5,y2[2]);Lc.setRow(6,4,y2[3]);
Lc.setRow(6,3,y2[4]);Lc.setRow(6,2,y2[5]);Lc.setRow(6,1,y2[6]);Lc.setRow(6,0,y2[7]);
delay(t2s);

}

Vacío Bucle() {
writeAZDelivery();
}

 

 

/*AZ-Matriz de entrega con bloque LED de 8x8x8 (Series4)
* 19.12.2018 
* H.W.B.
* SERIE HWB-8x8x8-AZ-Delivery4
* 
//

LedControl funciona con Arduino Uno
pin 12 -> DIN - blanco
pin 11 -> CLK - verde
pin 10 -> CS - púrpura

Poder
5V - VCC - rojo
0V - GND - negro
*/

Biblioteca - LedContol.h
#include <Ledcontrol.H>
Ledcontrol Lc=Ledcontrol(12,11,10,8);

/* Temporizador */
Unsigned Largo T2s=2000;
Unsigned Largo T1=1000;
Unsigned Largo t05s=500;
Unsigned Largo t02s=200;
Unsigned Largo t01s=100;

Vacío Configuración() {
Lc.Apagado(0,Falso);Lc.setIntensidad(0,8);Lc.clearDisplay(0);
Lc.Apagado(1,Falso);Lc.setIntensidad(1,8);Lc.clearDisplay(1);
Lc.Apagado(2,Falso);Lc.setIntensidad(2,8);Lc.clearDisplay(2);
Lc.Apagado(3,Falso);Lc.setIntensidad(3,8);Lc.clearDisplay(3);
Lc.Apagado(4,Falso);Lc.setIntensidad(4,8);Lc.clearDisplay(4);
Lc.Apagado(5,Falso);Lc.setIntensidad(5,8);Lc.clearDisplay(5);
Lc.Apagado(6,Falso);Lc.setIntensidad(6,8);Lc.clearDisplay(6);
Lc.Apagado(7,Falso);Lc.setIntensidad(7,8);Lc.clearDisplay(7);


}
Vacío writeAZDelivery() {

AZ-Delivery Series 4
Byte Z2[8]={B01100110,B10011001,B10011001,B10000001,B10000001,B01000010,B00100100,B00011000};
//
Lc.setRow(0,7,Z2[0]);Lc.setRow(0,6,Z2[1]);Lc.setRow(0,5,Z2[2]);Lc.setRow(0,4,Z2[3]);
Lc.setRow(0,3,Z2[4]);Lc.setRow(0,2,Z2[5]);Lc.setRow(0,1,Z2[6]);Lc.setRow(0,0,Z2[7]);
//
Lc.setRow(1,7,Z2[0]);Lc.setRow(1,6,Z2[1]);Lc.setRow(1,5,Z2[2]);Lc.setRow(1,4,Z2[3]);
Lc.setRow(1,3,Z2[4]);Lc.setRow(1,2,Z2[5]);Lc.setRow(1,1,Z2[6]);Lc.setRow(1,0,Z2[7]);
//
Lc.setRow(2,7,Z2[0]);Lc.setRow(2,6,Z2[1]);Lc.setRow(2,5,Z2[2]);Lc.setRow(2,4,Z2[3]);
Lc.setRow(2,3,Z2[4]);Lc.setRow(2,2,Z2[5]);Lc.setRow(2,1,Z2[6]);Lc.setRow(2,0,Z2[7]);
//
Lc.setRow(3,7,Z2[0]);Lc.setRow(3,6,Z2[1]);Lc.setRow(3,5,Z2[2]);Lc.setRow(3,4,Z2[3]);
Lc.setRow(3,3,Z2[4]);Lc.setRow(3,2,Z2[5]);Lc.setRow(3,1,Z2[6]);Lc.setRow(3,0,Z2[7]);
//
Lc.setRow(4,7,Z2[0]);Lc.setRow(4,6,Z2[1]);Lc.setRow(4,5,Z2[2]);Lc.setRow(4,4,Z2[3]);
Lc.setRow(4,3,Z2[4]);Lc.setRow(4,2,Z2[5]);Lc.setRow(4,1,Z2[6]);Lc.setRow(4,0,Z2[7]);
//
Lc.setRow(5,7,Z2[0]);Lc.setRow(5,6,Z2[1]);Lc.setRow(5,5,Z2[2]);Lc.setRow(5,4,Z2[3]);
Lc.setRow(5,3,Z2[4]);Lc.setRow(5,2,Z2[5]);Lc.setRow(5,1,Z2[6]);Lc.setRow(5,0,Z2[7]);
//
Lc.setRow(6,7,Z2[0]);Lc.setRow(6,6,Z2[1]);Lc.setRow(6,5,Z2[2]);Lc.setRow(6,4,Z2[3]);
Lc.setRow(6,3,Z2[4]);Lc.setRow(6,2,Z2[5]);Lc.setRow(6,1,Z2[6]);Lc.setRow(6,0,Z2[7]);
//
Lc.setRow(7,7,Z2[0]);Lc.setRow(7,6,Z2[1]);Lc.setRow(7,5,Z2[2]);Lc.setRow(7,4,Z2[3]);
Lc.setRow(7,3,Z2[4]);Lc.setRow(7,2,Z2[5]);Lc.setRow(7,1,Z2[6]);Lc.setRow(7,0,Z2[7]);
Retraso(T2s);

}

Vacío Bucle() {
writeAZDelivery();
}

 

Mañana te presentaré el segundo lugar, hasta entonces :)
Specials

1 comentario

Ralf

Ralf

hallo gemeinde
da hat der herr bettels doch ein wenig mehr aufwand betrieben und sich in unkosten gestürzt um auch noch kräftig die werbetrommel zu klopfen und den code auch noch gepostet, was mir nicht leicht gefallen wäre, und niemand würdigt das mit einem kommentar. vielleicht hab ich ja was übersehen, aber die anderen beiträge wurden kommentiert und/oder kritisiert oder verbessert.
das projekt finde ich jedenfalls ok und das eine oder andere kann auf jeden fall noch geändert oder verbessert werden. jetzt wo´s fertig ist kann das gesagt werden. und über vorschläge , etwas sinnvoll zu ändern ist doch jeder dankbar. is meine meinung.
mfg r.

Deja un comentario

Todos los comentarios son moderados antes de ser publicados