ik heb de hc12 aan de kant gelegd. Aan de ene kant omdat hier weinig van de te vinden is en aan de andere kant omdat hetgeen ik er mee wil al lang niet meer ondersteund word. En dit weer werkbaar maken kost gewoon teveel tijd. Ik kwam laatst deze link tegen
http://www.kerhuel.eu/wiki/index.php5?title=Animation_Compiling_your_f…
hier word gewerkt een regeling gemaakt in matlab en in een dsPIC gestopt. Nu heb ik het dsPICDEM starter demo board kunnen lenen en de c30 compiler van MPlab gedouwnload. maar ik heb hier geen C-code voorbeeld programma’s van kunnen vinden. Is er iemand die mij kan helpen aan een voorbeeld programma in C-code voor deze micro controller. Mijn voorkeur gaat uit na een programma dat bijvoorbeeld een Led laat branden wanneer ik een knop in druk. Op dit bordje zitten led’s op RD4 tot RD7 en twee druk knopjes op RC13 en RC14
Als het uitsluitend om te beginnen is, kun je dit stukje code compileren voor een dsPIC30F4013 om een led te laten knipperen op poort D.3 (kan je zelf even aanpassen naar C.4 bijvoorbeeld):
#include <p30f4013.h>
_FOSC(CSW_FSCM_OFF & XT_PLL8); // XT_PLL8
_FWDT(WDT_OFF);
_FBORPOR(PBOR_OFF & MCLR_EN);
_FGS(CODE_PROT_OFF);
#define delay 65000 //1000=1ms
main(){
_TRISD3 = 0;
_LATD3 = 0;
T1CON = 0b1000000000010000; // 1:8 prescaler
while (1){
_LATD3 = 1;
TMR1 = 0;
while(TMR1 < delay){
}
_LATD3 = 0;
TMR1 = 0;
while(TMR1 < delay){
}
}// main loop
}//main
Overigens staan er in de 'getting started'-pdf's een hoop voorbeelden alsmede op de website van microchip:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&no…
ik heb even het bovenstaande programma in aangepast zodat er gebruik gemaakt word van poort d4 ipv d3. het bilden gaat goed. dan lijkt het verzenden ook goed te gaan maar er gebeurt verder niets. aan d4 hangt een ledje maar deze gaat niet knipperen. kan iemand mij vertellen wat ik vergeet of wat ik verkeerd doe??
#include <p30f6012.h> //<-- aangepast
_FOSC(CSW_FSCM_OFF & XT_PLL8); // XT_PLL8
_FWDT(WDT_OFF);
_FBORPOR(PBOR_OFF & MCLR_EN);
_FGS(CODE_PROT_OFF);
#define delay 65000 //1000=1ms
main(){
_TRISD4 = 0; //<-- aangepast
_LATD4 = 0; //<-- aangepast
T1CON = 0b1000000000010000; // 1:8 prescaler
while (1){
_LATD4 = 1; //<-- aangepast
TMR1 = 0;
while(TMR1 < delay){
}
_LATD4 = 0; //<-- aangepast
TMR1 = 0;
while(TMR1 < delay){
}
}// main loop
}//main