330

sur les cartes drivers de led, j'ai soudé les 32 CI et en soudant les 256 premières résistances j'en ai perdu une par terre, signe qu'il était temps de faire une pause. Prochaine étape, les 256 résistances coté connecteurs et les 32 capas de découplage (j'ai le nombre grâce à squalyl qui m'a donné ce qu'il me manquait smile love)

petite note pour squalyl justement : je n'ai eu que 5 cartes de puissance, pas 10 comme tu pensais
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

331

Ah d'accord, donc ca a dû être une erreur quand j'ai commandé les miennes.

De rien pour les caps smile

332

Si c'est Seeed si tu commande 5 tu auras 5, si tu commande 10 tu auras 10, mais la difference de prix entre les deux est minime
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

333

Bon, j'ai fini de souder les composants CMS sur les 9 cartes...

avec en passage "mémorables" :
- une des bobines de composants avait un défaut, le film n'était pas collé au début (j'ai du en perdre mais je sais pas combien)
- j'ai renversé ma soucoupe à composants (j'en ai perdu un à ce moment là)
- le décodeur 4=>16 est plus large que l'emprunte sur le circuit... (je lui ai mis ses pattes à la verticale et c'est bon

reste maitnenant les composants traversants... mais avant, repos
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

334

https://plus.google.com/112609294154362908352/posts/dL5r7tSRzbd au passage vu qu'on ma demandé si c'était possible de brancher ce que j'avais déjà sur le cube
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

335

336

J'ai fini mes 8 cartes de pilotage de leds. J'ai fait un test avec 3 en chaine (max que supporte l'usb en théorie) et ça marche vraiment bien

(et si mon téléphone décide de faire un effort je vous fait voir la vidéo)

Reste la carte d'alimentation des couches : ce que je pensais être des clips pour fixer les TO220 au transistors ne sont que des joints, j'ai gagné un passage chez leroy merlin pour chopper la visserie qui va bien
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

337

J'ai une question pour la carte de "puissance" : si je ne branche qu'une led +résistance sur chaque sortie, Est-ce nécessaire d'avoir le radiateur sur les mosfet ?

(je pense que non vu les 20mA d'une led, mais je préfère être sûr)
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

338

Si y'a que 20 mA dans le MOSFET, non.
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

339

Merci !

Et ça marche !

https://plus.google.com/112609294154362908352/posts/gnHpnNKPcby

(ouais, j'ai pas touché à l'arduinopour le programme donc j'arrive à jouer qu'avec 8 leds à la fois ^^)
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

340

Demain, passage chez Leroy pour la visserie, fixation au radiateur et zou!
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

341

happy

Tu as de quoi isoler la partie métallique des transistors du dissipateur ?
(la plupart du temps, elle est reliée à l'une des broches du transistor, donc ça fait des courts-circuits si tu mets plusieurs transistors sur un seul dissipateur sans isolation - sauf si tu as du pot et que ces broches sont déjà reliées entre elles dans ton circuit).
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

342

J'ai des isolants silicone, mais je croyais que le plot noir était un clips, ce n'est qu'une rondelle isolante... je suis bon pour acheter les vis qu'il manque
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

343

OK smile
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

344

vince (./162) :
tromb Fichier joint : video_2016-02-25_21-35-27.mov

Le minicube marche pas trop mal avec le schéma aux transsitors smile

(par contre ça nique les zoeils, il faut vraiment que je mette des résistances si je garde une vitesse aussi lente ^^)

PS : faudrait que je me renseigne comment utiliser des variables et faire des boucles dans ce langage parce que le source actuel est fait de pauvres copiercollers depuis le sample #sale#trifouet/* Blink Turns on an LED on for one second, then off for one second, repeatedly. Most Arduinos have an on-board LED you can control. On the Uno and Leonardo, it is attached to digital pin 13. If you're unsure what pin the on-board LED is connected to on your Arduino model, check the documentation at http://www.arduino.cc This example code is in the public domain. modified 8 May 2014 by Scott Fitzgerald */ // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 13 as an output. pinMode(53, OUTPUT); pinMode(51, OUTPUT); pinMode(49, OUTPUT); pinMode(47, OUTPUT); pinMode(50, OUTPUT); pinMode(52, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(50, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(52, LOW); // turn the LED on (HIGH is the voltage level) digitalWrite(49, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(47, LOW); // turn the LED on (HIGH is the voltage level) digitalWrite(53, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(51, LOW); // turn the LED on (HIGH is the voltage level) delay(200); // wait for a second digitalWrite(53, LOW); // turn the LED off by making the voltage LOW digitalWrite(51, HIGH); // turn the LED off by making the voltage LOW delay(200); // wait for a second digitalWrite(49, LOW); // turn the LED on (HIGH is the voltage level) digitalWrite(47, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(53, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(51, LOW); // turn the LED on (HIGH is the voltage level) delay(200); // wait for a second digitalWrite(53, LOW); // turn the LED off by making the voltage LOW digitalWrite(51, HIGH); // turn the LED off by making the voltage LOW delay(200); // wait for a second //-- digitalWrite(50, LOW); // turn the LED on (HIGH is the voltage level) digitalWrite(52, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(49, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(47, LOW); // turn the LED on (HIGH is the voltage level) digitalWrite(53, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(51, LOW); // turn the LED on (HIGH is the voltage level) delay(200); // wait for a second digitalWrite(53, LOW); // turn the LED off by making the voltage LOW digitalWrite(51, HIGH); // turn the LED off by making the voltage LOW delay(200); // wait for a second digitalWrite(49, LOW); // turn the LED on (HIGH is the voltage level) digitalWrite(47, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(53, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(51, LOW); // turn the LED on (HIGH is the voltage level) delay(200); // wait for a second digitalWrite(53, LOW); // turn the LED off by making the voltage LOW digitalWrite(51, HIGH); // turn the LED off by making the voltage LOW delay(200); // wait for a second }
J'ai réinstallé l'arduitoolkit, et le driver qui va bien (j'avais pas réinstallé depuis le "hard reverse" de win10) et j'ai retrouvé le programme qui tournait : c'est donc le programme du test du cube 2x2x2 qui fait un si joli chenillard sur les vidéos postées depuis deux jours ^^.
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

345

/* 53 - Data IN 52 - Latch 51 - Data OUT 50 - CLK */ int delay_ms=10; // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 13 as an output. pinMode(53, OUTPUT); // Data IN pinMode(52, OUTPUT); // Latch pinMode(51, INPUT); // Data OUT pinMode(50, OUTPUT); // Clk pinMode(13, OUTPUT); // onboard led } // the loop function runs over and over again forever void loop() { int nb_out=0; //init with 0 for (int i=0;i<4096; i++){ digitalWrite(53, LOW); digitalWrite(50, LOW); digitalWrite(50, HIGH); } //DISPLAY digitalWrite(52, HIGH); digitalWrite(52, LOW); digitalWrite(13, LOW); delay(delay_ms); //Autotest (comptage d'un cycle) //init with 0 for (int i=0;i<4096; i++){ digitalWrite(53, LOW); digitalWrite(50, LOW); digitalWrite(50, HIGH); } //insert 1 digitalWrite(53, HIGH); digitalWrite(50, LOW); digitalWrite(50, HIGH); nb_out=1; //fill with 0 while (digitalRead(51)==LOW){ digitalWrite(53, LOW); digitalWrite(50, LOW); digitalWrite(50, HIGH); nb_out++; } // nb_out in binary for (int i=0;i<16; i++){ digitalWrite(53, bitRead(nb_out,i)); digitalWrite(50, LOW); digitalWrite(50, HIGH); } //DISPLAY digitalWrite(52, HIGH); digitalWrite(52, LOW); digitalWrite(13, digitalRead(51)); delay(1000); //init with 0 for (int i=0;i<nb_out; i++){ digitalWrite(53, LOW); digitalWrite(50, LOW); digitalWrite(50, HIGH); } //DISPLAY digitalWrite(52, HIGH); digitalWrite(52, LOW); digitalWrite(13, LOW); delay(delay_ms); //Chenillard for (int j=0;j<nb_out;j++){ for (int i=0;i<nb_out; i++){ if (j>i){ digitalWrite(53, HIGH); }else { digitalWrite(53, LOW); } digitalWrite(50, LOW); digitalWrite(50, HIGH); } //DISPLAY digitalWrite(52, HIGH); digitalWrite(52, LOW); digitalWrite(13, digitalRead(51)); delay(delay_ms); } for (int j=0;j<nb_out;j++){ for (int i=0;i<nb_out; i++){ if (j<i){ digitalWrite(53, HIGH); }else { digitalWrite(53, LOW); } digitalWrite(50, LOW); digitalWrite(50, HIGH); } //DISPLAY digitalWrite(52, HIGH); digitalWrite(52, LOW); digitalWrite(13, digitalRead(51)); delay(delay_ms); } }Donc, ça init à blanc, ça recherche la boucle pour savoir combien de digit j'affiche (j'affiche pendant 1 seconde la valeur en hexa) et ensuite un petit chenillard sur l'ensemble...

Le code est crade mais j'aime quand même ^^

Testé avec 1, 2, 3 cartes, il voit bien la différence

Et en passant, je me suis rendu compte qu'une des cartes était "défectueuse" (j'ai soudé qu'un coté d'un des 4 CI gol)
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

346

Pour ceux qui connaissent : à part digitalWrite() y'a qqch qui permettrait d'envoyer un char sur 8 pins d'un coup ?
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

347

PORTx = valeur;
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

348

Merci !
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

349

Si les IOs sont sur le meme port!
avatarProud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

350

https://plus.google.com/112609294154362908352/posts/ayFnKqTvxp5

8 cartes ça marche !

Pour la carte de puissance j'ai galéré à l'assemblage... N'ayant pas de colonne, le perçage n'était pas aussi précis que voulu, et surtout je tombais dans les ailettes du radiateur... les pads isolants sont efficaces par contre les rondelles en plastic c'est du caca. En outre j'avais deux sorties qui ne marchaient pas... la faute au décodeur dont deux pattes souffraient de soudure sèche... (mais bon, vu le bricolage pour le souder ce CI, c'est pas étonnant)

Prochaine étape : le cadre pour mettre tout ça dans le bon sens
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

351

top
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

352

vince (./350) :
Prochaine étape : le cadre pour mettre tout ça dans le bon sens
cVTm
3dtH
G43n
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

353

C'est Souane-compliant !
avatarZeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

354

La grande classe!
avatarQue cache le pays des Dieux ? - Ximoon's Box - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

355

(et avant que qqn ne fasse la remarque : j'ai remis le pixel manquant ^^)
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

356

Superbe vince, j'ai hâte de voir une vidéo de l'ensemble love
avatar<<< Kernel Extremist©®™ >>>
Feel the power of (int16) !

357

avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

358

Amazing love
avatar<<< Kernel Extremist©®™ >>>
Feel the power of (int16) !

359

top
avatar

360

Bon, je suis un peu coincé niveau "optimisation"

Pour afficher une "frame", je dois afficher 16 "layers" de 256 bits. Pour afficher un layer je dois "pusher" les bits un à un en série et ensuite déclencher la recopie sur les sorties de mes cartes.

Si on vise un framerate de 25 fps alors il faut faire 25*16=400 layers par seconde soit 102400 pushs par seconde sur le port.

J'ai mis le code de push d'un layer dans une interruption. Pour afficher à 25fps, je dois l'exécuter 400 fois par seconde.

J'utilise la librairie suivante pour le timer : http://playground.arduino.cc/Code/Timer1

La valeur est en µs, pour tenir mon framerate je dois donc descendre à 2500µs pour du 25fps ou au moins 3500 si on vise le 18fps.

Or, et c'est bien là mon soucis, en dessous de 5000~5500µs de période, y'a plus aucun changement (le code de la loop principale ne s'exécute plus comme il faut). Et je peux vous assurer qu'à 10~12 fps on le voit le clignottement...

Voici mon code si vous voyez si un truc "énorme" m'aurait échappé...
#include "TimerOne.h" char video_buffer[]={LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, HIGH, LOW, HIGH, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, HIGH, HIGH, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW}; // :) char sprite[]={LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, HIGH, LOW, HIGH, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, HIGH, HIGH, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW}; // wolf char sprite2[]={LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, HIGH, LOW, HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, HIGH, HIGH, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, HIGH, HIGH, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, HIGH, HIGH, HIGH, HIGH, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, LOW, LOW, HIGH, HIGH, LOW, LOW, HIGH, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, LOW, HIGH, HIGH, LOW, LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW}; int frame=0; int couche_vbl=0; int nb_out=0; // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 13 as an output. pinMode(53, OUTPUT); // Data IN pinMode(52, OUTPUT); // Latch pinMode(51, INPUT); // Data OUT pinMode(50, OUTPUT); // Clk pinMode(49, OUTPUT); // selcouche bit 3 pinMode(48, OUTPUT); // selcouche bit 2 pinMode(47, OUTPUT); // selcouche bit 1 pinMode(46, OUTPUT); // selcouche bit 0 pinMode(13, OUTPUT); // onboard led selcouche(0); //Autotest (comptage d'un cycle) //init with 0 for (int i=0;i<4096; i++){ digitalWrite(53, LOW); digitalWrite(50, LOW); digitalWrite(50, HIGH); } //insert 1 digitalWrite(53, HIGH); digitalWrite(50, LOW); digitalWrite(50, HIGH); nb_out=1; //fill with 0 until 1 exits the loop while (digitalRead(51)==LOW){ digitalWrite(53, LOW); digitalWrite(50, LOW); digitalWrite(50, HIGH); nb_out++; } //init with 0 for (int i=0;i<nb_out; i++){ digitalWrite(53, LOW); digitalWrite(50, LOW); digitalWrite(50, HIGH); } //DISPLAY digitalWrite(52, HIGH); digitalWrite(52, LOW); digitalWrite(13, LOW); Timer1.initialize(50000); Timer1.attachInterrupt(VBL); } void selcouche(int couche){ switch(couche){ case 0: digitalWrite(49, LOW); digitalWrite(48, LOW); digitalWrite(47, LOW); digitalWrite(46, LOW); break; case 1: digitalWrite(49, LOW); digitalWrite(48, LOW); digitalWrite(47, LOW); digitalWrite(46, HIGH); break; case 2: digitalWrite(49, LOW); digitalWrite(48, LOW); digitalWrite(47, HIGH); digitalWrite(46, LOW); break; case 3: digitalWrite(49, LOW); digitalWrite(48, LOW); digitalWrite(47, HIGH); digitalWrite(46, HIGH); break; case 4: digitalWrite(49, LOW); digitalWrite(48, HIGH); digitalWrite(47, LOW); digitalWrite(46, LOW); break; case 5: digitalWrite(49, LOW); digitalWrite(48, HIGH); digitalWrite(47, LOW); digitalWrite(46, HIGH); break; case 6: digitalWrite(49, LOW); digitalWrite(48, HIGH); digitalWrite(47, HIGH); digitalWrite(46, LOW); break; case 7: digitalWrite(49, LOW); digitalWrite(48, HIGH); digitalWrite(47, HIGH); digitalWrite(46, HIGH); break; case 8: digitalWrite(49, HIGH); digitalWrite(48, LOW); digitalWrite(47, LOW); digitalWrite(46, LOW); break; case 9: digitalWrite(49, HIGH); digitalWrite(48, LOW); digitalWrite(47, LOW); digitalWrite(46, HIGH); break; case 10: digitalWrite(49, HIGH); digitalWrite(48, LOW); digitalWrite(47, HIGH); digitalWrite(46, LOW); break; case 11: digitalWrite(49, HIGH); digitalWrite(48, LOW); digitalWrite(47, HIGH); digitalWrite(46, HIGH); break; case 12: digitalWrite(49, HIGH); digitalWrite(48, HIGH); digitalWrite(47, LOW); digitalWrite(46, LOW); break; case 13: digitalWrite(49, HIGH); digitalWrite(48, HIGH); digitalWrite(47, LOW); digitalWrite(46, HIGH); break; case 14: digitalWrite(49, HIGH); digitalWrite(48, HIGH); digitalWrite(47, HIGH); digitalWrite(46, LOW); break; case 15: digitalWrite(49, HIGH); digitalWrite(48, HIGH); digitalWrite(47, HIGH); digitalWrite(46, HIGH); break; default: digitalWrite(49, LOW); digitalWrite(48, LOW); digitalWrite(47, LOW); digitalWrite(46, LOW); } } // The callback of the timer1 (displays a layer) void VBL(){ for (int i=0;i<nb_out; i++){ digitalWrite(53, video_buffer[i]); digitalWrite(50, LOW); digitalWrite(50, HIGH); } //DISPLAY selcouche(couche_vbl); digitalWrite(52, HIGH); digitalWrite(52, LOW); couche_vbl=(couche_vbl+1)&15; } // the loop function runs over and over again forever void loop() { if( frame==0){ frame=1; memcpy(video_buffer, sprite,256); }else{ frame=0; memcpy(video_buffer, sprite2,256); } delay(1000); }
avatarWebmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca