No BSD License
-
capturaBitsTrama.m
-
creaGenerales.m
-
creaGuiRX.m
-
creaGuiTX.m
-
creaGuiVisual.m
-
creaLab.m
-
creaMarcos.m
-
simBPSK.m
-
...
-
GeneraPAM (IN, L)
-
IQsignals(x,L, pulso)
-
PAMgen(bitSeq, bitsWord, samp...
-
Receptor(ruta, N, Bw, Orden, ...
-
ReceptorLab(ruta, opcion)
-
SquareGen (IN, L)
-
TXTtoBinary(texto, ruta, nBit...
-
Transmisor(ruta, fichero, met...
-
[fase,error_fase_bpsk,Yn]=sin...
INICIALIZACION DE VARIABLES
-
binaryToTXT(binario, ruta, nB...
-
bpsk_mod(x,L,SNR, pulso, thet...
-
cargar(ruta,file,posicion, .....
-
constelacion(ruta, TX, fase, ...
-
cosenoAlzado (PAM, fs, Rb, me...
-
crucesCero(I,Q, memoria)
-
decode(File,File2)
DECODE Converting Binary numbers to ASCII text
-
demoduladorBPSK (bandaFI, fre...
-
desencapsula(paquete, syncro,...
-
desentrelaza(datos, filas, co...
-
detectaUmbral(I,Q, memoria)
-
detectorFase(PAM1, PAM2, memo...
-
diagramaBloques(ruta, diagram...
-
diagramaOjos(ruta, TX, fase, ...
-
dibujaSignal(signal, binario,...
-
divisor(doble, memoria, prime...
-
eje=enfocaEje(grafActivas, ac...
-
encapsula(datos, extra)
-
encode(File,File2)
ENCODE Converting ASCII text to Binary numbers
-
enerBit(signal, L)
-
entrelaza(datos, filas, colum...
-
extraeSignal(ruta, ptoObsv, n...
-
eyediagram(x, n, period, offs...
EYEDIAGRAM Generate an eye diagram.
-
filtroHilbert(orden)
-
generaCRC (trama, tramo, codi...
-
guardar(ruta,file,datos,tipo,...
-
lazoSincroFase(errorFase,memo...
-
leadLag(in, memoria, ...
-
miVCO(error, memoria, fs, Kv)
-
moduladorIQ (trama, fi, fs, ....
-
periodoReloj(linea, nFlancos,...
-
presenTXT(ruta)
-
recuperaCRC (CRC, tramo, codi...
-
recuperaPortadora(bandaFI, me...
-
recuperaReloj(linea, memoria,...
-
representa(grafActivas, ruta,...
-
representaFiltro(filtro, frec...
-
rxTrama(linea, memoria)
-
rxTrama2(linea, memoria)
-
scatterplot(x, n, offset, plo...
SCATTERPLOT Generate a scatter plot.
-
sincroBaudio(I,Q, L, memoria)
-
sincroFase(I,Q,memoria)
-
sincroMsj(linea, memoria)
-
sincroMsj2(linea, memoria)
-
validaCRC(tramo, codigo, meto...
-
validaFrec(fs,fi,Rb);
1.- Relacion entre frecuencias
-
validaMetodo(metodo)
-
validaTramo(tramo, codigo, me...
-
PAMtest.m
-
QPSKmod.m
-
actMarcoVisu.m
-
actualizaInterfaz.m
-
capturaBarra.m
-
capturaCRC.m
-
capturaEntrelazado.m
-
capturaFiltros.m
-
capturaGenerales.m
-
capturaGrafInf.m
-
capturaGrafSup.m
-
capturaIQ.m
-
capturaLab.m
-
capturaMenuFiltro.m
-
capturaPLL.m
-
capturaTexto.m
-
chapu.m
-
code2.m
-
creaInterfaz.m
-
creaMenus.m
-
divisorChap.m
-
enviaFichero.m
-
inicializa.m
-
nivEnlaceRX.m
-
nivEnlaceTX.m
-
nivFisicoLab.m
-
nivFisicoRX.m
-
nivFisicoTX.m
-
nivPresenRX.m
-
nivPresenTX.m
-
pruebaDF.m
-
pruebaDiv.m
-
pruebaEnlace.m
-
pruebaLab.m
-
pruebaLab2.m
-
pruebaPLL.m
-
recibeFichero.m
-
validaGenerales.m
-
validaGuiCRC.m
-
validaInvalido.m
-
View all files
from
BPSK Simulator for Low Rate Transmisions
by César Delgado González
BPSK Simulator for didactical purposes. Systemic coding style.
|
| periodoReloj(linea, nFlancos, memoria)
|
function memoria = periodoReloj(linea, nFlancos, memoria)
%------------------------------------------------------------------------
%| function memoria = periodoReloj(linea, nFlancos, memoria)
%------------------------------------------------------------------------
%| Funcin que recupera el periodo de Reloj del sistema. Est
%| ideada para procesar una muestra en cada llamada.
%|
%| Mtodo de Recuperacin de Reloj: detecta 10 flancos consecutivos
%| (prescindiendo del primero de todos) y promedia el nmero de muestras
%| que hay en esos 10 flancos.
%|
%| Parmetros de entrada:
%| 1.- LINEA = muestra de una seal de lnea de niveles TTL
%| 2.- N_FLANCOS = n de flancos empleados para detectar el reloj
%| 2.- MEMORIA = vector fila de longitud mnima 16 o nFlancos,
%| si ste supera los 16 flancos
%|
%| Parmetros de Salida:
%| 1.- MUESTRAS_BIT= nmero de muestars que tiene un bit
%| 2.- MEMORIA = vector fila con las condiciones finales del reloj
%-------------------------------------------------------------------------
%| Autor: Cesar Delgado
%| Fecha: 19-Abril-2.004
%-------------------------------------------------------------------------
%%%%% Ctes.
contMUESTRA = 1; % Contador de Muestras
contFLANCOS = 2; % Contador de Flancos
MUESTRAS_BIT = 3; % N muestras/bit
muestraANT = 4; % Muestra Anterior
ESTADO = 5; % Banera: 0 = recuperacin sincronismo; 1 = recepcin trama
valorMUESTRA = 7; % Suma de los voltajes de las muestras en 1 smbolo
nRetardos = 25;
% 1.- Detectamos Flanco de Bajada
%----------------------------------
flanco = (memoria(muestraANT) > linea);
% 2.- Aumentamos contador de flancos
%------------------------------------
if flanco,
memoria(contFLANCOS) = memoria(contFLANCOS) + 1;
if (memoria(contFLANCOS)<nRetardos+1), memoria(contMUESTRA)=1; end;
end;
% 3.- Si han llegado N alternancias "0"-"1" => Recuperamos sincronismo
%-----------------------------------------------------------------------------
if (memoria(contFLANCOS) > (nFlancos+nRetardos+1))
%%%% 3.1.- Promedio de Muestras / Smbolo
muestrasBit = memoria(contMUESTRA);
nBits = 2*(memoria(contFLANCOS)-nRetardos);
memoria(MUESTRAS_BIT) = round(muestrasBit/nBits);
%%%% 3.2.- Inicializamos variables de estado
memoria(ESTADO) = 3; % Pasamos a recibir la cabecera de sincronismo
memoria(contFLANCOS) = 0;
memoria(valorMUESTRA) = 0;
memoria(contMUESTRA) = 0;
end;
% 4.- Guardamos muestra actual en memoria
%-----------------------------------------
memoria(valorMUESTRA) = memoria(valorMUESTRA) + linea;
memoria(muestraANT) = linea;
%memoria(MUESTRAS_BIT) = 32;
|
|
Contact us at files@mathworks.com