miércoles, 7 de junio de 2017

3.2 Circuitería alternativa para entrada/salida

También conocidos como puertos de E/S, generalmente agrupadas en puertos de 8 bits de longitud, permiten leer datos del exterior o escribir en ellos desde el interior del microcontrolador, el destino habitual es el trabajo con dispositivos simples como relés, LED, o cualquier otra cosa que se le ocurra al programador. Algunos puertos de E/S tienen características especiales que le permiten manejar salidas con determinados requerimientos de corriente, o incorporan mecanismos especiales de interrupción para el procesador. Típicamente cualquier pin de E/S puede ser considerada E/S de propósito general, pero como los microcontroladores no pueden tener infinitos pines, ni siquiera todos los pines que queramos, las E/S de propósito general comparten los pines con otros periféricos. Para usar un pin con cualquiera de las características a él asignadas debemos configurarlo mediante los registros destinados a ellos. Un sistema empotrado suele tener tres tipos diferentes de entrada: Módulos de adquisición de datos (sensores). Entrada de interfaz con el usuario (botones, interruptores, ruedas). Comunicación con sistemas externos (entrada/salida). 
• La comunicación con sistemas externos se realizará mediante alguno de los sistemas de comunicación que implementan los PIC (USART). No vamos a entrar en detalles. 
• Para el resto de entradas vamos a ver los esquemas de conexionado de las entradas más habituales hacia un microcontrolador PIC: 
 Interruptores. 
 Teclados. 
 Potenciómetros. 
 Sensores.

3.1.4 Memoria

Anteriormente habíamos visto que la memoria en los microcontroladores debe estar ubicada dentro del mismo encapsulado, esto es así la mayoría de las veces, porque la idea fundamental es mantener el grueso de los circuitos del sistema dentro de un solo integrado. En los microcontroladores la memoria no es abundante, aquí no encontrará Gigabytes de memoria como en las computadoras personales. Típicamente la memoria de programas no excederá de 16 K-localizaciones de memoria no volátil (flash o eprom) para contener los programas. La memoria RAM está destinada al almacenamiento de información temporal que será utilizada por el procesador para realizar cálculos u otro tipo de operaciones lógicas. En el espacio de direcciones de memoria RAM se ubican además los registros de trabajo del procesador y los de configuración y trabajo de los distintos periféricos del microcontrolador. Es por ello que en la mayoría de los casos, aunque se tenga un espacio de direcciones de un tamaño determinado, la cantidad de memoria RAM de que dispone el programador para almacenar sus datos es menor que la que puede direccionar el procesador. El tipo de memoria utilizada en las memorias RAM de los microcontroladores es SRAM, lo que evita tener que implementar sistemas de refrescamiento como en el caso de las computadoras personales, que utilizan gran cantidad de memoria, típicamente alguna tecnología DRAM. A pesar de que la memoria SRAM es más costosa que la DRAM, es el tipo adecuado para los microcontroladores porque éstos poseen pequeñas cantidades de memoria RAM. 

3.1.3 Ancho de buses

Los tres anchos de bus mas utilizados en microcontroladores son:  Microcontroladores de 8-bits  Microcontroladores de 16-bits  Microcontroladores de 32-bits El ancho de bus es la cantidad de bits en la que se maneja cada instrucción, como vimos en ensamblador esta capacidad tiene que ver directamente con la longitud de palabra de una instrucción del procesador y operaciones que pueden ser soportadas por este. 

3.1.2 Familias

Los microcontroladores más comunes en uso son:



3.1.1 Introducción

Un microcontrolador (abreviado μC, UC o MCU) es un circuito integrado programable, capaz de ejecutar las órdenes grabadas en su memoria. Está compuesto de varios bloques funcionales, los cuales cumplen una tarea específica. Un microcontrolador incluye en su interior las tres principales unidades funcionales de una computadora: unidad central de procesamiento, memoria y periféricos de entrada/salida. 

UNIDAD III MICROCONTROLADORES

3.1 Características generales.
Los microcontroladores son diseñados para reducir el costo económico y el consumo de energía de un sistema en particular. Por eso el tamaño de la unidad central de procesamiento, la cantidad de memoria y los periféricos incluidos dependerán de la aplicación. El control de un electrodoméstico sencillo como una batidora utilizará un procesador muy pequeño (4 u 8 bits) porque sustituirá a un autómata finito. En cambio, un reproductor de música y/o vídeo digital (MP3 o MP4) requerirá de un procesador de 32 bits o de 64 bits y de uno o más códecs de señal digital (audio y/o vídeo). El control de un sistema de frenos ABS (Antilock Brake System) se basa normalmente en un microcontrolador de 16 bits, al igual que el sistema de control electrónico del motor en un automóvil. Los microcontroladores representan la inmensa mayoría de los chips de computadoras vendidos, sobre un 50% son controladores "simples" y el restante corresponde aDSP más especializados. Mientras se pueden tener uno o dos microprocesadores de propósito general en casa (Ud. está usando uno para esto), usted tiene distribuidos seguramente entre los electrodomésticos de su hogar una o dos docenas de microcontroladores. Pueden encontrarse en casi cualquier dispositivo electrónico como automóviles, lavadoras, hornos microondas,teléfonos, etc. Un microcontrolador difiere de una unidad central de procesamiento normal, debido a que es más fácil convertirla en una computadora en funcionamiento, con un mínimo de circuitos integrados externos de apoyo. La idea es que el circuito integrado se coloque en el dispositivo, enganchado a la fuente de energía y de información que necesite, y eso es todo. Un microprocesador tradicional no le permitirá hacer esto, ya que espera que todas estas tareas sean manejadas por otros chips. Hay que agregarle los módulos de entrada y salida (puertos) y la memoria para almacenamiento de información. Los microcontroladores negocian la velocidad y la flexibilidad para facilitar su uso. Debido a que se utiliza bastante sitio en el chip para incluir funcionalidad, como los dispositivos de entrada/salida o la memoria que incluye el microcontrolador, se ha de prescindir de cualquier otra circuitería. 

miércoles, 3 de mayo de 2017

CODIGO DE EL SERVOMOTOR

 Servo miservo;       // creamos un objecto servo para controlar el motor 

    void setup() { 
             miservo.attach(9);  // liga el servo al pin 9 
  }

    void loop() { 
      for(int angulo = 0; angulo < 180; angulo += 1) {   //  un ciclo para mover el servo entre los 0 y los 180 grados  
       miservo.write(angulo);               //  manda al servo la posicion
       delay(15);                        //  espera unos milisegundos para que el servo llegue a su posicion
    }

    for(int angulo = 180; angulo >= 1; angulo -= 1)    {   //  un ciclo para mover el servo entre los 180 y los 0 grados                             
       miservo.write(angulo);                 //  manda al servo la posicion
       delay(15);                          //  espera unos milisegundos para que el servo llegue a su posicion
    }
         }