Sida 1 av 1

Problem att få en PIC18F458 att fungera

Postat: 19 april 2011, 16:46:54
av jfri
Har kopplat upp en 18F458 med en 25 Mhz kristall och två kondensatorer på 22 pF kopplat enligt anvisningar i datablad. Har också en 100 nF kondensator mellan jord och VCC.
Spänningsförsörjning sker från en PICket II. Utgången RC3 är kopplad till en LED i serie med ett 300 ohm motstånd. Dvs ett enkelt exempel. Mitt problem är att jag kan inte få någonting att fungera med denna PIC utan det verkar som om inget program alls går att köra på den. Förutom att observera lysdioden har jag också mätt på utgångarna och sett att de förblir låga. Med oscilloskop har jag också mätt på kristalloscillatorn och sett att den svänger på 25 MHz ( misstänkte först problem här och känner att jag kört fast när detta inte var problemet). Mitt exempel program listas nedan

Kod: Markera allt

#include <stdio.h>
#include <p18cxxx.h>
#pragma config WDT = OFF
#pragma config OSC = HS
void main (void)
{
	do {
	TRISC  =0b00000000;			
	PORTC=0b11111111;			//Tänd LED på RC3
	} while (1);
}

Re: Problem att få en PIC18F458 att fungera

Postat: 19 april 2011, 16:54:21
av LHelge
* Har du någon pull-up på MCLR? 10k-22k brukar funka bra.

* Har du kollad så att det inte finns någon analog port på samma pinne? i så fall är den digitala utgången avstängd vid uppstart.

* Lägg till så den blinkar istället, 2 delayer och en PORTC = 0;

Re: Problem att få en PIC18F458 att fungera

Postat: 19 april 2011, 17:14:22
av jfri
Prövade med 10k dock det hjälpte inte

Re: Problem att få en PIC18F458 att fungera

Postat: 19 april 2011, 17:23:04
av TomasL
Utgången RC3 är kopplad till en LED i serie med ett 300 ohm motstånd
Mot Vss (dvs -) hoppas jag.

Re: Problem att få en PIC18F458 att fungera

Postat: 19 april 2011, 18:20:09
av sodjan
> Har kopplat upp en 16F458...

18F458 ??

> #pragma config WDT = OFF
> #pragma config OSC = HS

Sätt *ALLA* config alternativ så som du vill ha det.
Lita inte på default, vilket i detta fall kan vara problemet.
En viss config bit (LVP) kan hindra att processorn kör om du inte tar hand
om den pinnen på rätt sätt (kopplar den låg). Enklast är att disabla
den funktionen helt i config.

Om du går igenom alla config options och sätter var och en som du
vill ha dom, så kommer du även med automatik att lösa detta problem.