Está en la página 1de 23

Universidad Autónoma de Nuevo León

Facultad de Ingeniería Mecánica y Eléctrica


Departamento de Electrónica y Automatización

MICROCONTROLADORES

ACTIVIDAD N° 3

Investigación

MATRICULA NOMBRE COMPLETO CARRERA


1973825 Hiram de Jesús González IMTC
Zúñiga

DOCENTE: M.C. Alejandro Pérez González

GRUPO: 013 HORA: N4-N6

FECHA: 14/02/2024
Al hablar de microcontroladores, no solo hablamos de lo que los componen y como se pueden
realizar sus conexiones, también es muy importante el poder programarlos y para ello existen
varios programas de los cuales hablaré un poco; hablando de lo que se realiza antes de utilizar
un microcontrolador, el realizar los esquemáticos es demasiado importante para reducir errores
como también nos funciona para plasmar lo que tenemos en mente y de ahí partir al circuito en
físico. Así que es muy importante la información de esta actividad.

Lenguajes de programación para microcontroladores

Los microcontroladores son dispositivos esenciales en el mundo de la electrónica, y para poder


programarlos y controlarlos, es necesario conocer los lenguajes de programación adecuados. A
continuación, se muestran los tipos de lenguajes más utilizados para los microcontroladores:

1. C C
2. C++
3. Python Python
4. ARM Assembly

Cómo programar un microcontrolador en pocos pasos:

✓ Paso 1: Comprender los conceptos básicos


Antes de empezar a programar, es importante que comprendas algunos conceptos básicos. Un
microcontrolador es un pequeño ordenador que se utiliza para controlar dispositivos electrónicos. Para
programar un microcontrolador, necesitarás tener conocimientos básicos de programación, así como
una comprensión de los conceptos básicos de la electrónica.

✓ Paso 2: Elige tu microcontrolador


El siguiente paso para programar un microcontrolador es elegir el que mejor se adapte a tus
necesidades. Hay muchos tipos de microcontroladores disponibles en el mercado, cada uno con sus
propias características y ventajas. Algunos de los microcontroladores más populares incluyen el
Arduino, el Raspberry Pi y el ESP32. Investiga un poco y elige el que mejor se adapte a tus
necesidades.
✓ Paso 3: Aprende a programar
Una vez que hayas elegido tu microcontrolador, es hora de aprender a programarlo. La mayoría de los
microcontroladores se programan utilizando un lenguaje de programación llamado C/C++. Si eres
nuevo en la programación, es posible que desees comenzar con un tutorial básico de C/C++ para
familiarizarte con el lenguaje.

✓ Paso 4: Descarga el software necesario


Antes de empezar a programar, deberás descargar el software necesario para programar tu
microcontrolador. Por ejemplo, si estás utilizando un Arduino, deberás descargar el entorno de
desarrollo integrado (IDE) de Arduino. Si estás utilizando un Raspberry Pi, deberás descargar
Raspbian, el sistema operativo recomendado para el Raspberry Pi.

✓ Paso 5: Comienza a programar


Una vez que hayas instalado el software necesario, es hora de empezar a programar. La mejor manera
de empezar es con un proyecto simple, como hacer parpadear un LED. A medida que te familiarices
con la programación de microcontroladores, podrás avanzar a proyectos más complejos.

1. C
C es uno de los lenguajes de programación más
populares en el mundo de los microcontroladores. Es
un lenguaje de bajo nivel que permite un control
preciso sobre los recursos del microcontrolador, lo que
lo hace ideal para aplicaciones en tiempo real y de
baja potencia.

Características clave del lenguaje de programación C


o La característica clave del lenguaje de programación C es su minimalismo: fue pensado como
herramienta sencilla para escribir programas que se compilan con un compilador, es decir, el
código original se convierte en un archivo que la máquina puede leer directamente, sin
aplicaciones adicionales.
o El compilador es de un solo paso, y la biblioteca estándar es bastante limitada. La combinación
de estos factores hace que los compiladores C sean bastante fáciles de implementar, así que los
programas escritos en C se pueden compilar en cualquier computadora.
o El lenguaje C es un lenguaje de nivel medio bajo, así que no requiere de muchos recursos, pero
ofrece una buena respuesta y una ejecución rápida de programas.
o Además, el lenguaje C se caracteriza por la capacidad de manipular direcciones arbitrarias, por
eso es preferible escribir el código de un microcontrolador en C.
o Además, los programadores observan el funcionamiento de los programas mientras los están
escribiendo en C. Por lo tanto, estos programas resultan más eficientes que los escritos en otros
lenguajes.

La sintaxis
La unidad más pequeña de programación en C se conoce como token C. Los tokens son palabras
clave, identificadores, constantes, variables o cualquier otro símbolo que tenga algún significado en el
lenguaje C.

Un programa escrito en C es un juego de tokens. La sintaxis de C determina cómo combinar estos


tokens para escribir el código.

Cada bloque de código se encierra en corchetes. La base de cada bloque es la función principal main().
Un programa puede contener varias funciones, cada una con su juego de parámetros. Recuerda que
para C, main y MAIN son dos cosas diferentes.

Al final de cada operador se pone un punto y coma. Si se te olvidó ponerlo, el compilador te mostrará el
mensaje de error “Semicolon is expected”.
Los espacios se usan para separar partes de operador.

Usa comentarios para hacer tu código más legible. Los comentarios consisten en texto sin formato que
no se compila. Puedes aprovechar los comentarios para explicar algunas partes del programa y hacerlo
más fácil de entender para los demás.

Hay dos formas de escribir comentarios:

✓ Usa // para escribir un comentario de una sola línea.


✓ Usa /* */ Tu dato/* y */ para escribir un comentario de varias líneas.
Las cuatro aplicaciones más populares del lenguaje de programación C
• Para optimizar un código en base de C++
• Para escribir el código en modo kernel
• Para el desarrollo de software integrado
• Para proteger información

2. C++
C++ es una extensión del lenguaje C que permite una programación
orientada a objetos. Es un lenguaje muy utilizado en la
programación de microcontroladores debido a su eficiencia y
flexibilidad.

Cómo funciona C++ y sus principales características

✓ C++ es un lenguaje compilado, lo que significa que el código es traducido a código máquina por
un compilador antes de poder ser ejecutado. También es un lenguaje estáticamente tipado, lo
que significa que las variables deben ser declaradas con un tipo de datos específico antes de
que puedan ser utilizadas.

✓ Una de las principales características de C++ es su compatibilidad con la programación orientada


a objetos (POO). La POO es un paradigma de programación que organiza el código en objetos,
que pueden tener propiedades y métodos. C++ también admite otros paradigmas de
programación, como la programación procedimental y la programación genérica.

✓ Otra característica clave de C++ es su compatibilidad con el acceso a memoria de bajo nivel.
C++ permite a los programadores trabajar directamente con direcciones de memoria y gestionar
la asignación y desasignación de memoria. Esto lo convierte en una opción popular para la
programación de sistemas y otras aplicaciones de rendimiento crítico.

✓ C++ también incluye una amplia gama de funciones de biblioteca y tipos de datos, incluido el
soporte para contenedores estándar (como vectores y matrices), cadenas y operaciones de
entrada/salida. La biblioteca estándar también incluye soporte para multihilos, redes y otras
funciones avanzadas.
Aplicaciones de C++ en diversos campos
C++ se utiliza en una amplia gama de aplicaciones, desde la informática de alto rendimiento hasta el
desarrollo de juegos o sistemas operativos. Algunas de las aplicaciones más comunes de C++ incluyen:

o Programación de sistemas: C++ se utiliza ampliamente para desarrollar sistemas operativos,


controladores de dispositivos y otro software de bajo nivel.
o Desarrollo de juegos: Muchos videojuegos populares se desarrollan utilizando C++ debido a su
rendimiento y soporte para librerías gráficas.
o Aplicaciones financieras: C++ se utiliza a menudo para desarrollar sistemas de negociación de
alto rendimiento y otras aplicaciones financieras.
o Computación científica: C++ se utiliza para desarrollar aplicaciones informáticas científicas de
alto rendimiento, como simulaciones numéricas y análisis de datos.
o Sistemas integrados: C++ se utiliza a menudo para desarrollar software para sistemas
embebidos, como microcontroladores y otros dispositivos pequeños.

Sintaxis y estructura básicas de programación en C++


C++ se basa en la sintaxis y estructura del lenguaje de programación C. Al igual que C, los programas
C++ se organizan en funciones, que contienen sentencias que se ejecutan en secuencia. He aquí un
ejemplo de un programa C++ simple:

include iostream>

int main() { std::cout «¡Hola, mundo!» std::endl; return 0; } «`

Este programa utiliza la librería iostream para mostrar el texto «¡Hola, mundo!» en la consola. La
función main() es el punto de entrada del programa y se ejecuta cuando el programa se ejecuta.

C++ incluye una amplia gama de tipos de datos, incluyendo enteros, números en coma flotante,
caracteres y valores booleanos. Las variables deben ser declaradas con un tipo de datos específico
antes de que puedan ser utilizadas.

C++ también incluye una amplia gama de operadores, como operadores aritméticos (+, -, *, /),
operadores de comparación (==, !=, , >) y operadores lógicos (&&, ||, !). Los operadores pueden
utilizarse para realizar operaciones con variables y valores.
Bibliotecas y frameworks en C++
Hay muchas librerías y frameworks disponibles para C++ que pueden simplificar y acelerar el
desarrollo. Algunas librerías y frameworks populares incluyen:

➢ Boost: Una colección de bibliotecas que proporcionan soporte para multihilo, redes, estructuras
de datos y otras características avanzadas.
➢ Qt: Un marco de aplicaciones multiplataforma que ofrece soporte para el desarrollo de interfaces
gráficas de usuario, redes y otras funciones.
➢ OpenCV: biblioteca de algoritmos y herramientas de visión por ordenador para el procesamiento
de imágenes y vídeo.
➢ TensorFlow: biblioteca para aplicaciones de aprendizaje automático y aprendizaje profundo.

3. Python
Python es un lenguaje de programación de alto nivel que ha
ganado mucha popularidad en la programación de
microcontroladores en los últimos años. Es un lenguaje fácil
de aprender y de utilizar, lo que lo hace ideal para
principiantes en la programación de microcontroladores.

¿Para qué se utiliza Python?


Python se utiliza habitualmente para el desarrollo de sitios web y software, la automatización de tareas,
el análisis de datos y la visualización de datos. Como es relativamente fácil de aprender, Python ha sido
adoptado por muchos no programadores, como contables y científicos, para una serie de tareas
cotidianas, como organizar las finanzas.

¿Qué puedes hacer con Python? Algunas cosas incluyen:

• Análisis de datos y aprendizaje automático


• Desarrollo web
• Automatización o scripting
• Pruebas y prototipos de software
Características
o Tiene una sintaxis sencilla que imita el lenguaje natural, por lo que es más fácil de leer y
entender. Esto hace la construcción y mejora de los proyectos más rápida.
o Es versátil. Python puede utilizarse para muchas tareas diferentes, desde el desarrollo web hasta
el aprendizaje automático.
o Es fácil de usar para los principiantes, por lo que es muy popular entre los programadores
principiantes.
o Es de código abierto, lo que significa que su uso y distribución son gratuitos, incluso para fines
comerciales.
o El archivo de módulos y bibliotecas de Python—conjuntos de código creados por otros usuarios
para ampliar las capacidades de Python—es enorme y sigue creciendo.
o Python cuenta con una comunidad grande y activa que contribuye al conjunto de módulos y
bibliotecas de Python, y actúa como un recurso útil para otros programadores. La amplia
comunidad de apoyo significa que si los programadores se encuentran con un obstáculo,
encontrar una solución es relativamente fácil; de seguro ya alguien se ha encontrado con el
mismo problema antes.
Sintaxis
➢ Comentarios
Los comentarios se inician con # y todo lo que vaya después en la misma línea será considerado un
comentario.
Al igual que en otros lenguajes de programación, podemos también comentar varias líneas de código.
Para ello es necesario hacer uso de triples comillas bien sean simples ''' o dobles """. Es necesario
usarlas para abrir el bloque del comentario y para cerrarlo.
# Esto es un comentario

➢ Identación y bloques de código


En Python los bloques de código se representan con identación, y aunque hay un poco de debate con
respecto a usar tabulador o espacios, la norma general es usar cuatro espacios.
En el siguiente código tenemos un condicional if. Justo después tenemos un print() identado con cuatro
espacios. Por lo tanto, todo lo que tenga esa identación pertenecerá al bloque del if.
if True:
print("True")
➢ Múltiples líneas
En algunas situaciones se puede dar el caso de que queramos tener una sola instrucción en varias
línea de código. Uno de los motivos principales podría ser que fuera demasiado larga, y de hecho en la
especificación PEP8 se recomienda que las líneas no excedan los 79 caracteres.
Haciendo uso de \ se puede romper el código en varias líneas, lo que en determinados casos hace que
el código sea mucho más legible.
x = 1 + 2 + 3 + 4 +\
5 + 6 + 7 + 8

➢ Creando variables
Anteriormente ya hemos visto como crear una variable y asignarle un valor con el uso de =. Existen
también otras formas de hacerlo de una manera un poco más sofisticada.
Podemos por ejemplo asignar el mismo valor a diferentes variables con el siguiente código.
x = y = z = 10

➢ Nombrando variables
Puedes nombrar a tus variables como quieras, pero es importante saber que las mayúsculas y
minúsculas son importantes. Las variables x y X son distintas.

Por otro lado existen ciertas normas a la hora de nombrar variables:


• El nombre no puede empezar por un número
• No se permite el uso de guiones -
• Tampoco se permite el uso de espacios.

Se muestran unos ejemplos de nombres de variables válidos y no válidos.


# Válido
_variable = 10
vari_able = 20
variable10 = 30
variable = 60
variaBle = 10

# No válido
2variable = 10
var-iable = 10
var iable = 10
➢ Uso de paréntesis
Python soporta todos los operadores matemáticos más comunes, conocidos como operadores
aritméticos. Por lo tanto podemos realizar sumas, restas, multiplicaciones, exponentes (usando **) y
otros que no vamos a explicar por ahora. En el siguiente ejemplo realizamos varias operaciones en la
misma línea, y almacenamos su resultado en y.
x = 10
y = x*3-3**10-2+3
Pero el comportamiento del código anterior y el siguiente es distinto, ya que el uso de paréntesis () da
prioridad a unas operaciones sobre otras.
x = 10
y = (x*3-3)**(10-2)+3

Variables y alcance
Un concepto muy importante cuando definimos una variable, es saber el alcance o scope que tiene. En
el siguiente ejemplo la variable con valor 10 tiene un alcance global y la que tiene el valor 5 dentro de la
función, tiene un alcance local. Esto significa que cuando hacemos print(x), estamos accediendo a la
variable global x y no a la x definida dentro de la función.
x = 10

def funcion():
x = 5

funcion()
print(x)

Uso de la función print()


Por último, en cualquier lenguaje de programación es importante saber lo que va pasando a medida
que se ejecutan las diferentes instrucciones. Por ello, es interesante hacer uso de print() en diferentes
secciones del código, ya que nos permiten ver el valor de las variables y diferente información útil.
Existen muchas formas de usar la función print() y te las explicamos en detalle en este post, pero por
ahora basta con que sepas lo básico.
Como ya hemos visto se puede usar print() para imprimir por pantalla el texto que queramos.

print("Esto es el contenido a imprimir")


4. ARM Assembly

ARM Assembly es un lenguaje de bajo nivel


específico para los microcontroladores
ARM, uno de los más utilizados en la
industria. Permite un control preciso sobre
los recursos del microcontrolador, lo que lo
hace ideal para aplicaciones críticas de
tiempo real y de baja potencia.

Para comprender cómo programar en ARM, es importante familiarizarse con sus registros. Los registros
son ubicaciones de almacenamiento especiales dentro del procesador que pueden contener valores
temporales y direcciones de memoria. Los registros son de tamaño fijo y están numerados del 0 al 15
en la arquitectura ARM de 32 bits.

➢ Registros

• Los registros son ubicaciones de almacenamiento dentro del procesador que se utilizan para
realizar operaciones.
• En ARM, los registros se denominan x0, x1, x2, etc.

En ARM, existen varios tipos de registros. Los registros generales son los más comunes y se utilizan
para almacenar datos y direcciones en el programa. Hay un total de 16 registros generales, cada uno
con una capacidad de 32 bits. Estos registros se denominan R0, R1, R2, … R15.

Además de los registros generales, también hay otros registros especializados que se utilizan para
propósitos específicos. Por ejemplo, el registro del contador de programa (PC) se utiliza para almacenar
la dirección de la siguiente instrucción que se ejecutará. El registro de enlace (LR) se utiliza para
almacenar la dirección de retorno de una llamada a una función.
Los registros también se pueden utilizar para el paso de argumentos entre funciones y para almacenar
valores temporales durante el proceso de ejecución. Al usar los registros de manera eficiente, se puede
minimizar la necesidad de acceder a la memoria principal, lo que a su vez mejora considerablemente la
velocidad y eficiencia del programa.
A continuación se muestra un ejemplo de cómo se puede utilizar un registro en un programa en
assembly ARM:
MOV R0, #10 ; Mueve el valor 10 al registro R0

En este caso, se utiliza la instrucción MOV para mover el valor 10 al registro R0. Esto significa que
ahora el registro R0 contiene el valor 10 y se puede acceder a él en cualquier lugar del programa.

➢ Carga de datos en registros:


Para realizar operaciones, primero debemos cargar datos en los registros. Esto se hace mediante
instrucciones de carga y almacenamiento.

➢ Flujo del programa:


Las instrucciones de salto y bifurcación controlan el flujo del programa. Puedes saltar a una etiqueta o
condicionalmente cambiar la ejecución a diferentes partes del código.

➢ Operaciones aritméticas básicas:


El lenguaje ensamblador ARM admite operaciones como suma, resta, multiplicación y división. Por
ejemplo, la instrucción add x1, x0, #1 suma el valor en el registro x0 con 1 y almacena el resultado en
x1.

➢ Aplicaciones prácticas

✓ Una de las principales aplicaciones prácticas de la programación en lenguaje Assembly con ARM
es el desarrollo de firmware para dispositivos embebidos. Los dispositivos embebidos son
aquellos que tienen un propósito específico y suelen tener recursos limitados como memoria y
procesamiento. Al programar en lenguaje Assembly, podemos maximizar el rendimiento de estos
dispositivos y aprovechar al máximo sus capacidades.

✓ Otra aplicación práctica de la programación en lenguaje Assembly con ARM es la optimización


de código.
✓ Además, la programación en lenguaje Assembly con ARM también es útil en el desarrollo de
controladores de dispositivos.

✓ Por último, otra aplicación práctica de la programación en lenguaje Assembly con ARM es la
investigación y desarrollo en el campo de la seguridad informática. Muchas vulnerabilidades y
exploits se aprovechan de debilidades en el código de los programas. Al analizar y comprender
mejor el funcionamiento interno de los programas a nivel de Assembly, podemos identificar y
corregir estas vulnerabilidades, fortaleciendo así la seguridad de nuestros sistemas.

Ejemplo: Suma de dos números


Veamos un ejemplo de cómo realizar la suma de dos números en lenguaje Assembly con ARM.
Supongamos que tenemos dos números almacenados en los registros r0 y r1, y queremos guardar el
resultado en el registro r2.

Primero, cargamos los valores de los registros r0 y r1:

ldr r0, =5 // Cargar el valor 5 en el registro r0


ldr r1, =3 // Cargar el valor 3 en el registro r1

Luego, sumamos los valores y guardamos el resultado en r2:


add r2, r0, r1 // Sumar los valores de r0 y r1 y guardar el resultado en r2
Tipos de software para la realización de diagramas esquemáticos.

Se sabe que hay demasiados software para plasmar nuestros diseños de algún circuito, pero no todos
nos ofrecen lo mismo en cuestión de lo práctico, por lo que aquí mencionaré los mejores:

EveryCircuit

Comenzamos con EveryCircuit, un


simulador online que permite diseñar y
revisar el comportamiento de tus circuitos
electrónicos desde tu teléfono o tableta.

Este software destaca por tener una


comunidad numerosa e interactiva que
podemos consultar y obtener ayuda de
otros usuarios.
demás, este software cuenta con una de las mayores bibliotecas comunitarias de circuitos electrónicos,
por lo que, ante una nueva tarea, es de mucha ayuda utilizar su buscador para encontrar un diseño
parecido a la funcionalidad que necesitas y utilizarlo como base.

Características:
❖ Disponible para Android, iOS y Google Chrome.
❖ Sincronización con la nube.
❖ Visualización de animaciones dinámicas de voltajes, corriente y cargas.
❖ Respuesta en tiempo real al ajustar parámetros en las simulaciones de tus diseños de circuitos
electrónicos.
❖ Creación de prototipos y depuración increíblemente rápidas.
❖ Simulación interactiva en tiempo real.
❖ Cuenta con una de las mayores bibliotecas comunitarias de circuitos electrónicos diseñados.
Altium
Continuamos con Altium, uno de los
programas más relevantes para diseñar
circuitos electrónicos. Destaca por el enfoque
colaborativo de sus funcionalidades.

Altium permite el intercambio con tu equipo


de trabajo de ideas de diseño que se
sincronizan entre varios de los sistemas más
populares, como SolidWorks, PTC Creo,
Autodesk Inventor o Autodesk Fusion 360
Analizando sus características específicas tenemos:
❖ Compatible con Windows.
❖ Entorno de diseño y modelo de datos unificados.
❖ Interfaz intuitiva.
❖ Funcionamiento basado en esquemas, colocación y enrutamiento.
❖ Comentarios de contexto.
❖ Permite la simulación de los diseños.
❖ Revisión en 3D de la integración de los componentes del diseño.
❖ Permite compartir los archivos de diseño de una manera muy simple.
❖ Dispone de Design for Manufacturing (DFM) para certificar que sus diseños de PCB son
eficaces, fiables y fáciles de fabricar.
❖ Permite migración de información de forma sencilla ya que posee potentes herramientas de
conversión, diseño de circuito impreso y de esquemas.
EasyEDA

Mirando hacia las herramientas para diseñar circuitos electrónicos desde un navegador web tenemos a
EasyEDA.
SI te decides por este software tendrás en tus manos un conjunto de herramientas que integran un
diseñador de esquemas, un simulador de circuitos de señal mixtas y un diseño de circuito impreso.
Ideal para ingenieros electrónicos, educadores, estudiantes y aficionados.

Características:

❖ Posee una amplia biblioteca de componentes, huellas de circuito impreso y encapsulado.


❖ Más de 1 millón de librerías libres que se actualizan en tiempo real.
❖ Soporta diseños importados desde Eagle, Altium, KiCad y LTspice.
❖ Puedes trabajar directamente desde la nube abriendo su aplicación web o descargar un cliente
de escritorio compatible con Windows, Linux y macOS.
❖ Permite la simulación de los diseños.
❖ Gestión de versiones.
❖ Colaboración en equipo.
❖ Vista de los diseños en 3D.
❖ Cuenta con un servicio de ensamblado de los circuitos diseñados con precios según los
requerimientos.
KiCad

Continuamos con KiCad, uno de los


principales exponentes de software libre
para diseñar circuitos electrónicos.

El prestigio que tiene entre sus usuarios


está respaldado por sus potentes
funcionalidades, que les hacen una
fuerte competencia a las variantes de
pago.

Características:

❖ Código abierto.
❖ Compatible con Windows, Linux y macOS.
❖ Editor de esquemas compatible que permite adaptarse a la complejidad del diseño.
❖ Cuenta con un potente enrutador interactivo y herramientas mejoradas de visualización.
❖ Diseño de PCB.
❖ Visor 3D.
❖ Comprobación de reglas eléctricas para detectar si hay conflictos de pines de salida,
controladores faltantes y pines desconectados.
❖ Funcionalidades escalables mediante repositorio de librerías mantenidas por la comunidad.
❖ Permite la importación o migración de datos de otras herramientas como Eagle, Altium y
CadStar.
OrCAD

OrCAD es un software para diseñar


circuitos lógicos compatible con
Windows que promete facilitar la
personalización del entorno para
que se adapte a tus necesidades
de diseño en constante, acelerando
la productividad del equipo de
trabajo.

Características:

❖ Moderno, intuitivo y fácil de utilizar.


❖ Localización rápida de errores.
❖ Flujo de trabajo personalizable.
❖ Verificaciones online de reglas de diseño para identificar y corregir problemas.
❖ Puedes acceder a miles de piezas y modelos electrónicos actualizados dentro del propio
entorno.
❖ Permite establecer un sistema de diseño jerárquico para facilitar la reutilización, revisión o
edición eficiente de los esquemas.
❖ Permite crear y asignar restricciones para la fabricación según los estándares.
❖ Incluye un editor de esquemas, un simulador de circuitos y un diseñador para el desarrollo de
esquemas de circuitos impresos.
Autodesk EAGLE

Continuamos con el software


del gigante Autodesk para
diseñar circuitos electrónicos,
Eagle.

Con este software no tienes


excusas si de plataformas se
trata, ya que es compatible con
Windows, Linux y macOS, así
como con otros productos de
Autodesk, por si ya estás
familiarizado con su suite.

Veamos sus principales características:

❖ Bloques de diseño modular listos para arrastrar y soltar que fomentan la reutilización de
componentes.
❖ Modelado 3D.
❖ Validación de esquemas con reglas electrónicas.
❖ Sincronización en tiempo real entre el esquema y el diseño.
❖ Herramientas de alineación precisas e intuitivas.
❖ Cuenta con herramientas para para la eliminación de bucles, las esquinas y la colocación de
vías durante el enrutamiento.
❖ Comprobación de reglas de diseño.
❖ Permite encontrar piezas vinculadas dinámicamente desde un extenso catálogo.
❖ Permite a la comunidad extender funcionalidades mediante scripts.
DesignSpark PCB

Por último, les presento a


DesignSpark PCB, un software
freemium para diseñar circuitos
electrónicos con un conjunto de
funcionalidades libres de pago
ideales para estudiantes y
principiantes.

Entre las principales ventajas


que te aportan tenemos la
posibilidad de trabajar sin
limitaciones en cuanto al tamaño
de los esquemas, por lo que
puedes diseñar tu circuito sin
preocupaciones.

Veamos otras características:

❖ Software para Windows.


❖ Interfaz intuitiva.
❖ Cuenta con una extensa biblioteca de diseños.
❖ Permite importar y exportar archivos de varios tipos.
❖ Visor 3D.
❖ Integración con los flujos de trabajo de diseño existentes.
❖ Editor de reglas de diseño enriquecido.
❖ Enrutamiento sin cuadrícula y navegación inteligente de obstáculos.
❖ Diseño jerárquico.
❖ Copias de seguridad avanzadas, que almacenan modificaciones a nivel de acción.
❖ Cuenta con herramienta Design Calculator para el cálculo de parámetros como impedancia,
capacitancia y disipación del calor
Aquí un software que he estado utilizando:

Proteus

Proteus es un programa completo que permite


diseñar y simular circuitos electrónicos de
forma práctica y accesible. Está formado por
dos utilidades principales: ARES e ISIS, y por los
módulos Electra y VSM.

Algunas de las características clave de Proteus son:


• Captura de esquemáticos: Puedes crear esquemáticos de circuitos electrónicos agregando
componentes como resistencias, condensadores, transistores, microcontroladores y más.
• Simulación: Te permite simular el comportamiento de circuitos electrónicos utilizando modelos
SPICE (Simulation Program with Integrated Circuit Emphasis).
• Librerías de componentes.
• Conexionado automático entre dos puntos del esquema.
• Netlist compatible con la mayoría de los programas de realización de PCB.

Proteus también tiene una interfaz muy bien organizada que tiene todas las herramientas y
comandos necesarios para crear placas de circuito.
Tabla de comparaciones de los softwares mencionados anteriormente.
CONCLUSIÓN
En conclusión, el conocer sobre los distintos software siempre es de mucha utilidad, ya que nos
pueden salvar en dependiendo de lo que queramos hacer o diseñar; con esto podemos tener un poco
más de conocimiento sobre lo que cada software y lenguaje de programación nos pueden aportar y si
están a nuestro alcance, ya que la mayoría cobran por su uso.
En sí podemos ver que no solo está el conocer acerca del microcontrolador o el saber realizar las
conexiones, ya que antes debemos saber programar mediante los lenguajes como también, siempre
realizar nuestros diseños esquemáticos para poder realizar simulaciones y reducir errores antes de
hacerlo en físico.

BIBLIOGRAFÍA

❖ Elbloddeldev. (2024, 14 febrero). Aprende Programación en Lenguaje Assembly con ARM: Práctica y

Ejemplos. El Blog del Programador. https://elblogdelprogramador.com/posts/aprende-programacion-en-

lenguaje-assembly-con-arm-practica-y-ejemplos/#gsc.tab=0

❖ Moraguez, E. R. (2023, 27 marzo). ¿Qué es C++: Cómo funciona y para qué sirve? LovTechnology.

https://lovtechnology.com/que-es-c-como-funciona-y-para-que-sirve/

❖ Saavedra, J. A. (2023, 1 junio). Qué es lenguaje C: las ventajas, las características y la sintaxis. Ebac.

https://ebac.mx/blog/que-es-lenguaje-c

❖ Santos, M. D. (2023, 22 marzo). Microcontroladores: ¿Qué lenguaje de programación utilizar? -

Polaridad.es. Polaridad.es. https://polaridad.es/microcontroladores-que-lenguaje-de-programacion-

utilizar/#:~:text=A%20continuaci%C3%B3n%2C%20te%20presentamos%20algunos%20de%20los%20me

jores,los%20%C3%BAltimos%20a%C3%B1os.%20. . .%204%204.%20ARM%20Assembly

❖ Staff, C. (2023, 29 noviembre). ¿Qué es Python y para qué se usa? Guía para principiantes. Coursera.

https://www.coursera.org/mx/articles/what-is-python-used-for-a-beginners-guide-to-using-python

❖ Tápanes, Y., & Tápanes, Y. (2022, 23 octubre). Los mejores 7 software para diseñar circuitos electrónicos.

Saasradar. https://saasradar.net/disenar-circuitos-electronicos/

También podría gustarte