[elektro] PPS

Nandor Szabo nandi at freemail.hu
Thu Feb 17 22:02:36 CET 2011


szia

24fj256gb106-on igy megy.
ez mondjuk C-ben van, de a lenyeg ugyanaz:
Ez nalam mukodik. SPI, UART, Interupt egyaránt.
Kicsit trukkos, mert bemenetnel a funkcioregiszterbe irod be hozzatartozo portlab szamat.
Kimenetnel viszont a portlabregiszterbe irod be a hozzatartozo funkcio szamat.

üdv:Nándi

        __builtin_write_OSCCONL(OSCCON & 0xBF);  // Unlock PPS

        // Inputs
        RPINR20bits.SDI1R = 21;   //SDI1 = ez az spi1 adatbemenet lesz a pic-en
        RPINR0bits.INT1R = 26;    //INT1 = ez az interupt1 bemenet lesz a pic-en
        RPINR19bits.U2RXR = 17;   //RP17 = ez lesz a sorosport2 vetele a pic-en
        
        // Outputs
        RPOR9bits.RP19R = SCK1OUT_IO;   //RP19 = ez lesz az spi1 orajel kimenet a pic-en
        RPOR13bits.RP27R = SDO1_IO;     //RP27 = ez lesz az spi1 adatkimenet a pic-en
        RPOR5bits.RP10R = U2TX_IO;       //RP10 = ez lesz a sorosport2 adasa a pic-en
        
        __builtin_write_OSCCONL(OSCCON | 0x40); // Lock PPS

        AD1PCFG = 0xFFFF;
        //figyelem: a portok analog modban vannak alapbol,
        //ha digitalis periferiakat hasznalunk, a megfelelo portlabakat at kell konfiguralni analogbol, digitalisba

 IOL1WAY nalam off -ban van.


> Sziasztok! 

> Használ itt valaki olyan PIC-et, amelyiknek multiplexelni lehet a
> modulokat a portlábakra? 

> Küzdök a dsPIC33FJ128MC202-vel már tegnap óta, de nem jövök rá a
> nyitjára. 

> Van erre is egy speciális utasítássorozat, mint az oscillátor
> átkapcsolásnál. Unlock-olni kell a hw-t, hogy engedje a multiplexert.

> Ha esetleg felismeri valaki, nézze már meg, hátha szembetűnő a hibám:


>  mov #OSCCON,W1
>  mov #0x46,W2
>  mov #0x57,W3
>  mov.b w2,[W1]
>  mov.b w3,[W1]
>  bclr OSCCON,#IOLOCK
>  mov #8,W0 ;RP8 = U1RX
>  mov W0,RPINR18
>  mov #0b0000001100000000,W0 ;RP9 = U1TX
>  mov W0,RP0R4
>  mov #OSCCON,W1
>  mov #0x46,W2
>  mov #0x57,W3
>  mov.b w2,[W1]
>  mov.b w3,[W1]
>  bset OSCCON,#IOLOCK 

>  mov #260,W0
>  mov W0,U1BRG
>  bset U1MODE,#UARTEN
>  bclr U1MODE,#BRGH
>  bset U1STA,#UTXEN

> Fel kellene ugorjon a TX láb magasra, ha elindul az UART, de küldöm
> kifele az 55h-t, az sem jelenik meg, viszont szabadon kapcsolgathatom a
> portlábat, reagál rá a led. 

> Van még egy IOL1WAY fuse bit is,
> amit szintén próbálgatok kapcsolgatni,
> de ez nem teljesen világos, hogy most on vagy off kell legyen... 

> ToPe
> -----------------------------------------
>           elektro[-flame|-etc] 





More information about the Elektro mailing list