==== Arduino Due ==== {{boards:arduino-due.jpg?100}} The Due is a larger form factor Arduino board containing a ATSAM3X8E ARM Cortex-M3 processor running at 84MHz. There are two USB connectors on this board. One is labelled the native port which is a direct connection to the processor. This allows the MCU to become a USB device in its own right. The other port called the programming port connects to a serial bridge for updating the firmware and it also allows regular UART communication. ===Programming=== ==SAM BA== {{:boards:due.jpg?200}} SAM BA is the ROM based bootloader found on the processor and is connected to via the programming port. [[tools:bossa|BOSSA]] ==JTAG== {{:tools:jlinkedu.jpg?100}} \\ \\ {{:interfaces:usbocdh.jpg?200}} JTAG utilises the miniature header and can be used with the [[tools:segger|JLink EDU Mini]]. With an adapter the [[interfaces:usbocdh|Olimex UCD USB H]] can also be utilised. openocd -f "interface/ftdi/olimex-arm-usb-ocd-h.cfg" -c "adapter speed 4000" -c "transport select jtag" -f "target/at91sam3XXX.cfg" Open On-Chip Debugger 0.12.0-rc2+dev-00012-g4e077fdda (2022-11-12-16:05) Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html adapter speed: 4000 kHz jtag cortex_m reset_config sysresetreq Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections Info : clock speed 500 kHz Info : JTAG tap: sam3.cpu tap/device found: 0x4ba00477 (mfg: 0x23b (ARM Ltd), part: 0xba00, ver: 0x4) Info : [sam3.cpu] Cortex-M3 r2p0 processor detected Info : [sam3.cpu] target has 6 breakpoints, 4 watchpoints Info : starting gdb server for sam3.cpu on 3333 Info : Listening on port 3333 for gdb connections gdb-multiarch (gdb) set architecture armv7 (gdb) target extended-remote localhost:3333 (gdb) info registers r0 0x1ff 511 r1 0x8000000 134217728 r2 0x1 1 r3 0x20070e38 537333304 r4 0x3e8 1000 r5 0x2711 10001 r6 0x81d8c 531852 r7 0x93cdc71 154983537 r8 0x2007002c 537329708 r9 0xd844d7c0 -666576960 r10 0x2358288a 592980106 r11 0x314f2ac3 827271875 r12 0xa8 168 sp 0x20087fd8 0x20087fd8 lr 0x8090b 526603 pc 0x8090a 0x8090a xPSR 0x81000000 -2130706432 msp 0x20087fd8 0x20087fd8 psp 0x4921e0e0 0x4921e0e0 primask 0x0 0 basepri 0x0 0 faultmask 0x0 0 control 0x0 0 ===Resources== [[https://playground.arduino.cc/Bootloader/DueBootloaderExplained/|Due bootloader]] [[https://www.microchip.com/en-us/product/ATSAM3X8E|Microchip ATSAM3X8E]]