besoin aide CNA R2R 16 bits... - Page 4

Do you have a question? Post it now! No Registration Necessary

Threaded View
Re: besoin aide CNA R2R 16 bits...
On Jul 16, 5:59 pm, "GzavSnap"
<zx81.pas.de.spam.ordi5.chez.free.en.france>

Quoted text here. Click to load it

Attends : si son CNA 8 bits fonctionne,
son CNA 16 bits doit fonctionner aussi.

Vede, voici un test pour lever le doute qui subsiste entre
le fichier WAV et le CNA 16 bits, en testant juste le CNA :

Un bout de code avec une variable non signee sur 16 bits,
un compteur que tu incrementes a chaque tour de boucle.
Ecris ses MSB et LSB vers le CNA : en sortie tu dois avoir
une dent de scie bien lineaire, sinon c'est ton CNA qui deconne.

void main(void)
{
unsigned int u 3D% 0; // compteur

 // ... les inits de ton PIC

 while(1) // forever
 {
   PORTD 3D% u >> 8;   // MSB
   PORTC 3D% u & 0xFF; // LSB
   u++; // increment du compteur

   // ajoute une une tempo ici ...
 }
}

une sortie parasitée ? aussi oscillo ! (was Re: besoin aide CNA R2R 16 bit s...)
Quoted text here. Click to load it
<snip>

Je pense qu'un souci majeur de Vede est justement qu'il n'a
pas d'oscilloscope, sinon ce serait rE9%solu depuis longtemps.
ahhhhh qu'est-ce que j'ai pu m'emmerder avant d'acheter mon tektro d'occa=
sion !

--20%
http://ygdes.com / http://yasep.org

Re: une sortie parasitée ? aussi oscillo ! (was Re: besoin aide CNA R2R 16 bits...)

Quoted text here. Click to load it

Pas d'oscillo ?
Bon, une autre solution : une tempo elevee dans la boucle, pour avoir
le temps de voir evoluer lentement la tension en sortie du CNA avec
un voltmetre. La tension doit augmenter lineairement, puis retomber
au minimum lors du passage du compteur de 65535 a zero.

Ou encore : reboucler la sortie du CNA vers un CAN,
et par soft comparer la valeur du CAN avec la valeur
ecrite sur le CNA ... pour toute valeur de 0 a 65535.

Re: une sortie parasitée ? aussi oscillo ! (was Re: besoin aide CNA R2R 16 bits...)
Jean-Christophe se fendait de cette prose :

Quoted text here. Click to load it

Encore faut-il ne pas avoir le même problème sur l'ADC :)

--
LeLapin

Re: une sortie parasitée ? aussi oscillo ! (was Re: besoin aide CNA R2R 16 bits...)

Quoted text here. Click to load it


Y'en a un deja integre dans son PIC ;-)

Re: besoin aide CNA R2R 16 bits...
Jean-Christophe, le 16/07/2009 a écrit :
Quoted text here. Click to load it

C'est effectivement limpide. Un signal audio de la vraie vie à valeur
moyenne nulle échatillonné en complément à 2. Si c'est effectivement ça
qui se passe, ce qu'il faut faire est évident. Il faut ajouter 0x8000 à
la valeur, sans se préoccuper de la retenue. Si l'outil de calcul est
basé sur des mots de 8 bits, il suffit d'ajouter 0x80 (10000000b) à
l'octet de poids fort. Tout ceci revient à inverser le bit de poids
fort du mot de 16 bits, donc le bit de poids fort de l'octet de poids
fort. Visuellement, l'addition correspond à "monter" le signal de
32767, avec effet "compteur kilométrique" (65535 + 1 = 0, etc.).
L'inversion correpond à "échanger" la bande 0 .. 32767 et la bande
32768 .. 65535.
Pour inverser un bit, on peut utiliser un XOR (OU exclusif) avec 0x8000
ou 0x80.

--
Pierre Maurette



Re: besoin aide CNA R2R 16 bits...
vede a écrit :
Quoted text here. Click to load it

suggestion:
si le fonctionnement en 8 bits est correct, commence les tests avec un
seul bit supplementaire, puis avec 2, puis avec 3... etc ...
(commencer avec le msb)
quand est-ce que les problemes surviennent?

Site Timeline