Inscription / Connexion Nouveau Sujet
Niveau logiciels
Partager :

conversion analogique-numérique

Posté par
smir
07-06-15 à 09:06

Bonjour, mon objectif est de faire un programme en MATLAB qui permet de faire une conversion analogique en numérique et vice versa (numérique en analogique). .Je dois donc faire faire l'échantillonnage la quantification et le codage etc... pour obtenir le signal dans les deux cas. Mais je ne sais pas est ce que je suis dans le bon chemin ou bien qu'est ce qui ne va pas dans ce programme? Je demande votre aide. Merci d'avance.


Voici ce que j'ai fait pour le moment:

close all
clear all
    %conversion analogie en numerique
  % l'untite de frequence est le HZet 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

Posté par
smir
re : conversion analogique-numérique 07-06-15 à 19:29

Bonsoir, que vous pensez de mon code et quels sont vos suggestions?
Quand je compile ça ne marche pas.

Posté par
smir
re : conversion analogique-numérique 10-06-15 à 03:34

Bonjour, maintenant est ce que vous pouvez m'aider pour la deuxième partie à savoir la conversion numérique en analogique. Ça fait des jours que je cherche une solution et je n'ai aucune. MERCI DE VOTRE COMPRÉHENSION

Répondre à ce sujet

Seuls les membres peuvent poster sur le forum !

Vous devez être connecté pour poster :

Connexion / Inscription Poster un nouveau sujet
Une question ?
Besoin d'aide ?
(Gratuit)
Un modérateur est susceptible de supprimer toute contribution qui ne serait pas en relation avec le thème de discussion abordé, la ligne éditoriale du site, ou qui serait contraire à la loi.


Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !