martes, 25 de noviembre de 2014

Memoria que es eso?

memoria que es eso?
dicen que los caballeros no tienen......

bueno los caballeros quizás no tengan pero si los microcontroladores bueno disculpen por escribir sobre los micro controladores algún día subiré algo que no sea sobre los micro controladores pero bueno es lo que se puede por ahora :( y adentrándonos en el tema les entregare una "breve" reseña

bueno las memorias de semi conductores en si representan los elementos básicos para almacenar datos disponible en todo sistema digital.

las estructuras de las memorias se organizan genéricamente en forma de matriz con cada fila y cada columna siempre representadas en potencias de 2

los bloques de memoria pueden representarse así:
:

al conjunto de terminales que poseen la misma funcionalidad se les denomina bus. así nace el bus de dato a los terminales que definen el dato de la memoria, el bus de dirección a los que especifican alguna dirección en la memoria y el de control los que controlan las operaciones a realizar en la memoria.


  • Bus de direcciones: Permite especificar la dirección donde se desea leer o escribir un dato
  • Bus de datos: En este se aplica el dato a almacenar en caso de escritura o se obtiene en proceso de lectura. en este bus la información puede fluir en ambos sentidos por lo que se le denomina bidireccional porlotanto deberá de disponer de tantas lineas individuales como numero de bits contenga la palabra
  • Bus de control: A través de estos terminales se especifican las operaciones a realizar
Bueno por hoy sera esto mas adelante se hablara de sus caracteristicas y su clasificacion espero les guste y comenten.


martes, 18 de noviembre de 2014

UPS!... no mencione a los micro controladores

antes de seguir comentando y llenando de información sobre los micro controladores primero e de escribir un poco de los micro controladores

primero que es un micro controlador?

un micro controlador es en esencia un circuito electrónico integrado programable por lo tanto esto nos permite ahorrar espacio y dinero por esto son usados en abundancia ya sea en gran parte de los electrodomésticos hogareños, en reproductores de música, automóviles, aviones, barcos, etc...

los microcontroladores usualmente están compuestos por:

  • microprocesador (con el que usualmente se confunde) 
  • memorias volátiles 
  • memorias del tipo no volátiles 
  • entradas análogas y digitales para comunicarse con el exterior. 
  • salidas análogas y digitales para comunicarse con el exterior 
  • recursos especiales tales como: temporizadores, watchdog, brown out, comparadores, conversor análogo/digital, puertos digitales, puertas de comunicación 
  • Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema. 

la disposición de sus elementos varia según su arquitectura ya sea harvard o von neumann ambas poseen ventajas y desventajas pero la mas usada hoy en día es la von neumann (mas tarde hablare sobre estas)


los usos que se le pueden dar a un micro controlador son tan variados que supongo el limite de estos esta bordeando los limites de la imaginación del programador ya que sus usos son variados y el mismo micro controlador se puede usar de muchas formas diferentes todo depende de sus características físicas y de la habilidad del programador.

lunes, 10 de noviembre de 2014

cuentame.... lenguajes de programacion? (microcontrolador)


Lenguajes de comunicación (microcontroladores)


Para comunicarnos con los micro controladores tenemos que usar el lenguaje de tipo binario como consecuencia el trabajo de programar ser arduo y complejo por lo que se usan unos “traductores” o lenguajes de programación que nos permiten acercarnos un poco al micro controlador  para así lograr entendernos un tanto con este. Estos lenguajes de programación los hay de varios tipos y de distintos niveles, en los lenguaje de programación de bajo  nivel tenemos al lenguaje ensamblador como principal representante, este tipo de lenguaje nos permite comunicarnos con la maquina más fácilmente que con código binario pero aun así está más cerca de la maquina que del usuario luego encontramos el lenguaje de nivel medio como lo es el lenguaje C que ya es un lenguaje más amigable con el usuario lo que permite tiempos de programación más cortos que con el ensamblador pero a costa de ciertas desventajas ya sea de lógica y/o compilación y el lenguaje de alto nivel como lo es el lenguaje BASIC este lenguaje ya es un lenguaje más cercano al usuario disminuyendo considerablemente el tiempo de programación pero tiene su desventaja en la compilación, en el manejo de tiempos y en el uso total de la memoria.

Lenguaje bajo nivel ensamblador:

Este tipo de lenguaje es la primera traducción del lenguaje máquina,  permite al usuario tener las facilidades y las herramientas para el control total del microcontrolador, permitiéndonos un manejo del potencial de todo el micro controlador en sí, debido al control que podemos poseer de los tiempos o “clocks” del los stacks de memoria, lo cual nos permite crear códigos más rápidos y compactos que con otros niveles  y por sobre todo programar lo sea posible para el microcontrolador. Pero como no todo puede ser color rosa este lenguaje no siempre es el preferido por los usuarios debido a que por cada micro controlador o maquina existe un lenguaje ensamblador distinto,  es por esto que la programación en una familia de micro controladores no siempre puede ser correctamente interpretado por otra familia o computador.  Además como es un lenguaje más cercano a la maquina esto nos conlleva a que nuestros programas sean arduos, extensos y difíciles de depurar.

Lenguaje mediano nivel C:

Este lenguaje es una evolución de un lenguaje anterior llamado lenguaje B y la historia sobre los inicios de este son variados, una de ellas es que los creadores querían jugar space traveler pero el servidor no podía soportar a los más de 100 usuarios que en ese momento estaban jugando en la empresa por lo que optaron por buscar nuevas vías. A lo largo de los años este lenguaje se ha popularizado más de lo esperado y es muy usado. Por lo tanto, un programa nos puede servir no solo en más de una familia de micro controladores sino que también en otros aparatos  haciendo de este uno de los lenguajes más portables. Este lenguaje dispone de las estructuras de alto nivel y además posee la construcción de lenguaje que permite un control de bajo nivel. Posee solo 32 palabras reservadas de lenguaje por lo que se le considera un lenguaje compacto. A pesar de todo este lenguaje tiene ciertas complicaciones por ser muy abreviado al escribirse,  y el código puede volverse ilegible por lo que su mantenimiento puede ser más difícil y costoso.

Lenguaje alto nivel BASIC:

Lenguaje que según sus siglas significa beginner all-purpose simbolic instruction code (código de instrucción multipropósito para principiantes) , diseñado originalmente para estudiantes y profesores que no estudiaban ciencias debido a que en aquella época todo uso de computadora estaba codificado, por lo que quedaba restringido solo a científicos y matemáticos . Su principio fue ser un lenguaje de fácil comprensión que pueda ser usado por todos, de propósito general, capaz de adquirir nuevas características avanzadas y seguir siendo de fácil uso. Ser interactivo con mensajes de error claros, que no sea necesario tener conocimiento total del hardware y que protegiese al usuario del sistema operativo. Pero a pesar de todo este lenguaje posee una sintaxis un tanto inflexible, no incluye operadores a nivel de bits es decir no podemos generar verdaderos y falsos, no permite sacar el máximo provecho al microcontrolador y no es adecuado para grandes aplicaciones