Even wat dingen uit elkaar trekken:
Een compiler maakt (compileert) van een .c-file een hex-file. Daar kunnen hulp-files (zoals headers .h) bij horen. XC8 van Microchip is zo'n compiler.
Een programmer doet niks anders dan een (reeds gecompileerde HEX file) in een chip schieten. De software (programmer) moet inderdaad overweg kunnen met je hardware (programmer).
Dan heb je ook nog een editor, waar je alle regeltjes C-code inklopt. Vaak is dit onderdeel van een IDE (integrated development environment) waarvanuit soms ook de compiler en programmer kunnen worden opgestart. Meestal gebeurt dat zo onzichtbaar dat alles hetzelfde programma lijkt te zijn.
Wil je met de XC-compiler werken, dan kun je bijvoorbeeld goed de MPLAB X environment (IDE) erbij pakken. Zowel van XC als van MPLAB X heb ik hierboven reeds links gegeven. Die programma's zijn op elkaar afgestemd, en doordat MPLAB X ook weet heeft van de chips kun je allerlei handige settings gebruiken om dingen als kloksnelheid en andere fuses te programmeren. Tevens zijn er behulpzame headerfiles beschikbaar voor alle PICs.
De programmer die met MPLAB X wordt meegelevers kan niet met jouw WISP overweg; hij heeft liever een PICkit.
Maar dat is niet erg, want als MPLAB X en zijn XC-compiler alles foutloos voor jou hebben gecompileerd, dan heb je een HEX-file gekregen die je met willekeurige andere programmer-software (zoals XWisp, XWisp2 of BumbleBee ofzo) via je WISP648 in de PIC kunt schieten. Zo ging dat neem ik aan ook met de .hex-files die door Proton werden gegenereerd, of niet?