domingo, 26 de noviembre de 2017

Diagrama de Bloques


Diagrama de Flujo

   

   El diagrama de flujo o diagrama de actividades es la representación gráfica del algoritmo o proceso. Se utiliza en disciplinas como programacióneconomíaprocesos industriales y psicología cognitiva.

     En Lenguaje Unificado de Modelado (UML), es un diagrama de actividades que representa los flujos de trabajo paso a paso de negocio y operacionales de los componentes en un sistema. Un diagrama de actividades muestra el flujo de control general.




Extensiones



Archivo .HEX

     Intel HEX es un formato de archivo para la programación de microcontroladores, EPROMs y otros circuitos integrados. Datando de los años 70, está entre los formatos más viejos con esta finalidad.

    Consiste en un archivo de texto cuyas líneas contienen valores hexadecimales que codifican los datos, y su offset o dirección de memoria. 

Cada línea consta de los siguientes elementos: 
  • Código de inicio: un símbolo ':' 
  • Longitud del registro: dos dígitos hexadecimales con la cantidad de bytes del campo de datos. Usualmente son 16 o 32 bytes. 
  • Dirección: cuatro dígitos hexadecimales en big endian, con la dirección de inicio de los datos. Para direcciones mayores a 0xFFFF se emplean otros tipos de registro. 
  • Tipo de registro: dos dígitos hexadecimales, de 00 a 05, definen el tipo del campo de datos 
  • Datos: duplas de dígitos hexadecimales que contienen los datos 
  • Checksum: dos dígitos hexadecimales con el complemento a dos de la suma de todos los campos anteriores, salvo el ':'. 

Hay seis tipos de registros:

  • 00: Datos, contiene una dirección de 16 bits y los datos correspondientes.
  • 01: Fin de archivo, no contiene datos y debe estar al final del archivo.
  • 02: Dirección Extendida de Segmento, dirección base del segmento, para acceder a direcciones con más de 16 bits. Este valor se desplaza 4 bits a la izquierda (= multiplicar con 16) y se suma a la dirección proporcionada por los registros de datos. Su campo de longitud debe valer 02 y el de dirección 0000.
  • 03: Dirección de Comienzo de Segmento, especifica los valores iniciales de los registros CS:IP, para procesadores 80x86. El campo de dirección es 0000, longitud 04 y los datos contienen dos bytes para el segmento de código y otros dos para el instruction pointer.
  • 04: Dirección Lineal Extendida, permite dirigirse a 32 bits de memoria al contener los 16 bits superiores de la dirección. Su campo de dirección vale 0000 y el de longitud 02.
  • 05: Comienzo de Dirección Lineal. Contiene 4 bytes que se cargan en el registro EIP de los procesadores 80386 y superiores. Su campo de dirección vale 0000 y el de longitud 04.

Archivo .ASM (código fuente)


      Los datos con código en lenguaje ensamblador se pueden guardar en el formato de ASM, y estos datos se pueden acceder con fines de edición mediante el uso de muchas aplicaciones de edición de texto, como el Bloc de notas del software Microsoft y la aplicación Microsoft WordPad entre otros. También hay programas de edición de texto para los sistemas basados ​​en Mac que se pueden usar para abrir y ver el contenido almacenado en estos archivos ASM. Considerado como un lenguaje de bajo nivel de scripting, lenguaje ensamblador se utiliza sobre todo para generar código para los procesos y funcionalidades de hardware, un simple ejemplo de lo cual es la función de un CD / DVD botón de la bandeja de apertura / cierre, y un ejemplo de un conjunto complejo aplicación de lenguaje es un software utilizado para operar las funciones mecánicas de una máquina de impresión electrónica. 

   Estos archivos ASM se pueden inicializar y corrieron el uso de aplicaciones en ensamblador, que pueden incluir .asm , HLA, entre otros. Archivos adjuntos con el .asm extensión también se clasifican como archivos de desarrolladores debido a que los datos almacenados en estos archivos ASM son referenciados por las aplicaciones programadas con estos archivos de código fuente del lenguaje ensamblador.


Archivo .COF (simulación)

   El archivo .COF es uno de los archivos de la categoría archivos de datos. Su nombre completo es AutoDesk data file. El formato de archivo .COF ha sido creado por Autodesk.

     La herramienta MPLAB al momento de compilar el código fuente de forma correcta genera este tipo de archivo necesario para la simulación en proteus, sin embargo en el caso de no ser generado, proteus para simular el .ASM utiliza la extensión .SDI que se puede obtener al cargar el archivo .HEX al micro y realizar las configuraciones pertinentes para que compile el código fuente.

sábado, 25 de noviembre de 2017

Herramienta Proteus




PROTEUS


     Es un software de simulación para circuitos eléctricos tanto análogos como digitales, además de que te permite crear el layout del PCB y visualizarlo en 3D. 


        Se compone de 4 módulos: 

· ISIS: es el encargado de realizar el modelo esquemático del circuito, para ello cuenta con una librería de más de 6,000 dispositivos tanto analógicos como digitales. 

· ARES: se encarga de hacer la placa de circuito impreso (PCB) además de que puede posicionar automáticamente los componentes y hacer las pistas. 

· Prospice: tal vez el componente más importante, pues se encarga de simular el comportamiento del circuito. 

   VSM: los que han trabajado con microcontroladores en Proteus sabrán lo útil que es este módulo. Te permite simular el comportamiento de un microcontrolador de las familias PIC, AVR, y otras, sólo le cargas el archivo HEX y Proteus lo simula, además puede interactuar con diferentes periféricos.



viernes, 17 de noviembre de 2017



Programación de PIC16F877 en Proteus


Programacion Basica en Asembler 


DESCRIPCIÓN DE PINES

La mayoría de los pines del microcontrolador PIC16F887 son multipropósito como se muestra en la figura anterior. Por ejemplo, la asignación RA3/AN3/Vref+/C1IN+ para el quinto pin del microcontrolador indica que éste dispone de las siguientes funciones:

  • RA3 Tercera entrada/salida digital del puerto A
  • AN3 Tercera entrada analógica
  • Vref+ Referencia positiva de voltaje
  • C1IN+ Entrada positiva del comparador C1

La funcionalidad de los pines presentados anteriormente es muy útil puesto que permite un mejor aprovechamiento de los recursos del microcontrolador sin afectar a su funcionamiento. Estas funciones de los pines no se pueden utilizar simultáneamente, sin embargo se pueden cambiar en cualquier instante durante el funcionamiento.
      Las siguientes tablas se refieren al microcontrolador PIC16F887 DIP de 40 pines:




PIC 16F887


      Es un circuito integrado programable (Programmable Integrated Circuited), el cual contiene todos los componentes para poder realizar y controlar una tarea, por lo que se denomina como un microcontrolador.



  El pic contiene memoria de programa, Base de tiempos y circuitos auxiliares. Direccionamiento de la memoria directo o indirecto Unidad aritmética y lógica (ALU) de 8 bits Registro de trabajo W Contador de programa PLC ligado a 8 niveles, Bus de datos, entradas y salidas programables. 

      Algunos de estos explicados con mas detalles en Elementos de Microprocesadores.



CARACTERÍSTICAS BÁSICAS 
  •     Arquitectura RISC
    • El microcontrolador cuenta con solo 35 instrucciones diferentes
    • Todas las instrucciones  son uni-ciclo  excepto por las de ramificación
  •     Frecuencia de operación 0-20 MHz
  •     Oscilador interno de alta precisión
    • Calibrado de fábrica
    • Rango de frecuencia de  8MHz a 31KHz seleccionado por software
  •     Voltaje de la fuente de alimentación de 2.0V a 5.5V
    • Consumo: 220uA (2.0V, 4MHz), 11uA (2.0 V, 32 KHz), 50nA (en modo de espera)
  •      Ahorro de energía en el Modo de reposo
  •      Brown-out Reset (BOR) con opción para controlar por software
  •      35 pines de entrada/salida 
    • Alta corriente de fuente y de drenador para manejo de LED
    • Resistencias pull-up programables individualmente por software
    • Interrupción al cambiar el estado del pin
  •      Memoria ROM de 8K con tecnología FLASH
    • El chip se puede re-programar hasta 100.000 veces
  •     Opción de programación serial en el circuito
    • El chip se puede programar incluso incorporado en el dispositivo destino
  •     256 bytes de memoria EEPROM
    • Los datos se pueden grabar más de 1.000.000 veces
  •     368 bytes de memoria RAM
  •     Convertidor A/D:
    • 14 canales
    • Resolución de 10 bits
  •     3 temporizadores/contadores independientes
  •    Temporizador perro guardián
  •    Módulo comparador analógico con
    • Dos comparadores analógicos
    • Referencia de voltaje fija (0.6V)
    • Referencia de voltaje programable en el chip
  •     Módulo PWM incorporado
  •     Módulo USART mejorado
    • Soporta las comunicaciones seriales RS-485, RS-232 y LIN2.0
    • Auto detección de baudios
  •     Puerto Serie Síncrono Maestro (MSSP)
    •  Soporta los modos SPI e I2C

TEMPERATURA DE TRABAJO DEL PIC

     Tenga en cuenta en donde deberá funcionar el microcontrolador PIC, ya que la temperatura de trabajo les afecta en su normal operación o incluso puede terminar averiado el PIC permanentemente. Observe la referencia del PIC  y obtenga su hoja de datos (Datasheet),  en ella se especifica  el rango de temperaturas en las cuales el microcontrolador  puede trabajar eficientemente y de manera segura.

     La mayoría de ellos opera  en rangos de temperatura entre los -40 grados  a 150 grados Celsius.


INTERRUPCIONES


     Una interrupción es un aviso provocado por un módulo del PIC, por un cambio en el estado de un pin o un recordatorio de que ha pasado un cierto tiempo. Como su nombre indica este aviso interrumpirá la tarea que se esté haciendo en ese momento y pasaremos a ejecutar una rutina de servicio o gestión de la interrupción.


CICLOS DE MAQUINAS


    Se define como el tiempo mínimo necesario para ejecutar una instrucción, el cual está formado por un número determinado de ciclos o períodos de reloj (en la mayoría de los PIC están constituidos por 4 ciclos de reloj).

COMUNICACIÓN PIC-BLUETOOTH

     Es posible trabajar controlar sistemas con pics a través de bluetooth con los módulos HC-05 (incluyendo el pic16f887).

MÓdulo BLUETOOTH HC-05

     Los módulos HC-05 vienen configurados de fábrica como esclavos, con el nombre de dispositivo: HC-05 y la clave: 1234.
     
   El módulo de bluetooth HC-05 es el que ofrece una mejor relación de precio y características, ya que es un módulo Maestro-Esclavo, quiere decir que además de recibir conexiones desde una PC o tablet, también es capaz de generar conexiones hacia otros dispositivos bluetooth. Esto nos permite, por ejemplo, conectar dos módulos de bluetooth y formar una conexión punto a punto para transmitir datos entre dos microcontroladores o dispositivos.


COMUNICACIÓN PIC-WIFI

     También es posible lograr una comunicación con pic a través de wifi. Para este tipo de comunicaciones solo se requiere de los modulos adecuados y que se adapten a las necesidades del desarrollador. Microchip ha lanzado nuevas tarjetas de expansión que interconectan los módulos Wi-Fi de la reciente adquisición Roving Networks en sus sistemas modulares de desarrollo Explorer, que soportan todas las instrucciones del fabricante 8 -, 16 - y 32-bit de microcontroladores PIC. Las tablas permiten la adición de conectividad Wi-Fi a toda la gama de microcontroladores PIC sin el esfuerzo de integrar una pila TCP / IP, mientras que el uso de herramientas de desarrollo estándar.


      El PICtail RN-131 y RN 171-y PICtail Plus utilizan una interfaz serie sencilla de conectar con cualquier microcontrolador PIC.Los módulos de Roving Networks incluyen 802.11b / g, un procesador de banda base, una pila TCP / IP y una serie de funciones de redes. No son necesarios controladores externos para habilitar la conectividad Wi-Fi. Este enfoque reduce significativamente el tiempo de integración al tiempo que ofrece ultra-bajo consumo de corriente de sólo 4 uA en el modo de reposo, aumentando a 35 mA en modo de recepción y 120 mA en modo de transmisión.

EEPROM

  Similar a la memoria de programa, el contenido de memoria EEPROM está permanentemente guardado al apagar la fuente de alimentación. Sin embargo, a diferencia de la ROM, el contenido de la EEPROM se puede cambiar durante el funcionamiento del microcontrolador. Es la razón por la que esta memoria (256 localidades) es perfecta para guardar permanentemente algunos resultados creados y utilizados durante la ejecución del programa.
Elementos de un Microprocesador


  • Registros: Unidades de almacenamiento internas de alta velocidad que guardan resultados intermedios o información de uso especial.
  • Unidad Lógica Aritmética (ULA): Elemento capaz de ejecutar operaciones lógicas y aritméticas sobre datos almacenados en los registros internos.
  • Unidad de control: Es el corazón del CPU, genera todas las señales requeridas para controlar el flujo de información dentro del CPU. Así como entre el CPU, la memoria y los dispositivos de I/O.


BUSES DE CONEXION DE UN MICROPROCESADOR

Buses: Son el medio de comunicación que utilizan los diferentes componentes del procesador para intercambiar información entre sí, eventualmente los buses o una parte de ellos estarán reflejados en los pines del encapsulado del procesador.
     En el caso de los microcontroladores, no es común que los buses estén reflejados en el encapsulado del circuito, ya que estos se destinan básicamente a las E/S de propósito general y periféricos del sistema.

  • Bus de Datos: Es bidireccional y por él viajan los datos que salen o entran al microprocesador, su tamaño define la potencia de procesamiento que tiene un microprocesador.
  • Bus de Direcciones: Es unidireccional de salida. En él se colocan el número de dirección de la localidad de memoria o de I/O que va a ser accedida, para lectura o escritura por el CPU.
  • Bus de Control: Son un grupo de líneas con funciones individuales, que controlan el flujo de información dentro del sistema. Algunas son de entrada y otras de salida.
MEMORIA RAM

     Es la tercera y la más compleja parte de la memoria del microcontrolador. En este caso consiste en dos partes: en registros de propósito general y en los registros de funciones especiales (los SFR). Todos estos registros se dividen en cuatro bancos de memoria. Aunque los dos grupos de registros se ponen a cero al apagar la fuente de alimentación,  además están fabricados de la misma forma y se comportan de la manera similar, sus funciones no tienen muchas cosas en común.

MEMORIA ROM

      Se utiliza para guardar permanente el programa que se está ejecutando. Es la razón por la que es frecuentemente llamada “memoria de programa”. 



Reloj u Oscilador

     El pequeño circuito externo que los microcontroladores necesitan para que se les indique la velocidad de trabajo es conocido como reloj u oscilador. En función del montaje que se realice se puede conseguir más o menos precisión. 













¿Que es un Microprocesador?




     Es un componente electrónico, más específicamente un circuito integrado, es decir, una pieza electrónica que contiene miles o millones de transistores a la vez. El microprocesador es la parte de una computadora diseñada para desarrollar la importante tarea de ejecutar los programas, por esto se afirma que es el cerebro, el motor y el corazón de una maquina o computadora.

     El microprocesador está constituido por registros, una unidad de control, una unidad aritmético lógica (ALU) y dependiendo del tipo de microprocesador también puede contener una unidad de cálculo en coma flotante.

     Es tan importante la función del microprocesador que actualmente es considerado el componente electrónico más influyente en la vida del ser humano, es el más comercializado a nivel mundial y, es el que es más utilizado en gran variedad de artefactos y componentes electrónicos, así como, computadores, teléfonos celulares y tabletas.


     Este componente electrónico es el encargado de procesar y ejecutar las instrucciones codificadas en números binarios, dentro de su proceso de funcionamiento como primer punto lee las instrucciones, luego las decodifica, seguidamente lee los operandos, los ejecuta y muestra los resultados de dicho proceso, todo esto lo realiza en 1 segundo o menos.

jueves, 16 de noviembre de 2017


¿Que es un BIT? 

Básicamente cuando se refieren a un bit es el acrónimo de Binary Digit (Dígito binario), es un dígito del sistema de numeración binaria. mientras que en el sistema de numeración decimal se usan diez dígitos, en el binario se usan solo dos dígitos, el 0 y el 1.

Sin embargo, el bit es la unidad mínima de información empleada en informática, con el, podemos representar valores cuales quiera, basta con asignar uno de esos valores al estado de "apagado" (0 o 0v), y el otro al estado de "encendido" (1 o 5v)


¿Que son los bytes? 

Por lo general, el byte es la unidad de capacidad de almacenamiento estándar. Con esta unidad de medida se mide desde el almacenamiento de datos hasta la capacidad de memoria de un ordenador. Representa un carácter (un número, una letra, un espacio, o cualquier otro signo) y está constituido por 8 bits consecutivos, de modo tal que un byte equivaldría a 8 bits.