MikroC Pro for PIC, LPC Demo Board - knappfunktion

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
Magnus_K
EF Sponsor
Inlägg: 5854
Blev medlem: 4 januari 2010, 17:53:25
Ort: Skogen mellan Uppsala-Gävle

MikroC Pro for PIC, LPC Demo Board - knappfunktion

Inlägg av Magnus_K »

Hej,

Satt här ikväll och skulle göra ett litet snabblabb. För att bekräfta vissa funktioner så började jag med att "få igång knappen", och pungspark direkt.
Använder MikroC Pro for PIC och LPC Demo-kortet som kom med PICKit2:an. Det är också med denna jag programmerar och matar kortet med.

Programmet ser ut som nedan:

Kod: Markera allt

#define P_BUTTON PORTA.B3
#define POT PORTA.B0
#define LED_1 PORTC.B0

void init() {

     OSCCON = 0b01110000;

     PORTA = 0;
     PORTB = 0;
     PORTC = 0;
     TRISA = 0b00001001;
     TRISB = 0;
     TRISC = 0;
     
     CM1CON0 = 0;
     CM2CON0 = 0;
     
     ADCON0 = 0;
     ANSEL = 0;
     ANSELH = 0;
}

void main() {

     init();
     
     while(1) {
     
              LED_1 = P_BUTTON;              
     }
}
Det är alltså inte märkvärdigare än att när knappen (RA3) går hög så tänds LED_1 (RC0).
Ger jag värdet "1" till LED_1 så tänds den.
Ställer jag också om till tex RA1 och använder en kabel som ställer ingången hög så tänds LED:en. Problemet ligger alltså i RA3.

Efter en del googlande så kan det vara så att det hänger ihop med att RA3 också är /MCLR och används vid programmeringen. Tydligen finns det också någon inställning i MPLAB där man säkerställer att RA3 återställs till tri-state, men hur kommer man runt det här om jag inte använder MPLAB? Om det är det som är problemet.

EDIT: Har även mätt på RA3, och knappen verkar helt ok. Hög nivå är 4,9V och låg är 0,2V.
EDIT2: Läste även nedan i PICkit2:ans manual nu... Men vad är det man ställer in egentligen? Kan man inte göra det på något annat sätt än "genom IDE:t"???

LPC.JPG
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Icecap
Inlägg: 26646
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: MikroC Pro for PIC, LPC Demo Board - knappfunktion

Inlägg av Icecap »

För att använda -MCLR som input-port måste du välja det i CONFIG.

Det brukar dock ställa till det ganska rejält med programmeringen så om du inte är piskat till det vill jag föreslå en mindre mod. av kretskortet.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: MikroC Pro for PIC, LPC Demo Board - knappfunktion

Inlägg av sodjan »

Notera att demo koden i "user guide" för LPC kortet använder _MCLRE_OFF.

Kod: Markera allt

; PICkit 2 Lesson 1 - 'Hello World'
;
#include <p16F690.inc>
__config (_INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_OFF &
_MCLRE_OFF & _CP_OFF & _BOD_OFF & _IESO_OFF & _FCMEN_OFF)
org 0
Start
...
...
Om det inte är ett direkt fel i exemplet så betyder det att PICkit2 måste
kunna programmera om även med MCLR bortkopplad (RA3 som en in-pinne).

Annars fungerar ju SW1 knappen enbart som en reset-knapp...
Användarvisningsbild
Magnus_K
EF Sponsor
Inlägg: 5854
Blev medlem: 4 januari 2010, 17:53:25
Ort: Skogen mellan Uppsala-Gävle

Re: MikroC Pro for PIC, LPC Demo Board - knappfunktion

Inlägg av Magnus_K »

@Icecap:
Jag var inne på exakt samma sak igår. Snitta upp ledningsbanan och styra in den på någon annan ingång.
Tydligen har dom gjort om designen av den senaste revisionen av LPC-kortet så knappen går till RA4 (om jag inte minns fel).

@sodjan & Icecap:
Ja det var som fasen. Slog av den biten i CONFIG-registret och programmeringen samt knappen fungerar nu utmärkt.
Får komma ihåg att göra det här varje gång jag meckar med LPC-kortet.

Tackar för hjälpen :tumupp:
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: MikroC Pro for PIC, LPC Demo Board - knappfunktion

Inlägg av sodjan »

OK. Och du kunde programmera om mer än *en* gång?
Första gången går ju alltid bra, då är MCLR fortfarande "på".
Men nästa gång är MCLR "av" och då krävs det lite extra... :-)
Användarvisningsbild
Magnus_K
EF Sponsor
Inlägg: 5854
Blev medlem: 4 januari 2010, 17:53:25
Ort: Skogen mellan Uppsala-Gävle

Re: MikroC Pro for PIC, LPC Demo Board - knappfunktion

Inlägg av Magnus_K »

Jodå, fick köra en andra runda för att invertera knappen i koden så nog fungerar det.

EDIT: Har nu programmerat den ytterligare 20+ ggr och knappen/programmeringen fungerar klockrent. Tack än en gång!
Skriv svar