Pkwarn0003, går ej att lösa meha av andra trådar (PIC prog)

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av sodjan »

Som Klas-Kenny säger så står ju felmeddlandet i klartext, svårt att missa.
Du verkar inte ha gjort en standardinstallation av "lessons". Svårt att
veta varför men gör det så fungerar det.

Notera också att detta enbart är ett gammalt problem när man kör "absolute mode"
(det äldre sättet att skriva kod). I "relocatable mode" finns inte detta problem.

> (Dåligt av MPLAB, kan tyckas..).

Det har inget med MPLAB att göram, det är en av delarna av MPASM som (enbart)
används då man bygger "absolute mode" kod som har denna begränsning. Det är
dokumenterat och rekomendationen (från Microchip) är att inte köra absolute mode.
Eller att flytta filerna.
Användarvisningsbild
säter
Inlägg: 35319
Blev medlem: 22 februari 2009, 21:16:35
Ort: Säter

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av säter »

#går ej att lösa meha av andra trådar #

Vad fan betyder "meha"?
Det kan omöjligt betyda med hjälp av.
Användarvisningsbild
fireas
Inlägg: 204
Blev medlem: 26 januari 2009, 12:44:25

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av fireas »

meha ska egentligen vara mha..

Ok, ska flytta filerna ikv när jag kommer hem.

Tack för hjälpen, återkommer senare:)
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av sodjan »

Japp, flytta *eller* lägg om till "relocatable".
Sannolikt mindre jobb att bara flytta filerna. :-)
Användarvisningsbild
fireas
Inlägg: 204
Blev medlem: 26 januari 2009, 12:44:25

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av fireas »

ignorera detta
Användarvisningsbild
fireas
Inlägg: 204
Blev medlem: 26 januari 2009, 12:44:25

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av fireas »

Nu fungerar det att builda osv.

Jag skulle testa lite kod i mikroC, väääldigt enkelt, bara för att se om det fungerade:

void main() {
TRISB = 0;

while(1) {
PORTB = 0xFF;
}
}


Alltså bara att få en lysdiod att lysa.

Dock så fungerar det ej efter att jag bränner" till PICen. Och mäter jag på programmeraren så får jag bara ut 0.26V:S

Jag får inte 5V ut, någon som varit med om detta?
Användarvisningsbild
Icecap
Inlägg: 26651
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av Icecap »

Då är det dags att felsöka.
1: Kolla efter glappkontakt.
2: Skriv 0x00 till porten och se om problemet kvarstår.
3: Skriv '1' bara till pinnen som LED'n sitter på, inget annat.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av sodjan »

För lite info.
Beskriv bättre vad du gör och hur du kopplar och mäter.
SAmt vad du faktiskt *har* gjort för att felsöka !

Sen så ska man kanske inte förvänta sig att ett sådant program
ska fungera, det ser mest ut som att du inte har läst på
riktigt. Det finns en del mycket viktig information i databladet
kapitlet "I/O Ports" som man måste läsa och ta i beaktande.
Slarv kommer du inte långt med.
Användarvisningsbild
fireas
Inlägg: 204
Blev medlem: 26 januari 2009, 12:44:25

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av fireas »

Efter att ha läst lite i manualen, så ställde jag in PIC-programmerarens Vdd till +5.0V. Nu ger den vad den ska.

Jag använder dock mikroC för att skriva i, det krockar inte med PIC-programmerarens egna "bränprogram" om jag använder mikroC för att programmera?

Jag kommer ju använda +5V in till picen när jag löder mitt kretskort men för tillfället menar jag.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av sodjan »

Du kan köra MicroC och skapa HEX filer.
Vad du sedan programmerar med spelar ingen roll, en HEX fil
är en HEX fil och det spelar ingen som helst roll var den kommer från.
Användarvisningsbild
fireas
Inlägg: 204
Blev medlem: 26 januari 2009, 12:44:25

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av fireas »

Jag är lite vilse nu.

Jag har kopplat en lysdiod med ett motstånd på port B4.

Skrivit denna kod:

void main() {
TRISB = 0 ; // PORT B som outputs

for(;;) // evig loop
{
PORTB = 0x10 ; // LED PÅ, portB 4
Delay_ms(500) ; // vänta 500 ms
PORTB = 0x00 ; // LED AV, PORTB 4
Delay_ms(500) ; // vänta 500 ms
}
}


som då ska få den att blinka 0x10 = 00010000 = portB.4.

Men inget händer, verkar vara att så fort jag importerar HEX-filen in i PICEN så slutar Vdd vara 5V.
Användarvisningsbild
dubbear
Inlägg: 328
Blev medlem: 7 april 2010, 23:59:24
Ort: Göteborg
Kontakt:

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av dubbear »

Har du kollat så vdd skall vara på ?
(Set Vdd on)
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
fireas
Inlägg: 204
Blev medlem: 26 januari 2009, 12:44:25

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av fireas »

Hej igen allihopa!

Tentaveckor + resa har gjort det svårt för mig att komma in och posta.

så här långt har jag kommit. Jag har nu klarat att programmera picen och allting fungerar utan att programmeraren är inkopplad (ja inte långt asså)...

Min kod ser ut så här

Kod: Markera allt

void main() {
TRISA = 0xFF; // PortA - input
TRISB = 0x00; // PortB - output
TRISC = 0x00; // PortC - output

ANSEL = 1;    // AN pinnarna görs analoga
ANSELH = 1;
C1ON_bit = 0; // Avaktivera comparatorerna C2ON_bit = 0;

unsigned char level;

while (1) {
level = ADC_Read(2);          //Läser värde från 'AN2'
level = (488*level)/100;      //Får spänning i mV

if (level >= 1000 {
PORTB = 0xFF; // PortB - LEDs light up
PORTC = 0x00; // PortC - LEDs off

} else if (level <= 5000) {
PORTB = 0xFF; // PortB - LEDs light up
PORTC = 0xFF; // PortC - LEDs light up

}
}
Det den klagar över är unsigned char level;, gör man inte så i c?

Annars, kommentarer?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av sodjan »

> Det den klagar över är unsigned char level;, gör man inte så i c?

Och vad 17 betyder "klagar" ???

Försök aldrig att göra dina egna tolkning av eventuella felmeddelanden,
det blir så gott som alltid fel. Klipp in vad kompilatorn faktiskt säger...

> och allting fungerar utan att programmeraren är inkopplad

Alltså att programmet inte startar om du inte kopplar bort PICkit2'an ?
Har du testat att klicka "release MCLR after flash" (eller något liknande,
minns inte exakt vad det heter, då får leta upp det i MPLAB...) ?
Batman
Inlägg: 97
Blev medlem: 11 december 2010, 15:05:42
Ort: Umeå

Re: Pkwarn0003, går ej att lösa meha av andra trådar (PIC pr

Inlägg av Batman »

Jag gissar att den inte gillar när du jämför level som är en unsigned char, med 1000 och 5000. En unsigned char är 8 bitar och blir aldrig större än 255, så den är aldrig större än 1000, sedan är den alltid mindre än 5000. Vill du jämföra med tal större än 255 så gör om level till en 16 bitars datatyp(max 65535) eller större t.ex. unsigned short/int.
Skriv svar