Kristalloscillator inkoppling!

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
probe
Inlägg: 282
Blev medlem: 2 februari 2008, 21:04:26
Ort: Stockholm

Inlägg av probe »

Läs databladet....
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Det finns inget att ställa in i MPLAB.
Du väljer bara "rätt" CONFIG till din krets (i koden)
Se rellevanta delar av databladet samt slutet på
INC-filen för din processor där alla alternativ finns
listade.

Sen, det är inte så där jättevanligt att man anser att man
behöver en "canned oscillator". Vad är det i just detta fall
som gör att en vanlig kristall inte fungerar ?
warrior
Inlägg: 50
Blev medlem: 22 februari 2007, 12:36:58
Ort: Borås

Inlägg av warrior »

Sodjan!
Jag tänkte att man sätter config bitarna i mplab , det går väl göra i menyn.
Men det kanske är bättre att lära sig att skriva det i koden.
Vad händer om det står annat i mplab än i koden. är det koden som bestämmer då?

Varför jag vill använda en kristalloscillator var för det krånglade bara när jag kör på labbplatta. Fick då lite hjälp som sa att en komplett oscillator är inte så kännslig!
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> Jag tänkte att man sätter config bitarna i mplab , det går väl göra i menyn.

Jo, det säg så. Själv har jag aldrig kollat eller använt det...

> Men det kanske är bättre att lära sig att skriva det i koden.

Jag tycker att det är bättre, eftersom det i alla fall hör ihop med koden.
Dessutom, om du någon gång vill ha hjälp på t.ex ett forum, och postar
lite kod som du har problem med, så är det överlägset bättre att ha
CONFIG med i koden !!

> Vad händer om det står annat i mplab än i koden. är det koden som bestämmer då?

Jag *tror* det. Men skit samma, strunta bara i menyerna...
bos
Inlägg: 2314
Blev medlem: 24 februari 2007, 23:29:15
Kontakt:

Inlägg av bos »

warrior skrev:Vad händer om det står annat i mplab än i koden. är det koden som bestämmer då?
Tryck på F1 när du valt Configure -> Configuration bits så får du reda på det.
warrior
Inlägg: 50
Blev medlem: 22 februari 2007, 12:36:58
Ort: Borås

Inlägg av warrior »

Problemen fortsätter.
Använder mig nu av:
__config _OSC_ECIO_1H

Men då säger mplab att man ska använda kommandot CONFIG för pic18.

Jag har läst och läst men får det inte att fungera och förstår inte hur jag ska skriva.

Det står _OSC_ECIO_1H i inc-filen ska man skriva

CONFIG OSC=ECIO

Det är en komplett kristalloscillator processorn är pic18f2480

Om någon är kunnig på detta föklara för mig!
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

För en annan PIC18 men du förstår principen:

Kod: Markera allt

;**********************************************************
;     CONFIG settings
;
	config OSC = HS, OSCS=OFF, PWRT = ON, BOR = OFF
	config WDT = OFF, CCP2MUX = OFF, STVR = OFF, LVP = OFF
	config DEBUG = OFF, CP0 = OFF, CP1 = OFF, CP2 = OFF
	config CP3 = OFF, CPB = OFF, CPD = OFF, WRT0 = OFF
	config WRT1 = OFF, WRT2 = OFF, WRT3 = OFF, WRTB = OFF
	config WRTC = OFF, WRTD = OFF, EBTR0 = OFF, EBTR1 = OFF
	config EBTR2 = OFF, EBTR3 = OFF, EBTRB = OFF
;
;**********************************************************
Byt ut till det som gäller för din processor och de val som du vill ha.
warrior
Inlägg: 50
Blev medlem: 22 februari 2007, 12:36:58
Ort: Borås

Inlägg av warrior »

Tack Sodjan för svaret!
Förstår pricipen precis.
Problemet är att det känns inte som mplab tar emot det.
Den ändrar inte färg på det och felmeddelanden är många!

Kan jag missat nån mer inställning i mplab.
Har ställt in rätt processor.
/John[/img]
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

> och felmeddelanden är många!

Jaha. Det är väl bara att läsa vad de säger och fixa problemet !
Varför säga *här* att du får många fel ? Ganska meningslöst...

> Kan jag missat nån mer inställning i mplab.

Kanske det... :-) :-)
warrior
Inlägg: 50
Blev medlem: 22 februari 2007, 12:36:58
Ort: Borås

Inlägg av warrior »

Om jag inte skriver nån config i texten får jag 0 fel och 0 varningar.

Men skriver jag: config OSC = ECIO, WDT=OFF
får jag 50-60 fel och varningar.
Lägger in några!
Det kan hända att det inte säger er något om ni inte ser programmet.
Men är det någon som känner igen det som kanske vet vad som fattas.

Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 20 : Address exceeds maximum range for this processor.
Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 21 : Address exceeds maximum range for this processor.
Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 23 : Address exceeds maximum range for this processor.
Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 24 : Address exceeds maximum range for this processor.
Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 26 : Address exceeds maximum range for this processor.
Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 27 : Address exceeds maximum range for this processor.
Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 32 : Address exceeds maximum range for this processor.
Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 33 : Address exceeds maximum range for this processor.
Error[116] D:\OBD-PROJEKT\BLINKTEST.ASM 35 : Address label duplicated or different in second pass (Blink)
Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 35 : Address exceeds


;****************************************************************
LIST P=18f2480 ;Anger kompilator för processorn
#include <p18f2480.inc>
;****************************************************************

;**********************************************************
; CONFIG settings
;
config OSC = ECIO, WDT=OFF

;
;**********************************************************
bos
Inlägg: 2314
Blev medlem: 24 februari 2007, 23:29:15
Kontakt:

Inlägg av bos »

Och du har i hjälpen slagit upp vad varning #220 och fel #116 mer konkret innebär, antar jag?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Och rad 20-33, vad finns på dom ??????

> ; CONFIG settings
> ;
> config OSC = ECIO, WDT=OFF
>
> ;

Hade jag "config" i pos 1 i mitt exempel ?

EDIT: Pos 1 är exklusivt reserverad för *labels*...
warrior
Inlägg: 50
Blev medlem: 22 februari 2007, 12:36:58
Ort: Borås

Inlägg av warrior »

Tacksam om det finns någon som vill hjälpa mig seriöst istället för att hugga och tala om för en med andra ord att man är dum i huvudet.

Tala om konkret vad ni behöver veta så säger jag det.
Vet inte vad jag ska börja leta. Har sökt i hjälpen men det hjälper mig inte.

SODJAN jag har inte config i position 1 blev fel när jag klippte in det i inlägget.
Användarvisningsbild
Icecap
Inlägg: 26659
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Dina "fel" är ett antal varningar (de kallas "Warning") vilket betyder att du ska kolla upp det. I detta fall verkar ditt program vara för stort.

Sedan visar du ett (1) fel (de kallas "Error"): 'Blink'-labeln finns i två (eller fler) ställen (vanligt) eller den har ändrat värde inför andra genomgången (ganska ovanligt).

Detta har alltså INGET med config att göra...

Det vore tacksamt om du faktisk LÄSER de varningar du får och försöker förstå vad de innebär när vi nu är igång med tacksamheter.

Att DU tolkar något ur vad ingen har sagt är DITT problem.

"Warning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 20 : Address exceeds maximum range for this processor." översätts till:
"Varning[220] D:\OBD-PROJEKT\BLINKTEST.ASM 20 : Adress överstiger maximum tillåtet för denna processor"

Programmet är alltså helt enkelt för stort till att det kan passa i minnet på processorn. Ganska enkelt eller hur?
warrior
Inlägg: 50
Blev medlem: 22 februari 2007, 12:36:58
Ort: Borås

Inlägg av warrior »

Icecap!
Som jag skrev innan att om jag tar bort raden med config så försvinner alla fel och varningar!

Programmet är absolut inget stort program, jag klistrar in det, blir inte så bra när man gör det bara.

Kod: Markera allt

;***************************************************************************	
	LIST	P=18f2480			;Anger kompilator för processorn
	#include <p18f2480.inc>
;****************************************************************************

;**********************************************************
;     CONFIG settings
;
	config OSC = ECIO, WDT=OFF	
;
;**********************************************************

START:  MOVWF 	PORTA   		;Nollställer Port A 
        MOVWF 	PORTB   		;Nollställer Port B
  
		MOVLW 	0x00			;Skriver värdet 00 hex till W registret
		MOVWF 	TRISA			;Värdet sparas i riktningsregistret för port A
								;Vilket innebär att alla bitarna blir utgångar
		MOVLW 	0x00			;Skriver värdet 00 hex till W registret
		MOVWF 	TRISB			;Värdet sparas i riktningsregistret för port B
								;Vilket innebär att alla bitarna blir utgångar
	
								;Slut på initiering
;*****************************************************************************
		MOVLW	0x02			;Lägg 02 i register W
		MOVWF	PORTA			;Lägg ut detta på PORT A för att bland annat aktivera krets 74HCT541 på laborationskort MT3
            
Blink:  MOVLW 	0x00      		;Lägg 1 i register W
        MOVWF 	PORTB      		;Lägg ut innehållet i register W på Port B för att tända lysdioden.
        CALL 	Delay    		;Subrutinanrop: Delay
        CALL	Delay 
		MOVLW 	0xff       		;Lägg 00 i register W
        MOVWF 	PORTB    		;Lägg ut innehållet i register W på Port B för att släcka lysdioden.
        CALL 	Delay
		CALL	Delay 
		MOVLW	0x00
		MOVWF	PORTB
		CALL	Delay    		;Subrutinanrop: Delay
		CALL	Delay 
        GOTO 	Blink     		;Repetera.

Delay:  MOVLW 	0xff	   		;Tidsfördröjning ca 1 sekund
        MOVWF 	0x0d	   
Loop2:  MOVLW 	0xff
		MOVWF 	0x0c
Loop1:  DECFSZ 	0x0c,1
		GOTO 	Loop1
		DECFSZ 	0x0d,1
		GOTO 	Loop2    
		RETURN

        END

Det blev bättre!
Tack Bos!
Senast redigerad av warrior 14 april 2008, 22:45:26, redigerad totalt 1 gång.
Skriv svar