Hola compañeros del Foro:
Hace poco tiempo que me empeze a iniciar el mundo de los PIC´s, me vi en la necesidad de armar mi programador asi que me arme el JDM el cual postie aqui
http://www.todopic.com.ar/foros/index.php?topic=36173.new;topicseen#new al ver que se necesita aprender un lenguaje de programacion para poder trabajar con estos dispositivos al ver varias opciones me incline por C
, no se si sea la mejor opcion y si sea el lenguaje correcto para iniciar pero me incline por ese, he visto los ejemplos de CCS que puso vszener y me han funcionado bien y poco a poco estoy aprendiendo pero mirando por la red encontre algo que me llamo la atencion "bootloader"
, lo que entendi es que se trata de un programa residente en memoria del PIC y que nos permite la interaccion del dispositivo ya sea mediante "Serie o USB" evitandonos asi el problema del programador; por lo cual me maraville al pensar en la posibilidad de dejar de usar el JDM y empesar a usar USB en forma directa, me consegui unos 18F2550 y vi el Bootloader de Neo-Teo y otros de Microingenia pero he visto tantas paginas que me he llenado de dudas acerca de que es esto o aquello ojala y puedan aclararme el panorama, estas son mis dudas:
1.- Los "Bootloaders" que he encontrado en la red estan escritos en diferentes lenguajes, si uso el de "Neo-teo" (que tengo entendido que esta escrito en "Proton"), Tengo que escribir mis programas forzosamente en Proton? Op uedo usar otro lenguaje en forma indistinta, siempre y cuando pueda remapear(no se si lo dije bien
) la memoria?????
2.- Tengo entendido que al usar un bootloader hay que anexar un codigo al programa que estoy realizando para direccionar la escritura y asi no se dañe el Bootloader, si usara el de Microingenia(Que esta en CCS) que codigo debo anexar por ejemplo si uso el codigo de vszener para encender un led como este:
////////////////////////////////////////////////////////////////////////////////////
// VsZeNeR"05
// 6/Agosto/05
//
//Programa: Parpadeo de un led cada 0.5s
//Version: 0.0
//
//Dispositivo: PIC 16F648A Compilador: CCS vs3.227
//Entorno IDE: MPLAB IDE v7.20 Simulador: Proteus 6.7sp3
//
//Notas: Parpadeo de un led cada 0.5s por el pin RB0 del puerto B
//////////////////////////////////////////////////////////////////////////////////
#include <16f648a.h> //pic a utilizar
#fuses XT,NOWDT,NOPROTECT,PUT //ordenes para el programador
#use delay (clock=4000000) //Fosc=4Mhz
#use fast_io(b)
///PROGRAMA
void main(void)
{
set_tris_b(0xFE); //portb como salida(RB0,las demas desactivadas)
disable_interrupts(GLOBAL); //todas las interrupciones desactivadas
do{
output_low(PIN_B0); //led off
delay_ms(500);
output_high(PIN_B0); //led on
delay_ms(500);
}while(TRUE); //bucle infinito
}
Que codigo deberia anexar aqui para hacer lo funcionar y no se dañe el bootloader?
Gracias por su atencion y disculpen estas preguntas de Novato y espero haber posteado en la seccion correcta