Outils pour utilisateurs

Outils du site


matrice_a_leds

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

matrice_a_leds [2012/02/22 14:35]
admin
matrice_a_leds [2015/01/28 03:09]
Ligne 1: Ligne 1:
-====== Matrice a leds de bus ====== 
  
-===== Matériel ===== 
- 
-==== L'​afficheur ==== 
- 
-Il s'agit d'une matrice à led de type afficheur de Bus/Tram. 
- 
-La partie affichage est composée de composants classiques : 
- 
-     * Registres à décallage 74LS164 - [[http://​www.datasheetcatalog.org/​datasheets/​90/​375461_DS.pdf|Datasheet]] 
-     * Transistors Darlingtons ULN2003A - [[http://​www.datasheetcatalog.org/​datasheet/​SGSThomsonMicroelectronics/​mXtyyvx.pdf|Datasheet]] 
- 
-==== Partie Contrôle déjà en place ==== 
- 
-Une carte Alim + microcontroleur était déjà en place, basé Intel 8k. 
- 
-Cependant sur cette carte se trouvait des Transistors Darlingtons PNP, sevant à booster le courant des lignes de diodes. 
- 
-     * Transistors Darlingtons PNP STA402A - [[http://​www.datasheetcatalog.org/​datasheet/​Sanken/​mXyzyzts.pdf|Datasheet]] 
- 
-Nous n'​avons pas spécialement cherchés à utiliser le microcontroleur présent. 
- 
-===== Codes sources et Exemples ===== 
- 
-==== Afficher des blocs de 3 couleurs défilents ==== 
- 
-<code c> 
-#define DELAY 1000 
- 
-int clockPin = 13; //Clock 
-int dataPin = 12; //Data 
- 
-void setup() { 
- pinMode(clockPin,​ OUTPUT); 
- pinMode(dataPin,​ OUTPUT); 
- pinMode(2, OUTPUT); 
- pinMode(3, OUTPUT); 
- pinMode(4, OUTPUT); 
- pinMode(5, OUTPUT); 
- pinMode(6, OUTPUT); 
- pinMode(7, OUTPUT); 
- pinMode(8, OUTPUT); 
- pinMode(9, OUTPUT); 
- 
- 
-} 
- 
- 
-void loop() { 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b11111111);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-delay(DELAY);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b11111111);​ 
-delay(DELAY);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b11111111);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b11111111);​ 
-delay(DELAY);​ 
- 
-</​code>​ 
- 
- 
-==== Afficher "​LABX"​ ==== 
- 
-<code c> 
-int clockPin = 13; //Clock 
-int dataPin = 12; //Data 
- 
-void setup() { 
-  pinMode(clockPin,​ OUTPUT); 
-  pinMode(dataPin,​ OUTPUT); 
-  pinMode(9, OUTPUT); 
- pinMode(2, OUTPUT); 
- pinMode(3, OUTPUT); 
- pinMode(4, OUTPUT); 
- pinMode(5, OUTPUT); 
- pinMode(6, OUTPUT); 
- pinMode(7, OUTPUT); 
- pinMode(8, OUTPUT); 
- 
- // Mise a zero  
-// for(int i=0; i<80; i++) 
-// { 
-//​ digitalWrite(clockPin,​ LOW); 
-  
-//​ digitalWrite(dataPin,​ LOW); 
-  
-//​ digitalWrite(clockPin,​ HIGH); 
-// } 
- 
-} 
-void puthigh(int val) { 
- 
- for (int i=2;​i<​=8;​i++) { 
-digitalWrite(i,​ HIGH); 
- } 
- digitalWrite(val,​ LOW); 
-delayMicroseconds(750);​  
- } 
-  
- void loop() { 
- 
-//​ digitalWrite(clockPin,​ LOW); 
-//​ delay(1);​ 
- //​digitalWrite(dataPin,​ HIGH); 
-//​ delay(1);​ 
- //​digitalWrite(clockPin,​ HIGH); 
-  
-puthigh(9);​  
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001111);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b11111001);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001001);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-puthigh(2);//​delay(20);​ 
- 
-puthigh(9); 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001001);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10011001);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001001);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-puthigh(3);//​delay(20);​ 
- 
-puthigh(9); 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001001);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10010110);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000110);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
- puthigh(4);​ //​delay(20);​ 
- 
-puthigh(9); 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001111);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b11100110);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000110);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
- puthigh(5);//​delay(20);​ 
- 
-puthigh(9); 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001001);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10010110);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000110);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-puthigh(6);//​delay(20);​ 
- 
-puthigh(9); 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001001);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b10011001);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001001);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
- puthigh(7);//​delay(20);​ 
- 
-puthigh(9); 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b11110000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001001);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b11111001);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00001001);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​shiftOut(dataPin,​ clockPin, MSBFIRST, 0b00000000);​ 
-puthigh(8);//​delay(20);​ 
- 
- 
-</​code>​ 
matrice_a_leds.txt · Dernière modification: 2015/01/28 03:09 (modification externe)