Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Página 1 de 131
CARRERA
MECÁNICA AUTOMOTRIZ ☒
MECÁNICA INDUSTRIAL ☐
ELECTRICIDAD ☐
ELECTRÓNICA ☐
TDII ☐
OFFSET ☐
COMISIÓN / ÁREA
ASIGNATURA
SOFTWARE AUTOMOTRIZ
GUÍA DIDÁCTICA
Quito - Ecuador
AUTOR:
.
Página 2 de 131 .
ÍNDICE GENERAL
Laso IF ....................................................................................................................................................................................74
Laso WHILE ............................................................................................................................................................................75
Laso SELECT CASE ..................................................................................................................................................................75
Laso DO ..................................................................................................................................................................................76
2.3.4. APLICACIÓN DEL LENGUAJE BASIC ....................................................................................................... 77
2.4 ACTIVIDADES RECOMENDADAS ......................................................................................................... 78
2.5 EJERCICIOS RESUELTOS ..................................................................................................................... 78
2.6 CUESTIONARIO ....................................................................................................................................... 80
2.7 AUTOEVALUACIÓN................................................................................................................................. 81
UNIDAD 3. ............................................................................................................................................................ 84
3.1 MIKROBASIC PROGRAMACIÓN PARA MICROCONTROLADORES ............................................... 84
3.1.1. Principios de programación para mikroBASIC. ..................................................................................... 85
3.1.2. Constantes........................................................................................................................................... 85
3.1.3. Variables ............................................................................................................................................. 86
3.1.4. Configuraciones ................................................................................................................................... 87
Code Protection.....................................................................................................................................................................87
Debug.....................................................................................................................................................................................87
Write ......................................................................................................................................................................................87
Low Voltaje Program LVP .....................................................................................................................................................87
BODEN, BOREN ......................................................................................................................................................................88
Power-Up Timer PWRTE .......................................................................................................................................................88
Watch Dog Timer WDT .........................................................................................................................................................88
Configuraciones Varias..........................................................................................................................................................88
Programa principal ................................................................................................................................................................89
Notas del programador .........................................................................................................................................................89
Asignación de terminales E/S ...............................................................................................................................................89
Manipulación de terminales de salida .................................................................................................................................90
Control de tiempo .................................................................................................................................................................90
Subrutinas ..............................................................................................................................................................................90
3.1.4. Procedimientos .................................................................................................................................... 90
3.1.5. Funciones ............................................................................................................................................ 91
3.1.5. Manejo del programa .......................................................................................................................... 91
3.2 ISIS SIMULACIÓN DE PROGRAMACIÓN. ............................................................................................ 96
3.2.1. Entorno de trabajo............................................................................................................................... 96
3.2.2. Librería de componentes ...................................................................................................................... 97
3.2.3. Trazado de circuito. ............................................................................................................................. 99
3.2.4. Carga virtual de programación ............................................................................................................ 99
3.3 ACTIVIDADES RECOMENDADAS ....................................................................................................... 101
3.4 EJERCICIOS RESUELTOS ................................................................................................................... 101
3.5 CUESTIONARIO ..................................................................................................................................... 103
3.5 AUTOEVALUACIÓN............................................................................................................................... 104
UNIDAD 4. .......................................................................................................................................................... 107
4.1 DISEÑO DE CIRCUITOS BASADOS EN EL USO DISPLAYS ........................................................... 107
4.1.1. Manejo de un solo display.................................................................................................................. 107
4.1.2. Manejo de dos display´s ..................................................................................................................... 109
4.1.3. Manejo de display´s con subrutinas. .................................................................................................. 112
4.1.3. Manejo de display con entradas digitales .......................................................................................... 113
4.2 DISEÑO DE CIRCUITO BASADO EN EL USO DE TECLADOS ........................................................ 115
4.2.1. El teclado. .......................................................................................................................................... 115
4.2.2. Conexión del teclado .......................................................................................................................... 116
4.2.3. Funcionamiento teclado .................................................................................................................... 117
4.2.4. Manejo de librería ............................................................................................................................. 117
Página 5 de 131 .
ÍNDICE DE FIGURAS
ÍNDICE DE TABLAS
INTRODUCCIÓN
La asignatura tiene como objetivo fundamental brindar a los y las estudiantes las herramientas
teórico –prácticas básicas necesarias para para el diseño, programación y manejo de circuitos
electrónicos con en el uso de micro controladores programables aplicados en módulos
electrónicos usados en el vehículo, contenido de vital importancia su formación de tecnólogo
especialmente por la importancia de la gestión electrónica aplicada en sistemas automotrices.
funcionamiento del sistema mediante el uso de señales eléctricas, por lo que se les conoce en
ciertas ocasiones como el cerebro que mediante sensores procesa la información que permitirá la
activación de actuadores que administran la operación del componente mecánico, como ejemplo
se puede citar a la central o módulo que controla el comando del acceso de puertas que se conoce
como sistema de bloqueo central, hasta llegar a computadores como el ECM (Electronic Control
Module) que administra las funciones de ajuste de mezcla, encendido y aceleración de los
motores a gasolina.
OBJETIVO
BIBLIOGRAFÍA
BÁSICA
Butterworth - Heinemann; Understanding Automotive Electronics, Edición: 8 (2 de julio de
2017). ISBN-13: 978-0768002119, ISBN-10: 0768002117.
(El texto UNDERSTANDING AUTOMOTIVE ELECTRONICS se utilizó como libro básico por la metodología
que presenta para la guía, ya que incluye conceptos, y principios básicos necesarios para comprender desde la
fundamentación como lo es la lógica binaria, pasando por las definiciones y principios de operación de las unidades
electrónicas de mando, nos presenta una idea clara de la constitución y la arquitectura de los módulos electrónicos y
principalmente nos muestra la interacción de estos procesadores electrónicos aplicados en sistemas automotrices que
es de mucha ayuda para el desarrollo de la asignatura).
COMPLEMENTARIA
(El texto “MICROCHIP TRAINING” presenta los pasos principales que son una guía dada por el fabricante de los
procesadores que es fundamental proceso de aprendizaje por sus diferentes aportes dados por el fabricante para la
configuración y manejo de microcontroladores PIC)
Página 11 de 131 .
Microchip Technology Inc. (2016). Pic16f62XX Data sheet Flash 8 Bit CMOS Microcontrollers.
USA: Microchip.
Microchip Technology Inc. (2016). Pic16f87XX Data sheet Flash 8 Bit CMOS Microcontrollers.
USA: Microchip.
(Los textos “MICROCHIP TECHNOLOGY INC” constituyen manuales “Datasheets” del fabricante de
modelos específicos de microcontroladores PIC16f628A y PIC16f877A a usarse en la asignatura, en donde, se
muestra información necesaria para aplicar los protocolos tanto de comunicación como de configuración
indispensable para la aplicación práctica)
Página 12 de 131 .
Estimado estudiante:
Es necesario contar con una orientación básica para estudiar la asignatura, una metodología
que sea útil para usted, no solo para la aprobación de ésta, sino tener un aprendizaje significativo
que nos ayude a alcanzar los resultados de aprendizaje, así como las competencias genéricas y
específicas propuestas en la guía.
Ingrese a la plataforma virtual del ISTCT para revisar trabajos enviados o enlaces que le
permitirán afianzar sus conocimientos.
En los ejercicios propuestos, realice todo su esfuerzo y al final se aconseja revisar el
solucionario para verificar respuestas. Si es el caso debe tener al alcance un formulario y
buscar ejercicios similares resueltos.
Software Automotriz está orientado a programación aplicada a módulos automotrices por
lo cual se requiere de elementos teórico prácticos, lo que usted ve en la teoría debe
aplicarlo en ejercicios de programación, entre más ejercicios desarrolle, mayor será su
dominio de los temas tratados; trate de entender casos especiales enfocados en la carrera
de mecánica automotriz.
Usted debe desarrollar todas las autoevaluaciones propuestas en su guía didáctica; ya que
ello le ayudará a medir el nivel de conocimiento adquirido en cada tema estudiado,
permitiéndole estar plenamente preparado para rendir sus pruebas parciales y examen
final.
Antes de empezar cada unidad, revise y lea cuidadosamente su guía.
Ingrese a links recomendados para un mejor estudio de la asignatura.
Página 14 de 131 .
VALORES INSTITUCIONALES
Solidaridad, que permite la colaboración mutua entre la comunidad educativa para dar solución
a los problemas o necesidades en beneficio mutuo.
Responsabilidad, que permite concientizar sobre las consecuencias que tiene nuestras acciones
o lo que dejamos de hacer sobre nosotros mismos o sobre los demás.
Excelencia, que nos compromete a cumplir con varios estándares que aseguran la calidad
enfocada a la prestación de los servicios educativos estatales, que lleve a un reconocimiento
nacional y responda a las demandas de la sociedad.
Humanismo, que nos compromete a resaltar al ser humano, reconociendo la individualidad del
estudiante como punto de partida de su educación y potencializando cada una de sus capacidades
para que todas ellas se desarrollen.
Página 15 de 131 .
Integridad: que permite promover al estudiante en todas y cada una de sus dimensiones,
integrando lo cognitivo, actitudes y valores.
Paz, que permite fomentar la confianza en nuestras relaciones con los demás, para reaccionar
con calma, firmeza y serenidad frente a las agresiones, reconociendo la dignidad y los derechos
de las personas.
Calidez:
Garantiza el derecho de las personas a una educación armoniosa, contextualizada; articulada en
todo el proceso educativo, con modalidades que incluyan sistemas de evaluación permanentes,
desarrollando contenidos y metodologías flexibles acorde a las necesidades y
Realidades de los estudiantes.
Página 16 de 131 .
PERFIL DE EGRESO
COMPETENCIAS GENÉRICAS
RESULTADOS DE APRENDIZAJE
Unidad 1.
UNIDADES DE ELEMENTOS DE LA ACTIVIDADES DE RECURSOS
COMPETENCIA COMPETENCIA CONTENIDOS DURACIÓN APRENDIZAJE DIDÁCTICOS EVALUACIÓN
Diseñar circuitos Analizar los tipos de Gestión Electrónica SEMANA Revisión de unidades y Guía didáctica Participación en
básicos tomando en señales eléctricas, y elementos de Texto básico clase
cuenta las condiciones sistema de numeración Señales analógicas y 1,2,3,4 competencia por Manuales Trabajos en el
de operación de las para interpretar digitales alcanzar Plataforma GIA GIA
compuertas lógicas Y oscilogramas 20 horas Pizarrón Pruebas
simplificación de Sistemas de numeración Estudio de la unidad y Proyector parciales
funciones para Implementar circuitos participación activa en Computador Informes de
ensamblar circuitos electrónicos utilizando Algebra de Boole clases. prácticas
bajo normativa ISO compuertas lógicas para el Ensayos
9001 control de mecanismos y Compuertas lógicas Desarrollo de actividades
sistemas automatizados y ejercicios propuestos
Decodificador en la guía de la unidad 1
Diseñar proyectos
electrónicos básicos, Display 7 segmentos Desarrollo de ejercicios
tomando en cuenta las propuestos en el texto
condiciones de operación
Sumadores, restadores básico de la unidad 1
de las compuertas lógicas
para ensamblar circuitos
Revisión de actividades
electrónicos básicos
virtuales en el sistema GIA
de la unidad 1
Ejecución de la auto
evaluación planteadas en
la guía
Realización de trabajos
autónomos planteados en
clases, guía o plataforma
Asistencia a tutorías
Página 21 de 131 .
Unidad 2.
UNIDADES DE ELEMENTOS DE LA ACTIVIDADES DE RECURSOS
COMPETENCIA COMPETENCIA CONTENIDOS DURACIÓN APRENDIZAJE DIDÁCTICOS EVALUACIÓN
Realizar la Determinar los elementos Módulos de control, SEMANA Revisión de unidades y Guía didáctica Participación en
programación de de gestión electrónica para estructura interna elementos de Texto básico clase
microcontroladores módulos de control que 5,6,7,8 competencia por Manuales Trabajos en el
mediante software de incorporan Micro controladores alcanzar Plataforma GIA GIA
diseño electrónico microcontroladores programables, familias 20 horas Pizarrón Pruebas
utilizando los programables para su uso sub familias, modelos, Estudio de la unidad y Proyector parciales
manuales de usuario en sistemas automotrices polarización. participación activa en Computador Informes de
respectivos y acorde a la estructura
clases. prácticas
normativa ISO 9001 global aplicada por
Lenguajes de Ensayos
fabricantes.
programación Desarrollo de actividades
y ejercicios de
Utilizar los diferentes
Lenguaje BASIC programación propuestos
tipos de software de
en la guía de la unidad 2
trasferencia de datos para
Lasos de programación,
programación de
microcontroladores. configuraciones, Desarrollo de ejercicios
instrucciones propuestos en el texto
básico de la unidad 2
Estructura de programas
Revisión de actividades
Construcción de virtuales en el sistema GIA
proyectos de la unidad 2
Realización de trabajos
autónomos planteados en
clases, guía o plataforma
Asistencia a tutorías
Página 22 de 131 .
Unidad 3.
UNIDADES DE ELEMENTOS DE LA ACTIVIDADES DE RECURSOS
COMPETENCIA COMPETENCIA CONTENIDOS DURACIÓN APRENDIZAJE DIDÁCTICOS EVALUACIÓN
Reconocer el manejo Identificar los diferentes Software de SEMANA Revisión de unidades y Guía didáctica Participación en
de los diferentes programas de aplicación programación de elementos de Texto básico clase
programas los utilizados en el proceso de microcontroladores 9,10,11,12,13 competencia por Manuales Trabajos en el
diferentes programas generación de pasos que alcanzar Plataforma GIA GIA
de aplicación deben ejecutar los Entorno de programación 25 horas Pizarrón Pruebas
utilizados en todo el módulos electrónicos Estudio de la unidad y Proyector parciales
proceso de generación aplicados en el campo Configuración del participación activa en Computador Archivos de
de módulos automotriz.
procesador clases. Simuladores programación
electrónicos del
Archivos de
automóvil mediante el Realizar simulaciones las
manual de usuario y Compilación y detección Desarrollo de actividades simulación
cuales nos permitan de errores y ejercicios de
normativa ISO 9001 identificar los diferentes
programación propuestos
modos de simulación,
Software de simulación en la guía de la unidad 3
tomando en cuenta las
características técnicas en
cada sistema del Manejo de librerías. Desarrollo de ejercicios
automóvil. propuestos en el texto
Diseño de circuitos básico de la unidad 3
Ejecución de la auto
evaluación planteadas en
la guía.
Realización de trabajos
autónomos planteados en
clases, guía o plataforma
Asistencia a tutorías
Página 23 de 131 .
Unidad 4.
UNIDADES DE ELEMENTOS DE LA ACTIVIDADES DE RECURSOS
COMPETENCIA COMPETENCIA CONTENIDOS DURACIÓN APRENDIZAJE DIDÁCTICOS EVALUACIÓN
Elaborar circuitos Elaborar circuitos Polarización y SEMANA Revisión de unidades y Guía didáctica Participación en
electrónicos a través de electrónicos para el funcionamiento de elementos de Texto básico clase
software de diseño y control de display’s como displays, LCD’s, teclados 14,15,16,17,18 competencia por Manuales Trabajos en el
simulación para su parte de un circuito alcanzar Plataforma GIA GIA
aplicación en sistemas electrónico de control 25 horas
Estrategias de Pizarrón Pruebas
automotrices utilizando automotriz. programación aplicadas al Estudio de la unidad y Proyector parciales
manuales de usuario y trabajo de displays, LCD’s, participación activa en Computador Archivos de
normativa ISO 900- Experimentar con teclados clases. Simuladores programación
2001 circuitos electrónicos para Archivos de
el control de módulos Circuitos y módulos con Desarrollo de actividades simulación
LCD como parte de un aplicaciones para y ejercicios de
circuito electrónico de
displays, LCD’s, teclados programación propuestos
control automotriz.
en la guía de la unidad 4
Esbozar circuitos
electrónicos mediante el Desarrollo de ejercicios
control de teclados como propuestos en el texto
parte de un circuito básico de la unidad 4
electrónico de control
automotriz. Revisión de actividades
virtuales en el sistema GIA
de la unidad 4
Ejecución de la auto
evaluación planteadas en
la guía.
Realización de trabajos
autónomos planteados en
clases, guía o plataforma
Asistencia a tutorías
Página 24 de 131 .
SISTEMA DE EVALUACIÓN
CUMPLIMIENTO DE ASISTENCIA
ESTATUTO DEL INSTITUTO SUPERIOR TECNOLÓGICO CENTRAL TÉCNICO Artículo 98 ” Los estudiantes que registren una o
varias asignaturas menos al 75% de asistencias, reprobará la o las asignaturas y no podrá presentarse a la evaluación final en ninguna
modalidad”
UNIDAD 1.
1.1 GENERALIDADES
“El desarrollo de la electrónica a principios del siglo XX z Desarrollo de los semiconductores (a partir de los
años 50) Desarrollo de los autómatas programables (a partir de los años 60) Desarrollo de los
microprocesadores (a partir de los años 70) z Actualidad: Gran variedad de autómatas” (Torres, 2015).
Por lo que en el caso se puede resumir que el sistema de gestión electrónica consiste en
incorporar un conjunto de componentes que permite integrar en un dispositivo mecánico una
computadora que comande todas las funciones de control que mediante operaciones lógicas y
matemáticas puede generar valores numéricos que al ser convertidos en señales eléctricas puede
interactuar con los mecanismos para optimizar su funcionamiento.
1.2.2 SENSORES.-
ahora genera un voltaje equivalente a la cantidad de oxígeno que dispone una corriente de
gas.
De esta forma es como en todo sistema de gestión electrónica mediante sensores se consigue la
generación de información en forma de señales eléctricas.
Toda la información eléctrica recopilada ahora debe ser ajustada y convertida en valores
numéricos identificables que pueden ser usados para ejecutar procesos definidos este análisis de
información es el que lo ejecuta la unidad de control. Por lo tanto, se requiere de varios
componentes electrónicos que permitan el manejo de la información el procesamiento de ella y la
ejecución controlada de pasos en los que se involucra cálculo matemático que permitirá generar
nuevamente señales eléctricas que ahora se utilizarán para que del resultado de todas estas
operaciones se ejecuten nuevamente sobre el mecanismo.
Es por esto que muchas veces se le denomina a la unidad de control como el cerebro del
sistema de gestión electrónica, que para poder realizar este proceso de análisis se basa en un
elemento central conoció como microprocesador que es básicamente el centro de procesamiento
del módulo, y que se convertirá en el centro de estudio de la asignatura ya que se encamina en
poder generar circuitos y programaciones encaminadas a establecer la forma de operación de este
elemento central de procesamiento.
1.2.4 ACTUADORES .-
De esta manera es como con el uso actual de máquinas eléctricas o con el uso de
componentes específicos se logra generar la energía necesaria para que un sistema mecánico
pueda responder a la acción de un módulo de control que es de gran precisión.
Es por esto que la gestión electrónica actualmente puede aplicarse a todo sistema
generando de esta forma en un sub – sistema indispensable en cualquier elemento de trabajo que
se utiliza en nuestra vida cotidiana mostrado por ejemplo desde un electrodomésticos, control de
iluminación de casas, el manejo de grandes plantas de fabricación, la impresión de una hoja de
papel, como se comanda un avión, y hasta como transmitimos información con el uso de un
teléfono inteligente no es más que una aplicación de la gestión electrónica.
El uso de sistemas de gestión como se pudo apreciar requiere de varias señales eléctricas
tanto para recibir información como para ejecutar control en las salidas, es decir, en ambos casos
se utiliza las señales como medio para transmitir información por lo tanto con las variaciones de
los parámetros de la señal como voltaje e intensidad de corriente en función del tiempo se puede
incorporar esta información a las señales y en dependencia de como se afecte estos parámetros se
puede mencionar que existen dos formas de generar estas señales a las que se les conoce como
señales analógicas y como señales digitales.
Página 32 de 131 .
Otro ejemplo de señal analógica utilizada es el uso de la variación de voltaje con respecto
al tiempo como es el caso de un sensor inductivo que genera señales sinusoidales.
La señal analógica mostrada puede entregar información variada por ejemplo el paso por
cero voltios de cada una de las ondas determina el centro exacto del dentado de ala rueda de
impulsos lo que indicaría una posición angular, el paso por cero voltios sque se aprecia más
separado de las demás ondas que se produce al aumentar el voltaje desde un valor bajo indica el
Página 33 de 131 .
Así también en la actualidad existen señales analógicas que transmiten información tanto
para señales de entrada como la de sensores o de salida que acciona actuadores que puede usarse
con la variación de intensidad de corriente, como es el caso de los sensores de oxígeno de banda
ancha.
“Son variables eléctricas con dos niveles bien diferenciados que se alternan en el tiempo
transmitiendo información según un código previamente acordado” (Miyara, 2004). Es decir,
una señal digital es la que usa para transmitir la información solo dos valores concretos como
información, de la misma forma que en la señal analógica estos dos valores concretos son
generalmente la variación de voltaje, pero ahora se toma en cuenta solamente dos estados de
trabajo, estos estados se les conoce como 0 y 1 ó también como estados de señal baja y alta o
como apagado y encendido a lo que se le conoce como estados lógicos.
Estos estados generalizan los valores concretos de voltaje para el estado lógico de 0, bajo o
apagado de la señal se considera cuando la señal eléctrica tiene un voltaje desde cero voltios
hasta 0.8 V, en cambio el estado lógico de 1, alto o encendido se considera con valores
superiores a 1V. Por lo tanto, si una señal tiene un voltaje de 0.4 V es considerada como valor
BAJO y si la señal tiene 8V es considerado como valor ALTO.
Por lo tanto, se utiliza esta información concreta en dos estados para verificar la información
transmitida que si se evalúa con respecto al tiempo se puede obtener mayor cantidad de
información de la señal.
El beneficio del uso de señales digitales es que al tener un mayor rango de voltaje para cada
estado la señal puede transmitirse íntegramente sin alteraciones dadas por elementos externos
Página 34 de 131 .
como por ejemplo tensiones inducidas por campos magnéticos que varían el voltaje de una señal
en un conductor, que por ejemplo en una señal analógica puede significar información errónea.
Otro beneficio de la señal digital es que puede transmitirse gran cantidad de información si
se utiliza barridos de tiempo estándar para estos cambios de estado con lo que el encendido y
apagado de la señal puede traducirse en secuencias numéricas basadas en 0 y 1 que al aplicarse
como un sistema numérico puede incorporar gran cantidad de datos a manera de códigos
numéricos.
Los sistemas de numeración facilitan la identificación de valores los cuales tienen la fusión
de facilitar su comprensión de acuerdo al sistema en el que se va ha aplicar, es por esto que los
sistemas se aplican de acuerdo a su uso, es así que el sistema de numeración más aplicado para
uso por humanos es el sistema decimal, mientras que para uso en computadores y procesamiento
de datos es el sistema binario.
Este sistema dispone de una base de 2 por lo tanto sus numerales son 0,1, en donde, se
establece que las posiciones de los numerales están denominadas de derecha a izquierda en
donde se inicia con el primer carácter que es cero “000” a medida que este avanza el siguiente
numeral es uno “1”, en esta misma posición si se suma el primer valor que es uno ese numeral se
encera y se suma el numero 1 al siguiente numeral que al estar en cero su carácter siguiente es
uno “10”, si se continúa incrementando un numeral mínimo ocurre la misma característica al
estar la primera posición en cero y se incrementa un valor cambia este a 1 y como el segundo
permanece en uno este paso genera la numeración “11” si ahora nuevamente se incrementa una
unidad mínima se incrementa la primera posición a la siguiente que ahora se convierte en cero y
se suma 1 numeral al siguiente que al estar en uno se pasa a cero y se debe incrementar uno a la
siguiente posición que al estar en cero ahora se convierte en uno “101”
Posición Posición
Posición Posición
PASOS numeral numeral
numeral numeral
alta minima
→ 0 0 0 0
→ 0 0 0 1
→ 0 0 1 0
→ 0 0 1 1
→ 0 1 0 0
→ 0 1 0 1
→ 0 1 1 0
→ 0 1 1 1
→ 1 0 0 0
→ 1 0 0 1
→ 1 0 1 0
→ 1 0 1 1
Nota: Se explica paso a paso el cambio de numeración en el sistema binario (Autor, 2020)
Es por esto, que mientras más numerales existan y el de la izquierda tiene un valor de 1 es un
valor de numeración más alta por lo que los caracteres a la izquierda son los que mayor
significancia numérica tienen.
Este tipo de numeración es el más utilizado para aplicaciones electrónicas ya que es más
fácil conseguir dos estados de voltaje que pueden traducirse en posiciones numerales y así
conseguir datos numéricos.
Para realizar la conversión del sistema de base 10 a un sistema de base 2 se debe dividir
el valor en decimal para 2 por ejemplo se quiere convertir 16 10 a sistema binario se inicia de la
siguiente forma:
Para realizar la conversión del sistema de base 2 a un sistema de base 10 se debe tomar en
cuenta que cada numeral tiene dos variaciones si lo elevemos a su posición se obtiene el valor en
decimal de este numeral de la siguiente forma 20= 1, 21=2, 22=4, 23= 8, 24= 16, 25= 32
Por lo tanto, si los ubicamos en una tabla, para realizar la conversión es necesario sumar
el valor correspondiente de todos los numerales 1 del código binario
“Una función lógica es una variable binaria que depende de otras variables binarias
relacionadas entre sí por las operaciones lógicas.” (Rodríguez, 2012). “Las Funciones lógicas
Página 38 de 131 .
prueban una condición para evaluarla como verdadera o falsa. “Se conocen como
valores booleanos o cero y uno. Las funciones lógicas también pueden evaluar parámetros como
texto u operaciones aritméticas que no constituyen secuencias verdaderas o falsas” (File Maker
Pro, 2020).
Pero antes de es necesario poder verificar como estos lasos de programación que se basan
en las proposiciones unidas por medio de las operaciones lógicas, es necesario conocer como se
comporta cada uno de estos operadores. Es importante indicar que estas funciones pueden
representarse de manera algebraica, numérica, por tablas de verdad y de forma gráfica.
Figura 8. Representación OR
(Autor, 2020)
Página 40 de 131 .
Figura 9. Símbolo OR
(Rodríguez, 2012)
La función de disyunción exclusiva permite una proposición similar a OR, es decir que
una de las dos activaciones permite la salida, pero si ambas están activadas se excluyen. Por lo
tanto, su salida será cero en esta condición como se puede observar en la tabla siguiente.
Los operadores lógicos pueden ser combinados generándose un resultado final que
depende del valor de cada una de las variables de esta forma se puede generar un procesamiento
simple, para resolver los valores resultantes y saber todas las resultantes se requiere determinar
todas las posibilidades es necesario construir tablas de verdad.
Página 42 de 131 .
Para construir estas la tabla de verdad constituye solamente las columnas encabezadas por
las variables y la última columna encabezada por las proposiciones lógicas planteadas, en donde
se resuelve paso a paso aplicando las funciones lógicas presentadas. (Andrade, 1998)
Por lo tanto simbolizaremos las funciones lógicas AND ^, OR v, NOT ~, XOR XOR,
2n P Q ~Q P^~Q ~(P^~Q)
1 1 1 0 0 1
2 1 0 1 1 0
3 0 1 0 0 1
4 0 0 1 0 1
Nota: Se explica la forma de operación construcción de tabla de verdad
Fueron profundizadas por George Boole (1854), en donde se resume la ley conmutativa
aplicada para AND y OR en donde P^Q es equivalente a Q^P y también PvQ es equivalente a
QvP
Finalmente existen leyes de Morgan que son importantes en el momento de trabajar con
operadores lógicos por ejemplo para distribuir la negación y cambiar la operación por ejemplo
~(P^Q) es equivalente a ~Pv~Q.
Las compuertas lógicas son circuitos electrónicos que respetan el algebra booleana, los
cuales respetan cada característica presentada a demás que generan resultados de salida
basándose en los valores de 0 y 1 por lo que son los elementos base del procesamiento elemental
de datos.
Las compuertas por lo general pueden manejar las dos entradas y una salida, aunque
actualmente en un mismo circuito integrado se incorporan varias compuertas, por lo que se
pueden generar las proposiciones presentadas de manera real y verificar sus condiciones de
salida.
1.6.1. Decodificadores
0100100100 = 584
11111110 = 254
0101010101 = 341
000000000101 = 5
2 = 00000010
22 = 00010110
222 = 1101 1110
2200 = 1000 1010 1110
2225 = 1000 1011 0001
~(P^Q)
2n P Q P^Q ~(P^Q)
1 1 1 1 0
2 1 0 0 1
3 0 1 0 1
4 0 0 0 1
Nota: Se explica la forma de operación construcción de tabla de verdad
Página 47 de 131 .
(~P^Q)v(P^~R)
Tabla 11. Tabla de verdad
~(P^Q)
(~P^Q)v(P^~R)
¬R
Página 48 de 131 .
1.9 CUESTIONARIO
¿Qué es un Sistema de Gestión Electrónica?
¿Cuáles son las etapas que se necesitan para un sistema de Gestión Electrónica?
¿Qué función cumple el sensor?
¿Qué Función cumple un actuador?
¿Cuál es la ventaja de señales digitales y como se transmite información?
¿Cómo se convierte de lenguaje binario a decimal?
¿Qué es una compuerta lógica?
¿Cuál es la aplicación de las compuertas lógicas?
¿Qué es una compuerta AND?
¿Qué es un decodificador de binario a decimal?
¿En donde se pueden aplicar displays de siete segmentos?
Página 51 de 131 .
1.10 AUTOEVALUACIÓN
1. Gestión electrónica:
a. Incorporación de un módulo electrónico a un sistema mecánico
b. Incorporación de un PC – portátil a un mecanismo
c. Incorporación de un Plan de Mejoras Administrativo
d. Incorporación de solenoides a un motor
a. 1, 2, 4
b. 2, 3, 6
c. 1, 3, 5
d. 4, 5, 6
SOLUCIONARIO
1 A
2 C
3 C
4 D
5 D
Página 53 de 131 .
UNIDAD 2.
Uno de los principales elementos de los sistemas de gestión electrónica son los módulos
electrónicos de mando a más conocidos como computadoras, estos elementos son los encargados
de generar el comando de los periféricos de salida que intervendrán sobre el sistema mecánico
permitiendo su funcionamiento, de esta manera se consigue que el sistema mecánico funcione de
una manera más óptima.
Para conseguir este procesamiento la unidad de control como se pudo ver en la unidad 1
está basada en recibir información eléctrica ya sea como señales analógicas o como señales
digitales las cuales determinarán las salidas, es aquí en donde se somete la información a un
análisis que luego de seguir un cierto proceso se generan los resultados de salida.
Al pasar de los años estas compuertas agrupadas en circuitos integrados y para brindar
más funciones de trabajo generaban módulos sumamente grandes, es ahí en donde los avances en
electrónica generaron que estas compuertas basadas en elementos semiconductores como los
cristales N y P se puedan comprimir e ir ubicando una cantidad mayor de ellas en los circuitos
integrados. Hasta el punto que se logra sintetizar todas las compuertas en un solo circuito
conocido como CHIP, el cual prácticamente maneja todas las funciones del proceso de datos, es
Página 54 de 131 .
en este punto que todas las compuertas en un solo circuito se les denomina como procesador al
que por su tamaño tan reducido se le da el nombre de microprocesador.
Este elemento actualmente es el que lleva todas las funciones de manejo de datos, pero el
cual requiere de varias etapas de componentes electrónicos en su placa para poder operar que se
mostrarán a continuación.
1
SENSORES
ACTUADORES
5
3
2 4
9
6
8 7
10
11
Nº DETALLE
1 Fuente de Alimentación
2 Ajuste y control señales entrada
3 Conversor A/D
4 Microcontrolador / Procesador/ UCE
5 Etapa de Potencia
6 Intercomunicación
7 Memorias
8 Oscilador
9 Interfaz
10 Detectores
11 Dispositivo de acceso
Nota: Se indican las etapas del módulo de control
Fuente de alimentación
Etapa de Potencia
Intercomunicación
Memorias
Las memorias se clasifican ade acuerdo al uso de información es así que se tienen:
ROM (Read Only Memory).- Memoria de solo lectura, es la memoria principal utilizada para
incorporar los datos del procesador tales como tablas de calibración, fórmulas, pasos u procesos
de datos, es la que contiene el almacenamiento principal del procesador en donde se incluye
básicamente el programa principal. Esta memoria ha sufrido un proceso de evolución existiendo
algunas variantes de la memoria ROM desde las iniciales las que únicamente se puede almacenar
los datos a partir de su proceso de construcción esto delimitaba mucho el trabajo de los
procesadores a partir de ello aparecen mejoras y varios tipos de memorias ROM las cuales son
las presentadas a continuación.
PROM (Programable Read Only Memory).- Es un tipo de memoria ROM la cuál es fabricada
como un elemento en blanco y se puede incorporar información una sola vez.
EPROM (Erasable Programable Read Only Memory).- Muy similar a la memoria PROM la
memoria EPROM es construida como una memoria en blanco a la cual se le puede cargar
información y adicionalmente puede ser borrada, tanto la memoria PROM como la memoria
EPROM disponían para el grabado de datos un lente en su parte superior por el cuál mediante un
dispositivo óptico se le incorpora los datos conformando los datos de ceros y unos que contienen
la información.
Página 58 de 131 .
EEPROM (Electrically Erasable Programable Read Only Memory).- Este tipo de memoria
permite el grabado y borrado de datos mediante procesos eléctricos, es decir ala incorporación de
datos se la puede realizar mediante la incorporación de información por pulsos eléctricos que
generalmente oscilan entre 5 y 12 voltios en terminales específicos de la memoria con lo cual se
le puede dejar almacenado los datos de cero y uno conformándose la información, con ello se
obtienen un gran beneficio que este ciclo de borrado y grabado puede realizarse repetidamente de
una forma más rápida.
KAM (Keep Alive Memory).- Existen otro tipo de memorias denominadas memorias que
permanecen con vida, este tipo de memoria permite almacenar datos mientras esté alimentada
con voltaje, en el momento que se suprima su tención de alimentación los datos almacenados se
eliminan de la memoria que es lo que la diferencia de las demás memorias anteriores.
Página 59 de 131 .
Oscilador
Adicionalmente esta señal y cada uno de los pulsos generados establecerán los pasos o
procesos que ejecuta el procesador, por lo tanto, el valor de la frecuencia que entrega el oscilador
determina la velocidad de procesamiento de datos. Es así que mientras más alta es la frecuencia
del oscilador más alta es la velocidad de procesamiento, la cual se limita a la tecnología del
procesador.
Es por esta razón que la frecuencia del oscilador que es entregada al procesador se le
conoce como señal de reloj y dependiendo de la tecnología del procesador se establece la
velocidad máxima de oscilación que determinarán la velocidad de procesamiento.
La etapa de oscilación al entregar una frecuencia fija su unidad de medida es el herz, que
se determina de acuerdo al número de ciclos que se entregan en un período o básicamente el
valor inverso del tiempo que se demora en generarse un ciclo.
El uso de una interfaz es utilizado por casi todos los procesadores y módulos actuales, un
ejemplo de esto es el uso en sistemas automotrices del dispositivo conocido como escáner que
permite acceder a los datos de la memoria del módulo ECM, para ello se utiliza un terminal que
maneja el protocolo de comunicación OBD y el visualizador.
Detectores
El Procesador
Al ser el procesador el elemento base de un módulo de este dependen todas las funciones
del módulo de control, es por esto que de acuerdo al trabajo que realice en el sistema de gestión
se deberá utilizar el procesador adecuado, existen varios parámetros que determinan la capacidad
de funcionamiento entre las que se tiene: número de puertos E/S ( que pueden ser de cuatro
terminales hasta 36 en los procesadores más pequeños), velocidad de procesamiento (medida en
FLOPS), máxima velocidad de reloj que puede procesar(Hz) , etc.
TTL (Transistor transistor logic) en la cual sus elementos internos se basan en transistores
bipolares los cuales pueden trabajar con 5v en donde su nivel para valores bajos es de 0 – 0.8V y
un valor alto de más de 2v. Suelen llegar a ser más robustos al tratarse de descargas
electrostáticas, en cierto tipo de aplicaciones su valor es más bajo. (National Instruments , 2020)
Página 63 de 131 .
Con esto a los microprocesadores se les incorporan algunas de las etapas del módulo lo
que les convierte en microcontroladores que básicamente al disponer de una memoria EEPROM
o flash en su interior se les conoce como microprocesadores programables. Actualmente en el
mercado existen varios microcontroladores programables entre los más importantes tenemos a
fabricantes como MICROCHIP, ATMEL y MOTOROLA cada uno de ellos disponen de
características y modelos específicos, debido a que cada fabricante tiene sus propios códigos de
programación, en este estudio se sentra en el manejo de microcontroladores programables del
fabricante Microchip en sus modelos PIC (programable integrated circuit).
Cada una de estas “familias” se subdivide de acuerdo a la capacidad del procesador por lo
cual se los categoriza por la extensión del código binario que puede soportar siendo los de
categoría más baja de 4 bit’s hasta los de 16 bits. Por lo tanto, existen subfamilias en las cuales
dentro de los PIC de la familia F van desde la 10F hasta la 33F, en donde mientras más alto el
valor numérico siguen incrementándose sus prestaciones, cpmo por ejemplo velocidad de
procesamiento y memoria.
Memoria.
EEPROM incorporada de hasta 512 bytes, con ciclos de borrado hasta 1000 veces,
clasificada en dos secciones para programa principal e instrucciones ROM y para
almacenamiento de datos de trabajo conocida como memoria de datos DATA
Buses de Comunicación
Módulos de comunicación integrados serial, paralelo, usb dependiendo del modelo,
incorpora protocolos para programación ICSP, ISC, ILS, SPI.
Etapa de oscilación
Soporta frecuencias de entrada desde 325 KHz hasta 20 MHz siendo la velocidad más
baja asignación LP, la velocidad media de 4MHz asignación XT y alta velocidad hasta 20 MHz
asignación HS.
Página 67 de 131 .
Alimentación
Al ser un dispositivo de tecnología CMOS y familia F dispone de terminales VDD con
alimentación de 5V DC positiva y conexión a tierra de 0V mediante terminal VSS
Reinicio Maestro
Requiere función de reinicio maestro mediante terminal negado MCLR se produce
activación, por lo que se incorpora alimentación positiva para evitar reinicio, se puede instalar
botón de RESET con conexión a tierra, dependiendo del modelo se puede incorporar
alimentación MCLR interna.
Página 68 de 131 .
Otra función importante del controlador 628A es que dispone de dos puertos para señales
de entrada y salida A y B, es así que dispone de 16 terminales de señal que pueden ser usados
como señales digitales, en el puerto A dispone de comparadores análogos para verificar las
señales de entrada. Por lo que se puede configurar de acuerdo a las necesidades.
El microcontrolador más utilizado es del tipo PDIP con lo que los terminales permiten
atravesar las placas para su instalación, dispone de 18 terminales con lo que de acuerdo a sus
especificaciones con los dos terminales de alimentación se pueden utilizar directamente sus 16
Página 69 de 131 .
terminales de entrada y salida de datos, sin necesidad de polarizar externamente ninguna otra
etapa ya que dispone de los módulos internos. Si se requiere acoplar alguna etapa de modo
externo lo único que ocurre es que se deberá asignar esas funciones en los terminales de E/S con
lo que su polarización es sumamente sencilla.
El microcontrolador más utilizado es del tipo PDIP con lo que los terminales permiten
atravesar las placas para su instalación, dispone de 40 terminales, debido a su tamaño se clasifica
Página 70 de 131 .
en dos secciones por lo que requiere de alimentación para cada sección por lo que dispone de dos
terminales VDD y dos terminales VSS que deben ser alimentados.
Por sus características se requiere de una estructura propia para cada tipo de módulo lo
que dificulta la programación ya que es específica para cada unidad. La ventaja es que la
programación al realizarse instrucciones de forma directa sobre el módulo permite que el
programa sea más ligero, es decir que consuma menos recursos y se lo ejecute de una forma más
rápida a diferencia del lenguaje de alto nivel que en ciertas ocasiones no es posible crear ciertas
instrucciones en lenguaje de alto nivel por lo que se recurre a pasos más complejos.
Página 72 de 131 .
Los problemas más críticos de este lenguaje es que la estructura al ser propia de cada
modelo de microprocesador dificulta su aprendizaje y el programador requiere de un proceso
largo para su adaptación.
El lenguaje de alto nivel a diferencia del lenguaje ensamblador tiene la ventaja de que su
estructura de realización es más genérica por lo que se puede incorporar estructuras que se
pueden aplicar para cualquier tipo de necesidad.
“El lenguaje de alto nivel está formado por un conjunto de símbolos y reglas sintácticas y semánticas que
definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se
prueba, se depura, se compila (de ser necesario) y se mantiene el código fuente de un programa informático
se le llama programación” (Enrique, 2020)
Esto quiere decir que los símbolos y reglas se pueden aplicar para varias aplicaciones,
actualmente existen varios lenguajes de programación de alto nivel como BASIC, PASCAL,
TURBO PASCAL, JAVA que pueden usarse para programas informáticos como para programas
aplicados a procesadores, siendo de esta manera mucho más amigable y expandiendo su uso a
cualquier aplicación.
Siempre que se desarrolle un programa éste debe ser adaptado dependiendo su aplicación
es así, por ejemplo si se utiliza el lenguaje BASIC este puede ser usado para realizar programas
de ordenador por lo tanto su estructura se adaptará para poder incorporar imágenes, botones,
pestañas que permitan su funcionamiento por lo que se requerirá del uso de una plataforma
visual de donde se deriva el aplicativo VISUAL BASIC cuyo programa final requiere de un
archivo ejecutable para poderse utilizar sobre un sistema operativo como aplicación.
Es por esto que este lenguaje permite realizar todas las operaciones y pasos que se
requieren y tiene la ventaja de que se puede adaptar para cualquier necesidad. Un parámetro
importante de este lenguaje de programación es que nos permite iniciar una actividad la cual
tiene una estructura en donde se inicia y finaliza la actividad que son los componentes
principales de los lasos de programación utilizados.
Los lasos que se utiliza en este lenguaje provienen de palabras en ingles que guian de
manera sencilla como operativiza el proceso. Entre los laso más importantes tenemos: FOR, IF,
WHILE, SELECT CASE, DO
Laso FOR
ejemplo
for i=0 to 10 step 2
a=a+i
next i
Laso IF
ejemplo
if (x=>1) and (y=0) then
portb.1=1
else
portb=0
Laso WHILE
while ____________
___________________
___________________
wend
Ejemplo:
while 1=1
portb.1=1
portb=0
wend
Por lo tanto, si la condición dada es una afirmación como 1=1 o la palabra verdad TRUE
se genera un bucle cerrado o repetitivo.
La estructura del laso SELECT CASE se inicia con la apertura, se especifica la condición
a cumplirse, la cual puede seleccionarse de un valor numérico, se especifican los valores para
cada condición, en donde se especifican los pasaos a cumplir, es posible incorporar una
condición contraria cuando no se cumple ninguna de las condiciones con la asignación ELSE,
finalmente se cierra el laso.
Ejemplo:
select case y
case 0
portb=0
case 1
portb.1=1
end select
Laso DO
Es así que la estructura requiere la apertura del laso, se establecen los pasos a ejecutar y
se cierra el laso con la condición para detener la ejecución.
do
___________________
___________________
loop until __________
Página 77 de 131 .
Ejemplo:
do
portb=0
loop until x>0
Así también se permite el uso de ciclos repetitivos o bucles cerrados que facilitan la
programación de pasos continuos, así también se ve la importancia del laso FOR que por medio
de funciones matemáticas a las que les conoceremos como algoritmos se permite realizar una
gran cantidad de procesos de manera autónoma que nos permitirá generar matrices de datos muy
útiles para generar activación de salidas que al hacerlas manualmente resultan imposibles como
es el caso del manejo de los pixeles en la codificación de señales de video, que es en donde el
desarrollo de algoritmos han generado la expansión y aplicación de los módulos electrónicos.
Así también, como se puede apreciar estos lasos de programación pueden ser anidados o
combinados entre sí lo que ayuda a la generación de programas que puedan cumplir con los
requerimientos de una unidad de mando.
while true
paso 1
paso 2
paso3
wend
Página 79 de 131 .
3. Escriba una secuencia de pasos que permitan mostrar cinco imágenes diferenciadas de
acuerdo al valor de P, en donde para p=1 se usará el grafico 1 , y que esta acción se repita
continuamente, y cuando el valor de p sea diferente del rango 1 al 5 que aparezca el
gráfico 6.
while 1=1
select case P
case 1
grafico 1
case 2
grafico2
case 3
grafico 3
case 4
grafico 4
case 5
grafico5
case else
grafico 6
end select
wend
while true
if (L=22) then
L=0
else
Página 80 de 131 .
L=L+2
end if
wend
5. Generar una secuencia de pasos basada en lasos de programación en BASIC para que el
led 1 se active (on) cuando un pulsador 1 este presionado por 5 segundos (tiempo).
6. Generar una secuencia de pasos que encienda el led 3 permanentemente hasta que se
libere el pulsador 1
do
led 3 = on
loop until pulsador 1 = off
2.6 CUESTIONARIO
1. ¿Qué función tiene la etapa de oscilación dentro del módulo electrónico?
2. ¿Cuáles son los valores máximos que puede manejar un microprocesador tanto para
señales de entrada como de salida (voltaje e intensidad)?
3. ¿Qué es un protocolo de comunicación?
4. ¿Qué es la comunicación serial?
5. ¿Qué es un protocolo OBD2 y USB?
6. ¿Con que unidad se mide la velocidad de procesamiento?
7. ¿Qué es una memoria EEPROM?
8. ¿Qué terminales deben conectarse en un procesador 16F877A para que este pueda
funcionar?
9. ¿Qué procesador se debe utilizar si se requiere medir señales analógicas?
Página 81 de 131 .
10. ¿Qué voltaje y en que terminal del microcontrolador 16F628A se debe inyectar para que
se realice el reinicio del programa?
11. ¿Qué beneficio se tiene al utilizar una frecuencia de oscilación más alta en un
microcontrolador?
12. ¿Qué es una señal PWM?
13. ¿En que terminales se puede conectar si se requieren activar salidas digitales en un
microcontrolador 16F628A?
14. ¿En qué terminales se pueden conectar potenciómetros para determinar posición en un
microcontrolador 16F877A?
15. ¿Qué es el lenguaje ensamblador?
16. ¿A qué se refieren las siglas DSP, MCU, TTL, CMOS?
17. ¿Qué es una arquitectura Havard?
18. ¿Qué es una memoria KAM?
19. ¿Cuántos terminales de entrada y salita tiene un PIC16F877A?
20. ¿En que terminales se alimenta con 5v y tierra a un microprocesador PIC16F877A?
2.7 AUTOEVALUACIÓN
1. De los elementos mostrados en el diagrama indique “El conversor análogo digital”
De las etapas de una unidad electrónica de mando
5
ACTUADORE
SENSORES
2 3
4
S
9 8 7 6 10
11
Página 82 de 131 .
a. El elemento nª 1
b. El elemento nª 5
c. El elemento nª 2
d. El elemento nª 3
2. Los valores máximos con los que puede trabajar un microcontrolador son:
a. 12v – 5mA
b. 5v – 120 mA
c. 25v – 5mA
d. 5v – 25mA
a. 1 y 2
b. 5 y 10
c. 9 y 6
d. 5 y 2
4. Asociar
1.KAM A Memoria con datos del programa.
2.ROM B. Memoria con datos de funcionamiento
a. 1A, 2B, 3C, 4D 3.RAM C. Memoria con códigos de falla
4.DATA D. Memoria para cálculos
b. 3D, 2A,1C, 4B
c. 1B, 2A,3D,4C
d. 4A,1D, 2C, 3B
a. El elemento nª 1
b. El elemento nª 5
c. El elemento nª 2
d. El elemento nª 3
Página 83 de 131 .
SOLUCIONARIO
1 D
2 D
3 C
4 B
5 B
Página 84 de 131 .
UNIDAD 3.
La presente guía se basa en el uso de la versión V5.02 del año 2006 que en la actualidad
se puede utilizar la versión de prueba la cuál tiene todas las funciones, no tiene caducidad y su
uso es totalmente gratuito.
La principal ventaja del uso del software radica en el uso de los laos de programación
BASIC que se complementa con la configuración de microcontroladores e instrucciones
especificas que permitirán establecer todos los parámetros necesarios para el manejo completo
del controlador, adicionalmente maneja una estructura de programación de manera integral a
diferencia de otros programadores que incorporan instrucciones abreviadas para la lectura y
Página 85 de 131 .
Por lo tanto, cada uno de estos elementos se incorporan en el entorno de trabajo como
elementos independientes, una vez que se dispone de todos los elementos estos deben respetar la
estructura requerida para que el microcontrolador pueda ejecutar los procesos todos estos deben
ser pasos válidos para el procesador, por lo tanto, la obtención del programa final debe integrar
todos los elementos en un solo archivo final, este proceso de denomina compilación o
construcción del proyecto.
3.1.2. Constantes
Como su nombre lo indica las constantes son valores fijos que pueden almacenarse dentro
de la memoria del microcontrolador, los cuales nos sirven principalmente como un valor fijo que
puede ser usado para varias operaciones mediante una etiqueta sin necesidad de incorporar cada
que se requiera el uso de este valor.
La principal utilidad del manejo de constantes es que nos permite ingresar valores en
forma de matriz o tabla que es de vital importancia al manejarse tablas de calibración necesarias
para la toma de decisiones que debe llevar el procesador. Cabe indicar que tanto las constantes
como variables son almacenadas en la memoria del microcontrolador por lo tanto es necesario
Página 86 de 131 .
optimizar su uso, por este motivo siempre se debe utilizar la capacidad de almacenamiento que
se requiere de acuerdo al uso de datos, la capacidad de almacenamiento disponibles en el
compilador se las encuentra como SIMPLE TYPES que se despliegan en la ayuda del programa
y son las siguientes:
Tabla 13.Simple Types
Para ingresar las constantes se utiliza la sentencia const de la siguiente manera, primero
se habilita la función mediante la palabra “const” luego se ubica el nombre que se recomienda no
utilizar palabras en inglés que pueden confundirse con instrucciones, se ubica la palabra “as”
como y se asigna la capacidad de almacenamiento y finalmente luego del signo = se graban los
valores indicando la extensión de la matriz como se muestra a continuación:
const CALIB as byte[4][4] = ((0, 1, 2, 3), (5, 6, 7, 8), (9, 10, 11,12), (13,14, 15, 16))
3.1.3. Variables
3.1.4. Configuraciones
Code Protection
La protección de códigos (code protection) permite bloquear o habilitar la lectura de la
memoria del microcontrolador ya sea protección total (CP_ALL) que bloquea todo acceso a la
memoria ROM y EEPROM o solo a la protección de datos (CPD) asignados como datos en la
memoria EEPROM
Debug
La función de depuración permite habilitar la depuración de programas que agilita el
arranque y reduce la probabilidad de saturación y congelamiento del programa, hay que tener en
cuenta que esta función consume recursos.
Write
La función de escritura habilita la posibilidad de modificar datos en la memoria ROM del
microcontrolador por parte del propio programa en funcionamiento, la función permite habilitar
256 bits, la cuarta parte o la mitad de la memoria para esta función.
BODEN, BOREN
Las funciones de “boden y boren” provienen de las siglas en inglés para caídas de tensión
"Brown-out " (BO), esta función permite proteger al programa y al circuito de las caídas de
tensión siempre y cuando estás no sean menores a los 2.3v al activarse esta función y producirse
la caída de tensión la estrategia BOREN "Brown-out Reset" se produce el reseteo del programa y
se reinicia todo el programa cuando se reestablezca la alimentación correcta, en cambio la
función BODEN “Brown-out Detect” localiza la caída de tención y congela el programa hasta
que se solvente el problema reestableciéndose el programa desde el punto que se quedó.
Configuraciones Varias
Existen adicionalmente configuraciones adicionales que dependen del modelo del
controlador por ejemplo una configuración esta relacionada con la velocidad del cristal que va a
trabajar, por lo tanto, si trabaja con un resonador se habilitara la opción RC, para el uso de menos
de 4MHz la opción LP, la velocidad media de 4Mhz la opción XT y finalmente sobre los 4MHz
se utiliza la bandera HS.
Página 89 de 131 .
Adicionalmente, se puede configurar el uso del reset mediante la opción MCLRE, esta
opción se la debe usar para el caso del microcontrolador PIC16F628A que dispone de
alimentación interna para reinicio maestro.
3.1.4. Instrucciones
Para el manejo específico del microcontrolador el programa permite el manejo de algunas funciones
importantes para el microcontrolador, entre las más importantes está el control de tiempos, la identificación del
programa principal, la asignación de puertos de entrada y salida, la manipulación, lectura de puertos y manejo
de sub-rutinas. Las que tienen una forma específica de escritura que se muestra a continuación:
Programa principal
main:
“programación paso a paso”
end.
Se utiliza el comando tris seguido del puerto, punto, numero de terminal, signo igual y el
valor de cero 0 para salidas digitales y uno 1 para entradas digitales.
trisb.6=0
Se utiliza el comando tris seguido del puerto, signo igual, signo de porcentaje y el valor
binario correspondiente de 0 y 1 por terminal desde el terminal de alta significancia al de más
baja significancia. Se puede ubicar el valor equivalente en numeración decimal.
trisb=%0000011
trisb=3
Página 90 de 131 .
Se utiliza el comando port seguido del puerto, punto, numero de terminal, signo igual y el
valor de cero 0 para salidas de 0v y uno 1 para salidas de 5v.
portb.6=1
Se utiliza el comando port seguido del puerto, signo igual, signo de porcentaje y el valor
binario correspondiente de 0 y 1 por terminal desde el terminal de alta significancia al de más
baja significancia. Se puede ubicar el valor equivalente en numeración decimal.
portb=%0000011
portb=3
Control de tiempo
El manejo de tiempo del microcontrolador se controla mediante retardo de procesos entre un
paso a otro mediante el comando delay, se puede manejar en milisegundos desde 1 hasta 65535.
delay_ms(200)
Subrutinas
El manejo del programa principal puede utilizar sub programas a lo que se conoce como
subrutinas, se debe nombrar el sub programa con la instrucción “gosub______” y una vez
finalizado el programa se redacta la sub rutina nombre: y se retorna con “return.”
gosub valores
valores:
return
3.1.4. Procedimientos
Así también en el programa existen procedimientos ya pre elaborados a los que se les
conoce como librerías que permiten el manejo de elementos estándar como por ejemplo el
manejo de una pantalla de cristal líquido, es aquí donde se establecen comandos específicos para
configurar y para generar la manipulación de dispositivos.
Las principales libreras son para manejo de LCD, manejo de teclados, manejo de
comunicación serial, comunicación CAN, PS2, PWM, entre otras.
3.1.5. Funciones
También se dispone de funciones geométricas entre otras como por ejemplo la función de
seno, coseno, tangente, que pueden ser aplicadas para cualquier operación.
El manejo del programa hasta obtener el archivo final con extensión *hex inicia con la
creación de un proyecto, por lo tanto inicialmente se debe tener en cuenta que función cumple el
módulo en el sistema de gestión, que salidas se van a manipular pantallas, diodos, motores, ect,
así también se debe determinar que señales de información se le asignan al módulo y que tipo de
sensores se va a utilizar.
Página 92 de 131 .
Esta información básica nos permite determinar el modelo de controlador a usar, la señal
de reloj a utilizar, y de esta manera seleccionar las configuraciones iniciales. Con esta
información ahora se puede ver el entorno de trabajo del programa mostrado en la figura a
continuación:
necesario marcar la opción de apagado para evitar conflictos en el programa. Las banderas
indispensables de marcar son las relacionadas con la velocidad de oscilación, el apagado del
perro guardián WDT. Finalizada la asignación se debe proceder a dar click en aceptar y se
procede a escribir el código del programa Con esta acción se despliega el área de trabajo con la
primera línea de instrucción “program inicial” como se observa en la figura a continuación.
Por lo tanto, para generar el programa se inicia indicando la extensión del programa principal luego se
incorpora la instrucción para habilitar los puertos de salida, ya que se ejecutará un proceso cíclico se deberá
utilizar un laso de programación while, a continuación se establece una condición verdadera y se asignan los
pasos a seguir del programa incorporando el encendido de los terminales de salida uno por uno se cierra el laso
de programación, se cierra el programa principal y se tiene la estructura de un programa completo.
program inicial
main:
trisb=0 'configuación de puertos de salida
while true 'condición verdadera
portb.0=1 'encendido de salida a 5v
Página 95 de 131 .
delay_ms(100)
portb.0=0
delay_ms(100)
portb.1=1
delay_ms(100)
portb.1=0
delay_ms(100)
portb.2=1
delay_ms(100)
portb.2=0
delay_ms(100)
portb.3=1
delay_ms(100)
portb.3=0
delay_ms(100)
portb.4=1
delay_ms(100)
portb.4=0
delay_ms(100)
wend
end.
El siguiente paso consiste en condensar las instrucciones y validar la estructura es necesario compilar
la información mediante la construcción del proyecto para lo que se debe con la herramienta buit Project o
mediante la asignación de teclas ctrl+F9. Mostrado en la figura 31.
Finalmente se deber revisar en la barra de mensajes y verificar que se muestre la leyenda “succes
(released build).
Página 96 de 131 .
Hay que tener en cuenta que los elementos que se requiere para realizar la simulación
deban ser animados, tales como relés, diodos led, interruptores y demás elementos que generen
Página 98 de 131 .
una activación mecánica o física deben poseer la palabra ACTIVE en la columna de libreriá, con
ello se asegura la visualización correcta en la simulación.
Una vez cargados los elementos de trabajo se procede a realizar el circuito e incorporar
las conexiones de acuerdo al diseño, es necesario tomar en cuenta que los microcontroladores
para la simulación no disponen de los terminales de alimentación, por lo que principalmente se
debe efectuar todas las conexiones entre sensores y actuadores.
Con las configuraciones realizadas se puede finalizar la simulación del programa desarrollado
presionado “play” en los controles de simulación.
trisb=0
while true
portb=%00000001
delay_ms(200)
portb=%00000010
delay_ms(200)
portb=%00000100
delay_ms(200)
portb=%00001000
delay_ms(200)
portb=%00010000
delay_ms(200)
portb=%00100000
delay_ms(200)
portb=%010000000
delay_ms(200)
portb=%10000000
delay_ms(200)
portb=%00000000
delay_ms(200)
portb=%111111111
wend
end.
program diodo
dim suma as byte
main:
trisb=0
suma = 0
while true
portb.suma=1
delay_ms(200)
portb.suma=0
delay_ms(200)
Página 103 de 131 .
if suma = 7 then
suma = 0
else
suma = suma + 1
end if
wend
end.
3.5 CUESTIONARIO
9. ¿Existe ayuda del programa para identificar una línea de comando específica?
microcontroladores?
11. ¿Qué configuración se debe habilitar para asignar un reset en el controlador 16F628A?
12. ¿Cómo evitar que el sistema de gestión electrónica sufra daños cuando ocurre una caída
de alimentación?
microcontrolador?
Página 104 de 131 .
15. ¿Con qué archivo se carga virtualmente el programa al simulador, y que se necesita
configurar en ISIS?
3.5 AUTOEVALUACIÓN
a. RC
b. LP
c. XT
d. HS
a. CPD
b. WRT
c. WDT
d. PWRTE
a. Fuente
b. Fuente, oscilador.
c. Fuente, oscilador, master clear
d. Fuente, oscilador, master clear, interfaz
a. Fuente
b. Fuente, oscilador.
c. Fuente, oscilador, master clear
d. Fuente, oscilador, master clear, interfaz
8. La polarización del terminal master clear para evitar el reinicio del microcontrolador
es
a. Conexión a tierra
b. Terminal sin conectar
c. Terminal alimentado a 12v
d. Terminal alimentado a 5v
Página 106 de 131 .
a. Fuente
b. Fuente, oscilador.
c. Fuente, oscilador, master clear
d. Solo se debe cargar el programa
a. COMPONENT MODE
b. TERMINALS MODE
c. DEVICE PINS MODE
d. SELECTION MODE
SOLUCIONARIO
1 A
2 C
3 C
4 A
5 B
6 C
7 A
8 D
9 C
10 B
Página 107 de 131 .
UNIDAD 4.
Existen displays de dos tipos de ánodo común y cátodo común, con microcontroladoes se
pueden activar directamente los dispositivos utilizando las salidas digitales, al activar la salida
con un valor de cero lógico se obtiene una salida de 0v o conexión a tierra mientras que con un
valor de uno lógico se obtiene un valor de 5v, por lo tanto, se simplifica la manipulación de cada
uno de los segmentos.
Por tal motivo si se utilizan display´s de tipo ánodo común se requiere de una
alimentación común positiva y se requerirá de un valor de 0L para activar eel segmento del
display, en cambio si se requiere realizar la activación de un display de cátodo común se
requerirá de conexión directa a tierra del display y activación con 1L para slas salidas del
microcontrolador.
Es así que, el programa a desarrollarse debe generar una secuencia de activación de tal
manera que se puedan activar los segmentos del display por lo tanto la activación se la realiza
conectando todas las salidas de un pórtico de tal manera que el terminal cero se conecte al
Página 108 de 131 .
segmento A del display y siguiendo este orden hasta culminar el segmento DP con el terminal 7
del microcontrolador.
Para el manejo de un visualizador es suficiente el uso de una sola cifra ya que se puede
desplegar números del cero al nueve, en el caso del uso de dos visualizadores se pueden
desplegar números desde el o al 99, si se utiliza la misma secuencia de programación se
necesitarían 100 casos de programación en el laso select case, debido a que el programa permite
incorporar funciones matemáticas se puede incorporar fórmulas sencillas para reducir la cantidad
de líneas de programación que permitirá ahorrar el uso de memoria del microcontrolador.
Ya que se puede sumar, restar, multiplicar y dividir con el uso de variables se podrá
incorporar fórmulas que permitan a un número de dos cifras descomponer cada una de ellas, es
necesario tener en cuenta que si el resultado de una operación no es exacto se deberá asignar a la
variable capacidad de almacenamiento de punto flotante (FLOAT)
Página 110 de 131 .
Página 111 de 131 .
Es así que, si se incorpora una variable llamada contador una sumatoria, se puede tener en
una variable las decenas y las unidades, por lo tanto, si se divide para 10 tendremos las decenas
con lo que la fórmula quedaría “decenas = contador / 10”
Para obtener las unidades se requiere el residuo por lo tanto la fórmula necesaria esta
dada por la división para 10 pero se necesita usar la función MOD quedando la fórmula
“unidades = contador MOD 10”
En la programación ahora se debe incorporar las funciones desarrolladas y para cada uno
de los dígitos se necesitará incorporar un laso “select case” que permita visualizar los dos dígitos
con el display, hay que tomar en cuenta que se activará con cada laso select case un puerto
diferente del microcontrolador.
Como se pudo verificar en el manejo de dos displays, se requiere el uso de dos lasos
select case muy similares, con el objeto de optimizar el uso de memoria esta secuencia se puede
reducir con el uso de subrutinas como se muestra en el siguiente programa:
Página 113 de 131 .
En el programa en el lugar de usar dos lasos de este tipo se consigue con el manejo de las
variables selección y resultado incorporar los valores para cada uno de los dígitos del display,
con la instrucción “go sub” se deriva el programa a la subrutina display al finalizar la secuencia
de este sub proceso con la instrucción “return” continua el programa a la siguiente línea, es de
esta forma como se logra reducir la extensión del programa.
Para esto se requiere de la conexión adecuada del pulsador requiere limitar ala intensidad
de la señal por lo que si se utilizan 5v de VDD se requiere de una resistencia de 5.6K o 10 K con
esto se puede conseguir ingresar la señal de entrada para el microcontrolador.
Con la conexión mostrada en la figura 41- A con el pulsador encendido se obtiene una
señal de 0L mientras que con la conexión de la figura 40 – B se obtiene un pulso de 1L, con esta
distribución de una señal digital se puede generar la conexión y el respectivo ingreso de
información al microcontrolador mediante puertos digitales que se asignan mediante la
instrucción TRIS como se muestra en el programa desarrollado.
Página 114 de 131 .
Página 115 de 131 .
4.2.1. El teclado.
Un teclado no es más que el uso de varios pulsadores, el problema que se presenta con
estos dispositivos es que si se requiere de 16 teclas se necesitarían respectivamente 16 terminales
de entrada de información del microcontrolador, por tal motivo para reducir el consumo de
terminales se estructura la conexión eléctrica de cada pulsador de tal forma que permita
optimizar el uso de terminales, por este motivo se genera una conexión a manera de matriz.
Se ubican los pulsadores conformando filas y columnas, todos los interruptores de la fila
tienen una conexión común, así también entre todas las columnas existe un conector común
Página 116 de 131 .
Para poder obtener la lectura de los terminales de entrada y de salida del teclado se
requiere primero por el terminal A enviar un voltaje alto 5v y luego se lee como señal de entrada
los terminales 1 2 3 4, este proceso se lo realiza a continuación por el terminal B, el C y el D si
por ejemplo se detecta señal alta en el terminal tres cuando se activó el terminal C, se sabe que el
pulsador activado es el de la tercera fila, tercera columna.
Con esto se puede identificar cualquier interruptor de los 16 que consta este teclado,
debido a que esta programación resulta estandarizada y repetitiva el software dispone de librerías
que disponen de esta estructura que es de mucha ayuda para el manejo de los teclados.
Para leer el código se tienen dos opciones la primera que lee directamente el pulsador
cuando este es presionado y la segunda opción que lee el pulsador cuando la tecla se suelta. La
primera opción se le activa con la instrucción “keypad_Read” cuyo valor se almacena en una
variable.
El manejo del teclado se lo puede visualizar con el uso del manejo con un display por ,lo
tanto se requiere iniciar el teclado y conectar un display, por lo tanto se realizará el manejo con
el uso del microcontrolador 16f877A, en el que se incorpora un teclado en el puerto C y el
display en el puerto B.
Página 118 de 131 .
Las pantallas LCD (Liquid Cristal Display) Visualizador de cristal líquido es un tipo de
pantalla que con una matriz de puntos puede representar visualmente caracteres alfa numéricos
conformados por un grupo de pixeles que forman bloques a manera de matriz, es así, que existen
visualizadores de 16x2 en donde se tienen 16 columnas por 2 filas.
Existen también pantallas de 2x8, 2x20, 2x40, 4x8, 4x16, 4x20, 4x40, en todas ellas se
incorpora un circuito integrado controlador el cuál recibe una señal de comunicación digital, sin
importar el tamaño del LCD se utilizan siete terminales de comunicación de los cuales 4
terminales son de comunicación y los tres restantes son de control, entre los que tenemos E, RS,
RW.
Como se mencionó la conexión puede ser dada por medio de siete terminales que se la
puede realizar mediante un puerto del controlador, es necesario indicar que el uso de estas
pantallas por manejar comunicación digital es recomendable que la señal de reloj sea estable, por
lo que se requiere de un cristal de cuarzo desde 4 MHz.
De tal forma es necesario convertir todo valor de datos a formato string., esto le lo puede
generar con el conversor disponible en el software, para ello se requiere de uva variable
conformada por una matriz de 3 columnas y una fila, sei se requieren hasta tres caracteres se
podrá generar la variable con el comando dim, si llamamos a esta variable txt, el comando
quedaría: dim txt as string [3].
Es en donde ahora se pueden almacenar los datos en este formato, con lo que podemos
convertir cualquier valor numérico a string con la instrucción Bytetostr(___,___) en donde,
separado con una coma se uvican las dos variables, primero la variable a ser convertida y luego
la variable string en donde se almacenan los datos.
Con esta configuración se puede comandar la pantalla de manera más sencilla ya que los
comandos permiten imprimir los valores de manera directa. Por ejemplo, con el comando
“Lcd_cmd(lcd_cursor_off) se puede eliminar y omitir que el cursor se encuentre titilando.
Con esta herramienta se pueden aplicar varios comandos entre los que tenemos: Mover
cursor a la primera fila Lcd_First_Row, mover el cursor a la segunda fila Lcd_Second_Row,
borrar pantalla Lcd_clear, encender la pantalla Lcd_turn_on, apagar la pantalla Lcd_Turn_Off.
utilizando este comando se puede incluso desplegar los datos de la variable de tipo string de
forma directa.
El manejo de una pantalla LCD con el uso de una librería resulta amigable, por lo tanto,
el programa a desarrollarse consiste en la visualización de caracteres generados con un teclado
con lo que se tienen los principales elementos para mostrar administrando la pantalla de cristal
líquido.
Cos esto se puede generar el bucle cíclico mediante el laso while, el primer paso es
almacenar los valores de lectura del teclado en la variable tecla, luego se procede a realizar la
Página 123 de 131 .
conversión a string y finalmente se imprime en la pantalla los datos de la variable txt que se
encuentra en formato string.
main:
trisb = 0 'establecer todo el portico b como salida
trisc = 0
trisa.0 = 0
trisd = 0
while true
unidades = contador mod 10
decenas = (contador / 10) mod 10
centenas = contador / 100
select case centenas
case 0
portb = not%00111111
Página 126 de 131 .
case 1
portb = not%00000110
case 2
portb = not%01011011
case 3
portb = not%01001111
case 4
portb = not%01100110
case 5
portb = not%01101101
case 6
portb = not%01111101
case 7
portb = not%00000111
case 8
portb = not%01111111
Case 9
portb = not%01101111
End select
case 1
portd = not%00000110
case 2
portd = not%01011011
case 3
portd = not%01001111
case 4
portd = not%01100110
case 5
portd = not%01101101
case 6
portd = not%01111101
case 7
portd = not%00000111
case 8
portd = not%01111111
Case 9
portd = not%01101111
End select
if contador = 1000 then 'para que contador llege al caso 9 y luego se pase
nuevamente a cero
contador = 0
else
contador = contador + 1
end if
delay_ms(100)
wend
end.
Página 128 de 131 .
4.6 CUESTIONARIO
4.7 AUTOEVALUACIÓN
a. trisb.5=1
b. portb.5=
c. trisa.5=1
d. portc=%00100000
d. El uso de condensadores
SOLUCIONARIO
1 B
2 A
3 B
4 D
5 C
6 A
7 A
8 B
9 B
10 B