Page 1 sur 1

passage de données 8bits ->24bits en communication série

Publié : 25 avr. 2008 15:44
par tylor
Bonjour,
Mon probleme est que pour controlé un CNA 24 bits audio,il faut que je lui envoi des donnée de 24 bits en continu,j'ai essayé avec le bus SPI sa ne marche pas du tout.
Il me faudrais un composant capable de charger 24 bits et les resortir d'un coup,sa existe??

Publié : 25 avr. 2008 22:20
par mr_nanick
Bonjour,

Il s'agit d'un cna avec interface spi?
Il faudrait créer une routine spi logiciel qui gère 3 x 8bits et les envoies sériellement vers le cna.

un peu plus de détail sur le cna serait le bienvenue.

A+

Publié : 06 mai 2008 15:16
par Invité
pour etre plus précis c'est le convertisseur PCM1702 et il n'accepte pas le SPI car il faut absolument lui donnée tout les bits d'un coup.J'avais dejas pensé a l'envoie de 3*8 bits ^^,dommage...

Publié : 06 mai 2008 20:48
par MisterMok
Bonjour je viens de regarder la doc de votre composant.

Le mieux a mon avis c'est de piloter l'ensemble par 3 IO. une pour la clock, l'autre pour la donnée, et la derniere pour le CS/.

Le tout mis dans un timer et vous envoyez la donnée bit a bit a chaque interrupt.
Vous configurez le timer a la vitesse idéale *2 ... un pour clock etat haut / un pour clock etat bas. Et vous écrivez la valeur du BIT correspondant sur la sortie DATA.
et vous vous arrêtez une fois les 40 interruptions faites (2 x 20bits)

Ca me semble pas trop compliqué j'avais deja émulé du SPI sur un petit PIC en assembleur, cette manipulation est facile a appliquer.

Bonne chance

Re: passage de données 8bits ->24bits en communication série

Publié : 06 juin 2008 16:58
par tylor
Merci,c'est a peu pret ce que je vient de faire. Je n'est pas encore tester le programme, suite à plein de problème hardware^^.
D'ailleur je voudrais profiter de ta connaissance puisque tu a l'air d'avoir fait plusieurs montages électronique.
J'ai de faible tensions qui apparaisse (faible,enfin 1V beaucoup trop^^) aux bornes de certains composants et du coup mes buffers le voie en logique 1. Et sa me pourris toutes ma carte.
Alors pour te donner une idée du bazar sur la carte, il y a des fils qui passe dans tout les sens,avec des horloge de 10Mhz et de communication. Des capacité de découplage a tout les composants soit 11 sur une petit carte de 15X10,alors il parait que s'il y a trop de capacité sa fait comme un court circuit,bon j'ai pas ce problème mais j'aimerais bien connaitre ton avis la dessus.
Et ma question principale serait, est ce que par diaphonie mes horloges peuvent perturber mes composant et crée ces petits offset?
merci

Re: passage de données 8bits ->24bits en communication série

Publié : 03 août 2008 12:55
par HFdf
En général sur une SPI d'un microcontrôleur évolué, on peut utiliser la broche /SS (slave_select) comme ligne à usage général, il suffit alors d'envoyer
3 octets par la SPI en MASTER (soit 24bits) et de valider le transfert en utilsant /SS

Nous profitons comme cela à la foi du périphérique interne SPI du micontrôleur sans faire trop d'émulation dur des broches du port à usage général
En gros

configuation de la spi (avec /SS à usage génréral)
/SS= 0 (par exemple)
envoi d'un octet
test du drapeau de transmission
envoi d'un octet
test du drapeau de transmission
envoi d'un octet
test du drapeau de transmission
/SS=1(par exemple) pour validation du transfert