conversion analogique numérique

conversion analogique numérique - Divers - Programmation

Marsh Posté le 10-06-2015 à 16:45:15    

Bonjour, depuis quelques je suis en train de faire un programme en MATLAB qui me permettra de faire une conversion analogique en numérique et vice versa c'est à dire une conversion numérique en analogique.  
J'ai commencé la première partie ( conversion analogique en numérique). Il me reste la deuxième partie (conversion numérique en analogique) qui me pose d'énormes problèmes. Je viens en vous pour demander de l'aide pour la réalisation de cette partie. MERCI D'AVANCE
Voici ce que j'ai fait pour la première partie:
 
close all
clear all
    %conversion analogie en numerique
  % l'untite de frequence est deHZet celle de temps est s
  fmax=input('entrer la frequence maximale');
  %la frequence  et le temps de l_echantillonnage
  fe='frequence de l_echantillonnage'
  fe=2*fmax
  te='le pas de l_echantillonnage'
  te=1/fe
  ti=input('entrer le temp initial de l_echantillonge')
  tf=input('entrer le temp final de l_echantillonge')
  t_echantillonnage=ti:te:tf
    %valeur de l echantillonnage
     
    v='valeur de l_echantillonnage'
    v=sin(2*fmax*pi*t_echantillonnage)  % echantillonnage
    x='valeur maximuim de l_echantillonnage'
   x= max(v)
    z='valeur minimuim de l echantillonnage'
    z=min(v)
    S=x-z
    %figure(1)
    plot(2*fmax*pi*t_echantillonnage,sin(2*fmax*pi*t_echantillonnage))
    hold on
    stem(2*fmax*pi*t_echantillonnage,tan(2*fmax*pi*t_echantillonnage))
    % erreur max et le nombre de bit de la  quantification
n='le mombre de bit de la quantification'
E_max=' erreur max'
t=((2.^n)-1)
q='pas de quantification'
q=2*E_max
nombre_niveau=2 ^ n
d=(1 / t)
 q=S*d
f=input('entrer un nombre entier')
if(f==0)
    n=input('le mombre de bit de la quantification')
    q=S*d
    nombre_niveau=2 ^ n
     
else
    E_max=input('erreur max')
    q=2*E_max
    nombre_niveau= S*(d)+1          
    n=(log(nombre_niveau)) / log(2)
end
for ii=1:nombre_niveau  
    niveau(ii)=x-(ii-1)*q
   code=dec2bin(ii-1,n)  
end
 t_echantillonnage=ti:te:tf
   v=sin(2*fmax*pi*t_echantillonnage)    
    if((v<max(v))&&(v>max(v)-E_max))
        v=max(v)
    elseif((v<max(v)-E_max)&&(v>max(v)-q))
    v=max(v)-E_max
    else
        v=max(v)-q
    end
         
 
     
 
     
     
 
       
     
     
     
     
       
   
 

Reply

Marsh Posté le 10-06-2015 à 16:45:15   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed