Está en la página 1de 3

INGENIERÍA COMPUTACIONAL

Tema:
“Tarea 8. Comunicación por RS232”

Módulo 5

Nombre: Juan Manuel Landa Santillán

Xalapa, Enríquez a 17 de junio de 2022

Xalapa, Enríquez
Explica cuál es la función de cada línea de código.

rchivo main.c
//#include
//Ejemplo 12
//Crea un nuevo proyecto en MPLAB, copia y pega en él el código que se muestra
//continuación. Añade comentarios a cada línea de //código explicando la
función
//de cada línea y compílalo.

#include <16F877A.h> //le dice al compilador para que microcontrolador está


hecho el código
#device adc=8 //configuracion de adc de 8 bits
#use delay(clock=20000000)//frecuencia del oscilador
#fuses NOWDT,XT, PUT, NOPROTECT, NODEBUG, BROWNOUT, LVP, NOCPD, NOWRT
//deshabilita el watchdog,power up timer activado,
//sin proteccion de memoria de programa, sin modo de depuracion para ICD
//Reset ante variaciones de VCC, uso de bajo voltaje de programación
//Protección de la EEPROM desactivada,memoria del programa protegida contra
escritura

#use delay(clock=4000000) //frecuencia del oscilador


#use standard_io(b) //configurar el puerto B
#use rs232(baud=9600, parity= N, bits=8, xmit=PIN_C6, rcv=PIN_C7)// pines del
puerto serial

void main() //rutina principal


{ //inicia función
port_b_pullups(TRUE); //activa las resistencias de pullups del puerto b
setup_adc_ports(NO_ANALOGS); //desactiva los adc para poder usarlo como
IO digital
setup_adc(ADC_OFF); //desactiva el convertidor analogo/digital
setup_psp(PSP_DISABLED);//psp deshabilitado
setup_spi(FALSE); //deshabilitar el spi (serial peripheral interface)
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1); //configuracion del relog interno
setup_timer_1(T1_DISABLED); //deshabilita el timer 1
setup_timer_2(T2_DISABLED,0,1); //deshabilita el timer 2
setup_comparator(NC_NC_NC_NC); //comparador apagado
setup_vref(FALSE); //no usar voltaje de referencia
do{
delay_ms(1000); //esperamos 10000 ms
printf("HOLA MUNDO"); //imprimir "HOLA MUNDO"
delay_ms(1000); //esperamos 10000 ms
printf("/"); //imprimir "/"
}while(true); //bucle infinito
} //cierre de función
Archivo main.h
#include <16F877A.h>
#device adc=8

#FUSES NOWDT //No Watch Dog Timer


#FUSES HS //High speed Osc (> 4mhz for PCM/PCH) (>10mhz
for PCD)
#FUSES NOPUT //No Power Up Timer
#FUSES NOPROTECT //Code not protected from reading
#FUSES NODEBUG //No Debug mode for ICD
#FUSES NOBROWNOUT //No brownout reset
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or
B5(PIC18) used for I/O
#FUSES NOCPD //No EE protection
#FUSES NOWRT //Program memory not write protected
#FUSES RESERVED //Used to set the reserved FUSE bits

#use delay(clock=20000000)

También podría gustarte