Moin, ich glaube das der Betreff schon meine Frage beinhaltet, ich hab hier den PIC24FJ256GA106. Ich hab gemerkt das man nicht jeden RP-Pin über PPS als U2TX Pin nutzen kann, die Register hören da bei RP30 glaub ich auf. Da ich nur noch den RC14/RP137 Pin frei habe, wollte ich den dann als U2TX-Pin über PPS routen. Hier mal kurz ein Stück des PPS-Code:
1 | __builtin_write_OSCCONL(OSCCON & 0xBF); // Unlock PPS |
2 | |
3 | // Configure SPI1 PPS pins (ENC28J60/ENCX24J600/MRF24WB0M or other PICtail Plus cards)
|
4 | // RPOR0bits.RP0R = 8; // Assign RP0 to SCK1 (output)
|
5 | // RPOR7bits.RP15R = 7; // Assign RP15 to SDO1 (output)
|
6 | // RPINR20bits.SDI1R = 23; // Assign RP23 to SDI1 (input)
|
7 | /*** SPI **********************************************************************/
|
8 | // SDO1 RP23 N = n+1 = 23, y = n/2 = 11 : RPOR<y>bits.RP<N>R
|
9 | //RPOR11bits.RP23R = 7; // SDO1
|
10 | // SDI1 RP24
|
11 | //RPINR20bits.SDI1R = 24;
|
12 | // SCK
|
13 | //RPOR9bits.RP18R = 8;
|
14 | /******************************************************************************/
|
15 | // Configure SPI2 PPS pins (25LC256 EEPROM on Explorer 16)
|
16 | // RPOR10bits.RP21R = 11; // Assign RG6/RP21 to SCK2 (output)
|
17 | // RPOR9bits.RP19R = 10; // Assign RG8/RP19 to SDO2 (output)
|
18 | // RPINR22bits.SDI2R = 26; // Assign RG7/RP26 to SDI2 (input)
|
19 | //
|
20 | /*** UART2 ********************************************************************/
|
21 | RPINR19bits.U2RXR = 137; // Assign RC14/RP137/PTP15 to U2RX (input) |
22 | RPOR7bits.RP14R = 5; // Assign RB14/RP14/PTP5 to U2TX (output) |
23 | /*******************************************************************************/
|
24 | //
|
25 | // // Configure INT1 PPS pin (MRF24WB0M Wi-Fi PICtail Plus interrupt signal when in SPI slot 1)
|
26 | // RPINR0bits.INT1R = 33; // Assign RE8/RPI33 to INT1 (input)
|
27 | |
28 | __builtin_write_OSCCONL(OSCCON | 0x40); // Lock PPS |
Weiß jemand ob man das mit dem RP137 so machen kann? Gruß dat Beast