17
armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

  • Upload
    buiminh

  • View
    225

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

armcortexm.blogs.upv.es

Entrada/salida digital en los microcontroladores St STM32

2013/04/12

Page 2: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 2

Contenido

● La E/S es un mecanismo básico

● Objetivos

● Notación para identificar los puertos

● Arquitectura interna de un pin de puerto

● La “general-purpose I/O” (GPIO) es la E/S digital

● Salida digital: ejemplo con el LED de la Discovery

● Entrada digital: ejemplo pulsador de la Discovery

Page 3: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 3

La E/S digital es un mecanismo básico

Entradas digitales (pulsadores)

Salidas digitales (LEDs)

Microcontrolador ARM de NXP

Page 4: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 4

Objetivos

● Tomar contacto con un ARM Cortex-M

● Y de paso:

– Conocer básicamente la arquitectura de E/S digital de los STM32F

– Aprender a conectar elementos digitales– Tener nociones de cómo se programa (la E/S y lo

demás)

Page 5: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 5

Notación para identificar los puertos

● Cada fabricante utiliza su propia notación (e interiores)

Page 6: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 6

Notación para identificar los puertos

● Para el curso: St STM32F40x LQFP100 (ARM Cortex-M4)

Page 7: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 7

Notación para identificar los puertos

● St STM32F40x LQFP100 (ARM Cortex-M4)

PD15

Nombre del puerto(A, B, C, D ...)

Número de línea(0 ... 15)

correspondiente a palabra interna de 16 bits

Page 8: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 8

Arquitectura interna de un pin de puerto

● ... para el St STM32F40x , recuéeeeeerdeseeeeeeee

Page 9: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 9

La “general-purpose I/O” (GPIO) es la E/S digital

Page 10: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 10

Salida digital: ejemplo con el LED de la Discovery

Page 11: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 11

Salida digital: ejemplo con el LED de la Discovery

● La configuración adecuada de la célula podría ser● Queremos usarla como salida digital

● En modo “push-pull” para poder atacar el LED

● Los “pull-up” y los “pull-down” los podemos desactivar

● Y, en la filosofía de ARM, todo dispositivo necesita “reloj” para poder manipularlo y usarlo

● Hacerlo “a pelo” ahora puede asustar bastante● Se hará con la biblioteca que proporciona el fabricante

Page 12: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 12

Salida digital: ejemplo con el LED de la Discovery

● Configurando el periférico

Page 13: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 13

Salida digital: ejemplo con el LED de la Discovery

● Encendiendo y apagando el LED

Page 14: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 14

Salida digital: ejemplo con el LED de la Discovery

● Ahora tu ... prueba el ejemplo LED y analízalo● Modifica el ejemplo para encender los otros LEDS

Page 15: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 15

Entrada digital: ejemplo pulsador de la Discovery

● El esquemático un poco retorcido para no quemar el micro

Page 16: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 16

Entrada digital: ejemplo pulsador de la Discovery

● Trabajo: intentar completar los siguiente prototipos● void pulsador_inicializar(void)

● unsigned char pulsador_leer(void) //devuelve 1 o 0 según estado del bit

● ¡¡¡Ayuda!!!● Manual de la “STM32F4 DSP and standard peripherals library”

● http://armcortexm.blogs.upv.es/material-del-curso/

● Introduce el código en el ejemplo del LED y consigue que el LED se encienda al pulsar

Page 17: Entrada/salida digital en los microcontroladores St STM32 · armcortexm.blogs.upv.es Entrada/salida digital en los microcontroladores St STM32 2013/04/12

E/S digital en la familia St STM32Farmcortexm.blogs.upv.es 17

Deberes

● Descargar la “STM32F4 DSP and standard peripherals library”● http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/stm32f4_dsp_stdperiph_lib.zip

● Echar un vistazo al manual que incluye la biblioteca y a los ejemplos de GPIO

● NOTA: El manual empleado en la actividad anterior se ha obtenido a partir de esta biblioteca empleando un generador doxygen

● Descargar la “STM32F4DISCOVERY board firmware package v1.1.0″

● Usar la copia que hay en “Material del curso”