Je suis nouveau en génie électrique et le premier projet que j'aimerais faire est de réaliser un audioconvertisseur numérique-analogique. J'ai découvert qu'une bonne façon de le faire est d'utiliser une structure R-2R pour la conversion.
J'aimerais me mettre au défi et repartir de zéro avec la partie numérique du circuit, en plus du fait que je ne trouve pas vraiment de solutions sur le web pour aider à le construire. J'ai un programme de simulation de circuits et j'ai commencé à concevoir, tout en recherchant sur le Web tous les types d'électronique que vous pourriez utiliser.
Maintenant, je pense que je pourrais être quelque part dans le voisinage de la compréhension du principe d'un CAD, mais il serait utile qu'une personne expérimentée puisse m'aider à vérifier si je l'obtiens. Est-ce un bon endroit pour demander cela?
Si oui, voici le circuit que j'ai conçu:
J'ai utilisé un registre à décalage avec verrouillage de sortie pour chaque canal et Q7S lié de l'un à l'autre pour alimenter les données. Est-il vrai que les fichiers audio alternent les canaux gauche et droit, ou vice versa, en blocs? par exemple dans un fichier 8 bits: 0010 0111 pour la gauche après 0010 0110 pour la droite?
Les registres à décalage que j'ai utilisés ici sont les 74HC595. Lors du passage des bits, aucune des broches ne sera (momentanément) active. Lorsque le verrou [broche STCP] est déclenché, les bits sont transférés du registre à décalage vers le registre de stockage, où ils émettent directement leur valeur vers les broches correspondantes et restent actifs jusqu'à ce que les 16 bits suivants soient autorisés.
Ensuite, il y a le cristal, pour lequel j'ai utilisé un signal carré pour en imiter un avec la bonne fréquence d'oscillation: 24 576 MHz. Il alimente le compteur dans lequel la fréquence est divisée pour produire les fréquences dont mon DAC a besoin. Dans ce cas, la fréquence d'échantillonnage doit être de 192 000 kHz et donc la fréquence à laquelle les données sont décalées doit être de 3,02 MHz (192 000 x 16 bits). La vitesse d'horloge de 192 000 kHz est utilisée pour déclencher STCP.
La prochaine chose que je veux faire est de comprendre comment charger des données à partir d'une source (Raspberry par exemple) via peut-être I2C dans un tampon dans le DAC et à partir de là, synchroniser les bits dans le circuit que vous voyez ici.
Si vous pensez que je le suis ou que je ne suis pas sur la bonne voie, il serait très utile de me le faire savoir.
Merci! Rogier
Soit dit en passant, j'ai oublié de mentionner que le DAC que je voudrais construire est d'au moins 24 bits par canal à 96 kHz. Cela prend juste beaucoup de place sur cette menace et ne devrait pas être difficile de les ajouter par la suite. C'est le même principe.
Réponses:
Voici ce que je pense:
Malheureusement, la page wikipedia sur les DAC à échelle R-2R est incorrecte quand elle dit que l'échelle R-2R fonctionne comme un diviseur de courant dans cette application. Alors qu'une échelle R-2R peut être utilisée comme diviseur de courant, elle fonctionne en fait comme diviseur de tension ici. Voici une analyse détaillée.
Considérez uniquement le LSB de l'échelle:
simuler ce circuit - Schéma créé à l'aide de CircuitLab
Quelle que soit la position du commutateur, la résistance Thevenin de ce simple diviseur de tension est juste R. La valeur de la source de tension Thevenin est soit 0V soit 1/2 × Vref.
Maintenant, considérez ce qui se passe lorsque vous ajoutez la prochaine étape de l'échelle R-2R:
simuler ce circuit
Vous pouvez voir que c'est le même type de diviseur de tension que nous avions dans le premier cas, sauf que le nombre de combinaisons de tension a augmenté. Cependant, la résistance Thevenin de ce circuit est toujours juste R, et la source de tension Thevenin est maintenant 0/4, 1/4, 2/4 ou 3/4 × Vref.
Par induction, vous pouvez voir que vous pouvez ajouter un nombre quelconque d'étages à l'échelle, et le seul effet est que le nombre de choix pour la valeur de la source de tension Thevenin est multiplié par 2 pour chaque étage. La résistance de la source reste exactement la même pour un nombre quelconque d'étages.
Si l'impédance de charge est infinie, la tension de sortie de l'échelle correspondra exactement à la tension de Thevenin. Mais si la charge a une valeur finie de résistance, le seul effet sera de créer un diviseur de tension avec la résistance de la source Thevenin, en ajustant la tension de sortie par un rapport fixe, mais sans aucun autre effet sur la précision ou la linéarité de base du CAD.
Notez que dans le circuit d'origine de Rogier (celui en question), les amplificateurs opérationnels sont dans une configuration inverseuse, ce qui signifie que la sortie de l'échelle R-2R est directement liée à une masse virtuelle. Cela signifie que la valeur de sortie est vraiment le courant traversant Rth (qui est juste R), et ce courant traverse également la résistance de rétroaction de l'ampli op. La tension de sortie de l'ampli-op est la tension nécessaire pour que ces deux courants soient égaux et correspond à -Rfb / R × Vth. Puisqu'il utilise une résistance de rétroaction de 2R, la sortie finit par être -2 × Vth.
Il semble y avoir une certaine confusion quant à savoir si l'échelle R-2R est utilisée comme diviseur de tension ou diviseur de courant, alors voici une illustration de la façon dont ce dernier peut fonctionner, afin de montrer les principales différences entre celui-ci et le circuit de l'OP.
simuler ce circuit
Notez que les courants qui descendent à travers les résistances 2R sont pondérés en binaire. Cela fonctionne parce que la résistance efficace regardant vers la droite de l'une des jonctions triples est également exactement de 2R. Par conséquent, le courant qui s'écoule de la gauche se divise toujours également entre la branche inférieure et la branche droite.
Notez qu'une hypothèse clé ici est que toutes les jambes sont liées à la même tension (zéro, dans ce cas). Il est également intéressant de noter que les tensions aux nœuds de jonction sont également pondérées en binaire.
Cela peut être utilisé pour construire un DAC de sortie de courant comme suit:
simuler ce circuit
Les courants dans les résistances de ce circuit sont exactement les mêmes que sur le schéma précédent, car quelle que soit la position de chacun des commutateurs, la résistance correspondante est connectée soit à une masse réelle sur leIout¯¯¯¯¯¯¯¯¯ bus, ou à un sol virtuel sur le Iout autobus. Les courants sur les deux bus totalisent toujours Iref. Un ampli-op peut convertir le courant de sortie en tension, et la plage de tension est simplement -Iref × R7.
la source