Main Site Documentation

Are netduino 3 uart pins correct?


#1

When I read schematic of netduino 3 I have the following:
Goport1: TX : PD8, RX : PD9 // USART3
Goport2: TX : PE7, RX: PE6 // USART7
Goport3: TX: PE1, RX: PE0 // USART8
And onboard: TX: PC7, RX: PC6 // USART6

when I see Device.h in TinyClr port, I have the following:

#define INCLUDE_UART
#define STM32F4_UART_TX_BUFFER_SIZE 256
#define STM32F4_UART_RX_BUFFER_SIZE 512
#define STM32F4_UART_TX_PINS  { { PIN(A,  9), AF(7)   }, { PIN(D, 5), AF(7) }, { PIN(D,  8), AF(7) }, { PIN(A, 0), AF(8)   } }
#define STM32F4_UART_RX_PINS  { { PIN(A, 10), AF(7)   }, { PIN(D, 6), AF(7) }, { PIN(D,  9), AF(7) }, { PIN(A, 1), AF(8)   } }
#define STM32F4_UART_CTS_PINS { { PIN_NONE  , AF_NONE }, { PIN(D, 3), AF(7) }, { PIN(D, 11), AF(7) }, { PIN_NONE , AF_NONE } }
#define STM32F4_UART_RTS_PINS { { PIN_NONE  , AF_NONE }, { PIN(D, 4), AF(7) }, { PIN(D, 12), AF(7) }, { PIN_NONE , AF_NONE } }

It seems pins are different except for goport1. Is it just me who don’t understand Something, or pins are incorrect ?


#2

The pins in many of the ports have not been reviewed to be correct yet. We are, however, accepting pull requests.


#3

What is AF() value ?


#4

… in progress :wink:


#5

AF is the alternate function for the desired function on that pin as specified in the processor’s datasheet. AF(7) meaning alternate function 7.

For example, for the STM32F427VIT6 which the netduino3 uses, table 12 on page 74 of the datasheet specifies that USART1 TX and RX on PA9 and PA10 respectively use AF7. While if you wanted to use UART4 TX and RX on PA0 and PA1 (found on the same page), you’d need to use AF8.


#6

now i can expand Nucleo STM32F411RET6 based on the [datasheet] (http://www.st.com/content/ccc/resource/technical/document/datasheet/b3/a5/46/3b/b4/e5/4c/85/DM00115249.pdf/files/DM00115249.pdf/jcr:content/translations/en.DM00115249.pdf) for UART6 and SPI3,SPI4,SPI5 :smiley:
thanx for clarify