ARM Cortex M4 y ESP32. Programación y ejemplos
- Sinopsis
- Índice
Si desea abordar la programación en C con 32 bits para ARM, ha llegado al libro indicado. En él encontrará toda la información que necesita para acceder a los aspectos funcionales de ARM Cortex M4, tomando como ejemplo el STM32F407vg y el entorno de trabajo KEIL.
A lo largo de este libro se desarrolla una amplia gama de temas relacionados con el empleo de diferentes sensores y su programación, mediante el uso de ARM Cortex M4 y el microcontrolador ESP32. Se abordan temas relacionados con la conectividad WiFi, sockets de red y protocolos como MQTT. Asimismo, se tratan puntos clave en la programación para ARM Cortex M4 y el desarrollo de servidores web con ESP32.
Gracias a la lectura de este libro también aprenderá temas relacionados con:
– La creación de sitios web para interaccionar con componentes electrónicos.
– Las funciones Ajax para conectar ESP32 con interfaces de hardware.
– Los principios básicos de programación en Python para desarrollar interfaces simples y uso de sockets de red.
Además, conocerá los detalles para implementar de manera sencilla el protocolo MQTT con ESP32 y dominará la publicación de datos mediante este.
No espere más, hágase con su ejemplar y domine la programación en C para ARM Cortex M4 y ESP32.
Capítulo 1
Arquitectura y programación para ARM
Historia de la arquitectura ARM ……… 1
¿Qué es Cortex M4? ……………………. 3
Características heredadas de RISC .. 3
Algunas ventajas de RISC …………. 4
Desventajas de RISC ……………….. 4
Bus AMBA …………………………………….. 4
Pipeline ………………………………………… 5
Registros del procesador ……………….. 6
FPU ………………………………………………. 7
ARM y Thumb ………………………………… 7
Modos de funcionamiento ……………… 8
Modo usuario (Thread) ……………….. 8
Modo de privilegios (Handler) ………. 8
El sistema de memoria ARM…………… 9
¿Qué es CMSIS? ……………………………. 10
Características de la placa
entrenadora ………………………………….. 13
¿Qué necesito para trabajar con
ARM? …………………………………………… 13
Configurando el entorno de trabajo … 14
Programar la flash mediante la
UART ………………………………………. 17
Mi primer programa en KEIL …………… 18
Manejando pines como entradas ……. 24
Capítulo 2
Interrupciones y temporizadores
Interrupciones. ……………………………… 31
Temporizador del sistema
(SysTick) …………………………………….. 39
Funcionamiento de la USART …………. 48
Conversor analógico con
STM32F407VG ……………………………… 54
Capítulo 3
Canales DMA y periféricos
Midiendo la temperatura del núcleo
Cortex …………………………………………… 59
Canales DMA ………………………………… 65
Emular memoria EEPROM en flash …. 84
Protocolo I2C ………………………………… 86
Sensor para medir temperatura y
humedad HDC1000 ……………………. 99
Driver para el sensor HDC1000 …100
Sensor barométrico LPS25HB ………108
Driver para el sensor LPS25HB ….113
Impresoras térmicas……………………….121
Ethernet y MII (Media Independent
Interface) ……………………………………….123
Señales del transmisor Ethernet …..124
Señales del receptor Ethernet ………124
Reduced Media Independent
Interface (RMII) ……………………………125
El stack LwIP controlando leds
mediante CGI ………………………………126
Capítulo 4
Enlace wifi y nuevas tecnologías
Enlace wifi y nuevas tecnologías ……..131
Algunas consideraciones ……………..132
ESP32 …………………………………………..133
Alimentación para el ESP32 Thing …..135
Algunos pines especiales …………..136
ESP32 con ESP-IDF ……………………..136
Resumen de los pasos para
instalar ESP-IDF …………………………..141
“Hola Mundo” con ESP32
y ESP-IDF …………………………………….142
Ventajas de ESP-IDF …………………….143
Desventajas de ESP-IDF ……………….143
ESP32 con Arduino ………………………143
“Hola Mundo” con ESP32
y Arduino …………………………………….145
¿Qué es HTML? ……………………………… 146
Ejemplos de algunas etiquetas
HTML …………………………………………. 148
Formatos de párrafo ………………… 149
Formatos de texto ……………………. 149
Servidores web con electrónica ….. 150
¿Qué es Ajax? ………………………………. 150
Un servidor web simple
con ESP32 …………………………………. 154
Control de un led con HTML
y botones con estilo ……………………. 162
GET ( ) y POST ( ) ………………………. 167
Control de un LED con HTML
checkbox ……………………………………. 168
Lectura de una canal A/D
de STM con Ajax + ESP32 ……………. 173
Conexiones en el ESP32 …………… 224
STM32F407 + Web Server + led ….. 188
¿Qué es un socket? ……………………….. 195
¿Qué es Python? ……………………………. 196
Trabajando con Python ……………….. 197
Variables en Python …………………. 199
Creando un menú con Python …… 201
Exportando un menú
con Python ………………………………. 203
Estructuras de control
en Python ………………………………… 207
Ejemplo de un contador por socket
UDP y ESP32 …………………………………. 209
DS18B20 + STM32F407 +
socket UDP ……………………………………………. 215
¿Qué es el protocolo MQTT …………….. 221
¿Por qué MQTT? ………………………… 221
¿Cómo funciona MQTT? ………………. 222
QoS …………………………………………. 222
MQTT con STM32F407 y ESP32 … 223
Pasos para suscribirse a
un tema …………………………………… 224
Comentarios finales ………………………. 231
Valoraciones
No hay valoraciones aún.