USBCAN ISO
Overview
The USBCAN ISO is an open-source USB to CAN 2.0B adapter board from can-module.com. More information can be found on the USBCAN iso website.
Hardware
The USBCAN board is equipped with a STM32F072CB microcontroller and features galvanic isolation
for protection, status LEDs, and a Boot0 jumper/pins for entering DFU mode.
Supported Features
The usbcan_iso board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo -
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
usbcan_iso/stm32f072xb target
On-target memory for this board target: 16 KiB of RAM, 128 KiB of Flash.
Type |
Location |
Description |
Compatible |
|---|---|---|---|
CPU |
on-chip |
ARM Cortex-M0 CPU1 |
|
ADC |
on-chip |
STM32 ADC1 |
|
CAN |
on-chip |
STM32 CAN controller1 |
|
Clock control |
on-chip |
STM32F0/G0 RCC (Reset and Clock controller)1 |
|
on-chip |
STM32 HSE Clock1 |
||
on-chip |
Generic fixed-rate clock provider4 |
||
on-chip |
STM32 LSE Clock1 |
||
on-chip |
STM32F0/F3 Main PLL1 |
||
Counter |
on-chip |
STM32 counters9 |
|
CRC |
on-chip |
STM32 CRC calculation unit1 |
|
DAC |
on-chip |
STM32 family DAC1 |
|
DMA |
on-chip |
STM32 DMA controller (V2bis) for the stm32F0, stm32F1 and stm32L1 soc families1 |
|
Flash controller |
on-chip |
STM32 Family flash controller1 |
|
GPIO & Headers |
on-chip |
STM32 GPIO Controller6 |
|
I2C |
on-chip |
STM32 I2C V2 controller2 |
|
Input |
on-chip |
STM32 Tocuh Sensing Controller (TSC) driver1 |
|
Interrupt controller |
on-chip |
ARMv6-M NVIC (Nested Vectored Interrupt Controller) controller1 |
|
on-chip |
STM32 External Interrupt Controller1 |
||
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
Memory controller |
on-chip |
STM32 Battery Backed RAM1 |
|
MTD |
on-chip |
STM32 flash memory1 |
|
NVMEM |
on-chip |
Fixed layout for Non-Volatile memory1 |
|
OTP memory |
on-chip |
STM32 embedded NVM OTP1 |
|
PHY |
on-chip |
This binding is to be used by all the usb transceivers which are built-in with USB IP1 |
|
Pin control |
on-chip |
STM32 Pin controller1 |
|
PWM |
on-chip |
STM32 PWM7 |
|
Reset controller |
on-chip |
STM32 Reset and Clock Control (RCC) Controller1 |
|
RTC |
on-chip |
STM32 RTC1 |
|
Sensors |
on-chip |
STM32 VREF+1 |
|
on-chip |
STM32 family TEMP node for production calibrated sensors with two calibration temperatures1 |
||
on-chip |
STM32 VBAT1 |
||
Serial controller |
on-chip |
STM32 USART4 |
|
SMbus |
on-chip |
STM32 SMBus controller2 |
|
SPI |
on-chip |
STM32 SPI controller with embedded Rx and Tx FIFOs2 |
|
Timer |
on-chip |
ARMv6-M System Tick1 |
|
on-chip |
STM32 timers9 |
||
USB |
on-chip |
STM32 USB controller1 |
|
Watchdog |
on-chip |
STM32 watchdog1 |
|
on-chip |
STM32 system window watchdog1 |
System Clock
The STM32F072CB PLL is driven by an external crystal oscillator (HSE) running at 8 MHz and configured to provide a system clock of 48 MHz.
Programming and Debugging
The usbcan_iso board supports the runners and associated west commands listed below.
| flash | debug | reset | attach | rtt | debugserver | |
|---|---|---|---|---|---|---|
| dfu-util | ✅ (default) | |||||
| jlink | ✅ | ✅ (default) | ✅ | ✅ | ✅ | ✅ |
Build and flash applications as usual (see Building an Application and Run an Application
for more details). If flashing via USB DFU, short pins Boot0 on the USBCAN board in
order to enter the built-in DFU mode.
Here is an example for the Blinky application.
# From the root of the zephyr repository
west build -b usbcan_iso samples/basic/blinky
west flash