---- LENGUAJE DE PROGRAMACIÓN PIC BASIC DEL PIC SIMULATOR IDE (PSI) ----Indice del hilo-------------------------------------------------------------------------
PSI, CONFIGURACION_______________________________________
EJEMPLOS BASICOS Cambia de estado un PIN de forma cíclica.
Programa semáforo.
Cambia de estado un PIN de forma cíclica, TOGGLE.
Cambia de estado un PIN de forma cíclica, WHILE/WEND.
Cambia de estado un PIN de forma cíclica, WHILE/WEND, IF/THEN, PORTB.
Cambia de estado un PIN de forma cíclica, WHILE/WEND, IF/THEN, RB.
Cambia de estado el puerto B (Contador Binario).
While/Wend, if/then, incremento de variables, salida de datos por el puerto B.
Cambia de estado el puerto B (Efecto coche fantástico).
For/Next, ShiftRight, ShiftLeft, salida datos por puerto B.
Encender un led distinto por cada pulsación de tecla que ingrese por un mismo pin.
____________________________
LCD '***********************************************
'NOMBRE:16F88_PicEBasic_LCD
'Uso del LCD con bus de datos a 4Bit y sin pin de RW
________________________________________________
LCD, INTERRUPCIONES, Timer1 '******* Placa Entrenadora *******
'NOMBRE:16F88_PicEBasic
'Activacion del Timer1 por rebose cada 1mSeg.
'Implementacion de timer (bases de tiempos) por soft
'Cambio de estado del RA7 de forma ciclica (led intermitente)
'**** Placa Entrenadora (PIC EBadic) ***
'NOMBRE:16F88_Ejemplo 20
_________________________________________
LCD, ADC, DECIMALES '********************************** PIC Entrenadora BASIC (PicEBasic)***********************************
'NOMBRE: 16F88_LCD_ADC
'DESCRIPCION: MUESTRA EN EL DISPLAY EL VALOR DE LA ENTRADA ANALOGICA CON DOS DECIMALES Y EN VOLTIOS
_____________________________
LCD, I/O '********************************** PIC Entrenadora BASIC (PicEBasic)********************
'NOMBRE: 16F88_LCD_I/O
'DESCRIPCION: MUESTRA EN EL DISPLAY EL ESTADO DE LA TECLA ACTIVANDO EL LED ASOCIADO
_________________________________
LCD, I/O, I2C, RELOJ CALENDARIO, TEMPERATURA '******* PIC Entrenadora BASIC (PicEBasic)********************
'NOMBRE: 16F88_LCD_RTC
'VERSION: 1.0
'DESCRIPCION: MUESTRA EN EL DISPLAY LA FECHA Y LA HORA
'para transferir la hora al reloj dejar pulsada la tecla S1
'***** PIC Entrenadora BASIC (PicEBasic)*****
'NOMBRE: 16F88_LCD_RTC_12
'****************************************
'**** Placa Entrenadora (PIC EBadic) ******
'NOMBRE:16F88_Pic_EBasic_EJEMPLO_24
'*************************************
'**** Placa Entrenadora (PIC EBadic) ****
'NOMBRE:16F88_Pic_EBasic_EJEMPLO_28
'***** Placa Entrenadora (PIC EBadic) *****
'NOMBRE:16F88_Pic_EBasic_EJEMPLO_25
'*************************************
______________________________________________________
LCD, INTERRUPCIONES, MODULO UAR '********************************** PIC Entrenadora BASIC ***********************************************
'NOMBRE: 16F88_LCD_RS232
'VERSION: 1.0
'DESCRIPCION: MUESTRA EN EL DISPLAY DE 16x2, LOS CARACTERES RECIBIDOS POR RS232 Y ENVIA OTRA CADENA FIJA
'tiempo de lectura entre byte y byte del puerto serie 10mseg maximo si no hay datos
'******************************************************************************************************
_______________________________________________________________________
LCD, ADC, I/O, DECIMALES, INTERRUPCIONES (PWM) '******* Placa Entrenadora (PIC EBadic) *****
'NOMBRE:16F88_LCD_Timer1_ADC_PWM
'****************************************
__________________________________________________
LCD, ADC, DECIMALES, FUNCIONES '********************************** PIC Entrenadora BASIC (PicEBasic)***********************************
'NOMBRE: 16F88_LCD_ADC_Funcion_12
'DESCRIPCION: MUESTRA EN EL DISPLAY EL VALOR DE LA ENTRADA ANALOGICA CON DOS DECIMALES Y EN VOLTIOS
'************ Placa Entrenadora (PIC EBadic) *********
'NOMBRE:16F88_Pic_EBasic_Ejemplo_19
'************************************************
____________________________________________________________________________________
LCD, ADC, Function, MEDIA ARITMETICA, TEMPERATURA LM35 '********************************** PIC Entrenadora BASIC (PicEBasic)***************************************
'NOMBRE: 16F88_LCD_ADC_Funcion_13
'version: 1.3
'se añade un sensor de temperatura en la entrada RA4, se conecta un LM35DZ por medio de la placa ETPA_LM35xZ, Ver. 1.2
'se toma una lectura cada 1000mSeg. y se calcula la media aritmetica con 20 muestras
'se ajusta la placa ETPA_LM35xZ, para maxima temperatura 60º = 3V (RA2)
'como 5V=1023=100º, 3V=613.8=60º
'como el rango de temperatura del LM35DZ es de 0º a 100º, el RA1 se ajusta a cero voltios
'*******************************************************************************************************
_______________________________________________
TEMPERATURA CON EL LM35 '*********** PIC Entrenadora BASIC (PicEBasic)********
'NOMBRE: 16F88_LCD_ADC_Funcion_14
'*************************************************
'********************************** PIC Entrenadora BASIC (PicEBasic)******************************
'NOMBRE: 16F88_Pic_EBasic_LCD_RTC_ADC_10
'DESCRIPCION: Muestra en el display la fecha, hora (24h)mediante el DS1307 y temperatura (LM35)
'**********************************************************************************************
_______________________________________
BASES DE TIEMPOS '***************** Placa Entrenadora (PIC EBadic) **************
'NOMBRE:16F88_Pic_EBasic_Timer0
'Descripcion: Base de tiempos programable empleando el Timer0
'**********************************************************
______________________________________________
COMUNICACION CON EL PC '******************* PIC Entrenadora BASIC ***************************************
'NOMBRE: 16F88_Pic_EBasic_LCD_RS232_Menu_10
'DESCRIPCION: Control de los led de la EBasic por medio de un menu en el Hyperterminal
'*******************************************************************************
'******** PIC Entrenadora BASIC ****************
'NOMBRE: 16F88_Pic_EBasic_LCD_RS232_Menu_11
'DESCRIPCION: Control de clave de acceso
'*********************************************
'*********** PIC Entrenadora BASIC *************************************
'NOMBRE: 16F88_Pic_EBasic_LCD_Timer1_MidiendoTiempo_10
'DESCRIPCION: Midiendo el tiempo que tardan ciertas rutinas en ejecutarse
'valor por el display y por el hyperterminal
'*********************************************************************
'************* PIC Entrenadora BASIC (PicEBasic)*************************
'NOMBRE: 16F88_Pic_EBasic_LCD_RTC_ADC_11
'Se añade salida de la temperatura, hora y fecha por el puerto serie (Soft)
'********************************************************************
'*********** PIC Entrenadora BASIC (PicEBasic)********
'NOMBRE: 16F88_Pic_EBasic_LCD_RTC_ADC_12
'Se habilita el modulo usar como salida de datos serie
'*************************************************
'************ PIC Entrenadora BASIC *********************
'NOMBRE: 16F88_Pic_EBasic_LCD_RS232_13
'VERSION: 1.3
'Se simplifica la rutina bufer de lectura del puerto serie fisico
'mejora en la precision en las bases de tiempos
'******************************************************
__________________________________________________________________________________________________
EJEMPLO DE INTERRUPCION PRODUCIDA POR EVENTO EXTERIOR AL PIC '********************************************************************
'PROGRAMA PARA PRACTICAR CON INTERRUPCIONES EXTERIORES DEL PIN RB0
'On Interrupt - Interrupts in BASIC
'********************************************************************
________________________________________________________________________
USANDO EL MODULO CCP1 (FUNCIONES DEL LENGUAJE) '***************** Placa Entrenadora (PIC EBadic) *************************************
'NOMBRE:16F88_Pic_EBasic_LCD_Timer1_ADC_PWM_12
'se elimina el control del PWM por bases de tiempos y se controla mediante el modulo CCP1
'*********************************************************************************
________________________________________________________________________
TRABAJANDO CON EL MODULO CCP1 DIRECTAMENTE '***************** Placa Entrenadora (PIC EBadic) ***************************
'NOMBRE:16F88_Pic_EBasic_LCD_CCP1_Timer1_ADC
'MICRO: PIC16F88/8Mhz reloj interno
'Fecha/Autor: 3/08, By COS
'Version: 1.0
'Uso del modulo CCP1 configurado en especial mode.
'Se crean bases de tiempos usando el modulo CCP1 configurado en modo comparador
'y generando el mismo modulo una lectura del ADC cada 1mSeg.
'***********************************************************************
________________________________________
MODULO TIMER2________________________________________
MODULO WATCHDOG '******** PIC Entrenadora BASIC (PicEBasic)********
'NOMBRE: 16F88_Pic_EBasic_Ejemplo_16
'**********************************************
_______________________________________________
USO DE LA EEPROM INTERNA '******* PIC Entrenadora BASIC (PicEBasic)******
'NOMBRE: 16F88_Pic_EBasic_Ejemplo_17
'*******************************************
'****** PIC Entrenadora BASIC (PicEBasic)*****
'NOMBRE: 16F88_Pic_EBasic_Ejemplo_18
'*****************************************
_________________________________________________
CALIBRANDO RELOJ INTERNO '*********Placa Entrenadora (PIC EBadic) *********
'NOMBRE:16F88_Ejemplo 22
'Metodo para el calibrado del reloj interno del pic
'********************************************
_______________________________________
NUMEROS ALEATORIOS '***** Placa Entrenadora (PIC EBadic) ******
'NOMBRE:16F88_Pic_EBasic_EJEMPLO_23
'**************************************
'****** Placa Entrenadora (PIC EBadic) *******
'NOMBRE:16F88_Pic_EBasic_EJEMPLO_23.1
'****************************************
______________________________________
MODULO ADC '****** PIC Entrenadora BASIC (PicEBasic)*****
'NOMBRE: 16F88_Pic_EBasic_Ejemplo_26
'*****************************************
'***** PIC Entrenadora BASIC (PicEBasic)******
'NOMBRE: 16F88_Pic_EBasic_Ejemplo_27
'*****************************************
_____________________________________________________
COMUNICACION MEDIANTE RS485 'PARA PROBAR EL CIRCUITO PODEMOS USAR LOS EJEMPLOS DEL RELOJ
__________________________________
FUNCIONES (MANEJO DE BIT)__________________________________
FUNCIONES (MANEJO DE BYTES)___________________________________
FUNCION ARRAY DOS DIMENSIONES (VECTORES)____________________________________
FUNCIONES PARA TRABAJAR CON CADENAS (STRING)____________________________________
FUNCION BASE DE TIEMPOS (INTERRUPCIONES)____________________________________
FULL FUNCION ADC____________________________________
SERVOMOTORES '***************** Placa Entrenadora (PIC EBadic) **********************************
'NOMBRE:16F88_Pic_EBasic_LCD_Timer1_ADC_PWM_RB4
'Descripcion: Control de un servomotor (Futaba S3003) usando el ADC, Timer1, Interrupciones
'******************************************************************************
'***************** Placa Entrenadora (PIC EBadic) **********************************
'NOMBRE:16F88_Pic_EBasic_LCD_Timer1_ADC_PWM_Servo_11
'Descripcion: Control de un servomotor (Futaba S3003) usando el ADC, Timer1, Interrupciones
'Se fusiona la rutina de divicion con decimales
'******************************************************************************
'*********************** Placa Entrenadora (PIC EBadic) ********************************
'NOMBRE:16F88_Pic_EBasic_Adcin_ServoOut
'Descripcion: Control de un servomotor (Futaba S3003) usando las declaraciones Adcin y ServoOut
'**********************************************************************************
'***************** PIC Entrenadora BASIC (PicEBasic) ***************
'NOMBRE: 16F88_Pic_EBasic_Ejemplo_14
'PROGRAMA PARA PRACTICAR CON SERVOS Y LA DECLARACION WAITUS
'**************************************************************
___________________________________________________________
PLACA DE AMPLIACION 3 SERVOMOTORES '********************* PIC Entrenadora BASIC (PicEBasic)*********************
'NOMBRE: 16F88_Pic_EBasic_Ejemplo_30
'MICRO: PIC16f88
'FECHA/AUTOR: 05/08 - By COS
'Version: 1.0
'Programa simplificado para el Test de la placa de ampliacion 3 servos Futaba S3003
'************************************************************************
________________________________________________________________________________________________________________
TRABAJANDO CON COMUNICACION POR RF, MODULOS DE TX Y RX DE AUREL Y LAIPAC '******************************* PIC Entrenadora BASIC ***************************
'NOMBRE: 16F88_Pic_EBasic_Modulos_RF_Tx_11
'VERSION: 1.1
'MICRO: PIC16F88
'Fecha/Autor: 5/08 By COS
'DESCRIPCION: Se recibe por el teclado del pc mediante el hyperterminal caracteres que son
'reenviados al aire mediante un modulo de rf a 2400 baudios.
'programar el hyperterminal del Windows:
'Bits por segundo: 1200
'Bits de datos: 8
'Paridad: Ninguno
'Control de flujo: Ninguno
'LCD a 4 bit, sin bit de RW
'********************************************************************************
'********************** PIC Entrenadora BASIC ***********************
'NOMBRE: 16F88_Pic_EBasic_Modulos_RF_RX_11
'VERSION: 1.1
'MICRO: PIC16F88
'Fecha/Autor: 5/8 By COS
'VERSION 1.1
'DESCRIPCION: Se recibe por el aire "RF" (2400 Baudios) los datos reenviados
'por la placa de TX que a su vez los recibio via RS232 desde el hyperterminal.
'led verde cambia de estado cada vez que se recibe una trama completa
'led amarillo cambia de estado cada vez que falla el byte de cabecera
'******************************************************************
_________________________________________________________________________________________
TRABAJANDO CON NÚMEROS NEGATIVOS_________________________________________________________________________________________
MIDIENDO HUMEDAD RELATIVA Y TEMPERATURA CON EL SENSOR RHT03 O DHT22 _________________________________________________________________________________________
MIDIENDO DISTANCIA MEDIANTE ULTRASONIDOS CON EL SENSOR HC-SR04 Y EQUIVALENTES _________________________________________________________________________________________
ACLARACIÓN DE DUDAS REGISTRO ANSEL.
SOBRE ENTRADAS ANALOGICAS DEL MODULO ADC Y
ENTRADAS ANALOGICAS DEL MODULO COMPARADOR ANALOGICO.
PROBLEMA WATCHDOG Y MODULO USART
_________________________________________________________________________
HILOS RELACIONADOS: _________________________________________________________________________
PD: Agradezco cualquier tipo de corrección o sugerencia.
Me lo podéis comunicar mediante el privado o en el mismo hilo.
-------------------------------------------------------------------------------------------------------[/list]