Curso Online

ANSI C Orientado a Sistemas Embebidos

Pocos desarrolladores tienen las habilidades necesarias en Lenguaje C que se necesitan para aplicaciones de sistemas embebidos del mundo real.

Aplicado en ESP32 y Microcontroladores PIC

30% de Descuento |  Cupo Limitado!

Doble Certificación

o

Clases EN VIVO

Podrás resolver todas tus dudas en las clases en vivo. También podrás acceder a las grabaciones.

Placa de Desarrollo incluido

Tarjeta de desarrollo con microcontrolador para correr las prácticas propuestas en el curso.

Clases Interactivas

Los alumnos podrán hacer observaciones y preguntas como si se tratara de cualquier clase presencial.

%

DESCUENTO

Obtén un 30% de DESCUENTO, vigencia 15 de mayo.

Recibe 2 CERTIFICADOS: el primero con validez DC-3 STPS, y el segundo avalado por Espressif.

CUPO LIMITADO!

Descripción del Curso

Un buen desarrollador de software embebido debe de conocer y dominar los patrones y métodos de programación en C que permiten que un sistema electrónico funcione de manera optimizada en procesamiento, administración de memoria y consumo de energía.

En este curso aprenderás a programar en Lenguaje ANSI C desde cero desde un punto de vista no específico de un hardware en particular. Podrás aplicar los conocimientos obtenidos a diversas arquitecturas de microcontroladores como ESP32, PIC, ARM , etc.

Motores de Videojuegos, Sistemas Operativos como Linux y Windows, Lenguajes como Python, LabVIEW y Android fueron desarrollados en C.

¿Te has preguntado cuáles habilidades se necesitan para desarrollar este tipo de tecnologías?

En este curso aprenderás a desarrollar código en lenguaje C profesional y acorde con estándares de calidad, seguridad y confiabilidad utilizando patrones de programación utilizados en los sistemas embebidos del mundo real.

Recibirás un Conjunto de LIBROS con valor de $600 USD

Requisitos para tomar el curso

No se requieren conocimientos previos para tomar este curso. Iniciamos desde cero.

¿Para quién está dirigido este curso?

Estudiantes, entusiastas, técnicos y profesionales de carreras a fines de tecnología.

Alcance del curso

Aprende a programar Lenguaje C desde cero, hasta dominar las técnicas de programación utilizadas en el mundo real.

Problemas del mundo real

El material del curso y los exámentes de evaluación reflejan problemas del mundo real a los que se enfrenta en un trabajo profesional

Entrevistas laborales

Incluye clases donde desarrollarás las aptitudes necesarias para tener éxito en entrevistas de trabajo en el área tech y sistemas embebidos.

Impulsa tu carrera profesional

Adquiere aptitudes para los escenarios técnicos más demandados y retos técnicos críticos al que se enfrentan las organizaciones.

Enaltece tu perfil

Comparte tus credenciales digitales y habilidades desarrolladas en toda tu red profesional, sin dejar lugar a dudas sobre su valor y experiencia.

¿Por qué el Lenguaje C para Sistemas Embebidos?

 

El Lenguaje C cambió la historia de la programación, permitió por primera vez programar hardware en un entorno de alto nivel. Es el lenguaje por excelencia para programar hardware obteniendo niveles portabilidad que no puede brindar el lenguaje ensamblador.

Este lenguaje te permite estar a un nivel bajo cercano al hardware y también tener un nivel alto con prestaciones de portabilidad y eficiencia.

Dile Adiós al Código Espagueti

 

El Código Espagueti describe un código desordenado, difícil de entender y con una estructura caótica, donde todo está “enredado” como un plato de espagueti. Se caracteriza por el uso recurrente de sentencias condicionales anidadas y comprobaciones utilizando bucles bloqueantes; lo cual dificulta la funcionalidad, modularidad y escalabilidad del programa. Esto complica el seguimiento y comprensión del código por lo que será un problema mantenerlo, depurarlo y agregar nuevas funcionalidades.

Añadido a esto, un programa con código espagueti será más propenso a tener errores o “bugs”.

En este curso aprenderás a estructurar código de manera profesional cuidando patrones y convenciones de programación que ayudarán a la modularidad y mantenimiento del programa.

 

Embedded Systems C

Desarrollo de firmware profesional para sistemas embebidos.

Preparación para entrevistas laborales

 

NUEVOS TEMAS! Aprende los patrones de codificación en Lenguaje C que utilizan las grandes empresas de la industria Tech en entrevistas laborales. 

Sabemos que las entrevistas laborales pueden ser difíciles ya que implican temas complejos, pero será más fácil con nuestro nuevo formato de aprendizaje que hemos diseñado especialmente para ti.

Patrones de Diseño en C

A través de patrones de diseño, aprenderás a resolver de manera eficiente problemas comunes y recurrentes en el desarrollo de sistemas embebidos. Estas estructuras de software te proporcionarán soluciones generales, reutilizables y escalables, aplicables a distintos escenarios como la implementación de protocolos de comunicación, el control de sensores y actuadores, y la gestión de eventos del sistema, elevando la calidad y mantenibilidad de tus proyectos.

Placa de Desarrollo para correr las prácticas

Incluye todo lo que necesitamos!

 Programación de PIC en C MCC

Tarjeta ESP32 WROOM

Núcleo Dual Core Xtensa a 240 MHz. Incluye Wi-Fi 2.4GHz, Bluetooth Classic, Bluetooth Low Energy y Programador Integrado.

Envío a cualquier parte del mundo

Envíos a cualquier parte del mundo fuera de México por sólo $39 USD.

  • Programador/debugger integrado 100% 100%
  • Conectividad Wi-Fi 100% 100%
  • Bluetooth Classic y Low Energy 100% 100%
  • Dual-Core 240 MHz 100% 100%

Fecha 2026

16, 17, 23, 24, 30 y 31 de mayo, 6, 7, 13, 14, 20 y 21 junio

Días de clase

Sábado y Domingo

I

Número de sesiones

12 sesiones

Horario

11 am – 2 pm (Horario de la Ciudad de México)

Horas por clase

3 horas

Horas de curso

+50 horas

¿No se te acomoda el horario?

Grabamos cada una de las clases para que puedas descargarlas, visualizarlas y repasarlas posteriormente.

Años de experiencia impartiendo Cursos y Conferencias acerca de Internet Of Things

El mundo entero corre en C!

Desde los drivers de tu PC, hasta el Sistema Operativo corre en lenguaje C.

El kernel de Linux, el sistema operativo más importante de la historia corre en C. Para poder implementar este tipo de tecnologías cercanas al hardware se requiere de habilidades muy precisas. ¿Quieres aprender como se hace?

Temario

Cada tema inlcuye fundamentos teóricos sólidos y un conjunto de prácticas para una experiencia de aprendizaje única.

Tema 1: Historia del Lenguaje C

Historia del lenguaje C. Análisis de los componentes de un compilador: preprocesador, parser, assembler, linker, etc.

Tema 2: Tipos de datos y variables.

Tipos de datos, declaración de variables, calificadores de tipos de datos y palabras reservadas.

Tema 3: Directiva #include

Estudio de la directiva #include y otras directivas de preprocesador. Desarrollo utilizando macros con la directiva #define

Tema 4: Constantes literales y simbólicas

Literales de tipo integer, float, char, string y escape sequences. Constantes simbólicas.

Tema 5: Operadores

Operadores aritméticos, de relacion, bitwise. Precedencia de operadores.

Tema 6: Sentencia if y switch

Sentencia de decisión if-else en diferentes aplicaciones. Sentencia switch-case-break.

Tema 7: Lazos For, While, Do-While

Estudio y campos de aplicación de los bucles de repetición for, while, do-while. Revisión de continue y break.

Tema 8: Funciones

Implementación, encapsulación y re-utilización de código utilizando funciones.

Tema 9: Alcance de variables y funciones

Tiempo de vida y alcance de variables y funciones. Variables static, auto y external. Static Functions.

Tema 10: Creación de librerías

Manejo de archivos *.c y archivos header *.h. Creación de una librería multi-archivos .c y .h.

Tema 11: Arreglos

Aplicaciones de arreglos con diferentes tipos de datos. Revisión del impacto de los arreglos en memoria RAM.

Tema 12: Punteros

Principio de funcionamiento y uso básico de punteros. Aplicaciones de punteros en los sistemas embebidos.

Tema 13: Aplicaciones con punteros

Uso de punteros en conjunto con arreglos, funciones y cadenas de texto.

Tema 14: Punteros a función

Estudio de los punteros a función. Desarrollo de una librería genérica con generación asíncrona de notificaciones.

Tema 15: Estructuras y Uniones

Estudio de estructuras y uniones. Punteros a estructuras. Arreglos de estructuras. Paso de estructuras a funciones. Estructuras anidadas.

Tema 16: Campos de bits

Estudio e implementación de los Bit Fields. Revisión del impacto en memoria del uso de bit fields.

Tema 17: Enumeraciones

Estudio e implementación de las enumeraciones. Aplicaciones de las enumeraciones en diferentes tipos de programas.

Tema 18: Máquinas de estado

Máquinas de estado Mealy-Moore. Programación de una máquina industrial y vending utilizando máquinas de estado.

Tema 19: Tipos de datos personalizados

Creación de tipos de datos con typedef e instanciar objetos a nuestros tipos de datos personalizados.

Tema 20: Desarrollo de una librería portable

Desarrollo de una librería de control de hardware portable que pueda correr en diversos modelos de microcontroladores.

Tema 21: Capa de Abstracción de Hardware (HAL)

Desarrollo de una Capa de Abstracción de Hardware (HAL) para nuestra librería portable.

Tema 22: Desarrollo de paquetes MQTT

Desarrollo de paquetes MQTT para envío de datos de sensores a la nube. Se utilizarán los conceptos aprendidos.

Tema 23: Non-blocking & Async Functions

Desarrollo de funciones non-blocking y asíncronas utilizando el concepto de callbacks y punteros a funcion.

Tema 24: Ring Buffering

Desarrollo de programas utilizando la estructura de datos ring buffer y los conceptos head and tail.

Tema 25: Manejo de Eventos Asíncronos

Control de eventos de hardware de manera asíncrona al flujo del programa con el fin de no retrasar la ejecución de otras tareas.

Tema 26: Listas y Linked List

Desarrollo de aplicaciones con la estructura de datos Linked List ampliamente utilizado en sistemas operativos.

Tema 27: Programación Orientada a Objetos

Clases, objetos, herencia, clases abstractas y polimorfismo en C. Dynamic Memory Allocation.

Tema 28: Patrones de Diseño en C

Patrones de diseño aplicable a diferentes problemas de diseño de software para sistemas embebidos. 

Tema 29: Task Scheduler

Desarrollo de un Planificador de Tareas para ejecutar diversas tareas de manera “concurrente”. Esta es la base de los OS.

Tema 30: FreeRTOS

RTOS (Sistema Operativo de Tiempo Real) implementado con servicios de temporización con Task Scheduler.

Aprenderás a aplicar los conocimientos aprendidos en los siguientes campos de aplicación:

=

Comunicación Wi-Fi

=

Comunicación Bluetooth

=

Inteligencia Artificial

=

Sistema Operativo de Tiempo Real RTOS

=

Aplicaciones Internet Of Things

=

Criptografía

=

Seguridad en IoT

=

Máquinas industriales

=

Máquinas Vending

=

Interacción con sensores industriales

=

Bandas transportadoras

=

Comunicación con Interfaces Gráficas

=

Machine Learning

=

Librerías portables

=

Administración de Memoria

Portabilidad de hardware

 

Aprenderás a desarrollar programas portables en lenguaje C, aplicando conceptos clave como HAL (Hardware Abstraction Layer) y BSP (Board Support Package). Esto te permitirá crear soluciones capaces de ejecutarse en diferentes modelos de microcontroladores, sin depender de un hardware específico.

A lo largo del curso, dominarás técnicas de programación basadas en niveles de abstracción que garantizan esta portabilidad, facilitando el desarrollo de sistemas más flexibles, reutilizables y alineados con las prácticas profesionales de la industria.

Análisis de Impacto en Memoria

 

Aprenderás patrones y técnicas de programación orientados a optimizar el consumo de memoria y energía en dispositivos embebidos, un factor clave en sistemas eficientes y de alto rendimiento.

Para lograrlo, trabajarás con simuladores especializados que te permitirán visualizar y analizar el uso de la memoria del microcontrolador, facilitando la toma de decisiones informadas para optimizar tus aplicaciones a nivel profesional.

Aprende a Desarrollar tu propio Sistema Operativo

Sistema Operativo de Tiempo Real (RTOS)

Poniendo en marcha los temas del curso, aprenderás a desarrollar un RTOS (Sistema Operativo de Tiempo Real).

Planificador de Tareas

 

Aprenderás a diseñar e implementar un planificador de tareas eficiente, integrando algoritmos de ordenamiento que te permitirán organizar y gestionar múltiples procesos de forma inteligente. Podrás asignar tiempos de ejecución dentro del microcontrolador según criterios de prioridad e intervalos definidos, optimizando el rendimiento del sistema y llevando tus desarrollos embebidos a un nivel profesional.

Aplicaciones en seguridad de Internet Of Things

 

Integrando de forma estratégica los distintos conceptos del curso —como arreglos, punteros, estructuras y uniones—, aprenderás a desarrollar aplicaciones de seguridad robustas para el Internet de las Cosas (IoT). Además, trabajarás con el co-procesador de encriptación ATECC608A, permitiéndote implementar soluciones seguras y alineadas con las exigencias actuales de la industria.

 

Conectividad Inalámbrica Wi-Fi

 

Integrando diversos temas del curso, como funciones asíncronas, callbacks,  eventos y punteros a función, aprenderás a desarrollar de manera estructurada aplicaciones con conectividad Wi-Fi enfocado al Internet de las Cosas. Para esto utilizaremos el controlador Wi-Fi ATWINC1510 para PIC y el controlador ESP-IDF para ESP32.

De igual forma aplicaremos los temas con otro tipo de tecnologías inalámbricas como Bluetooth Low Energy.

Control de eventos de hardware

Domina el desarrollo en C para gestionar eventos de hardware de forma asíncrona, desacoplándolos del flujo principal del programa. Esto te permitirá mantener la ejecución fluida de otras tareas críticas, optimizando el rendimiento general del sistema.

A través de casos prácticos —como la recepción de datos mediante buses de comunicación como SPI, I2C o UART— aprenderás a procesar estos eventos sin bloquear la lógica principal. Con este enfoque, tu aplicación podrá atender tareas de alta prioridad sin interrupciones, logrando sistemas embebidos más eficientes, escalables y profesionales.

Inteligencia Artificial en Microcontroladores

 

TEMA NUEVO!

Obtendrás una introducción a los temas de Machine Learning en Microcontroladores e integración de Cámaras y Visualización de Video en tiempo real.

cloud functions iot google

El descuento finaliza en:

Day(s)

:

Hour(s)

:

Minute(s)

:

Second(s)

Que esperas para iniciar!

 

Si aún no cuentas con experiencia en Lenguaje C, esta es la oportunidad ideal para comenzar. Te ofrecemos una ruta de aprendizaje estructurada, diseñada para llevarte desde los fundamentos hasta la aplicación práctica en el desarrollo de sistemas embebidos, asegurando que cada concepto se traduzca en habilidades reales y aplicables en la industria.

Elige el Paquete que más te Convenga!

En la caja de tu carrito de compras podrás elegir la forma de pago que prefieras.

Adquiérelo ahora!

Aceptamos pago por tarjeta de Crédito y Débito a través de PayPal. Aceptamos 3 y 6 meses sin intereses a través de PayPal con tarjetas de crédito participantes. También aceptamos pagos directamente por depósito o transferencia y depósito en tiendas Oxxo.

Pagos fuera de México: Aceptamos pago por tarjeta de Crédito y Débito a través de PayPal. También aceptamos pagos por depósito en efectivo por Western Union.

Precios en Pesos Mexicanos (MXN) y Dólares Americanos (USD)

¿Tienes dudas?

Contáctanos por WhatsApp, estaremos muy contentos de chatear contigo!

Únete a nuestro canal de Telegram para recibir notificaciones de nuestros eventos gratuitos

Canal Telegram

Acerca del Instructor

MTI. David Gutiérrez

Desarrollador de múltiples herramientas de software para Microcontroladores. Más de 10 años de experiencia en el área. Dentro de sus desarrollos se encuentran protocolos de comunicación IoT ultra ligeros para el sector privado, Tarjetas de Evaluación como Alteri, Xatellite, QuadX, así como sus respectivas UI.  Software de monitoreo para aplicaciones TCP/IP y Bluetooth. Algoritmos para soluciones biomédicas.

Empresas que han confiado en nosotros:

Recibe en tu correo información de nuestros eventos

 

Recibe en tu correo electrónico información de nuestros cursos, eventos y nuevos lanzamientos. 

Únete a nuestro grupo de WhatsApp en donde podrás enterarte de nuestros eventos, becas, webinars y más.

Grupo WhatsApp

Otros cursos que te pueden interesar

dsPIC Dual-Core DSP

Programación dsPIC Dual-Core y Procesamiento Digital de Señales DSP

WIFI con PIC MQTT

Programación ARM SAMD21

Aprender a programar microcontroladores ARM SAMD21 en C

Pantallas HMI Nextion

Desarrollo con pantallas Touch HMI para aplicaciones electrónicas e industriales

tarjeta PIC18F4550 USB

USB con PIC

Aprende a desarrollar aplicaciones USB con PIC y desarrollar interfaces gráficas con Visual C#.

¿Cuáles Sistemas Operativos puedo utilizar para tomar el curso?

Windows, Linux o Mac OS.

¿Qué conocimientos necesito para tomar este curso?

Iniciamos desde cero, sin embargo, parar mejor aprovechamiento del curso, recomendamos nociones de electrónica digital.

¿Cuál programa se utilizará para desarrollar el código?

Visual Studio Code, ESP-IDF y MPLAB X

¿Tiene algún costo adicional los programas a utilizar?

No, todos los programas que utilizaremos son sin costo.

¿Cuáles son los requerimientos mínimos de sistema?

¿En cuántas exhibiciones puedo pagar el curso?

Aceptamos 3 y 6 MESES SIN INTERESES a través de PayPal con tarjetas de crédito participantes. También puedes pagar directamente con nosotros (por depósito/transferencia bancaria y depósito en Oxxo) en 2 exhibiciones. Para más información mándanos un correo a cursos@dignal.com

¿Por qué tomar el curso con nosotros?

Con años de experiencia hemos detectado patrones clave para el aprendizaje de Microcontroladores. Uno de ellos es enseñar a nuestros alumnos de tal manera que el conocimiento recibido le pueda ser útil para aplicarlo a otras áreas. Por ejemplo, cuando nuestros alumnos adquieren nuestro curso y aprenden a utilizar un Microcontrolador PIC, con las técnicas adquiridas de hardware y programación se les facilita notablemente el aprender a utilizar algún otro microcontrolador de otro fabricante como Texas Instruments, Freescale, etc.

¿Cuál compilador se utilizará en el curso?

Estaremos utilizando el compilador XC16 el cual es el compilador oficial para Microcontroladores PIC de 16 bits de Microchip Technology Inc.

Preguntas Frecuentes

Contáctanos si tienes más dudas

Contáctanos en cursos@dignal.com.
Estaremos felices de atenderte!

Curso ANSI C

WhatsApp

Escríbenos o llámanos! será un placer atenderte.

(+52) 9931196566

Correo de contacto

cursos@dignal.com