Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
boards:due [2022/10/25 10:36]
127.0.0.1 external edit
boards:due [2022/12/15 22:20] (current)
darron [Programming]
Line 1: Line 1:
 ==== Arduino Due ==== ==== Arduino Due ====
 +<wrap right>
 +{{boards:arduino-due.jpg?100}}
 +</wrap>
  
 The Due is a larger form factor Arduino board containing a ATSAM3X8E ARM Cortex-M3 processor The Due is a larger form factor Arduino board containing a ATSAM3X8E ARM Cortex-M3 processor
 running at 84MHz. 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=== ===Programming===
 +
 +==SAM BA==
 <wrap right> <wrap right>
 {{:boards:due.jpg?200}} {{:boards:due.jpg?200}}
 </wrap> </wrap>
  
-==SAM BA== 
  
 SAM BA is the ROM based bootloader found on the processor and SAM BA is the ROM based bootloader found on the processor and
 is connected to via the programming port. is connected to via the programming port.
- 
-The controller on the programming port switches to bootloader 
-mode when the port is opened at 1200 baud. 
  
 [[tools:bossa|BOSSA]] [[tools:bossa|BOSSA]]
  
 ==JTAG== ==JTAG==
 +<wrap right>
 +{{:tools:jlinkedu.jpg?100}}
 +\\ \\
 +{{:interfaces:usbocdh.jpg?200}}
 +</wrap>
 +
 +
 +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.
 +
 +<code>
 +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 utilises the miniature header and can be used with the JLink +jtag 
-EDU Mini.+cortex_m reset_config sysresetreq
  
-[[tools:segger|Segger J-Link]]+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.cputarget has 6 breakpoints, 4 watchpoints 
 +Info : starting gdb server for sam3.cpu on 3333 
 +Info : Listening on port 3333 for gdb connections 
 +</code>
  
 +<code>
 +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
 +</code>
 ===Resources== ===Resources==