salut,
je désire commander le PIC 16F877 avec un clavier 20 touches en utilisant l'encodeur 74C923 ,pour cela j'ai branché les pins de l'encodeur avec les colonnes et lignes du clavier et avec les pins du PIC , aussi les 2 pin OSC et KBM que j'ai relié à deux capa (1uF et 100nF)comme sur le datasheet du constructeur, mais il me reste une pin DA (data available) que j'ai branché sur l'Intérruption RB0, d'après un schéma que j'ai trouvé sur le net !mais j'ai pas trop compris son utilité dans mon cas ??
je veux que à chaque appui sur une touche, un code BCD (sortie de l'encodeur) sera envoyé au PIC qu'il interprétera en une commande et l'executera à travers ses autres pin !
pour commencer la partie programmation du PIC concernant l'encodeur j'ai défini mes entrées (PIC-ENCODEUR) comme suit :
#define A_ENC PIN_B7
#define B_ENC PIN_B6
#define C_ENC PIN_B5
#define D_ENC PIN_B4
#define E_ENC PIN_B3
et puis je veux comparer le code BCD (correspondant à une touche) avec une commande que je veux que le pic exécute)
par exemple: le code 00101 ===> activer pin RA1
est ce que je dois dans ce cas mettre les sorties binaires de l'encodeurs dans un tableau puis le comparer case par case avec les codes binaires des commandes (eux aussi mises dans un tableau ? )!!?
ou bien il existe d'autres solutions ?
ci-joint: le schéma
-----