No BSD License  

Highlights from
BPSK Simulator for Low Rate Transmisions

image thumbnail

BPSK Simulator for Low Rate Transmisions

by

 

01 Jun 2004 (Updated )

BPSK Simulator for didactical purposes. Systemic coding style.

validaCRC.m
function [tramo, codigo] = validaCRC(tramo, codigo, metodo, TX)

%------------------------------------------------------------------------
%|  [tramo, codigo] = validaCRC(tramo, codigo, metodo, TX)
%------------------------------------------------------------------------
%|    Funcin que valida todos los parmetros pasados a las funciones
%|   generaCRC() y recuperaCRC.
%|     El motivo de ser implementado en una funcin aparte es permitir
%|   realizar la validacin al principio de un bloque grande datos,
%|   que se le irn pasando secuencialmente a la correspondiente 
%|   funcin.
%|
%|      Ver generaCRC para ms informacin
%-------------------------------------------------------------------------
%|   Autor: Cesar Delgado
%|   Fecha: 19-Abril-2.004
%-------------------------------------------------------------------------

if TX % Generamos los cdigos de redundancia en el Transmisor 
   
   % 1.- Validacin de las longitudes.  
   %-------------------------------------------------------------------------
      [ERROR, tramo, codigo] = validaTramo(tramo, codigo, metodo);      
      switch ERROR
      case 0,
         break;
      case 1,
         disp ('WARNING: la longitud de los segmentos de codificacin deber');
         disp ('         ser mayor que el cdigo de redundancia en la funcin generaCRC ');
         disp ('         Se utilizarn los parmetros por defecto: 7/4 ');
         break;
      case 2,
         disp ('WARNING: el tramo-1 = (2^M) - 1, siendo M = 3,4, ... en generaCRC');
         disp ('         Se emplearn los parmetros por defecto 7/4');
         break;
      case 3,
         disp ('WARNING: error empleando el mtodo Hamming en generaCRC');
         disp ('         Codigo = (2^M) - M, Tramo  = 2^M, siendo M= 3,4,...'); 
         Texto = sprintf('          Se asignar: Cdigo = %d',codigo);
         disp (Texto);                  
         break;  
      case 4,
         disp ('WARNING: error empleando cdigos de redundancia cclica en generaCRC');
         disp ('         Mtodo BCH requiere long. cdigo compatible con polinomio BCH'); 
         Texto = sprintf('          Se asignar: Cdigo = %d',codigo);
         disp (Texto);                  
         break;
      case 5,
         disp ('WARNING: error empleando cdigos Reed Solomon en generaCRC');
         disp ('         La longitud del cdigo deber ser mayor de 1'); 
         Texto = sprintf('          Se asignar: Cdigo = %d',codigo);
         disp (Texto);                  
         break;       
      end;            
   end;
   
      
      
      
      
      
      
      
      
      
      
      

   
      
   

Contact us