04-12-2009, 08:51 PM
Õhtast!
Nimetet prosega tekkis anomaalia - töötab hulka madalamal sagedusel kui kvartsi/setingute järgi peaks. Kasutan 10 MHz + PLL. Viga tuli välja serial sides kus kuidagi ei õnnestu saada 115200 bd. 9600 töötab justkui oleks BRGH=0 aga initsialiseerimisel ütlen et BRGH=1 !?
Ossiga mõõtes on kvarts tüesti 10 MHz peal võnkumas, PLLi tööd kivi sisse ei näe (peaks laskma mingi sagedusega signaali välja saata..). On ehk kellelgi sama anomaaliat olnud ? Mida teha?
Konf:
Initsialiseerimine:
Nimetet prosega tekkis anomaalia - töötab hulka madalamal sagedusel kui kvartsi/setingute järgi peaks. Kasutan 10 MHz + PLL. Viga tuli välja serial sides kus kuidagi ei õnnestu saada 115200 bd. 9600 töötab justkui oleks BRGH=0 aga initsialiseerimisel ütlen et BRGH=1 !?
Ossiga mõõtes on kvarts tüesti 10 MHz peal võnkumas, PLLi tööd kivi sisse ei näe (peaks laskma mingi sagedusega signaali välja saata..). On ehk kellelgi sama anomaaliat olnud ? Mida teha?
Konf:
Kood:
;**** Prose konfi (ropud :) sõnad ****
CONFIG XINST=OFF, STVREN=OFF, WDTEN=OFF ;
CONFIG CP0 = OFF ; koodimälu kaitseta
CONFIG IESO=OFF, FCMEN=OFF, LPT1OSC=OFF,T1DIG=OFF,OSC=HSPLL
CONFIG WDTPS=32768
CONFIG DSWDTPS=32, DSWDTEN=OFF,DSBOREN=OFF,RTCOSC=T1OSCREF
Kood:
;---- serial port 1 -------------- ; moodulitevaheline võrk
movlw B'00100110' ; 8 bitine saade
movwf TXSTA1
movlw B'10010000' ; 8-bitine vv
movwf RCSTA1
nop
nop
nop
nop
bcf BAUDCON1,BRG16
bcf TXSTA1,SYNC
bsf TXSTA1,BRGH
bcf PIR1,RC1IF
; bsf PIE1,RC1IE ; luba RC1 int
movlw .21 ; baudrate = 115200 @ 40 MHz
movwf SPBRG1