PROGRAMA TÉCNICO LABORAL EN INSTRUMENTACION Y
AUTOMATIZACION INDUSTRIAL
MICROCONTROLADORES
DEFINICIONES
MICROPROCESADOR (CPU): Es el circuito integrado central más complejo de
un sistema informático. Es el encargado de ejecutar los programas, desde el sistema
operativo hasta las aplicaciones de usuario; sólo ejecuta instrucciones programadas en
lenguaje de bajo nivel, realizando operaciones aritméticas, lógicas y acceso a memoria.
Los microprocesadores incorporan cada vez más y
mejores capacidades para el manejo de grandes
volúmenes de información.
MICROCONTROLADOR
“µC”
Es un circuito integrado programable, capaz
de ejecutar las órdenes grabadas en su
memoria. Está compuesto de varios bloques
funcionales, los cuales cumplen una tarea
específica.
Un microcontrolador incluye las 3 principales
unidades funcionales de una computadora: unidad
central de procesamiento, memorias y periféricos de
entrada/salida.
Los microcontroladores pueden encontrarse en casi cualquier dispositivo
electrónico como automóviles, lavadoras, hornos microondas, teléfonos, Arduino,
etc.
EN RESUMEN
Un microcontrolador es un computador
completo (microprocesador + e/s +
memoria + otros periféricos), aunque de
limitadas prestaciones, que está
contenido en el chip de un circuito
integrado programable y se destina a
gobernar una sola tarea con el programa
que reside en su memoria.
Sus líneas de entrada/salida soportan el
conexionado de los sensores y
actuadores del dispositivo a controlar.
SISTEMA EMBEBIDO
(EMBEDDED SYSTEMS): sistema que
incorpora microcontroladores o
microprocesadores para tareas
específicas, pero no es “reprogramable”
directamente por el usuario (lavadora,
Aire acondicionado, Smart TV, etc)
TIPOS DE MEMORIA DE UN
MICROCONTROLADOR
❑ RAM - memoria de almacenamiento aleatorio, esta destinada al almacenamiento de
información temporal que será utilizada por el procesador para realizar cálculos u
operaciones lógicas. es volátil.
❑ EEPROM - este tipo de memoria permite su escritura, borrado y reprogramado pero
de forma limitada (100.000 veces aproximadamente). es no volátil, es decir garantiza
que la información en ella estará disponible para cuando sea requerida. aun cuando
se reinicie el programa.
❑ FLASH - es la memoria donde se almacena el código o programa diseñado y
cargado por el programador. este tipo de memoria permite su escritura y borrado
prácticamente un numero ilimitado de veces. no volátil
ING. GIOVANY CARO MORENO
PRINCIPALES FABRICANTE DE
MICROCONTROLADORES
Según volumen de ventas y diversidad de
modelos podemos establecer como principales a
los siguientes fabricantes:
❑ MICROCHIP TECHNOLOGY CORP.
❑ STMICROELECTRONICS
❑ATMEL CORP.
❑ MOTOROLA SEMICONDUCTORS CORP.
❑TEXAS INSTRUMENTS
❑ Para que pueda controlar algún proceso es
necesario crear y grabar en la memoria flash el
programa o código, el cual puede ser escrito en
lenguaje ensamblador u otro lenguaje para µc; debe
ser codificado en lenguaje maquina el cual hace
trabajar al microcontrolador.
❑ Los puertos de E/S, permiten leer datos
del exterior (entrada) o escribir en ellos
desde el interior del microcontrolador
(salida), estos permiten interactuar con
el entorno permitiendo el control o
lectura dispositivos simples como
relés, Led´s, motores, fotoceldas,
pulsadores, etc.
ING. GIOVANY CARO MORENO
ARQUITECTURA DE LOS
MICROCONTROLADORES
hardvard von neumann
❑ Tiene señales y almacenamiento ❑ Hace que las maquinas compartan
físicamente separados por el código señales y memoria para código y datos.
y la memoria de datos.
❑ La cpu puede estar bien leyendo una
❑ La CPU puede tanto leer una instrucción o leyendo/escribiendo datos
instrucción como realizar un acceso a desde/hacia la memoria pero ambos
la memoria de datos al mismo procesos no pueden ocurrir al mismo
tiempo. tiempo.
FUNDAMENTOS DE PROGRAMACIÓN
PSeInt
✓ PROGRAMA
✓ LENGUAJES DE PROGRAMACIÓN
✓ ALGORITMO
✓ PSEUDOCÓDIGO
✓ DIAGRAMA DE FLUJO
PSeudocodec (para android)
Programación
Es el proceso usado para idear y ordenar las acciones
necesarias para realizar un proyecto, preparar ciertas
maquinas o aparatos para que empiecen a funcionar en
el momento y en la forma deseada, o para su empleo en
computadora.
Es el proceso donde se desarrolla un programa valiéndose de una herramienta que le
permita escribir el código (el cual puede estar en uno o varios lenguajes de programación) y
de otra que sea capaz de “traducirlo” a lo que se conoce como lenguaje de máquina.
“La programación permite controlar el comportamiento
de una máquina, para que esta actúe de la forma
deseada”
LENGUAJE DE PROGRAMACIÓN
Es un idioma artificial diseñado para expresar operaciones que pueden ser llevadas
a cabo por máquinas. Pueden usarse para crear programas que controlen el
comportamiento físico y lógico, o como modo de comunicación humana.
Está formado por un conjunto de símbolos y reglas que definen su estructura. Se
escribe, se prueba, se depura, se compila y se mantiene el código fuente de un
programa informático.
LENGUAJE MAQUINA
Es el sistema de códigos directamente interpretable por un circuito
microprogramable, como el microprocesador de un computador o un
microcontrolador.
El lenguaje máquina trabaja con dos niveles de voltaje. Dichos niveles, se
simbolizan con el cero (0) y el uno (1). Esto permite el empleo de las teorías del
álgebra booleana y del sistema binario en el diseño de este tipo de circuitos y en
su programación.
LENGUAJE ENSAMBLADOR
Assembler es un lenguaje para los microcontroladores. Implementa una
representación simbólica de los códigos de máquina. Esta representación es
usualmente definida por el fabricante de hardware, y está basada en códigos
mnemotécnicos (ayuda la memorización) que simbolizan los pasos de
procesamiento (las instrucciones).
ALGORITMO
Un algoritmo es un conjunto pre-escrito de instrucciones o reglas bien definidas, finitas y
ordenadas que permiten realizar una actividad mediante pasos sucesivos que no generen
duda a quien deba realizar dicha actividad. Dado un estado inicial, siguiendo los pasos
sucesivos se llega a un estado final y se obtiene una solución.
1. Tomar la crema dental
2. Destapar la crema dental
EJEMPLO: 3. Tomar el cepillo de dientes
Lavarnos los 4. Abrir la válvula del lavamanos
dientes es un 5. Lavar el cepillo de dientes
procedimiento que 6. Cerrar la llave del lavamanos
realizamos varias 7. Aplicar crema dental al cepillo
veces al día. 8. Tapar el recipiente de la crema dental
Veamos la forma de 9. Frotar los dientes con el cepillo
10. Abrir la válvula del lavamanos
expresar este
11. Enjuagarse la boca
procedimiento como 12. Enjuagar el cepillo
un Algoritmo. 13. Cerrar la válvula del lavamanos
14. Secarse la cara y las manos.
Diagrama de Flujo
También llamado Flujograma de Procesos o Diagrama de Procesos, representa
la secuencia o los pasos lógicos (ordenados) para realizar una tarea, es una
representación grafica de forma secuencial donde se estructura un proceso
mediante símbolos.
Se usa en cualquier actividad dentro de las empresas, industria o para describir un
servicio.
Un diagrama de flujo debe proporcionar una información clara, ordenada y concisa
de todos los pasos a seguir.
Por lo dicho anteriormente, podríamos decir que:
"Un diagrama de flujo es una representación gráfica o simbólica de un Algoritmo
(descripción de un proceso)".
Para crear diagramas de flujo se utilizan unos símbolos normalizados
(diagrama). Cada símbolo representa una operación específica y se
conectan entre ellos mediante flechas que indican la secuencia de la
operación (flujo).
Inicio o fin del Entrada y salida de
diagrama información ( datos)
Acción o Proceso
Conector de flujo
NO SI Toma de decisión
? Líneas de flujo
Ejemplo:
Imaginemos que tenemos una
lámpara o bombilla y queremos hacer
el diagrama de flujo para saber que
hacer cuando la lámpara no
funciona.
En la realización de un programa informático es necesario realizar el algoritmo
(pseudocodigo o diagrama de flujo) primero, independientemente del lenguaje de
programación que se use después.
Una vez que tenemos nuestro diagrama de flujo solo tendremos que conocer las
órdenes del lenguaje que realizan esas tareas que se especifican en el diagrama.
Reglas Para la Construcción de un Diagrama
de Flujo
❑ Todos los símbolos han de estar conectados
❑ A un símbolo de proceso pueden llegarle varias líneas
❑ A un símbolo de decisión pueden llegarle varias líneas, pero sólo saldrán dos
(Si o No, Verdadero o Falso).
❑ A un símbolo de inicio nunca le llegan líneas.
❑ De un símbolo de fin no parte ninguna línea.
ALGORITMOS (PSEUDOCODIGO Y DIAGRAMAS DE FLUJO)
APLICACIÓN PSEINT:
Software libre educativo, pensado
para construcción de programas o
algoritmos computacionales. El
pseudocódigo se suele utilizar como
primer contacto para introducir
conceptos básicos como el uso de
estructuras de control, expresiones,
variables, etc.
Mediante un simple e intuitivo
pseudolenguaje en español
(complementado con un editor de
diagramas de flujo), le permite
centrar su atención en los conceptos
fundamentales de la algoritmia.
Estructura de un pseudocodigo
EL PSEUDOCÓDIGO es una forma de escribir los pasos, pero de la forma más cercana al
lenguaje de programación, pero en nuestro idioma.
Todo pseudocódigo tiene esta estructura general.
➢ Inicia con la palabra Algoritmo (seguida del nombre del programa).
➢ Luego le sigue una secuencia de instrucciones.
➢ Y finaliza con la palabra FinAlgoritmo.
Las instrucciones que inicialmente usaremos son:
• Definir → Permite declara variables. Una variable es una posición de memoria donde se
puede almacenar información. las variables tienen un tipo de dato asociado, por lo que durante la
ejecución del algoritmo una variable deberá guardar datos siempre del mismo tipo. Por ejemplo, si
una variable se utiliza para guardar números, no puede utilizarse luego para guardar texto. Los
tipos posibles son ENTERO, LOGICO, CARÁCTER o REAL.
• Escribir → Escribe en pantalla el texto que pongamos entre comillas o
escribir en pantalla el valor de una variable.
• Leer → Permite lee lo que el usuario marque desde el teclado y guarda el
valor, por ejemplo, dentro de una variable.
• Asignación o proceso → La instrucción de asignación permite
almacenar una valor en una variable. <- ; Al ejecutarse la asignación, primero se
evalúa la expresión de la derecha y luego se asigna el resultado a la variable de
la izquierda. El tipo de la variable y el de la expresión deben coincidir.
EJERCICIO DE EJEMPLO #1
Crear un algoritmo que realiza la
suma de dos números enteros:
• Primero se definen las variables;
Pseudocodigo
sumandos y del resultado; A,B y
Suma respectivamente.
• Se solicita el ingreso del valor del
primer sumando y se asigna el valor
en la variable A.
• Se solicita el ingreso del valor del
segundo sumando y se asigna el
valor en la variable B.
• Al tener A y B valores asignados, se
procede a realizar la operación A+B Diagrama de flujo →
y el resultado se asigna (guarda) en
la variable llamada Suma.
• Por último, visualiza el resultado en
Pantalla.
Operadores
Este pseudolenguaje dispone de un conjunto básico de operadores que pueden ser
utilizados para la construcción de expresiones.
ESTRUCTURAS DE CONTROL
CONDICIONAL
Condicional simple (Si – entonces)
La estructura selectiva si
entonces permite que el flujo del
diagrama siga por un camino específico
si se cumple una condición o conjunto
de condiciones. Si al evaluar la
condición (o condiciones) el resultado
es verdadero, entonces se ejecuta(n)
cierta(s) operación(es). Luego continúa
con la secuencia normal del diagrama.
El pseudocódigo para enunciar una
estructura selectiva simple es:
EJERCICIO DE EJEMPLO
Subrutina de un Algoritmo que después contar
artículos cuando estos completan la docena
Proceso:
deberá aparecer en pantalla “caja llena”
(Algoritmo)
Datos de entrada:
1. Inicio
Cantidad de artículos contados.
2. Leer cantidad de artículos. → CantA.
3. Evaluar si la cantidad de artículos es igual a 12.
(Definición de variable) CantA: Variable de tipo
4. De ser así, imprime “Caja Llena”.
entera que representa la cantidad de artículos a
5. Fin
comprar.
Resultado esperado o datos de salida:
El enunciado “Caja Llena” en caso de que el
número de artículos sea llegue a 12.
ESTRUCTURAS DE CONTROL
CONDICIONAL
Condicional selectiva doble
(si entonces – sino)
Permite que el flujo del diagrama se direccione
por una de dos ramas posibles en el punto de la
toma de decisión. Si al evaluar la(s) condición(es)
el resultado es verdadero, entonces se sigue por
un camino específico y se ejecuta(n) cierta(s)
operación(es). SI el resultado es falso entonces
sigue por otro camino y se ejecuta(n) otra(s)
operación(es).
El pseudocódigo para enunciar una estructura
selectiva doble es: