Sida 1 av 1

Port mapping på PIC24FJ64

Postat: 23 september 2015, 20:52:14
av AndersG

Kod: Markera allt

	/* Attach UART1 module to I/O pads */
	RPOR1 = 0x0003;		/* U1TX --> RP2 */
	RPINR18 = 0x1F03;	/* U1RX <-- RP3 */
Plockat rakt ur demoprogrammet för FatFS. Undrar litet över värdet 0x1F03.

Jag förstår att 03 mappar RX till RP3, men vad gör ettorna i övre byten? Enligt manualen är det för mappning av U1CTS som inte alls används här? Mappas den till RP15 som i denna koppling är en utpinne (CS). Borde det inte vara noll i stället?

Re: Port mapping på PIC24FJ64

Postat: 23 september 2015, 23:27:17
av sodjan
Notera att default reset läge är:

RPOR1 = 0x0000
RPINR18 = 0x1F00

Så det är väl bara för att låta övriga funktioner
vara som default...

Re: Port mapping på PIC24FJ64

Postat: 23 september 2015, 23:34:04
av lillahuset
Borde man inte då göra först en AND och sedan en OR för att få bittarna rätt.

Re: Port mapping på PIC24FJ64

Postat: 23 september 2015, 23:58:43
av sodjan
Ja, det skulle man kunna göra. Det skulle kanske vara mer
logiskt om default/reset läget motsvarades av just 0x0000, det
gör det lite enklare att se vad som är "icke default", så att säga.

Eller så använder man bit-kommandon och ändrar bara det som
är relevant och struntar i de övriga bitarna.

RPINR18bits.U1RXR4 = 0
RPINR18bits.U1RXR3 = 0
RPINR18bits.U1RXR2 = 0
RPINR18bits.U1RXR1 = 1
RPINR18bits.U1RXR0 = 1

Eller hur man nu skriver...

Man gör det sannolikt bara en gång i uppstarten så det spelar
ingen roll att det blir lite mer kod.

Re: Port mapping på PIC24FJ64

Postat: 24 september 2015, 06:53:59
av AndersG
Notera att default reset läge är:

RPOR1 = 0x0000
RPINR18 = 0x1F00
Ah, det missade jag! Tack Sodjan.