Programmation liaison RS232 en vhdl
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Programmation liaison RS232 en vhdl



  1. #1
    invitee4d005ce

    Programmation liaison RS232 en vhdl


    ------

    Bonjour,
    je suis actuellement étudiant en électronique et dans un projet je dois programmer une liaison RS232 en vhdl afin de communiquer entre une carte DE1 ( Altera ) et mon ordinateur.
    J'ai déjà réalisé et réussit la transmission mais actuellement je bloque sur la réception.

    J'ai donc états

    ** initial => pour initialiser mes variables.
    ** Start => pour détecter le bit de start soit le 0
    ** receptiondonnees => pour récupérer les 8 bits du caractère avec l'aide d'un compteur ( Cet état fonctionne )
    ** Stop => pour détecter le bit de stop soit le 1
    ** transfertdonnees => pour afficher le caractère reçu sur mes leds

    J'utilise aussi un diviseur de fréquence ( celui créé pour ma transmission à 19200 ) donc celui ci fonctionne.

    Merci de votre aide.

    Mon code est le suivant :

    Code:
    library ieee;
    use ieee.std_logic_1164.all;
    
    
    entity receptionRS232 is
    port (
    		donneesvenantduPC     : in std_logic ;
    		clk                   : in std_logic ;
    		donneesreceptionnees  : out std_logic_vector( 7 downto 0 ) ;
    		boutondepartreception : in std_logic
    	  ) ;
    end entity ;
    
    architecture arch_receptionRS232 of receptionRS232 is
    type etatdusysteme is ( initial, START, receptiondonnees, STOP, transfertdonnees ) ;
    signal etatactuel, etatprochain : etatdusysteme ;
    signal donneesrecuesprovisoire : std_logic_vector( 7 downto 0 ) ;
    begin
    	process ( clk ) 
    	variable compteur : integer range 0 to 8 ;
    	begin
    		if rising_edge ( clk ) then 
    			case etatprochain is
    			when initial => 
    				compteur := 0 ;
    				donneesreceptionnees <= "00000000" ;
    				donneesrecuesprovisoire <= "00000000" ;
    				etatprochain <= START ;
    			when START =>
    				if donneesvenantduPc = '0' then
    					etatprochain <= receptiondonnees ;
    				else
    					etatprochain <= START ;
    				end if ;
    			when receptiondonnees =>
    				if ( compteur = 8 ) then 
    					compteur := 0 ;
    					etatprochain <= STOP ;
    				else 
    					compteur := compteur + 1 ;
    					if compteur = 1 then                
    						donneesrecuesprovisoire(0) <= donneesvenantduPC ;   
    					elsif compteur = 2 then
    						donneesrecuesprovisoire(1) <= donneesvenantduPC ;
    					elsif compteur = 3 then
    						donneesrecuesprovisoire(2) <= donneesvenantduPC ;
    					elsif compteur = 4 then
    						donneesrecuesprovisoire(3) <= donneesvenantduPC ;
    					elsif compteur = 5 then
    						donneesrecuesprovisoire(4) <= donneesvenantduPC ;
    					elsif compteur = 6 then
    						donneesrecuesprovisoire(5) <= donneesvenantduPC ;
    					elsif compteur = 7 then
    						donneesrecuesprovisoire(6) <= donneesvenantduPC ;
    					elsif compteur = 8 then
    						donneesrecuesprovisoire(7) <= donneesvenantduPC ;
    					end if ;
    				end if ;
    			when STOP =>
    				if donneesvenantduPc = '1' then
    					etatprochain <= transfertdonnees ;
    				else
    					etatprochain <= STOP ;
    				end if ;
    			when transfertdonnees =>
    				donneesreceptionnees <= donneesrecuesprovisoire ;
    				etatprochain <= initial ;
    			end case ;
    		end if ;
    	end process ;
    end architecture ;

    -----

  2. #2
    invite369d2cfd

    Programmation en vhdl

    Salut, je veux écrire un programme en vhdl qui fait le transposé d'une matrice, lit les données colonne par colonne et les stockes dans une autre matrice en sortie .
    quelqu'un qui peut m'aider

  3. #3
    invite0f86418f

    Re : Programmation liaison RS232 en vhdl

    hello Mr.LoicB73

    well,I'm also a student in electronic, and I'm beginner in this field (which vhdl language );
    in fact, I've to do homework about serial transmission and I don't know how?? because I just did some simple examples
    I find you was work on this topic ,I need your help about it .......

    I really need ur help
    sincerely

  4. #4
    invitee05a3fcc

    Re : Programmation liaison RS232 en vhdl

    On est sur un forum Français ..... on cause Français !

  5. A voir en vidéo sur Futura
  6. #5
    invite0f86418f

    Re : Programmation liaison RS232 en vhdl

    salut à tous

    désolé pr la langue anglaise psq je maitrise pas b1 la langue française;


    je suis aussi un étudiant en électronique, et je suis débutant dans ce domaine (la langue VHDL);En fait, Je dois faire ma devoirs qui est sur la transmission série et je ne sais pas comment? parce que je viens de faire quelques exemples simples
    Je trouve que vous avait des travaux sur ce sujet, j'ai besoin de votre aide à ce sujet .......

    J'ai vraiment besoin de votre aide
    sincèrement

  7. #6
    invite0f86418f

    Re : Programmation liaison RS232 en vhdl

    salut à tous

    j'ai besoin de qlq1 m'aide

    je suis débutant dans ce domaine (la langue VHDL);En fait, Je dois faire ma devoirs qui est sur la transmission série par vhdl et je ne sais pas comment? parce que je viens de faire quelques exemples simples...

    aidez moi et merci

Discussions similaires

  1. programmation VHDL
    Par invite577ad53a dans le forum Électronique
    Réponses: 5
    Dernier message: 19/12/2011, 20h35
  2. Programmation vhdl
    Par invite0d5fe536 dans le forum Électronique
    Réponses: 1
    Dernier message: 20/06/2010, 14h06
  3. Liaison rs232 internet
    Par inviteffece1f6 dans le forum Électronique
    Réponses: 3
    Dernier message: 07/02/2010, 14h40
  4. liaison rs232
    Par invitef486b422 dans le forum Électronique
    Réponses: 11
    Dernier message: 17/04/2009, 18h05
  5. la liaison rs232
    Par invited776d929 dans le forum Électronique
    Réponses: 9
    Dernier message: 24/02/2009, 19h01
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...