Secuencia Pseudo Random Con El dsPIC30F4013

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 6

UNIVERSIDAD MAYOR DE SAN ANDRES

FACULTAD DE TECNOLOGIA
ELECTRONICA Y TELECOMUNICACIONES
ELT - 932

LABORATORIO DE PDS # 2
SECUENCIA PSEUDO-RANDOM CON EL
DSPIC30F4013

ESTUDIANTE : JHEDDY BRAYAMS TORREZ MONTAN


C.I. : 10036334 L.P.
CATEDRATICO: LIC.WILFREDO WILSON MAYTA PATZI
FECHA ; 06/03/2021

LA PAZ - BOLIVIA
OBJETIVOS.
OBJETIVO GENERAL.
- Implementar un proyecto con el dsPIC30F4013.

OBJETIVOS ESPECIFICOS.
- Conocer los registros del dsPIC30F4013.
- Dar un manejo correcto del dsPIC30F4013.

FUNDAMENTO TEORICO.
Los dsPIC, también conocidos como DSC: Controlador Digital de Señal, son un potente
microcontrolador de 16 bit a los que se le han añadido las principales capacidades de los DSP.
Poseen conjuntamente los recursos de los microcontroladores de 16 bit y las principales
características de los DSP. Los dsPIC ofrecen todo lo que se puede esperar de un
microcontrolador: velocidad, potencia, manejo de interrupciones, amplio campo de funciones
periféricas analógicas y digitales, opciones de reloj, perro guardián, reloj de tiempo real..., a un
precio similar al de los microcontroladores.

CARACTERISTICAS DE dsPIC30F4013.

- CPU de alto rendimiento: Núcleo RISC con arquitectura Harvard modificada.


- Bus de datos de 16 bits y de instrucciones de 24 bits.
- Repertorio de 84 instrucciones optimizadas para el lenguaje C.
- 16 registros de propósito general.
- 2 acumuladores de 40 bits con opciones de redondeo o saturación.
- Modos complejos de direccionamiento indirecto: circular y de bit inverso.
- Controlador de interrupciones: Latencia de 5 ciclos.
- Hasta 45 fuentes de interrupción, 5 externas.
- 7 niveles de prioridad para las interrupciones programables.
- 4 excepciones especiales.
- Entradas y salidas digitales.
- Memorias: FLASH de programa de hasta 144 KB, EEPROM de datos de hasta 4 KB y
SRAM de datos de hasta 8 KB.

PALABRA DE CONFIGURACION.

Cada registro de configuración de dispositivo es un registro de 24 bits, pero solo los 16 bits
inferiores de cada registro se utilizan para almacenar datos de configuración. Hay siete
registros de configuración de dispositivos disponibles para el usuario.

FOSC: Registro de configuración del oscilador:


bit 15-14 FCKSM<1:0>: bits de configuración de cambio de reloj y selección de monitor
1x = El cambio de reloj está deshabilitado, el Monitor de reloj a prueba de fallas está
deshabilitado
01 = El cambio de reloj está habilitado, el Monitor de reloj a prueba de fallas está
deshabilitado
00 = El cambio de reloj está habilitado, el Monitor de reloj a prueba de fallas está habilitado
FOSC: Registro de configuración del oscilador:
bit 10-8 FOS<2:0>: Selección del grupo oscilador en bits POR
111 = oscilador PLL; Fuente PLL seleccionada por los bits FPR<4:0>
011 = EXT: oscilador externo; Pines OSC1/OSC2; configuración del oscilador externo
seleccionada por
los bits FPR<4:0>
010 = LPRC: RC interno de baja potencia
001 = FRC: RC rápido interno
000 = LPOSC: Oscilador de cristal de baja potencia; Pines SOSCI/SOSCO
bit 4-0 FPR<4:0>: Selección del oscilador dentro de los bits del grupo primario
Modos de operación del oscilador:

FWDT: REGISTRO DE CONFIGURACIÓN DEL TEMPORIZADOR PERRO GUARDIAN WATCHDOG


TIMER.
bit 15 FWDTEN: bit de configuración de habilitación del Watchdog
1 = Watchdog habilitado (El oscilador LPRC no se puede desactivar. Borrar el bit SWDTEN en el
registro RCON. No tendrá efecto.)
0 = Watchdog deshabilitado (El oscilador LPRC se puede desactivar borrando el bit SWDTEN en
el registro RCON)
FWDT: REGISTRO DE CONFIGURACIÓN DEL TEMPORIZADOR PERRO GUARDIAN WATCHDOG
TIMER.
bit 5-4: FWPSA<1:0>: Selección del valor del Prescaler para el temporizador Perro Guardian
Watchdog (bits del Prescaler A)
11 = 1:512
10 = 1:64
01 = 1:8
00 = 1:1
bit 3-0: FWPSB<3:0>: Selección del valor del Prescaler para el temporizador Perro Guardian
Watchdog (bits del Prescaler B)
1111 = 1:16
1110 = 1:15


0001 = 1:2
0000 = 1:1
FBORPOR: REGISTRO DE CONFIGURACIÓN BOR AND POR.
bit 15: MCLREN: bit de habilitación de la función del pin MCLR
1 = Función del pin como MCLR (caso predeterminado)
0 = Pin deshabilitado
FBORPOR: REGISTRO DE CONFIGURACIÓN BOR AND POR
bit 10: PWMPIN: Modo del bit para el Pin de Control de Motor mediante el módulo PWM
1 = Pines del módulo PWM controlados por el registro PORT en el reinicio del dispositivo
(tri - stated)
0 = Pines del módulo PWM controlados por el módulo PWM en el reinicio del dispositivo
(configurado como pines de salida)
bit 9: HPOL: bit de polaridad de lado alto del módulo PWM de control del motor
1 = Los pines de salida del lado alto del módulo PWM tienen polaridad de salida activa-alta
0 = Los pines de salida del lado alto del módulo PWM tienen polaridad de salida activa-baja
bit 8: LPOL: bit de polaridad de lado bajo del módulo PWM de control del motor
1 = Los pines de salida del lado bajo del módulo PWM tienen polaridad de salida activa-alta
0 = Los pines de salida del lado bajo del módulo PWM tienen polaridad de salida activa-
baja.
Nota: Los bits de configuración PWMPIN, HPOL y LPOL solo están disponibles en dispositivos
que cuentan con un módulo PWM de control de motor.
FBORPOR: REGISTRO DE CONFIGURACIÓN BOR AND POR.
bit 7 BOREN: bit de habilitación PBOR (reset por caída de voltaje Brown -out Voltage)
1 = PBOR Habilitado
0 = PBOR deshabilitado
bit 5-4 BORV<1:0>: bit de selección de voltajes por caída de voltaje
11 = 2.0V (reservado)
10 = 2.7V
01 = 4.2V
00 = 4.5V
FBORPOR: REGISTRO DE CONFIGURACIÓN BOR AND POR.
bit 1-0 FPWRT<1:0>: bits de selección del valor del temporizador de reinicio de encendido
11 = PWRT = 64 ms
10 = PWRT = 16 ms
01 = PWRT = 4 ms
00 = Power-up timer disabled.
FGS: REGISTRO DE CONFIGURACIÓN DE SEGMENTO DE CÓDIGO.
bit 1 GCP: bit de protección de código flash de programa del segmento general.
1 = La memoria del programa del usuario no está protegida.
0 = La memoria del programa del usuario está protegida.
FGS: REGISTRO DE CONFIGURACIÓN DE SEGMENTO DE CÓDIGO.
bit 0 GWRP: bit de protección contra escritura de la memoria Flash de programa de segmento
general.
1 = La memoria del programa del usuario no está protegida contra escritura.
0 = La memoria del programa del usuario está protegida contra escritura.
FICD: REGISTRO DE CONFIGURACIÓN DEL DEPURADOR EN CIRCUITO.
bit 15 BKBUG: Bit de habilitación de depuración a fondo.
1 = El dispositivo se reiniciará en modo Usuario.
0 = El dispositivo se reiniciará en modo de depuración.
bit 14 COE: Bit de habilitación del depurador/emulador.
1 = El dispositivo se reiniciará en modo operativo.
0 = El dispositivo se reiniciará en modo de emulación en Chip.
FICD: REGISTRO DE CONFIGURACIÓN DEL DEPURADOR EN CIRCUITO.
bit 1-0 ICS<1:0>: bits de habilitación para la selección de canales de comunicación ICD
11 = Comunicarse en PGC/EMUC y PGD/EMUD
10 = Comunicarse en EMUC1 y EMUD1
01 = Comunicarse en EMUC2 y EMUD2
00 = Comunicarse en EMUC3 y EMUD3

REGISTRO DE CONFIGURACION ADPCFG.

El registro ADPCFG especifica la condición de entrada de los pines del dispositivo utilizados
como entradas analógicas. Un pin se configura como entrada analógica cuando el bit PCFGn
correspondiente (ADPCFG) es claro. El registro ADPCFG es claro en Reset, lo que hace que los
pines de entrada A / D se configuren para analógico, entrada por defecto en Reset. Cuando
está configurado para entrada analógica, el búfer de entrada digital de E / S del puerto
asociado está deshabilitado, por lo que no funciona no consumir corriente. El registro ADPCFG
y el registro TRISB controlan el funcionamiento de los pines del puerto A / D. Los pines de
puerto que se desean como entradas analógicas deben tener su correspondiente bit TRIS
configurado, especificando entrada de puerto. Si el pin de E / S asociado con una entrada A / D
se configura como salida, bit TRIS se borra y el nivel de salida digital de los puertos (VOH o
VOL) se convertirá. Después de reiniciar el dispositivo, todos los bits TRIS están configurados.
Un pin se configura como E / S digital cuando se establece el bit PCFGn correspondiente
(ADPCFG ). En esto configuración, la entrada al multiplexor analógico está conectada a AVSS.
Nota 1: Al leer el registro del puerto A / D, cualquier pin configurado como entrada analógica
se lee como un '0'. 2: Niveles analógicos en cualquier pin que se define como una entrada
digital (incluido el AN15: AN0 pines) puede causar que el buffer de entrada consuma corriente
que está fuera del dispositivo especificación.

RESGISTROS DE ENTRADA Y DE SALIDA.

Todos los puertos de entrada/salida tiene asociados tres registros para definir la función del
puerto, la letra x denota la letra del puerto en particular. Estos registros son:
1. TRISx.
Determina cuando un pin asociado a un puerto es entrada o salida. Cuando el bit de este
registro correspondiente al pin está a 1 es que el pin es una entrada y si es un 0 es una salida.
Todos los pines se configuran como entrada después de un Reset.
2. PORTx.
El dato en el puerto de entrada/salida está asociado directamente con este registro, leer el
valor de este registro es como leer el valor de los pines del puerto y escribir en este registro es
como escribir en el cerrojo asociado a la salida.
3. LATx
Es el registro asociado a los pines de entrada/salida que elimina los posibles problemas que
pueden ocurrir con las instrucciones de lectura-modificación-escritura. Escribir en el registro
LATx tiene el mismo efecto que escribir en PORTx, la única diferencia es que leer el PORTx lee
el valor de los pines directamente y leer el LATx lee el valor del cerrojo (latch) asociado el pin
.
DESARROLLO DEL PROYECTO.
La descripción del proyecto tiene como objetivo principal mostrar secuencias aleatorias en un
display LCD.
DESCRIPCION DEL PROYECTO.
Para la realización de dicho proyecto con el dsPIC30F4013 debemos desarrollar el código
fuente mencionado que tomé en cuenta las siguientes condiciones, al darse presión en un
botón llamado RB4 se inicialicé el conteo aleatorio cada 250ms lo cual da muestras de 0 a 99
una vez dejada de presionar esta para automáticamente en un valor aleatorio de ya
mencionado rango. Una vez ya terminado el código se pasa a el grabado del código HEX hacia
nuestro dsPIC30F4013 para después implementarlo en hardware.
Ahora para el paso del hardware necesitamos un protoboard, unas resistencias de valores de
10k y 220 más conectores, fuente, display LCD 16x2 y un potenciómetro para regular el brillo u
de nuestra pantalla de salida. Se conectan en los pines indicados ya obtenidos por el
datasheet, para evitar fallas catastróficas.
Por último, probamos el dicho proyecto que cumpla con nuestras condiciones anteriormente
mencionadas y con esto acabamos el laboratorio cumpliendo con los objetivos.

CODIGO FUENTE Y ESQUEMA DEL PROYECTO.


A continuación, presentamos el código fuente generado y depurado por el uso de la
herramienta mickroCPro.

Luego tenemos el esquema del proyecto.

ANALISIS Y RESULTADOS (fotografías)

CONCLUSION.
- Se cumplió con los objetivos mencionados para la realización de nuestro proyecto
dando uso a nuestro dsPIC30F4013, pudiendo recabar mas datos sobre el mismo.
- Este laboratorio genero muchas dudas resueltas para el manejo del mismo.

También podría gustarte