WSAL10771 – RS485 CAN Shield/en
Erscheinungsbild
Documentation notice: This technical documentation was independently rewritten from an archived supplier source. Check technical details and commands against the product version and manufacturer documentation before use.
Summary
A concise technical introduction to the Waveshare RS485 CAN Shield for NUCLEO/XNUCLEO boards, covering the MAX3485 and SN65HVD230 chip functions, pin mapping, and example programs for transmitting and receiving.
Related products at JW Tech
Technical overview
- The shield uses the standard Arduino header and is compatible with UNO, Leonardo, NUCLEO, and XNUCLEO boards.
- RS485 function is provided by the MAX3485 transceiver (3.3 V), operating in half-duplex mode; A and B are the differential signal pins.
- CAN function is provided by the TI SN65HVD230 (3.3 V), offering high-speed, slope, and wait modes controlled via the RS pin.
- On the Xnucleo, D14 (PB9) and D15 (PB8) default to CAN TX/RX; remapping to CAN1 requires GPIO_PinRemapConfig(GPIO_Remap1_CAN1, ENABLE).
- D7 (PA8) controls RS485 direction: high level = transmit, low level = receive.
- D8 (PA9) and D2 (PA10) are UART1 TX/RX; jumper JP4 can switch to UART2 (D0/D1).
- Two shields are wired together by connecting CANH to CANH and CANL to CANL, and A to A and B to B.
- Example code runs under mbed + STM32 library; CAN uses CAN_Transmit / CAN_Receive, while RS485 uses Serial objects (printf/scanf).
Commands and examples – verify before use:
GPIO_PinRemapConfig(GPIO_Remap1_CAN1, ENABLE);
CAN_Config();
CAN_Transmit(CAN1, &TxMessage)
CAN_Receive(CAN1, CAN_FIFO0, &RxMessage)
RS485.printf(...)
RS485.scanf("%s", s)
Notes and version constraints
- The shield requires a 3.3 V supply; on UNO/Leonardo the CAN function cannot be used due to hardware limitations.
- Remapping PB9/PB8 to CAN1 is version-sensitive and must be set in firmware.
- Jumper JP4 must be configured correctly when using UART2 (D0/D1) as the RS485 serial port.
- The demo programs assume a specific Xnucleo-F103RB with STM32F103R; compatibility with other MCUs is not guaranteed.
- No safety, certification, or warranty information is present in the source – do not make assumptions.
Source and revision record
- RS485 CAN Shield - Waveshare Wiki
- Source revision: 69188
- Captured: 2026-08-30T02:40:09+00:00
- SHA-256:
20376c75164b30b97179ee73f32e2f50ed8427647907bb4ccbcb35ed646f09a3