Curso introductorio a la
arquitectura ARM con
Cortex M4
Microcontrolador STM32F407VG
Realizado y editado por:
`
Calle Urquiza 1695 – Gchú. (Entre Ríos)
(2820) ARGENTINA
e-mail:
[email protected]
Revisión: Marzo 2017
[email protected]
2
Índice de contenido
Prologo.......................................................................................................................................................5
Capitulo I....................................................................................................................................................6
Historia de la Arquitectura ARM...........................................................................................................6
Que es Cortex M4..................................................................................................................................8
Algunos detalles del STM32F407VG...................................................................................................9
Características heredadas de RISC......................................................................................................11
Algunas ventajas de RISC...................................................................................................................11
Desventajas de RISC...........................................................................................................................11
Bus AMBA..........................................................................................................................................11
Pipeline................................................................................................................................................12
FPU......................................................................................................................................................14
ARM y Thumb....................................................................................................................................14
Modos de Funcionamiento..................................................................................................................14
Modo usuario (Thread ).......................................................................................................................15
Modos de Privilegios (Handler)..........................................................................................................15
El sistema de memoria ARM...............................................................................................................16
Que es CMSIS.....................................................................................................................................18
Características de la placa entrenadora................................................................................................21
Configurando el entorno de trabajo.....................................................................................................26
Puedo programar el microcontrolador sin un programador específico?.............................................30
Mi Primer Programa en KEIL.............................................................................................................31
Capitulo II................................................................................................................................................41
Interrupciones......................................................................................................................................41
Temporizador del sistema (SysTick)...................................................................................................48
Funcionamiento de la USART.............................................................................................................57
Conversor Analógico con STM32F407VG.........................................................................................64
Capitulo III...............................................................................................................................................67
Pantalla LCD 16x2 con STM32..........................................................................................................67
Voltímetro con pantalla LCD 16x2.................................................................................................69
Midiendo la temperatura del Núcleo Cortex..................................................................................71
Canales DMA......................................................................................................................................77
Modo DMA de doble buffer................................................................................................................90
Emular memoria EEPROM en FLASH..............................................................................................90
Protocolo I2C......................................................................................................................................93
Sensor para medir Temperatura y Humedad HDC1000....................................................................103
Driver para el sensor HDC1000...................................................................................................104
Sensor Barométrico LPS25HB..........................................................................................................110
Driver para el sensor LPS25HB....................................................................................................114
Sensor BME280 (Todo en uno).........................................................................................................119
Impresoras Térmicas.........................................................................................................................121
Puerto SDIO con STM32..................................................................................................................123
Memoria SD con FAT........................................................................................................................128
Ejemplo de manejo de FAT con STM32.......................................................................................135
Creando un disco extraíble a partir de una memoria SD..............................................................139
Control PID.......................................................................................................................................141
3
Funcionamiento general de un PID..............................................................................................142
Control PID con STM32F407......................................................................................................142
Datalogger de temperatura................................................................................................................147
Capitulo IV.............................................................................................................................................154
FSMC (Flexible Static Memory Controller)....................................................................................154
Pantallas TFT................................................................................................................................154
Que es RFID.................................................................................................................................161
Origen de los RFID.......................................................................................................................161
Frecuencias en distintos países.....................................................................................................161
Cantidad de información almacenada en una etiqueta de RFID...................................................162
Etiquetas de lectura y lectura/escritura.........................................................................................162
Etiquetas pasiva y etiquetas activas.............................................................................................162
Colisión entre tarjetas...................................................................................................................162
Modo lector denso........................................................................................................................163
Tags pasivos usados en el ejemplo...............................................................................................163
Receptor RFID CR95HF...............................................................................................................164
Comandos del CR95HF................................................................................................................166
Hardware usado en el proyecto.....................................................................................................176
Driver para RFID CR95HF...........................................................................................................178
Sensor de imagen OV7670 con STM32F407...............................................................................186
Formato de la imagen...................................................................................................................187
RGB..............................................................................................................................................187
Señales de la cámara.....................................................................................................................189
SCCB (Serial Camera Control Bus).............................................................................................191
Estructura del proyecto DCM
Comentarios de: Curso introductorio a la arquitectura ARM con Cortex M4 (0)
No hay comentarios