Venga costruire un led cubo 8 x 8 x 8 (versión italiana) (6 / 7 paso)

Paso 6: Software de Il

Il software di controllo e' coescrito en linguaggio Visual Basic. Il codice e' da tener en un modulo nel vostro progetto visual basic. E' también está necessario tener anche la libreria inpout32.dll (potete reperirla cercando il nome del su google oppure scaricando il archivo PROGRAMMI. ZIP allegato sotto) nella cartella c:\windows\system32 del pc vostro.
Potete trovare qualche cojinete (en inglés) sul Mr della porta parallela qui: http://logix4u.net/Legacy_Ports/Parallel_Port.html

En cada momento lo stato del cubo e' memorizzato nella matrice StatoCubo, chiken un temporizador si géneros un evento ogni pochi ms si preoccupa di accendere ogni llevó secondo lo stato memorizzato nella matrice.
NOTA BENE: este modulo si medicina di visualizzare sul cubo il contenuto della matrice StatoCubo. DOVETE ADMINISTRANDO DA SOLI I VARI CAMBIAMENTI DEI VALORI DELLA MATRICE!!!!!!

Se volete qualcosa gia' pronto nel archivo PROGRAMMI. Allegato ZIP qua trovate sotto i programmi praticamente fanno tuttto:'
Gestione led cubo 0.5.3--> gestione manuale e chiken timeline del cubo
medidor de nivel con contraste--> riproduttore MP3 freeware con control led cube (equalizzazione del segnale)
inpout32.dll--> libreria por la gestione della porta parallela (necesaria por il Mr dei programmi)

Matrice de la StatoCubo:
La matrice StatoCubo e' composta da 8 vettori ognuno di 64 elementi. Ogni vettore rappresenta lo stato di ONU intero livello, cada elemento del vettore rappresenta lo stato di 1 singolo led: 1 = acceso, 0 = temperatura regulada.

La función ScriviCubo:
Esta función viene richiamata ciclicamente chiken un temporizador e si medicina di trasmettere il contenuto della matrice StatoCubo al cubo vero e proprio.

La función ClokkaLed:
Di de medicina de la si "función ScriviCubo e dalla esta función viene richiamata" dare un colpo di reloj agli cambio registro delle colonne modificando SOLAMENTE il poco del reloj. En este modo il poco posto all'ingresso del primo cambio registro delle colonne viene acquisito.

La función ClokkaLivello:
Di de medicina de la si "función ScriviCubo e dalla esta función viene richiamata" dare un colpo di reloj allo cambio registro dei livelli modificando SOLAMENTE il poco del reloj. Se il livello da attivare e' il primo, viene posto un 1 all'ingresso dello registro de desplazamiento. Por successivi livelli il poco de ingresso sara' 0, verra' colpo di reloj de solamente dato ONU por far scorrere il pedacito del primo livello en avanti. Cosi' i livelli si accenderanno en sequenza, uno alla volta.

La función ClearAll:
Utilizzando esta función viene attivato il piedino su clara entrambi gli registro de desplazamiento. Tutti bit contenuti han cambio registro saranno posti un 0, di conseguenza il cubo risultera' temperatura regulada totalmente.

La función Aspetta:
Questa e' la función utilizzata por ritardare il ciclo di aggiornamento dei vari livelli. Senza questa lideré dei vari livelli si accenderebbero e si spegnerebbero troppo velocemente riuscendo no ad illuminarsi efectuado.

Passiamo al codice vero e proprio en grassetto comentarios:

'---RICHIAMO ALLA LIBRERIA POR LA GESTIONE DELLA PORTA LPT---
Público declara la función Inp Lib "inpout32.dll" Alias "Inp32" (ByVal PortAddress As Integer) As Integer
Público Declare Sub Out Lib "inpout32.dll" Alias "Out32" (ByVal PortAddress As Integer, ByVal valor As Integer)

'---COSTANTI POR GLI INDIRIZZI DELLA PORTA LPT1---
Pública Const IndirizzoData As String = "& H378" ' REGISTRO datos: 8 bits

'-------------------------------------------------------VARIABILI GLOBALI----------------------------------------------------
Público StatoCubo(1 To 8, 1 To 64) As Integer ' variabile contiene lo stato asociativo di TUTTO il cubo

'-------------------------------------------------------------FUNZIONI--------------------------------------------------------
ScriviCubo(NumeroCicli As Integer) función pública ' función por scrivere sul cubo lo stato memorizzato nella matrice StatoCubo
Dim ByteLpt como Byte
Dim ContaLivelli como entero
Dim ContaLed como entero
Dim ContaCicli como entero

Para ContaCicli = 1 To NumeroCicli ' ciclo por inalterato mantenere lo stato da rappresentare por X cicli

Para ContaLivelli = 1 a 8 ' scorro tutti i livelli impostandoli grapar uno alla volta

' tutti imposto yo poco dello cambio reg. delle colonne senza clokkare sullo cambio reg. dei livelli e disattivando SEMPRE entrambi claro (xx 01 x _1_)
Para ContaLed = 64 a 1 Step -1 ' para ContaLed = 1 a 64
' CAMBIO LIVELLI DE REG.:
' MSB (D5) = 0--> reloj disattivato
' CENTRALE (D4) = 1 (valore = 16)--> claro disattivato
' LSB (D3) = indifferente

' SHIFT REG. LED:
' MSB (D2) = 0--> reloj disattivato
' CENTRALE (D1) = 1 (valore = 2)--> claro disattivato
' LSB (D0) = StatoCubo (ContaLivelli, ContaLed)
ByteLpt = (0 + 16 + 0) + (0 + 2 + StatoCubo (ContaLivelli, ContaLed))
Llamar ClokkaLed(ByteLpt) 'passo il valore alla función da' ONU colpo di reloj allo cambio reg. delle colonne
Siguiente ContaLed

' CAMBIO LIVELLI DE REG.:
' MSB (D5) = 0--> reloj disattivato
' CENTRALE (D4) = 1 (valore = 16)--> claro disattivato
' LSB (D3) = (livello se = 1--> 1(valore=8); se livello <> 1--> 0)--> metto 1 solo la prima volta

' SHIFT REG. LED:
' MSB (D2) = 0--> reloj disattivato
' CENTRALE (D1) = 1 (valore = 2)--> claro disattivato
' LSB (D0) = indifferente

Si ContaLivelli = 1 Then 'se sto' impostando il primo livello entrar un 1 salida dello cambio reg. dei livelli, en consecuencia inviero' soltanto il segnale di reloj cosi' l 'scorrera 1' fino en fondo attivando un livello alla volta
ByteLpt = (0 + 16 + 8) + (0 + 2 + 0)
Otra cosa
ByteLpt = (0 + 16 + 0) + (0 + 2 + 0)
End If
Llamar ClokkaLivello(ByteLpt) 'passo il valore alla función da' ONU colpo di reloj allo cambio reg. dei livelli

Llamar Aspetta(60000) ' richiamo la función por generare un ritardo (il cubo smette di lampeggiare dai 60000 ai 70000 cicli)

Próximo ContaLivelli ' cancion il ciclo andando ad cómo il livello artículo

Llame a ClearAll ' richiamo la función por attivare registro de cambio gli il su clara entrambi (tutti spengo encabecé del cubo)

Siguiente ContaCicli

End Function

Público función ClokkaLed(Valore As Byte) 'da' ONU colpo di reloj agli cambio reg. delle colonne (reformas SOLAMENTE il bits del reloj)
A Val(IndirizzoData), Val(Valore) ' reloj DISATTIVATO
'aggiungo 4 perche' devo poner anuncio 1 il bits del reloj degli cambio reg. delle colonne x dare reloj de il colpo di
A Val(IndirizzoData), Val(Valore + 4) ' reloj ATTIVATO
End Function

Público función ClokkaLivello(Valore As Byte) 'da' ONU colpo di reloj allo cambio reg. dei livelli (reformas SOLAMENTE il bits del reloj)
A Val(IndirizzoData), Val(Valore) ' reloj DISATTIVATO
'aggiungo 32 perche' devo poner anuncio 1 il bits del reloj dello cambio reg. dei livelli x dare reloj de il colpo di
A Val(IndirizzoData), Val(Valore + 32) ' reloj ATTIVATO
End Function

ClearAll() de la función pública ' función por attivare registro de cambio gli il su clara entrambi (tutti spengo encabecé del cubo)
Dim ByteLpt como Byte
' attivo il su clara entrambi gli cambio de registro (valore = 0) cosi' li azzero (xx x0x x0x)
ByteLpt = 0 ' 00 000 000
A Val(IndirizzoData), Val(ByteLpt)
End Function

Aspetta(Ncicli As Long) función pública ' la función por ritardare il ciclo di aggiornamento dei livelli
Dim Contatore mientras
Dim tiempo Contato

Para Contatore = 0 para Ncicli
Contato = Contatore ' operazione di assegnamento ad una variabile (cosi' operación de las Naciones Unidas de fa de la CPU)
Contatore siguiente
End Function

Artículos Relacionados

Más pequeño 4 del mundo x 4 x 4 RGB LED cubo

Más pequeño 4 del mundo x 4 x 4 RGB LED cubo

Creo que esto es "actualidad" Tiniest 4 x 4 x 4 COLOR LED cubo del mundo. Hay más pequeños pero son generalmente solo color y conformada por menos LEDs (3 x 3 x 3).El cubo de LED real es menos de 1 pulgada cuadrada. Usa sesenta y cuatro 3.2mmx2.
$9 construir una 4 x 4 x 4 RGB LED cubo con creador de animación

$9 construir una 4 x 4 x 4 RGB LED cubo con creador de animación

Cubo del LED RGB es impresionante, pero tiene muchos led pierna a construir y el precio es alta, así que aquí es el componente más barato podemos hacer con 64 LEDs RGB, que tenga todas las piezas de bricolaje por su auto, al compartir el esquema y el
DIY LED cubo Jig

DIY LED cubo Jig

Hoy vamos a aprender cómo hacer un LED Cube Jig.¿Qué es una plantilla de cubo LED podría preguntar? Bien su simplemente un soporte poco aseado que le permitirá montar fácilmente un marco de cubo de LED por lo que es uniforme en tamaño y forma.Para ha
Cómo construir un 8 x 8 x 8 led cubo (versión en inglés)

Cómo construir un 8 x 8 x 8 led cubo (versión en inglés)

Gracias a ISACCO que ayudó a mí a traducir este INSTRUCTABLEProbablemente has llegado a esta página porque has visto uno de lo video clips en cubos led, que se propagan en la internet, y han decidido construir uno tú mismo.Bien, me alegra saber que t
8 de CHR X 8 X 8 LED cubo revisitado con mejoras!

8 de CHR X 8 X 8 LED cubo revisitado con mejoras!

Ver paso 17 para obtener más información sobre el modo de entrada de música para los tableros no rampa.Ahora hay 7 modos de la música en el código Posteado, y estoy buscando más ideas para animaciones o efectos de música activada!SALTAR directamente
JolliCube - 8 x 8 x 8 LED cubo (SPI)

JolliCube - 8 x 8 x 8 LED cubo (SPI)

Cubos de LED no deja de impresionarnos. Ver algunas animaciones de 7 x 7 x 7 o más cubos de LED puede ser muy fascinantes.Durante mucho tiempo hemos querido construir uno de estos cubos más grandes que 7 x 7 x 7. Investigado en línea para proyectos s
Simple 3 x 3 x 3 LED cubo con Arduino

Simple 3 x 3 x 3 LED cubo con Arduino

Este es mi primer instructivo para votar en los comentarios por favor.Al ver un montón de tutoriales de cubo del LED, parecía eran demasiado complejas y como no dan suficientes detalles acerca de cómo construirlos. También la selección controlada uno
4 x 4 x 4 LED cubo (Arduino Uno)

4 x 4 x 4 LED cubo (Arduino Uno)

En este tutorial te mostraré cómo hacer un 4 x 4 x 4 LED cubo por alrededor de $15.00. El cubo tiene 64 LEDs verdes que conforman la layers(positives) 4 y 16 columns(negatives). Todos estos están conectados a un Arduino Uno. Un Arduino es un microcon
Club Jameco 8 x 8 x 8 LED cubo Kit

Club Jameco 8 x 8 x 8 LED cubo Kit

hay una plétora de 8 x 8 x 8 LED cubo se basa en la web, tan sólo compartiré unas fotos sin entrar en gran detalle en mi build y transmitir algunos consejos que aprendí en el camino.He encontrado que "kit" significa en este caso una caja llena d
GENERADOR de código LED cubo 4 x 4 x 4 Arduino

GENERADOR de código LED cubo 4 x 4 x 4 Arduino

Este es un tutorial sobre cómo patrones de hacer más fácil para su cubo de LED controlada por Arduino 4 x 4 x 4.Reconocí la dificultad que muchas personas tienen con el cubo de LED de programación después de la construcción, por lo que he hecho un pr
WS2812B LED cubo 96 para arduino magia colorido

WS2812B LED cubo 96 para arduino magia colorido

Hey, chicos, esta es la cuarta vez (prototipos inteligentes) publicamos un instructivo aquíGracias por ver! Nosotros a seguir posteando en instructables divertido. Esto es un cubo mágico LED, esperamos sea útil para usted y nos encantaría comunicarno
Basic Stamp LED cubo

Basic Stamp LED cubo

Me gusta tratar de enseñar a mí sobre electrónica básica.  Siento que una vez puedo conseguir un asimiento firme en todos los elementos básicos (condensadores, resistencias, transistores, etc.), voy a ser más capaces de entender los componentes más a
Frambuesa pi - simple 2 x 2 x 2 led cubo

Frambuesa pi - simple 2 x 2 x 2 led cubo

Construí esta bastante simple 2 x 2 x 2 cubo led para mi frambuesa pi y quería compartir lo que aprendí.Esta es mi primera vez usando transistores el circuito probablemente no es perfecto, pero funciona como tenía la intención de que.Aquí es lo que s
4 x 4 x 4 interactivo led-cubo

4 x 4 x 4 interactivo led-cubo

como mi primer proyecto de Arduino real hice un 4 x 4 x 4-cubo del LED. Pero en lugar de sólo copiar uno de los muchos led-cubos que ya, que quería hacer mío interactivo!No quería mostrar los sensores así que comencé a experimentar con el uso del cub