Está en la página 1de 5

Introducción a la programación en microcontroladores

PIC18F4550 MikroC PRO for PIC.


raleman.1987@gmail.com

1. ¿Qué es un microcontrolador?

También conocido como microcomputador, se caracteriza por contener como mínimo un microprocesador,
una memoria de programa, memoria de datos y entradas salidas, adicionalmente puede incluir timer,
contadores y convertidores analógicos digitales.
Los microcontroladores operan con una serie de instrucciones que se almacenan en su memoria, estas eran
programadas tradicionalmente en lenguaje ensamblador, pero debido a la complejidad y otras desventajas
en la actualidad se pueden utilizar lenguajes de mas alto nivel como BASIC, Pascal o C. Este es mucho mas
fácil de aprender y ejecutar además facilita el desarrollo de largos y complejos programas.

Un microcontrolador es una herramienta poderosa que permite crear diseños sofisticados manipulando los
datos de entrada-salida, estos son clasificados por el número de bits del procesador (8,16,32 bits).

El microcontrolador consiste de una unidad de procesamiento central (CPU) y una unidad de control (CU),
siendo el CPU el cerebro ya que en ella se realizan las operaciones aritméticas y lógicas. La CU controla las
operaciones internas del microcontrolador también envía señales a otras partes del microcontrolador para
llevar a cabo las instrucciones requeridas.

La memoria es una parte importante y puede ser clasificada en 2 tipos:


Memoria del programa.
Memoria de datos.
La memoria del programa guarda el programa escrito por el programador y usualmente es no volátil.
La memoria de datos almacena los datos temporales usados en un programa y es usualmente volátil.

1.2 Seis Tipos de Memoria ¿?


RAM (Random Access Memory) Memoria de propósito general que almacena los datos del usuario en el
programa, esta es de tipo volátil.

ROM (Read Only Memory) Memoria solamente de lectura esta es no volátil. Esta memoria es programada
durante el proceso de manufactura del microcontrolador y el usuario no puede cambiar este contenido.

PROM (Programmable Read Only Memory) Es un tipo de ROM que puede ser programable en el campo
frecuentemente por el usuario final, una vez programa el contenido no puede ser cambiado.

EPROM (Erasable Programmable Read Only Memory) Similar a la ROM, pero la EPROM puede ser
programada usando un dispositivo programador adecuado. Esta memoria puede ser borrada antes de que
sea reprogramada. Estas versiones k

EEPROM (E

Practica I : Hola mundo.

1
Introducción a la programación en microcontroladores
PIC18F4550 MikroC PRO for PIC.
Este programa permite conocer la interfaz así como también la sintaxis y el formato que nos
permita comenxzar con la programación de nuestro.
/****************************************************//
// Encendido y apagado del LEDs por el puerto D //
// se utiliza la función delay. //
// Microcontrolador: PIC18F4550 //
// Cristal: 20MHz //
// Capacitor: 27 uF //
// Fecha: 24 Noviembre 2019 //
//**************************************************//
void main()
{
ADON_bit=0; // Apagado del convertidor analógico
GIE_bit=0; // Apagado de las interrupciones
TRISD=0x00; // Configuración el puerto como Salida.
PortD=0x00; // Se pone en ceros el puerto D (Se apagan los leds)
//for(;;) //<-- Ciclo For
while(1) // <-- Ciclo While
{
//PortD=0b10011001; //<--Enciende los Led puerto D en Binario.
PortD=0xFF; //<--Enciende los Led puerto D en Hexadecimal.
delay_ms(700);
PortD=0x00;
delay_ms(700);
}
}

Practica II: Push Botón. (Sentencia IF)


2
Introducción a la programación en microcontroladores
PIC18F4550 MikroC PRO for PIC.
Se pondrá en práctica la configuración de las entradas digitales disponibles en el
microcontrolador.
Así como las instrucciones
/****************************************************//
// Encendido y apagado del LEDs por el puerto D //
// Se utiliza el puerto B como entrada //
// Microcontrolador: PIC18F4550 //
// Crystal: 20MHz. //
// Capacitor: 27 uF //
// Fecha: 24 Noviembre 2019 //
//****************************************************//

void main()
{
ADON_bit=0;
// Es necesario declarar los bits como entradas Digitales.
PCFG3_bit=1;
PCFG2_bit=1;
PCFG1_bit=1;
PCFG0_bit=1;

TRISD=0x00; // Configuración el puerto como Salida.


PortD=0x00; // Se pone en ceros el puerto D(Se apagan los leds)

TRISB.F0 =1; //Se declara el pin B0 y B1


TRISB.F1 =1; // Como entrada Digital

//for (;;) //<-- Ciclo For


while(1) // <-- Ciclo While
{
if(PortB.F0==1) {PortD.F1=0;} else {PortD.F1=1;}
if(PortB.F1==0) {PortD.F3=0;} else {PortD.F3=1;}
}
}

3
Introducción a la programación en microcontroladores
PIC18F4550 MikroC PRO for PIC.
Practica III : Display 7 Segmentos.

//****************************************************//
// Se utilizan la salidas digitales para un display //
// de 7 segmentos, tanto en cátodo común como //
// ánodo común. //
// Cátodo común (-) --> On con 1 //
// Ánodo común (+) --> On con 0 //
// Microcontrolador: PIC18F4550 //
// Crystal: 20MHz. //
// Capacitor: 27 uF //
// Fecha: 24 Noviembre 2019 //
//****************************************************//

void main()
{
/* Se declara las variables utilizar, el tipo unsiged char es de 0 a 255
la variable Numero[] se denomina ARRAYs (arreglo), el cual almacena datos en el
mismo bloque de memoria. Para este caso el array se inicializa durante la
declaración del mismo, por lo cual se asigna una secuencia de valores*/

unsigned char Display7,Cuenta=0;


unsigned char Numero[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};

TRISD=0x00; // Configuración el puerto como Salida.


PortD=0x00; // Se pone en ceros el puerto D (Se apagan los leds)
while(1) // <-- Ciclo While
{
Display7 = Numero[Cuenta]; //Es el código del número que se enviara al
// display de 7 Segmentos.
//PortD= Display7; //Número enviado al display (Cátodo común)
PortD = ~Display7; //Número enviado al display (Ánodo común)
Cuenta++; // Incremento de Cuenta+1
if(Cuenta==10){Cuenta=0;} // Cuenta de 0 a 9
Delay_ms(800);

}
}

4
Introducción a la programación en microcontroladores
PIC18F4550 MikroC PRO for PIC.

También podría gustarte