Curso Pic Ccs Compiler01-2014
April 9, 2022 | Author: Anonymous | Category: N/A
Short Description
Download Curso Pic Ccs Compiler01-2014...
Description
CURSO PROGRAMACION DE
MICROCONTROLADORES
PIC LENGUAJE C ING. DANIEL SALGADO
QUITO: 2614586 0999942422
MICROCONTROLADOR ES UN CIRCUITO INTEGRADO EN CUYO INTERIOR POSEE TODA LA ESTRUCTURA DE UN COMPUTADOR. • • •
PROCESADOR MEMORIAS PUERTOS DE ENTRADA Y SALIDA
MICROCONTROLADOR • •
•
•
PIC – MICROCHIP SOPORTAN 100.000 CICLOS DE ESCRITURA Y BORRADO EN SU MEMORIA FLASH. 1’000.000 EN SU MEMORIA EEPROM TIEMPO DE RETENCION DE 100 AÑOS
PIC 16F628A
MEMORIA FLASH 2K 18 PINES DOS PUERTOS A,B COMPARADORES ANALOGOS VELOCIDAD DE OPERACIÓN 20 MHZ OSC INTERNO 4 MHZ COMUNICACIÓN SERIAL CANALES PWM
PIC 16F628A
PIC 16F870
MEMORIA FLASH 2K 28 PINES TRES PUERTOS A,B,C 5 CONVERSORES A/D VELOCIDAD DE OPERACIÓN 20 MHZ CANALES PWM COMUNICACIÓN SERIAL
PIC16F870
PIC16F877A
40 PINES MEMORIA FLASH DE 8K EEPROM 256 BYTES 33 PINES I/O PUERTOS A,B,C,D,E CONVERSOR ANALOGO DIGITAL MULTICANAL DE 10 BIT USART COMUNICACIÓN SERIAL VELOCIDAD DE OPERACIÓN HASTA 20MHZ CON OSCILADOR EXTERNO
PIC 16F877A
PIC12F675
8 PINES MEMORIA FLASH 1K MEMORIA EEPROM 128 BYTES 1 PUERTO GPIO 6 PINES I/O 4 CONVERSORES A/D 10 BITS OSCILADOR INTERNO DE 4 MHZ VELOCIDAD DE OPERACIÓN HASTA 20 MHZ
12F675
CONSIDERACIONES BASICAS
1.- RECUERDE QUE EL PIC ES DE TECNOLOGIA CMOS, QUIERE DECIR QUE CONSUME MUY POCA CORRIENTE PERO AL A VEZ ES SUCEPTIBLE A DAÑOS POR ESTATICA. 2.-PROCURAR UTILIZAR UN REGULADOR DE 5V 7805CV Y NO UN ADAPTADOR DE PARED 3.- NO SOBREPASE LOS NIVELES DE CORRIENTE MAXIMA DE 25mA POR CADA PIN DEL MICRO YA SEA PARA SALIDA O PARA ENTRADA.
COMPILADOR C
Es una poderosa herramienta de desarrollo para microcontroladores PIC. Proporciona la solución más fácil al cliente para las aplicaciones en vías de desarrollo para sistemas embebidos. Además suministra los controladores (drivers) para diversos dispositivos como LCD, convertidores AD, RTC, EEPROM RS232, I2C, USB, etc.
ESTRUCTURA DE UN PROGRAMA EN C
DIRECTIVAS DE PREPROCESADO: Controlan la conversión del programa a código máquina por parte del compilador. PROGRAMAS O FUNCIONES: Conjunto de instrucciones. Puede haber uno o varios; en cualquier caso siempre debe haber uno definido como principal mediante la inclusión de la llamada main().
ESTRUCTURA DE UN PROGRAMA EN C
INSTRUCCIONES: Indican como se debe comportar el PIC en todo momento. COMENTARIOS: Permiten describir lo que significa cada sentencia del programa.
TIPOS DE DATOS TIPO
TAMAÑO
RANGO
DESCRIPCION
Int1 Short
1 bit
0ó1
Entero de 1 bit
Int Int8
8 bits
0 a 255
Entero
Int16 Long
16 bits
0 a 65535
Entero de 16 bits
Int32
32 bits
0 a 4294967295
Entero de 32 bits
Float
32 bits
+-1175x1038 a 3402x10-38
Punto Flotante
Char
8 bit
0 a 255
Caracter
Void
-
-
Sin valor
Signed Int8
8 bits
-128 a +128
Entero con signo
Signed Int16
16 bits
-32768 a +32768
Entero largo con signo
Signed Int32
32 bits
-231 a +(231-1)
Entero 32 bit con signo
VARIABLES
Las variables se pueden expresar en decimal, octal, hexadecimal o en binario: 127:Decimal 0127: Octal 0x127: Hexadecimal 0b01111111: Binario ´a’ : Caracter
VARIABLES
TIPO NOMBRE_VARIABLE[=VALOR INICIAL] EJEMPLO: Float tdato=200.2; Int8 val=120; Las variables en un programa pueden ser de tipo LOCAL o GLOBAL. Las variables locales sólo se utilizan en la función donde se encuentran declaradas; las variables globales se pueden utilizar en todas las funciones del programa.
FUNCIONES
Las funciones son bloques de sentencias; todas las sentencias se deben enmarcar dentro de las funciones. Al igual que las variables, las funciones deben de iniciarse antes de utilizarse. Una función puede ser invocada desde una sentencia de otra función. Una función puede devolver un valor a la sentencia que la ha llamado.
FUNCIONES
El tipo de dato se indica en la definición de la función; en el caso de no indicarse nada se entiende que es un int8 y en el caso de no devolver un valor se debe especificar el valor VOID. Tipo_Dato Nombre_Funcióntipo (param1,param2,…) { sentencias }
Declaraciones de control
If - else While Do-While For Switch-Case Return Break, Continue y goto
Un led (de la sigla inglesa LED: Light-Emitting Diode: ‘diodo emisor de luz’, también ‘diodo luminoso’) .
PROYECTO1 PARPADEO DE UN LED
PROYECTO1 PARPADEO DE UN LED CODIGO PIC C #include #fuses HS,NOWDT #use delay (clock=8000000) #use fast_io(B)// inicializa el puerto B void main(){ set_tris_B(0);//declaro puerto B como salida Output_B(0);//encero el puerto while(1){ //ciclo de repeticion infita output_high(pin_b0); delay_ms(1000); output_low(pin_b0); delay_ms(1000); } }
PROYECTO 2 SEMAFORO
PROYECTO 2 SEMAFORO CODIGO PIC C
#include #fuses HS,NOWDT #use delay (clock=8000000) #use fast_io(B)// inicializa el puerto B void main(){ set_tris_B(0);//declaro puerto B como salida Output_B(0);//encero el puerto while(1){ //ciclo de repeticion infita output_high(pin_b2); delay_ms(10000); output_low(pin_b2); output_high(pin_b1); delay_ms(4000); output_low(pin_b1); output_high(pin_b0); delay_ms(10000); output_low(pin_b0); delay_ms(10000); } }
PROYECTO 3 SEMAFORO PEATONAL
PROYECTO 3 SEMAFORO PEATONAL CODIGO PIC C
#include #fuses HS,NOWDT #use delay (clock=8000000) #use fast_io(B)// inicializa el puerto B #use fast_io(C) void main(){ set_tris_B(0);//declaro puerto B como salida Output_B(0);//encero el puerto set_tris_C(0);//declaro puerto B como salida Output_C(0);//encero el puerto while(1){ //ciclo de repeticion infita output_B(0b00000100); output_C(0b00000001); delay_ms(10000); output_B(0b00000010); delay_ms(5000); output_B(0b00000001); output_C(0b00000010); delay_ms(10000); } }
PULSADORES
Un botón o pulsador es un dispositivo utilizado para activar alguna función. Los botones son de diversa forma y tamaño y se encuentran en todo tipo de dispositivos, aunque principalmente en aparatos eléctricos o electrónicos.
PROYECTO 4 LECTURA DE UN PULSADOR
PROYECTO 4 LECTURA DE UN PULSADOR CODIGO PIC C
#include #fuses HS,NOWDT #use delay (clock=8000000) #use fast_io(B) #use fast_io(D) void main(){ set_tris_D(255); set_tris_B(0); Output_B(0); while(1){ if (input(PIN_D0)==0){ output_high(Pin_B0); } else{ output_low(Pin_B0); }}}
PROYECTO 5
LECTURA Y ESCRITURA EN PUERTOS
PROYECTO 5
LECTURA Y ESCRITURA EN PUERTOS CODIGO PIC C #include #fuses HS,NOWDT #use delay (clock=8000000) #use fast_io(B) #use fast_io(D) void main(){ byte numero=0; set_tris_D(255); set_tris_B(0); Output_B(0); while(1){ numero=input_D(); output_B(numero); } }
DISPLAY 7 SEGMENTOS ANODO COMUN
El display de 7 segmentos o visualizador de 7 segmentos es un componente que se utiliza para la representación de números en muchos dispositivos electrónicos debido en gran medida a su simplicidad
PROYECTO 6
CONTADOR CICLICO CON DISP 7SEG
DECODIFICADOR 74LS47 EL C.I. 74LS47 ES UN DECODIFICADOR DE BINARIO A 7SEGMENTOS ANODO COMUN. SE INGRESA UN NUMERO BINARIO DE 4 BITS POR LAS ENTRADAS A,B,C,D Y ESTE ENCIENDE LOS LEDS NECESARIOS PARA VISUALIZAR CORRECTAMENTE EL NUMERO EN EL DISPLAY.
PROYECTO 7
CONTADOR 0-9 CON PULSO Y 7447
PROYECTO 7
CONTADOR 0-9 CON PULSO Y 7447 CODIGO PIC C void main(){ byte numero=0; set_tris_d(0);//declaro puerto D como SALIDA set_tris_b(255);//declaro puerto B como entrada Output_d(0);//encero el puerto delay_ms(500); while(1){ if (input(PIN_b0)==0){ numero++; if (numero==10){ numero=0; } delay_ms(200); } output_d(numero); delay_ms(500); } }
TRANSISTORES LOS TRANSISTORES PUEDEN FUNCIONAR COMO AMPLIFICADORES O EN CORTE Y SATURACION SEGÚN LA CONFIGURACION QUE SE DISEÑE EL CIRCUITO.
PNP
NPN
PROYECTO 8
CONTADOR 0-99 MULTIPLEXADO
MOTOR DC EL MOTOR DE CORRIENTE CONTINUA CONVIERTE LA ENERGIA ELECTRICA EN MECANICA, PRODUCIENDO UN MOVIENTO. SE PUEDE CONTROLAR TANTO LA VELOCIDAD COMO EL SENTIDO DEL GIRO.
PWM LA MODULACION DE ANCHO DE PULSO PWM, ES UNA TECNICA EN LA QUE SE MODIFICA EL CICLO DE TRABAJO DE UNA SEÑAL PERIODICA PARA CONTROLAR LA CANTIDAD DE ENERGIA QUE SE ENVIA A UNA CARGA.
PROYECTO 9
CONTROL DE VELOCIDAD MOTOR DC
PUENTE H EL CIRCUITO PUENTE H PERMITE LA POLARIZACION DE UN MOTOR DE TALMANERA QUE PUEDA GIRAR TANTO EN SENTIDO HORARIO Y COMO EN SENTIDO ANTIHORARIO
PROYECTO 10
CONTROL DE SENTIDO DE GIRO MOTOR DC
MOTOR PASO A PASO El motor paso a paso está concebido de tal manera que gira un determinado ángulo proporcional a la "codificación" de tensiones aplicadas a sus entradas . La posibilidad de controlar en todo momento esta codificación permite realizar desplazamientos angulares lo suficientemente precisos, dependiendo el ángulo de paso (o resolución angular) del tipo de motor (puede ser tan pequeño como 1,80º hasta unos 15º).
PROYECTO 11
CONTROL MOTOR PASO A PASO UNIPOLAR
SERVOMOTOR 1500 us
2500 us
500 us
HITEC
500us 20msus
PROYECTO 12
CONTROL SERVO MOTOR
LCD 2X16 UN DISPLAY DE CRISTAL LIQUIDO, ES UN DISPOSITIVO QUE NOS PERMITE MOSTRAR INFORMACION ALFANUMERICA O CARACTERS DISEÑADOS.
PROYECTO 13
MANEJO DE LCD 2X16
PROYECTO 13
MANEJO DE LCD 2X16 CODIGO PIC C #include #fuses HS,NOWDT #use delay (clock=8000000) #include //trabaja por default en el puerto D void main(){ lcd_init(); //inicializa LCD while(1) { lcd_gotoxy(4,1);//COLUMNA FILA printf(lcd_putc,"MEGATRONICA"); //texto a visualizar delay_MS(500); lcd_gotoxy(2,2); printf(lcd_putc,"uCONTROLADORES"); delay_MS(500); } }
KEYPAD EL TECLADO 4X4 O 4X3 ES UNA MATRIZ DE PULSADORES EL CUAL NOS PERMITE CONTROLAR VARIOS PULSADORES CON POCOS PINES.
PROYECTO 14
LECTURA DE TECLADO 4X3 CON PICC
PROYECTO 14
LECTURA DE TECLADO 3X4 CON PIC #include #FUSES NOWDT,hs,noprotect,nolvp #use delay(clock=8000000) #include #include void main() { char tecla; PORT_B_PULLUPS(true);//habilito resistencias pullups en el micro lcd_init(); kbd_init();//inicializo el teclado while(true){ tecla=kbd_getc();//leo la tecla presionada if(tecla!=0){ //si el valor de tecla es distinto de 0 lcd_gotoxy(4,1); printf(lcd_putc,"tecla= %c",tecla);//%c escribo caracter } } }
CONVERSOR AD EL CONVERSOR ANALOGO DIGITAL PERMITE EL MUESTREO DE SEÑALES ANALOGICAS Y EL PROCESAMIENTO DIGITAL EN EL MICROCONTROLADOR. LOS MICROCONTROLADORES PIC TIENEN CONVERSORES AD MULTICANALES DE 10 BITS. SENSORES ANALOGOS PIC
EL REGISTRO ADCON1 CONFIGURA EL PUERTO A COMO A/D
SEÑALES ANALOGAS
0V A 5V
0 A 1024
PROYECTO 15
CONVERSOR ANALOGO DIGITAL
PROYECTO 15
CONVERSOR ANALOGO DIGITAL CODIGO PICC #include #device adc=10 //configuro conversor ad a 10 bits #fuses HS,NOWDT #use delay (clock=8000000) #include //trbaja por default en el puerto D
void main(){ int16 dato=0; setup_adc_ports(AN0); setup_adc(adc_clock_internal); lcd_init(); while(1){ dato=read_adc(); printf(lcd_putc,"\f ADC= %4lu",dato); 4espacios,lu entero largo sin signo delay_ms(300); } }
//\flimpia pantalla,%4
LM35 ES UN SENSOR DE TEMPERATURA ANALOGICO, VARIA 10mV POR CADA GRADO CENTIGRADO ES DECIR SI SE ENCUENTRA A TEMPERATURA AMBIENTE 20 GRADOS EN SU PIN DE SALIDA SE OBTIENE 200mV
PROYECTO 16
TERMOMETRO DIGITAL CON LM35
PROYECTO 16
TERMOMETRO DIGITAL CON LM35 CODIGO PICC #include #device adc=10 #fuses HS,NOWDT #use delay (clock=8000000) #include //trbaja por default en el puerto D void main(){ int16 dato=0; float TEMP=0; setup_adc_ports(AN0); setup_adc(adc_clock_internal); lcd_init(); while(1){ dato=read_adc(); TEMP=dato/2.05; printf(lcd_putc,"\f ADC= %4lu",dato); //\flimpia pantalla,%4 4espacios,lu entero largo sin signo printf(lcd_putc,"\n TEMP= %1.2f",TEMP); //\n salto a la segundafila,1.2 1entero 2 decimales,f flotante delay_ms(300); } }
SENSOR DE DISTANCIA El sensor GP2Y0A21 es un sensor infrarrojo análogo capaz de medir la distancia dentro de un rango de 10cm a 80cm, se utiliza comúnmente en robots para la detección de objetos y obstáculos.
SENSOR DE DISTANCIA
PROYECTO 17
SENSOR DE DISTANCIAS CON GP2Y0A21
PROYECTO 17
SENSOR DE DISTANCIAS CON GP2Y0A21 CODIGO PICC #include #device adc=10 //configuro conversor ad a 10 bits #fuses HS,NOWDT #use delay (clock=4000000) #include //trbaja por default en el puerto D void main(){ int16 valorleido=0; float voltios,dist; setup_adc_ports(AN0); setup_adc(adc_clock_internal); lcd_init(); while(1){ valorleido=read_adc(); voltios=5*valorleido/1024.0; if (voltios=0.4 && voltios=0.5 && voltios=0.75 && voltios=1 && voltios=1.25 && voltios=1.75 && voltios=2.25 && voltios=3) dist=99; dist=dist+2; printf(lcd_putc,"\fDIST= %1.2f",dist); printf(lcd_putc,"\nVOLT= %1.2f",voltios); delay_ms(500); } }
COMUNICACIÓN SERIAL PERMITE EL ENVIO RECEPCION DE DATOS ENTRE DISPOSITIVOS QUE SOPORTAN ESTE TIPO DE COMUNICACIÓN.
PROYECTO 18
ENVIO DE DATOS SERIAL PIC - PC
PROYECTO 18
ENVIO DE DATOS SERIAL PIC - PC Código PICC #include #fuses hs,NOWDT,NOPROTECT,PUT,NOBROWNOUT,NOLVP #use delay(clock=8000000) #use rs232(baud=9600, parity=N, xmit=PIN_C6, rcv=PIN_C7, bits=8) //baud=velocidad de transmicion,parity=np paridad,xmit=pintransmisor,rcv=pinreceptor,bits=formato de 8 bits //ej si transmito la letra A mayuscula :bit de inicio1/01000001/0bit de parada #byte PORTD = 0x08 int num; void main() { set_tris_D(0b11111111); printf("INICIANDO RS232 ");//ENVIO TEXTO while(1) { num=input_d(); printf("%u ",num); //%u entero delay_ms(1000); } }
PROYECTO 19
RECEPCION DE DATOS SERIAL PC - PIC
PROYECTO 19
RECEPCION DE DATOS SERIAL PC - PIC CODIGO PICC
#include #fuses hs,NOWDT,NOPROTECT,PUT,NOBROWNOUT,NOLVP #use delay(clock=8000000) #use rs232(baud=9600, parity=N, xmit=PIN_C6, rcv=PIN_C7, bits=8) #include void main(){ char tecla; lcd_init(); lcd_gotoxy(1,1); printf(lcd_putc,"RXD:"); while(1){ tecla=getchar(); printf(lcd_putc,"%c",tecla); Delay_ms(100); }
COMUNICACIÓN INALAMBRICA POR BLUETOOTH Bluetooth es una especificación industrial para Redes Inalámbricas de Área Personal (WPAN) que posibilita la transmisión de voz y datos entre diferentes dispositivos mediante un enlace por radiofrecuencia en la banda ISM de los 2,4 GHz. Los principales objetivos que se pretenden conseguir con esta norma son: Facilitar las comunicaciones entre equipos móviles y fijos. Eliminar los cables y conectores entre éstos. Ofrecer la posibilidad de crear pequeñas redes inalámbricas y facilitar la sincronización de datos entre equipos personales.
COMUNICACIÓN INALAMBRICA POR BLUETOOTH 1. REALIZAR COMUNICACIÓN SERIAL PARA ENVIO DE DATOS CONFIGURACION 8,N,1,9600 2. EMPAREJAR DISPOSITIVOS CLAVE 1234 3. HABILITAR SERVICIO DE PUERTO SERIE, IDENTIFICAR EN CUAL PUERTO COM SE HA CONECTADO EL MODULO BLUETOOTH
PROYECTO 20
ENVIO Y RECEPCION DE DATOS INALAMBRICOS POR BLUETOOTH
PROYECTO 20
ENVIO Y RECEPCION DE DATOS INALAMBRICOS POR BLUETOOTH
CODIGO PICC #include #fuses hs,NOWDT,NOPROTECT,PUT,NOBROWNOUT,NOLVP #use delay(clock=8000000) #use rs232(baud=9600, parity=N, xmit=PIN_C6, rcv=PIN_C7, bits=8) #include #use fast_io(B) void main(){ char dato; set_tris_B(0); output_b(0); lcd_init(); lcd_gotoxy(1,1); printf(lcd_putc,"RXD:"); while(1){ dato=getchar(); printf(lcd_putc,"%c",dato); printf("\fDATO RECIBIDO:%c",dato); IF(dato==65)output_high(pin_b6); IF(dato==66)output_low(pin_b6); IF(dato==67)output_high(pin_b7); IF(dato==68)output_low(pin_b7); }}
APP INVENTOR APLICACIÓNES ANDROID
EDITOR DE BLOQUES
MODULO GSM GLOBAL SYSTEM FOR MOBILE COMMUNICATION, SE DISEÑO PARA CUBRIR UNA GRAN VARIEDAD DE SERVICIOS QUE INCLUYEN TRANSMICION DE VOZ, DATOS, SERVICIOS DE MANEJO DE MENSAJES ENTRE EQUIPOS MOBILES SMS. MEDIANTE SMS SE PUEDE TRANSMITIR TEXTOS O DATOS ENTRE DOS MOVILES. ES IMPORTANTE REALIZAR EL CONECIONADO DEL CONVERSOR TTL RS232 Y CONFIGURAR LA VELOCIDAD DE TRANSMICION A 115200 BAUD DEPENDIENDO DEL MODELO DEL MODEM CELULAR QUE SE UTILICE
MODULO GSM PARA LA COMUNICACIÓN ENTRE EL MODEM Y EL MICROCONTROLADOR SE UTILIZA LA COMUNICACIÓN SERIAL MEDIANTE EL ENVIO DE COMANDOS AT. COMANDOS AT PRINCIPALES
• • • • • • • •
AT+CMGF=1 CONFIGURO AL MODEM EN MODO TEXTO AT+CMGS=´´0999942422´´ NUMERO AL CUAL SE VA ENVIAR SMS ATD0999942422; REALIZA UNA LLAMADA AL NUM INDICADO ATH; CUELGA LA LLAMADA AT+CSQ DEVUELVE LA CALIDAD O NIVEL DE LA SEÑAL AT+CMGL=´´REC UNREAD´´ OBTIENE LISTADO DE MSJ RECIBIDOS AT+CMGL=´´REC READ´´ OBTIENE LISTADO DE MSJ LEIDOS AT+CMGL=´´ALL´´ DESPLIEGA TODOS LOS MENSAJES
PROYECTO 21
ENVIO DE MENSAJES ESCRITO POR GSM
PROYECTO 21
ENVIO DE MENSAJES ESCRITO POR GSM
PROYECTO 21
ENVIO DE MENSAJES ESCRITO POR GSM #include #fuses hs,NOWDT,NOPROTECT,PUT,NOBROWNOUT,NOLVP #use delay(clock=20000000) #use rs232(baud=115200, parity=N, xmit=PIN_C6, rcv=PIN_C7, bits=8) #use fast_io(B) void mensaje(){ output_high(pin_b6); output_high(pin_b7); printf("AT"); printf("%c",13); printf("%c",10); delay_ms(200); printf("AT+CMGF=1"); printf("%c",13); printf("%c",10); delay_ms(100); printf("AT+CMGS="); printf("%c",34); printf("0999942422"); printf("%c",34); printf("%c",13); printf("%c",10); delay_ms(200); printf("GSM MEGATRONICA"); printf("%c",13); printf("%c",10); delay_ms(100); printf("%c",26); delay_ms(8000); output_low(pin_b6); output_low(pin_b7); } void main(){ char dato; set_tris_B(0b00111111); output_b(0); delay_ms(1500); while(1){ delay_ms(500); if(input(PIN_b0)==0){ mensaje(); }}}
PROYECTO 22
MANEJO DE PANTALLA GRAFICA 128*64
PROYECTO 22
MANEJO DE PANTALLA GRAFICA 128*64
#include #include #include #fuses HS, NOWDT #use delay(clock=8000000) #include void main() { char TXT1[]="MEGATRONICA"; char TXT2[]="GLCD"; glcd_init(on); //inicializo el LCD while(1){ // glcd_text57(5,1,TXT1,2,1); glcd_text57(23,15,TXT2,3,1); // 57:tamaño en pixeles, 33 pos en X, 30 pos en Y, 1 tamaño, 1 color delay_ms(2000); glcd_rect(32,40,46,60,1,1); //(x1,y1,x2,y2,fill,color) delay_ms(2000); glcd_rect(64,40,78,60,0,1); delay_ms(2000); glcd_fillscreen(0); // sirve para borrar la pantalla delay_ms(2000); glcd_circle(64,32,32,1,1); //(x,y,radio,fill,color) delay_ms(2000); glcd_fillscreen(0); glcd_line(1,1,127,63,1); //(x1,y1,x2,y2,color) delay_ms(2000); glcd_fillscreen(0); } }
RFID Identificacion por radio frecuencia RFID (siglas de Radio Frequency IDentification, en español identificación por radiofrecuencia) es un sistema de almacenamiento y recuperación de datos remoto que usa dispositivos denominados etiquetas, tarjetas, transpondedores o tags RFID. El propósito fundamental de la tecnología RFID es transmitir la identidad de un objeto (similar a un número de serie único) mediante ondas de radio. Las tecnologías RFID se agrupan dentro de las denominadas Auto ID (automatic identification, o identificación automática)
PROYECTO 23
IDENTIFICACION POR RF
PROYECTO 23
IDENTIFICACION POR RF #include #fuses hs,NOWDT,NOPROTECT,PUT,NOBROWNOUT,NOLVP #use delay(clock=8000000) #use rs232(baud=9600, parity=N, xmit=PIN_C6, rcv=PIN_C7, bits=8) #include void main(){ char dato[5]; int x; lcd_init(); lcd_gotoxy(1,1); printf(lcd_putc,"ACERQUE TAG"); while(1){ for (x=0;x
View more...
Comments