Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 10

El sistema decimal:

Es el sistema que utilizamos en nuestra sociedad moderna para contar, es un sistema universal
que todos aprendemos desde pequeños y tenemos muy arraigado en nuestro cerebro.

Este sistema se basa en que tenemos 10 símbolos (0,1,2,3,4,5,6,7,8,9), pero nuestro cerebro lo
relaciona con una cantidad numérica, pero no son más que símbolos. Según historia este sistema
fue inventado por los hindúes y refinado por los árabes y posteriormente introducido por
Fibonacci en Europa. Estos 10 símbolos que utilizamos y conocemos como cantidades se les
conoce como los números arábigos ó dígitos (en romano) por que tenemos 10 dedos.

Recordar que en lugar de tener 10 símbolos ó 8 símbolos ó 15 símbolos es solamente una


convención, un acuerdo social al que hemos llegado como civilización. El sistema decimal es un
invento del hombre.

** la electrónica digital es la base de toda la electrónica moderna; para poder usar la electricidad y
poder hacer cálculos matemáticos y transmitir información de forma precisa, primero que todo
necesitamos un código preciso e inconfundible para representar los números y este es el sistema
binario.

Con 8 dígitos podemos formar el número máx. de 256 (0 – 255)

Para poder operar aritméticamente con las señales eléctricas, utilizamos unos componentes
especiales llamados compuertas lógicas, esta idea la replicaron del trabajo de un matemático
llamado George Boole, que había inventado un nuevo sistema de algebra basado en la lógica, que
era muy poco útil y no muy conocido por esos tiempos; pero hoy en día es super famoso por el uso
que le dan en sistemas digitales.

El algebra booleana lo que hace es buscar operar con la lógica de forma algebráica.

*Carry = (me llevo una)

* el mayor número formado por 8 dígitos binarios es 256 (0-8)

HALF ADDER (SUMADOR MEDIO)


Compuerta Xor:

A diferencia de la compuerta OR, esta solo regresa un valor positivo si solo una de las entradas
está en valor positivo. En caso de que ambas se encuentren en estado alto el resultado será un 0.

Compuerta AND:

Es la multiplicación lógica, la salida es 1 si la entrada A y la entrada B están ambas en el binario 1:


de otra manera, la salida es 0. Las compuertas AND pueden tener más de dos entradas y por
definición, la salida es 1 si todas las entradas son 1.
Estas operaciones y puertas lógicas junto con algunas cosas más son la base de todo y en los
procesadores modernos normalmente las podemos encontrar en un paquete muy especial dentro
de nuestro procesador llamado ALU (arithmétic logic unit) ó unidad aritmética lógica.

Esta unidad tiene un montón de circuitos capaces de realizar las diversas operaciones y
normalmente necesita de 2 número de entrada y uno extra que le dice cual es la operación que
tiene que hacer.

El bit es la unidad básica de la información, es un solo dígito binario.

Byte consiste en 8 bits colocados uno junto al otro. El bit del extremo izquierdo tiene la mayor
ponderación, por eso es denominado el bit más significativo. (MSB). El bit del extremo derecho
tiene la menor ponderación, por eso es denominado el bit menos significativo (LSB). El mayor
número que se puede representar con un byte es 255; puesto que los 8 dígitos de un byte se
pueden combinar de 256 maneras diferentes.

Un nibble o un cuarteto representa una mitad de byte. Dependiendo de la mitad de un número en


cuestión (izquierda ó derecha), se les denomina nibbles altos ó bajos.

REGISTRO:

Un registro o una celda de memoria es un circuito electrónico que puede memorizar el estado de
un byte.
Un registro es una localidad de memoria. Los microcontroladores con los que estamos trabajando
tienen 8 bits; esto quiere decir que sus localidades de memoria son de 8 bits y que el valor máximo
que se puede representar con un registro de 8 bits (1 byte) es de 255 bits.

Los microcontroladores tienen 2 tipos de registros:

 Los registros de propósito especial: en estos registros puede leer y escribir información,
pero al hacer esto, afectan a la configuración del dispositivo. Precisamente al momento de
modificar estos registros, lo que estamos haciendo es decirle al dispositivo que ejecute las
rutinas que quiero que haga. En este tipo de registro tenemos el registro Low y Hight
(registro alto y bajo).
 Los registros de propósito general: son localidades de memoria vacía, donde yo como
usuario puedo guardar mis datos.

El cero es un valor que en electrónica existe por ende de 0 – 255 me da un total de 256 valores.

Si yo quiero escribir una palabra de más de 8 bits lo que tengo que hacer es un arreglo de
registros.

No siempre se ocupan los 8 bits del 2do registro, a veces se utilizan


solo los primeros 4 bits; y con esto se va ampliando nuestras
posibilidades de almacenar información con el dispositivo.

Siempre que nos hablen de un registro, nos están hablando de una localidad de memoria de 8 bits.

No siempre tengo que contabilizar en un registro de 0 – 255 en un registro de 8 bits; en muchos


registros yo voy a manipular un bit en particular y en función de su posición es como va a ir
modificando al dispositivo, entonces puedo usarlos como una cuenta binaria (0 -255) ó como bits
independientes. De echo la configuración de estos se hace bit por bit en diferentes registros de
propósito especial.

Un registro es un conjunto o agrupamientos de bits que esta ordenados, puede ser de 8, 16, 32 ó
64.

Un bit es un valor de estado que puede tener el valor de 0 ó 1.

En microcontroladores de la familia 16F se trabaja con registros de 8 bits, que serían los más
básicos y de menor capacidad.
Valor uno
Bit siete

El leguaje assambler se basa en realizar la modificación de estos registros, para ello este lenguaje
maneja instrucciones y la gran mayoría de instrucciones trabajan sobre estos registros. Por
ejemplo:

 Hay instrucciones de tipo 1 f que actúan directamente sobre todo el registro. ( por
ejemplo todo el registro a nivel lógico cero).
 Pueden haber instrucciones del tipo 2 f,b que actúan directamente sobre algún bit en
específico del registro (por ejemplo puede haber una instrucción que me permita poner el
bit 6 ó 7 a nivel lógico cero ó también el bit 4 a uno, etc.
 Pueden haber instrucciones que actúan sobre todo el registro pero mezclado con el
acumulador (registro de trabajo ó W)

PIC CON 18 PINES:

** Los RA = son los puertos correspondientes a A.

** MCLR = sirve para resetear el chip.

** Vss = es tierra o masa.

** los RB = son los puertos correspondientes a B.

** Vdd = alimentación 5V

** OSC1 Y OSC2 =sirve para conectar un cristal, este


cristal le dará la frecuencia de trabajo al circuito. (puede
ser de 4 , 8 , 20 Mhz.

** pines para grabar la programación: RB6, RB7, MCLR,


Vdd y Vss.

carga en paralelo ó sea todo a la vez.


REGISTRO W ó registro de trabajo:

El registro de trabajo o acumulador

REGISTRO SFR:

Cada micro dispone de un número de registros de funciones especiales (SFR), con la función
predeterminada por el fabricante. Sus bits están conectados a los circuitos internos del micro.
Tales como temporizadores, convertidores A/D, osciladores entre otros, lo que significa que
directamente manejan el funcionamiento de estos circuitos, ósea del microcontrolador. Los
registros SFR dirigen los pequeños circuitos dentro del micro; y estos circuitos se conectan por los
pines.

PUERTOS DE ENTRADA Y SALIDA (E/S):

El micro se debe conectar a un dispositivo externo llamado periférico. Cada micro tiene uno o más
registros denominados puertos, conectados a los pines del microcontrolador.

Se denominan puertos porque se le puede cambiar la función de cada pin como mejor le parezca.
UNIDAD DE MEMORIA:

Se utiliza para almacenar los datos. Cada dirección de memoria corresponde a una localidad de
memoria.
MPLAB:

Compila el código convirtiéndolo en “.EX” (lenguaje de máquina con números hexadecimales y


binarios). Luego necesitamos un programa que haga la simulación (proteus).por último
necesitamos un 3er programa que se encarga de coger el “.EX”, llamarlo, cargarlo y enviarlo por
puerto paralelo usb o serial al microcontrolador y así el integrado realice las instrucciones que e
hecho en la programación.
Estructura del banco de memoria del pic 16F84

el mpicrocontrolador tiene 2 bancos de memoria: la pag. 1 y la pag. 0


0 hasta B

Registro de propósito específico,


son registros que no se deben tocar
ni alterar porque de lo contrario el
Banco 0 de memoria
pic no va a funcionar como se debe

Se hace la manipulación de
los puertos. Banco 1 de memoria.

Aquí se hace toda la


programación de entradas
Registros de propósito general. y salidas E/S
Podemos almacenar aquí los
registros variables que vamos
creando ó el programa en sí.

Hay un registro especial que debemos tener en cuenta (STATUS), este registro nos permite
acceder al banco de memoria 0 ó 1, todo registro trae 8 bits ordenados (0-7); en el bit 5 está la
posición RP0 (esta posición nos permite cambiar de banco de memoria).

Códigos básicos de programación:

BSF = COLOCA EN 1 UN BIT.


El pic 16f84 cuenta con 35 instrucciones.

Pasos Código Función


1ero list p=16F84 accede a la lista del MPLAB de los PICS que
existen en la base de datos del MPLAB
para poder configurarlo
2do Include <p16F84A.inc> Cuando coloco un “include” en C ó
assembler, estoy haciendo que se incluya
en la librería de la base de datos del
MPLAB. Las librerías tienen todos los
registros que los PICS manejan. Se acaban
de incluir todas las características del
microcontrolador.
3ero Org 0 Comienza desde la posición cero en el
banco de memoria.
4to (necesito entrar Banco 1 configuro entradas Coloca en uno el bit RP0, si coloco en 1 el
a configurar al Bsf STATUS, Rp0 bit RP0 accedo al banco 1
banco)
5to CLRF PORTB El puerto B ha sido borrado, entonces está
en estado cero, entonces a sido
configurado como salida dentro del banco
uno.
6to Bcf STATUS, Rp0 Accedo al banco 0 ( en este banco voy
a programar todo lo que yo quiero, por
ejemplo prender ó apagar un circuito,
poner en 0 ó 1)
**Zona de código **
BSF PORTB, 0 Coloque en 1 el pin 1 del puerto B
Para puerto B maneja 8 pines
Para puerto A maneja 5 pines.
END
Para compilar presionamos Alt + F10 ,
sale una flechita que indica que esta
correcto.

También podría gustarte