communication I²S avec arduino

bonjour,

j'ai une arduino due et un CNA 24bits 2 canaux. Je souhaite faire fonctionner le CNA pour produire de la musique.

Le CNA a 3 pin en entrée:

-une pin MCLK pour un signal carré qui sera le master clock
-une pin LRCK qui permet de choisir a quel canal on envoie les données (stereo).
-une pin SDATA pour envoyer le bus de donnée

les 3 pin doivent être synchronisées sur la même horloge

LRCK est cadencé à la fréquence d’échantillonnage
MCLK doit avoir une fréquence de 128x celle de LRCK
SDATA doit avoir une fréquence de 24 x 2 x la fréquence d’échantillonnage

J'ai mis une broche de sortie de l'arduino à 5.25MHz avec la PWM, c'est le MCLK
je veux LRCK à 41016Hz et donc le bus SDATA à environ 2MHz

pensez vous que c'est faisable d'avoir :
un bus de donnée à 2MHz avec l'arduino (avec les interruptions surement?),
ET qu'il soit synchronisé avec la PWM,
ET que l'arduino puisse faire d'autres taches en même temps?

merci

En fait, le processeur intègre un bus I²S avec un contrôleur spécialisé qui gère les transferts par DMA pour soulager le CPU.
Il y a même un driver. J'ai pas beaucoup cherché, il y en a peut-être d'autres.

salut,

ok merci je vais regarder ca. J'espere que ca ira parce que j'ai essayé ce dont j'ai parlé plus haut et ca fonctionne pas, 2MHZ c'est beaucoup trop rapide pour la carte.