Pages: [1]   Go Down
Author Topic: [RESOLU] Utilisation du TIL311  (Read 955 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour à tous.

Je cherche à utiliser un afficheur hexadécimal avec la carte arduino UNO. Cet afficheur est le TIL311 de Texas instrument. J'ai consulté la documentation technique et pense avoir à peu près compris comment il fonctionne. Mon problème est que je ne sais pas comment envoyer un signal d'horloge à la bascule D. De plus je ne comprend pas comment et où câbler le "BLANKING INPUT". Je vous joins la documentation technique du TIL311.

Pouvez-vous m'aider ?

* til311.pdf (102.53 KB - downloaded 15 times.)
« Last Edit: June 06, 2012, 05:03:39 pm by Atton_666 » Logged

Ales
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3607
Do or DIY
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Pour la bascule D je suppose que tu parles du "LATCH STROBE INPUT" de la datasheet. Bin pourquoi vouloir générer un signal d'horloge ? d'après ce que je comprend il te suffit juste de faire une impulsion après avoir modifiés tes LATCHES pour que l'affichage se met à jour. Pour le blanking input, il sert à moduler la luminosité, relie le donc à un pwm si tu souhaites le faire, sinon relie le au GND ...
Logged


France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Salut,

J'ai fait un petit code d'exemple en suivant le datasheet que tu as fourni.
Mais vu que je n'ai pas le composant sous la main je ne peut pas garantir que le code marche smiley-wink

Code:
/* Lignes de controle */
#define LATCH_STROBE 2
#define BLANK_INPUT 3

/* Bus de données */
#define LATCH_DATA_A 4
#define LATCH_DATA_B 5
#define LATCH_DATA_C 6
#define LATCH_DATA_D 7

/* Macro d'usages */
#define afficheurOn() digitalWrite(BLANK_INPUT, LOW)
#define afficheurOff() digitalWrite(BLANK_INPUT, HIGH)

void affichage(uint8_t valeur) {
  valeur &= 0x0F; // Sécurité : 0 < valeur < 15
 
  /* Envoi des données sur le latch */
  digitalWrite(LATCH_DATA_A, bitRead(valeur, 0));
  digitalWrite(LATCH_DATA_B, bitRead(valeur, 1));
  digitalWrite(LATCH_DATA_C, bitRead(valeur, 2));
  digitalWrite(LATCH_DATA_D, bitRead(valeur, 3));
 
  /* Affichage des données */
  delayMicroseconds(100);
  digitalWrite(LATCH_STROBE, LOW);
  delayMicroseconds(100);
  digitalWrite(LATCH_STROBE, HIGH);
}

void setup() {
  pinMode(LATCH_STROBE, OUTPUT);
  pinMode(BLANK_INPUT, OUTPUT);
 
  pinMode(LATCH_DATA_A, OUTPUT);
  pinMode(LATCH_DATA_B, OUTPUT);
  pinMode(LATCH_DATA_C, OUTPUT);
  pinMode(LATCH_DATA_D, OUTPUT);
 
  afficheurOff();
}

void loop() {
  static byte i = 0;
 
  affichage(i++);
  if(i > 15) i = 0;
 
  delay(1000);
}

(Si ça marche fait le moi savoir smiley-wink)
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Atton_666: Tu as pu tester mon code ? smiley
« Last Edit: March 12, 2012, 05:38:45 am by skywodd » Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Ales
Offline Offline
Faraday Member
**
Karma: 39
Posts: 3607
Do or DIY
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Je l'ai pas le composant moi xD
Logged


France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Je l'ai pas le composant moi xD
Oups ... #FAIL smiley-sweat
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Salut,
Vraiment désolé de mon absence j'ai été très occupé par mes études et donc je n'ai pas pu avancer sur Arduino. Pour le code je teste ça ce soir et je dirai comment ça réagi.

Merci pour votre aide et encore désolé.
Logged

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Vraiment désolé de mon absence j'ai été très occupé par mes études et donc je n'ai pas pu avancer sur Arduino. Pour le code je teste ça ce soir et je dirai comment ça réagi.
Pas de probléme, les études c'est le plus important smiley-wink

... minute mais qu'est ce que je fou sur le forum au lieu de réviser mes partiels ? smiley-zipper
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonsoir,

J'ai testé et tout fonctionne parfaitement bien.

Merci infiniment pour l'aide et surement à bientôt sur le forum ^^
Logged

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

J'ai testé et tout fonctionne parfaitement bien.

Merci infiniment pour l'aide et surement à bientôt sur le forum ^^
Pas de quoi smiley-wink

Au passage j'ai publié le morceau de code sur mon blog (il y a déja quelque temps) :
http://skyduino.wordpress.com/2012/03/20/arduino-afficheur-7seg-avec-controleur-integre-til311-hp-5280-7300/

Et j'ai aussi fait un exemple d'utilisation en "condition réel" :
http://skyduino.wordpress.com/2012/05/01/arduino-de-electronique-avec-capteur-tilt-et-afficheur-7-segments/
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Pages: [1]   Go Up
Jump to: