IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Quatre DAC AKM4490 avec arduino


Sujet :

Arduino

  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Octobre 2022
    Messages : 2
    Par défaut Quatre DAC AKM4490 avec arduino
    Bonjour,

    Je me prénomme Jordan, notion en électronique surtout en audio (analogique et numérique)
    Ingénieur maintenance je réalise des machines spécifiques et leurs dépannage.
    Je réalise des programmations: automate (siemens),vision et robot...

    J'ai pour projet la réalisation d'un DSP avec pour DAC quatre ak4490 en mono.
    Le dsp est ok (adau1701),la partie analogique des DAC (filtre de sortie) ok, contrôle du volume via PGA2311 ok, mais le control des DAC en I2C pas ok
    Je suis novice en programmation sur Arduino et surtout avec une liaison I2C.
    Sur mon pcb j'ai réalisé l'adressage physique des 4 DAC.
    Ma première question est peut on utiliser le I2C de l'Arduino en 3.3V (résistance de pull-up sur le 3.3V et résistances interne désactivées) ou faut il obligatoirement un convertisseur de niveaux logique ?

    Pour le programme pourriez vous m'aider dans sa réalisation ?


    Merci pour votre aide

  2. #2
    Membre éprouvé
    Homme Profil pro
    Retraité de l'électronique analogique
    Inscrit en
    Avril 2021
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité de l'électronique analogique

    Informations forums :
    Inscription : Avril 2021
    Messages : 50
    Par défaut
    La carte : laquelle ? des cartes arduino il en existe des dizaines ?
    Si ta carte utilise un microcontroleur avr sous 5V la réponse est non.

    Alors que le seuil de basculement d'une entrée numérique d'un micro avr est de Vcc/2 soit 2,5V, l'I2C dans ces micros est strictement aux normes Cmos
    Soit :
    Niveau bas < 20% de Vcc => soit < 1 V
    Niveau haut > 80% de Vcc soit > 4V

    Une commande en 3,3V est hors spec.

    Translateur de niveau obligatoire.

    Où passer à des micro plus modernes qui tournent en 3,3 V.
    Au choix,
    • carte pro-mini 8Mhz. Atmega 328p qui tourne sous 3,3 V(sous 3,3V Atmel ne garanti qu'une fréquence horloge de 12 MHz)
    • cartes Arduino basées sur un SAMD21 => à mon humble avis ces cartes sont vendues à un prix indécemment excessif.
    • Clones chinois qui utilisent des SAMD21 => ils sont souvent plus performants, mais parfois la documentation n'est pas à la hauteur des performances.
    • ESP32 => se programme très bien avec l'IDE arduino, l'usage de la WiFi n'est pas obligatoire.
    • RP2040 => se programme avec l'IDE arduino. Préférer le framework "Earle Philhower" au framework arduino



    Pour l'aide à la programmation je suis un électronicien analogicien qui "programmote" pour lui.
    Je me garde bien de donner des conseils en programmation, d'autre que moi sont bien plus qualifiés pour le faire.

  3. #3
    Membre Expert

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2013
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2013
    Messages : 1 624
    Par défaut
    Bonjour,

    Le translateur de niveau est effectivement indispensable pour les liaisons qui travaillent dans les deux sens comme le Data de l'I2C. Mais pour une liaison sortant du 5V vers 3.3V, come le Clock de l'I2C, un simple pont diviseur fera l'affaire d'autant que les entrées 3V3 présentent en général des impédances élevées.

    Le passage à des MCU plus modernes, 3V3 et >8 bits reste la meilleure solution. Elle n'est pas nécessairement plus chère si on intègre la surface de PCB économisée par la suppression des translateurs et la souplesse de développement que des ressources moins contraintes apportent.

    Salutations

  4. #4
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 899
    Par défaut
    on trouve des articles qui parlent de ce DAC avec arduino (en anglais) par exemple https://www.dimdim.gr/2016/12/contro...th-an-arduino/



    (et une partie 2 de son article http://www.dimdim.gr/2017/12/arduino...90-dac-part-2/)

  5. #5
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Octobre 2022
    Messages : 2
    Par défaut
    Bonsoir,

    Merci pour vos réponses
    Pour le développement j'utilise un Arduino avec un ATmega328P
    J'avais déjà regardé le blog de DIMDIM'S avec les akm4490 en dual mono mais étant novice en programmation sur Arduino mes divers essais on échoué.
    Je n'ai jamais réalisé de programme en com I2C et je suis novice sur arduino

    Le but du programme serait de réaliser l'init des DAC (pin reset PDN) et de les passer en mode mono (2 dac en mode droite et 2 dac en mode gauche), mode PCM ,volume au MAX, ASCK actif et SYNCE actif.
    L'horloge des dacs (mclk) est fixe et le DSP travail en 96 khz 24 bits.
    Une fois le programme terminé je pourrais réaliser des mesures et valider mes étages de sortie des DAC.

    Pourriez vous réaliser un exemple de programme avec explication ?

    Merci pour votre aide

  6. #6
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 899
    Par défaut
    Citation Envoyé par jojo321 Voir le message
    Pourriez vous réaliser un exemple de programme avec explication ?
    désolé... non

    d'une part je ne dispose pas de ces composants et d'autre part l'objectif de ce forum ce n'est pas de coder pour vous, mais de vous accompagner ou répondre à des questions précises

    Si vous êtes débutant, ce projet est peut être hors d'atteinte pour le moment. Donnez vous le temps de réussir en comprenant ce que vous faites, investissez du temps pour comprendre les bases du C++, l'environnement arduino (il y a de nombreux tutos) et le pilotage de vos composants ensuite. Une fois tout cela maîtrisé vous pourrez aborder plus sereinement votre projet complet

Discussions similaires

  1. Galileo : Intel annonce un partenariat avec Arduino
    Par f-leb dans le forum Arduino
    Réponses: 4
    Dernier message: 20/12/2013, 21h26
  2. Simuler une l'appuie d'une touche avec arduino
    Par Bubblegom dans le forum Arduino
    Réponses: 1
    Dernier message: 24/05/2013, 08h34
  3. Communication avec Arduino
    Par Stéphanie.Gautier dans le forum EDI et Outils pour Java
    Réponses: 1
    Dernier message: 23/05/2013, 22h07
  4. Lecture de signaux ppm sur 4 cannaux avec Arduino
    Par artiom dans le forum Autres systèmes
    Réponses: 0
    Dernier message: 16/07/2012, 14h21
  5. Bug communication serie avec arduino (busy)
    Par Invité dans le forum MATLAB
    Réponses: 2
    Dernier message: 09/07/2012, 09h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo