willyp
http://www.020it.nl - Industriële elektronica ontwikkeling. - http://www.procircuits.nl
Wie weet hoe ik deze uC zo kan programmeren in ASM dat hij zijn interne clock gebruikt? Ik word niet echt wijs uit de data sheet momenteel...
willyp
http://www.020it.nl - Industriële elektronica ontwikkeling. - http://www.procircuits.nl
Op 20 januari 2006 16:38:15 schreef willyp:
Wie weet hoe ik deze uC zo kan programmeren in ASM dat hij zijn interne clock gebruikt? Ik word niet echt wijs uit de data sheet momenteel...
Heb het als volgd geprobeerd:
BSF H'2007',H'0004'
BSF H'008F',H'0004'
BSF H'008F',H'0002'
MOVLW B'00010100'
MOVWF H'008F'
maar mocht helaas niet werken 
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
Zet dit in het begin van je code.
Lees bestand P16F819.INC eens door voor alle opties
LIST P=16F819
include <P16F819.INC>
__CONFIG _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_ON & _WDT_OFF & _INTRC_IO & _LVP_OFF
DE optie _INTRC_IO geeft wat je wil. Interne oscilator en de pinnen als io gebruiken.
[Bericht gewijzigd door Willie Worteltje op ]
willyp
http://www.020it.nl - Industriële elektronica ontwikkeling. - http://www.procircuits.nl
En waar kan je dan de snelheid instellen?
ik had dit geprobeerd:
MOVLW B'00010100'
MOVWF H'008F'
[Bericht gewijzigd door willyp op ]
willyp
http://www.020it.nl - Industriële elektronica ontwikkeling. - http://www.procircuits.nl
Op 20 januari 2006 20:18:32 schreef willyp:
En waar kan je dan de snelheid instellen?
ik had dit geprobeerd:
MOVLW B'00010100'
MOVWF H'008F'
En dit:
ORG 0 ;Reset vector address
BANKSEL OSCCON
BSF OSCCON,IRCF1
BSF OSCCON,IRCF2
BSF OSCCON,IRCF0
BSF OSCCON,IOFS
BCF STATUS,RP0 ;Switch Back to reg. Bank 0
GOTO RESET ;goto RESET routine when boot.
Maar werkt helaas niet
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
Probeer dit eens:
BANKSEL OSCCON
MOVLW B'01110000' ;8Mhz
IOFSHIGH BTFSS OSCCON,IOFS ;wacht tot IOFS is hoog
GOTO IOFSHIGH
BCF STATUS,RP0
--> Ga verder met code
lees dit eens uit de datasheet(blz 37)
4.5.4 MODIFYING THE IRCF BITS
willyp
http://www.020it.nl - Industriële elektronica ontwikkeling. - http://www.procircuits.nl
Ik heb nu dit geprobeerd;
BANKSEL OSCCON
MOVLW B'01100000' ;4Mhz
IOFSHIGH BTFSS OSCCON,IOFS ;wacht tot IOFS is hoog
GOTO IOFSHIGH
BCF STATUS,RP0 ;Switch Back to reg. Bank 0
GOTO RESET ;goto RESET routine when boot.Maar werkt helaas ook niet, blijft in de loop hangen. Maar moet je niet hetgene wat je in je W register schrijft niet een directie geven?
[Bericht gewijzigd door willyp op ]
elmowww
PA0EJE - www.eje-electronics.nl - e.jongerius[aapje]eje-electronics.nl - EJE Electronics - Elektronica/firmware ontwikkeling
willyp
http://www.020it.nl - Industriële elektronica ontwikkeling. - http://www.procircuits.nl
Op 21 januari 2006 15:04:29 schreef elmowww:
De config kan je niet onder het draaien editten afaik. het heet niet voor niets config... RTFD
Wat versta je onder config? En wat betekend afaik.?
Dit is mijn hele code btw:
LIST P=16F819
include <P16F819.INC>
__CONFIG _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_ON & _WDT_OFF & _LVP_OFF & _INTRC_IO
ORG 0 ;Reset vector address
BANKSEL OSCCON
BSF OSCCON,IRCF2
IOFSHIGH BTFSS OSCCON,IOFS ;wacht tot IOFS is hoog
GOTO IOFSHIGH
BCF STATUS,RP0 ;Switch Back to reg. Bank 0
GOTO RESET ;goto RESET routine when boot.
; *********************************************
; * Example of a delay routine *
; *********************************************
DELAY_ROUTINE MOVLW D'100' ;54 Generate approx 10mS delay at 4Mhz CLK
MOVWF TIMER2
DEL_LOOP1 MOVLW D'100' ;60
MOVWF TIMER1
DEL_LOOP2
BTFSC PORTA,SW1
GOTO EFFECT_1
BTFSC PORTA,SW2
GOTO EFFECT_2
BTFSC PORTA,SW3
GOTO EFFECT_3
BTFSC PORTA,SW4
GOTO EFFECT_4
DECFSZ TIMER1,F
GOTO DEL_LOOP2
DECFSZ TIMER2,F
GOTO DEL_LOOP1
RETLW 0
; **********************************
; ** RESET : main boot routine **
; **********************************
RESET
;
BANKSEL TRISB
MOVLW B'11000000'
MOVWF TRISB ;RB7 & RB6 are inputs.
;RB5...RB0 are outputs.
BANKSEL PORTA ; select bank of PORTA
CLRF PORTA ; Initialize PORTA by
; clearing output
; data latches
BANKSEL ADCON1 ; Select Bank of ADCON1
MOVLW 0x06 ; Configure all pins
MOVWF ADCON1 ; as digital inputs
MOVLW 0xFF ; Value used to
; initialize data
; direction
MOVWF TRISA ; Set RA<7:0> as inputs
BCF STATUS,RP0 ;Switch Back to reg. Bank 0
CLRF PORTB
GOTO EFFECT_1
;
[Bericht gewijzigd door willyp op ]
Willie Worteltje
Er zijn 10 soorten mensen. Mensen die binair begrijpen en mensen die het niet begrijpen... http://home.versatel.nl/edithenwilliam/william.htm
Op 21 januari 2006 14:52:58 schreef willyp:
Maar werkt helaas ook niet, blijft in de loop hangen. Maar moet je niet hetgene wat je in je W register schrijft niet een directie geven?
Idd vergeten te schrijven in OSCCON. Dom. Dus moet zijn.
BANKSEL OSCCON
MOVLW B'01110000' ;8Mhz
MOVWF OSCCON
IOFSHIGH BTFSS OSCCON,IOFS ;wacht tot IOFS is hoog
GOTO IOFSHIGH
BCF STATUS,RP0
--> Ga verder met code
willyp
http://www.020it.nl - Industriële elektronica ontwikkeling. - http://www.procircuits.nl
Op 21 januari 2006 15:48:48 schreef Willie Worteltje:
[...]
Idd vergeten te schrijven in OSCCON. Dom. Dus moet zijn.BANKSEL OSCCON MOVLW B'01110000' ;8Mhz MOVWF OSCCON IOFSHIGH BTFSS OSCCON,IOFS ;wacht tot IOFS is hoog GOTO IOFSHIGH BCF STATUS,RP0 --> Ga verder met code
heb ik geprobeerd, geen verandering helaas :-\
heb je misschien msn oid? handiger voor mij om vragen te stellen!
willyp
http://www.020it.nl - Industriële elektronica ontwikkeling. - http://www.procircuits.nl
Voor degenen die het probleem ook hebben en die een VelleMan kit gebruiken;
Telkens als je de Config verandert in je programma (.asm) dan moet je ervoor zorgen dat je flasher (progpic2.exe) opnieuw het bestand opent. Dit is omdat hij maar 1 keer tijdens het openen de Config Word leest en daarna niet meer.
Kan je heel veel gezeik besparen!
Complete code om je 16F819 op 8 mhz te laten lopen:
(enkel in MP Lab)
LIST P=16F819
include <P16F819.INC>
__CONFIG _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_ON & _WDT_OFF & _LVP_OFF & _INTRC_IO
ORG 0
BANKSEL OSCCON
BSF OSCCON,IRCF2
BSF OSCCON,IRCF1
BSF OSCCON,IRCF0
IOFSHIGH BTFSS OSCCON,IOFS ;wacht tot IOFS is hoog
GOTO IOFSHIGH
BCF STATUS,RP0