configs/flipnclick-sam3x: Update README and some comments.
This commit is contained in:
parent
bc320c7878
commit
4227d11b6c
@ -332,35 +332,53 @@ Loading Code
|
|||||||
|
|
||||||
Installing the Arduino USB Driver under Windows:
|
Installing the Arduino USB Driver under Windows:
|
||||||
------------------------------------------------
|
------------------------------------------------
|
||||||
1. Download the Windows version of the Arduino software, not the 1.0.x
|
|
||||||
release but the latest 1.5.x that supports the Due. When the download
|
1. Download the Windows version of the Arduino software, not the 1.0.x
|
||||||
finishes, unzip the downloaded file.
|
release but the latest (1.5.x or later) that supports the Due. When
|
||||||
2. Connect the Due to your computer with a USB cable via the Programming port.
|
the download finishes, unzip the downloaded file.
|
||||||
|
|
||||||
|
In the current 1.8.x release, the Arduino Due support is not included
|
||||||
|
in the base package but can be added by selecting the "Boards Manager"
|
||||||
|
from the "Tools" menu.
|
||||||
|
|
||||||
|
2. Connect the Due to your computer with a USB cable via the Programming
|
||||||
|
port.
|
||||||
|
|
||||||
3. The Windows driver installation should fail.
|
3. The Windows driver installation should fail.
|
||||||
|
|
||||||
4. Open the Device Manger
|
4. Open the Device Manger
|
||||||
|
|
||||||
5. Look for the listing named "Ports (COM & LPT)". You should see an open
|
5. Look for the listing named "Ports (COM & LPT)". You should see an open
|
||||||
port named "Arduino Due Prog. Port".
|
port named "Arduino Due Prog. Port". Right click and select "Update
|
||||||
6 Select the "Browse my computer for Driver software" option.
|
driver".
|
||||||
|
|
||||||
|
6. Select the "Browse my computer for Driver software" option.
|
||||||
|
|
||||||
7. Right click on the "Arduino Due Prog. Port" and choose "Update Driver
|
7. Right click on the "Arduino Due Prog. Port" and choose "Update Driver
|
||||||
Software".
|
Software".
|
||||||
|
|
||||||
8. Navigate to the folder with the Arduino IDE you downloaded and unzipped
|
8. Navigate to the folder with the Arduino IDE you downloaded and unzipped
|
||||||
earlier. Locate and select the "Drivers" folder in the main Arduino folder
|
earlier. Locate and select the "Drivers" folder in the main Arduino folder
|
||||||
(not the "FTDI USB Drivers" sub-directory).
|
(not the "FTDI USB Drivers" sub-directory).
|
||||||
|
|
||||||
Uploading NuttX to the Due Using Bossa:
|
Loading NuttX to the Due Using Bossa:
|
||||||
---------------------------------------
|
-------------------------------------
|
||||||
I don't think this can be done because the Arduino software is so dedicated
|
|
||||||
to "sketches". However, Arduino uses BOSSA under the hood to load code and
|
Arduino uses BOSSA under the hood to load code and you can use BOSSA
|
||||||
you can use BOSSA outside of Arduino.
|
outside of Arduino.
|
||||||
|
|
||||||
Uploading NuttX to the Due Using Bossa:
|
|
||||||
---------------------------------------
|
|
||||||
Where do you get it?
|
Where do you get it?
|
||||||
Generic BOSSA installation files are available here:
|
|
||||||
http://sourceforge.net/projects/b-o-s-s-a/?source=dlp
|
|
||||||
|
|
||||||
However, DUE uses a patched version of BOSSA available as source code here:
|
Generic BOSSA installation files are available here:
|
||||||
https://github.com/shumatech/BOSSA/tree/arduino
|
https://github.com/shumatech/BOSSA (formerly at
|
||||||
|
http://sourceforge.net/projects/b-o-s-s-a/?source=dlp)
|
||||||
|
|
||||||
|
Pre-built binaries are available: https://github.com/shumatech/BOSSA/releases
|
||||||
|
|
||||||
|
The original Arduino DUE used a patched version of BOSSA available
|
||||||
|
as source code here: https://github.com/shumatech/BOSSA/tree/arduino
|
||||||
|
But that has most likely been incorporated into the main github
|
||||||
|
repository.
|
||||||
|
|
||||||
But, fortunately, since you already installed Arduino, you already have
|
But, fortunately, since you already installed Arduino, you already have
|
||||||
BOSSA installed. In my installation, it is here:
|
BOSSA installed. In my installation, it is here:
|
||||||
@ -368,7 +386,6 @@ Loading Code
|
|||||||
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools\bossac.exe
|
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools\bossac.exe
|
||||||
|
|
||||||
General Procedure
|
General Procedure
|
||||||
-----------------
|
|
||||||
|
|
||||||
1) Erase the FLASH and put the Due in bootloader mode
|
1) Erase the FLASH and put the Due in bootloader mode
|
||||||
2) Write the file to FLASH
|
2) Write the file to FLASH
|
||||||
@ -376,7 +393,7 @@ Loading Code
|
|||||||
4) Reset the DUE
|
4) Reset the DUE
|
||||||
|
|
||||||
Erase FLASH and Put the Due in Bootloader Mode
|
Erase FLASH and Put the Due in Bootloader Mode
|
||||||
----------------------------------------------
|
|
||||||
This is accomplished by simply configuring the programming port in 1200
|
This is accomplished by simply configuring the programming port in 1200
|
||||||
baud and sending something on the programming port. Here is some sample
|
baud and sending something on the programming port. Here is some sample
|
||||||
output from a Windows CMD.exe shell. NOTE that my Arduino programming
|
output from a Windows CMD.exe shell. NOTE that my Arduino programming
|
||||||
@ -388,7 +405,7 @@ Loading Code
|
|||||||
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools>mode com26:1200,n,8,1
|
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools>mode com26:1200,n,8,1
|
||||||
|
|
||||||
Status for device COM26:
|
Status for device COM26:
|
||||||
------------------------
|
|
||||||
Baud: 1200
|
Baud: 1200
|
||||||
Parity: None
|
Parity: None
|
||||||
Data Bits: 8
|
Data Bits: 8
|
||||||
@ -401,7 +418,7 @@ Loading Code
|
|||||||
DTR circuit: ON
|
DTR circuit: ON
|
||||||
RTS circuit: ON
|
RTS circuit: ON
|
||||||
|
|
||||||
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools>bossac.exe --port=COM26 -U false -i
|
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools>bossac.exe --port=COM26 --usb-port=false -i
|
||||||
Device : ATSAM3X8
|
Device : ATSAM3X8
|
||||||
Chip ID : 285e0a60
|
Chip ID : 285e0a60
|
||||||
Version : v1.1 Dec 15 2010 19:25:04
|
Version : v1.1 Dec 15 2010 19:25:04
|
||||||
@ -423,7 +440,7 @@ Loading Code
|
|||||||
|
|
||||||
Erasing, writing, and verifying FLASH with bossac:
|
Erasing, writing, and verifying FLASH with bossac:
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v -b nuttx.bin -R
|
$ bossac.exe --port=COM26 --usb-port=false -e -w -v -b nuttx.bin -R
|
||||||
Erase flash
|
Erase flash
|
||||||
Write 86588 bytes to flash
|
Write 86588 bytes to flash
|
||||||
[==============================] 100% (339/339 pages)
|
[==============================] 100% (339/339 pages)
|
||||||
@ -435,19 +452,19 @@ Loading Code
|
|||||||
|
|
||||||
Some things that can go wrong:
|
Some things that can go wrong:
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v -b nuttx.bin -R
|
$ bossac.exe --port=COM26 --usb-port=false -e -w -v -b nuttx.bin -R
|
||||||
No device found on COM26
|
No device found on COM26
|
||||||
|
|
||||||
This error means that there is code running on the Due already so the
|
This error means that there is code running on the Due already so the
|
||||||
bootloader cannot connect. Pressing reset and trying again
|
bootloader cannot connect. Press reset and try again
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v -b nuttx.bin -R
|
$ bossac.exe --port=COM26 --usb-port=false -e -w -v -b nuttx.bin -R
|
||||||
No device found on COM26
|
No device found on COM26
|
||||||
|
|
||||||
Sill No connection because Duo does not jump to bootloader after reset.
|
Sill No connection because Duo does not jump to bootloader after reset.
|
||||||
Press ERASE button and try again
|
Press ERASE button and try again
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v -b nuttx.bin -R
|
$ bossac.exe --port=COM26 --usb-port=false -e -w -v -b nuttx.bin -R
|
||||||
Erase flash
|
Erase flash
|
||||||
Write 86588 bytes to flash
|
Write 86588 bytes to flash
|
||||||
[==============================] 100% (339/339 pages)
|
[==============================] 100% (339/339 pages)
|
||||||
@ -457,13 +474,13 @@ Loading Code
|
|||||||
Set boot flash true
|
Set boot flash true
|
||||||
CPU reset.
|
CPU reset.
|
||||||
|
|
||||||
Other useful bossac things operations.
|
Other useful bossac operations.
|
||||||
-------------------------------------
|
|
||||||
a) Write code to FLASH don't change boot mode and don't reset. This lets
|
a) Write code to FLASH don't change boot mode and don't reset. This lets
|
||||||
you examine the FLASH contents that you just loaded while the bootloader
|
you examine the FLASH contents that you just loaded while the bootloader
|
||||||
is still active.
|
is still active.
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v --boot=0 nuttx.bin
|
$ bossac.exe --port=COM26 --usb-port=false -e -w -v --boot=0 nuttx.bin
|
||||||
Write 64628 bytes to flash
|
Write 64628 bytes to flash
|
||||||
[==============================] 100% (253/253 pages)
|
[==============================] 100% (253/253 pages)
|
||||||
Verify 64628 bytes of flash
|
Verify 64628 bytes of flash
|
||||||
@ -472,23 +489,23 @@ Loading Code
|
|||||||
|
|
||||||
b) Verify the FLASH contents (the bootloader must be running)
|
b) Verify the FLASH contents (the bootloader must be running)
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -v nuttx.bin
|
$ bossac.exe --port=COM26 --usb-port=false -v nuttx.bin
|
||||||
Verify 64628 bytes of flash
|
Verify 64628 bytes of flash
|
||||||
[==============================] 100% (253/253 pages)
|
[==============================] 100% (253/253 pages)
|
||||||
Verify successful
|
Verify successful
|
||||||
|
|
||||||
c) Read from FLASH to a file (the bootloader must be running):
|
c) Read from FLASH to a file (the bootloader must be running):
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false --read=4096 nuttx.dump
|
$ bossac.exe --port=COM26 --usb-port=false --read=4096 nuttx.dump
|
||||||
Read 4096 bytes from flash
|
Read 4096 bytes from flash
|
||||||
[==============================] 100% (16/16 pages)
|
[==============================] 100% (16/16 pages)
|
||||||
|
|
||||||
d) Change to boot from FLASH
|
d) Change to boot from FLASH
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false --boot=1
|
$ bossac.exe --port=COM26 --usb-port=false --boot=1
|
||||||
Set boot flash true
|
Set boot flash true
|
||||||
|
|
||||||
Uploading NuttX to the Due Using JTAG:
|
Uploading NuttX to the Due Using JTAG
|
||||||
-------------------------------------
|
-------------------------------------
|
||||||
|
|
||||||
The JTAG/SWD signals are brought out to a 10-pin header JTAG connector:
|
The JTAG/SWD signals are brought out to a 10-pin header JTAG connector:
|
||||||
|
@ -39,10 +39,10 @@
|
|||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
flash (rx) : ORIGIN = 0x00080000, LENGTH = 512K
|
flash (rx) : ORIGIN = 0x00080000, LENGTH = 512K
|
||||||
sram0 (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
sram0 (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
||||||
sram1 (rwx) : ORIGIN = 0x20080000, LENGTH = 32K
|
sram1 (rwx) : ORIGIN = 0x20080000, LENGTH = 32K
|
||||||
nfcram (rwx) : ORIGIN = 0x20100000, LENGTH = 4K
|
nfcram (rwx) : ORIGIN = 0x20100000, LENGTH = 4K
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(arm)
|
OUTPUT_ARCH(arm)
|
||||||
|
@ -3,24 +3,49 @@ README
|
|||||||
|
|
||||||
This README discusses issues unique to NuttX configurations for the
|
This README discusses issues unique to NuttX configurations for the
|
||||||
Mikroe Flip&Click STM32X board. This board is an Arduino-Due work-alike
|
Mikroe Flip&Click STM32X board. This board is an Arduino-Due work-alike
|
||||||
with four Mikroe Click bus interfaces. Like the Arduino DUE, this board
|
with four Mikroe Click bus interfaces. Like the Arduino-Due, this board
|
||||||
features the Atmel ATSAM3X8E MCU running at 84 MHz.
|
features the Atmel ATSAM3X8E MCU running at 84 MHz.
|
||||||
|
|
||||||
Contents
|
Contents
|
||||||
========
|
========
|
||||||
|
|
||||||
|
- STATUS
|
||||||
- Buttons and LEDs
|
- Buttons and LEDs
|
||||||
- Serial Consoles
|
- Serial Consoles
|
||||||
- Loading Code
|
- Loading Code
|
||||||
- Arduino Due-specific Configuration Options
|
- Flip&Click SAM3X-specific Configuration Options
|
||||||
- Configurations
|
- Configurations
|
||||||
|
|
||||||
|
STATUS
|
||||||
|
======
|
||||||
|
|
||||||
|
2018-01-07: Created the configuration. At present it does not work; I
|
||||||
|
believe because of tool-related issues. I do the following:
|
||||||
|
|
||||||
|
a) Open TeraTerm, select COM7 at 1200 baud, type a few ENTERs, and
|
||||||
|
close teraterm.
|
||||||
|
|
||||||
|
b) Execute the following command which claims to have successfully
|
||||||
|
written to FLASH.
|
||||||
|
|
||||||
|
/bossac.exe --info --debug --port COM7 --usb-port=0 --erase --write --verify -b nuttx.bin -R
|
||||||
|
|
||||||
|
But the code does not boot. There is no indication of life.
|
||||||
|
|
||||||
|
c) Repeat a) then
|
||||||
|
|
||||||
|
bossac.exe --info --debug --port COM7 --usb-port=0 --verify -b nuttx.bin
|
||||||
|
|
||||||
|
And it says that the content of the FLASH is not good.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Buttons and LEDs
|
Buttons and LEDs
|
||||||
================
|
================
|
||||||
|
|
||||||
Buttons
|
Buttons
|
||||||
-------
|
-------
|
||||||
There are no buttons on the Arduino Due board.
|
There are no buttons on the Flip&Click SAM3X board.
|
||||||
|
|
||||||
LEDs
|
LEDs
|
||||||
----
|
----
|
||||||
@ -88,7 +113,7 @@ Serial Consoles
|
|||||||
2) Mikroe Click Serial Shield. There are four Click bus connectors with
|
2) Mikroe Click Serial Shield. There are four Click bus connectors with
|
||||||
serial ports available as follows:
|
serial ports available as follows:
|
||||||
|
|
||||||
Click A: USART0 RXD0 and TXD0 which are, again, PD10 and PD11.
|
Click A: USART0 RXD0 and TXD0 which are, again, PA10 and PA11.
|
||||||
Click B: USART1 RXD1 and TXD1 which are PA12 and PA13, respectively.
|
Click B: USART1 RXD1 and TXD1 which are PA12 and PA13, respectively.
|
||||||
Click C: USART3 RXD3 and TXD3 which are PD5 and PD4, respectively.
|
Click C: USART3 RXD3 and TXD3 which are PD5 and PD4, respectively.
|
||||||
Click D: USART3 RXD3 and TXD3 which are, again, PD5 and PD4.
|
Click D: USART3 RXD3 and TXD3 which are, again, PD5 and PD4.
|
||||||
@ -103,37 +128,55 @@ Serial Consoles
|
|||||||
Loading Code
|
Loading Code
|
||||||
============
|
============
|
||||||
|
|
||||||
Installing the Arduino USB Driver under Windows:
|
Installing the Arduino USB Driver under Windows
|
||||||
------------------------------------------------
|
-----------------------------------------------
|
||||||
1. Download the Windows version of the Arduino software, not the 1.0.x
|
|
||||||
release but the latest 1.5.x that supports the Due. When the download
|
1. Download the Windows version of the Arduino software, not the 1.0.x
|
||||||
finishes, unzip the downloaded file.
|
release but the latest (1.5.x or later) that supports the Arduino
|
||||||
2. Connect the Due to your computer with a USB cable via the Programming port.
|
Due. When the download finishes, unzip the downloaded file.
|
||||||
|
|
||||||
|
In the current 1.8.x release, the Arduino Due support is not included
|
||||||
|
in the base package but can be added by selecting the "Boards Manager"
|
||||||
|
from the "Tools" menu.
|
||||||
|
|
||||||
|
2. Connect the Flip&Click to your computer with a USB cable via the
|
||||||
|
Programming port.
|
||||||
|
|
||||||
3. The Windows driver installation should fail.
|
3. The Windows driver installation should fail.
|
||||||
|
|
||||||
4. Open the Device Manger
|
4. Open the Device Manger
|
||||||
|
|
||||||
5. Look for the listing named "Ports (COM & LPT)". You should see an open
|
5. Look for the listing named "Ports (COM & LPT)". You should see an open
|
||||||
port named "Arduino Due Prog. Port".
|
port named "Arduino Due Prog. Port". Right click and select "Update
|
||||||
6 Select the "Browse my computer for Driver software" option.
|
driver".
|
||||||
|
|
||||||
|
6. Select the "Browse my computer for Driver software" option.
|
||||||
|
|
||||||
7. Right click on the "Arduino Due Prog. Port" and choose "Update Driver
|
7. Right click on the "Arduino Due Prog. Port" and choose "Update Driver
|
||||||
Software".
|
Software".
|
||||||
|
|
||||||
8. Navigate to the folder with the Arduino IDE you downloaded and unzipped
|
8. Navigate to the folder with the Arduino IDE you downloaded and unzipped
|
||||||
earlier. Locate and select the "Drivers" folder in the main Arduino folder
|
earlier. Locate and select the "Drivers" folder in the main Arduino
|
||||||
(not the "FTDI USB Drivers" sub-directory).
|
folder (not the "FTDI USB Drivers" sub-directory).
|
||||||
|
|
||||||
Uploading NuttX to the Due Using Bossa:
|
Loading NuttX to the Flip&Click Using Bossa
|
||||||
---------------------------------------
|
-------------------------------------------
|
||||||
I don't think this can be done because the Arduino software is so dedicated
|
|
||||||
to "sketches". However, Arduino uses BOSSA under the hood to load code and
|
Arduino uses BOSSA under the hood to load code and you can use BOSSA
|
||||||
you can use BOSSA outside of Arduino.
|
outside of Arduino.
|
||||||
|
|
||||||
Uploading NuttX to the Due Using Bossa:
|
|
||||||
---------------------------------------
|
|
||||||
Where do you get it?
|
Where do you get it?
|
||||||
Generic BOSSA installation files are available here:
|
|
||||||
http://sourceforge.net/projects/b-o-s-s-a/?source=dlp
|
|
||||||
|
|
||||||
However, DUE uses a patched version of BOSSA available as source code here:
|
Generic BOSSA installation files are available here:
|
||||||
https://github.com/shumatech/BOSSA/tree/arduino
|
https://github.com/shumatech/BOSSA (formerly at
|
||||||
|
http://sourceforge.net/projects/b-o-s-s-a/?source=dlp)
|
||||||
|
|
||||||
|
Pre-built binaries are available: https://github.com/shumatech/BOSSA/releases
|
||||||
|
|
||||||
|
The original Arduino DUE used a patched version of BOSSA available
|
||||||
|
as source code here: https://github.com/shumatech/BOSSA/tree/arduino
|
||||||
|
But that has most likely been incorporated into the main github
|
||||||
|
repository.
|
||||||
|
|
||||||
But, fortunately, since you already installed Arduino, you already have
|
But, fortunately, since you already installed Arduino, you already have
|
||||||
BOSSA installed. In my installation, it is here:
|
BOSSA installed. In my installation, it is here:
|
||||||
@ -141,26 +184,25 @@ Loading Code
|
|||||||
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools\bossac.exe
|
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools\bossac.exe
|
||||||
|
|
||||||
General Procedure
|
General Procedure
|
||||||
-----------------
|
|
||||||
|
|
||||||
1) Erase the FLASH and put the Due in bootloader mode
|
1) Erase the FLASH and put the Flip&Click in bootloader mode
|
||||||
2) Write the file to FLASH
|
2) Write the file to FLASH
|
||||||
3) Configure to boot from FLASH
|
3) Configure to boot from FLASH
|
||||||
4) Reset the DUE
|
4) Reset the Flip&Click
|
||||||
|
|
||||||
|
Erase FLASH and Put the Flip&Click in Bootloader Mode
|
||||||
|
|
||||||
Erase FLASH and Put the Due in Bootloader Mode
|
|
||||||
----------------------------------------------
|
|
||||||
This is accomplished by simply configuring the programming port in 1200
|
This is accomplished by simply configuring the programming port in 1200
|
||||||
baud and sending something on the programming port. Here is some sample
|
baud and sending something on the programming port. Here is some sample
|
||||||
output from a Windows CMD.exe shell. NOTE that my Arduino programming
|
output from a Windows CMD.exe shell. NOTE that my Arduino programming
|
||||||
port shows up as COM26. It may be different on your system.
|
port shows up as COM7. It may be different on your system.
|
||||||
|
|
||||||
To enter boot mode, set the baud to 1200 and send anything to the
|
To enter boot mode, set the baud to 1200 and send anything to the
|
||||||
programming port:
|
programming port:
|
||||||
|
|
||||||
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools>mode com26:1200,n,8,1
|
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools>mode com26:1200,n,8,1
|
||||||
|
|
||||||
Status for device COM26:
|
Status for device COM7:
|
||||||
------------------------
|
------------------------
|
||||||
Baud: 1200
|
Baud: 1200
|
||||||
Parity: None
|
Parity: None
|
||||||
@ -174,29 +216,28 @@ Loading Code
|
|||||||
DTR circuit: ON
|
DTR circuit: ON
|
||||||
RTS circuit: ON
|
RTS circuit: ON
|
||||||
|
|
||||||
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools>bossac.exe --port=COM26 -U false -i
|
C:\Program Files (x86)\Arduino\arduino-1.5.2\hardware\tools>bossac.exe --port=COM7 --usb-port=false -i
|
||||||
Device : ATSAM3X8
|
Device : ATSAM3X8
|
||||||
Chip ID : 285e0a60
|
Version : v1.1 Dec 15 2010 19:25:04
|
||||||
Version : v1.1 Dec 15 2010 19:25:04
|
Address : 0x80000
|
||||||
Address : 524288
|
Pages : 2048
|
||||||
Pages : 2048
|
Page Size : 256 bytes
|
||||||
Page Size : 256 bytes
|
Total Size : 512KB
|
||||||
Total Size : 512KB
|
Planes : 2
|
||||||
Planes : 2
|
Lock Regions : 32
|
||||||
Lock Regions : 32
|
Locked : none
|
||||||
Locked : none
|
Security : false
|
||||||
Security : false
|
Boot Flash : false
|
||||||
Boot Flash : false
|
|
||||||
|
|
||||||
Writing FLASH and Setting FLASH Boot Mode
|
Writing FLASH and Setting FLASH Boot Mode
|
||||||
-----------------------------------------
|
|
||||||
In a Cygwin BaSH shell:
|
In a Cygwin BaSH shell:
|
||||||
|
|
||||||
export PATH="/cygdrive/c/Program Files (x86)/Arduino/arduino-1.5.2/hardware/tools":$PATH
|
export PATH="/cygdrive/c/Program Files (x86)/Arduino/arduino-1.5.2/hardware/tools":$PATH
|
||||||
|
|
||||||
Erasing, writing, and verifying FLASH with bossac:
|
Erasing, writing, and verifying FLASH with bossac:
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v -b nuttx.bin -R
|
$ bossac.exe --port=COM7 --usb-port=false -e -w -v -b nuttx.bin -R
|
||||||
Erase flash
|
Erase flash
|
||||||
Write 86588 bytes to flash
|
Write 86588 bytes to flash
|
||||||
[==============================] 100% (339/339 pages)
|
[==============================] 100% (339/339 pages)
|
||||||
@ -208,19 +249,19 @@ Loading Code
|
|||||||
|
|
||||||
Some things that can go wrong:
|
Some things that can go wrong:
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v -b nuttx.bin -R
|
$ bossac.exe --port=COM7 --usb-port=false -e -w -v -b nuttx.bin -R
|
||||||
No device found on COM26
|
No device found on COM7
|
||||||
|
|
||||||
This error means that there is code running on the Due already so the
|
This error means that there is code running on the Flip&Click already
|
||||||
bootloader cannot connect. Pressing reset and trying again
|
so the bootloader cannot connect. Press reset and try again
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v -b nuttx.bin -R
|
$ bossac.exe --port=COM7 --usb-port=false -e -w -v -b nuttx.bin -R
|
||||||
No device found on COM26
|
No device found on COM7
|
||||||
|
|
||||||
Sill No connection because Duo does not jump to bootloader after reset.
|
Sill No connection because the board does not jump to bootloader after
|
||||||
Press ERASE button and try again
|
reset. Set the baud to 1200 and send something then try again
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v -b nuttx.bin -R
|
$ bossac.exe --port=COM7 --usb-port=false -e -w -v -b nuttx.bin -R
|
||||||
Erase flash
|
Erase flash
|
||||||
Write 86588 bytes to flash
|
Write 86588 bytes to flash
|
||||||
[==============================] 100% (339/339 pages)
|
[==============================] 100% (339/339 pages)
|
||||||
@ -230,13 +271,13 @@ Loading Code
|
|||||||
Set boot flash true
|
Set boot flash true
|
||||||
CPU reset.
|
CPU reset.
|
||||||
|
|
||||||
Other useful bossac things operations.
|
Other useful bossac operations.
|
||||||
-------------------------------------
|
|
||||||
a) Write code to FLASH don't change boot mode and don't reset. This lets
|
a) Write code to FLASH don't change boot mode and don't reset. This lets
|
||||||
you examine the FLASH contents that you just loaded while the bootloader
|
you examine the FLASH contents that you just loaded while the bootloader
|
||||||
is still active.
|
is still active.
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -e -w -v --boot=0 nuttx.bin
|
$ bossac.exe --port=COM7 --usb-port=false -e -w -v --boot=0 nuttx.bin
|
||||||
Write 64628 bytes to flash
|
Write 64628 bytes to flash
|
||||||
[==============================] 100% (253/253 pages)
|
[==============================] 100% (253/253 pages)
|
||||||
Verify 64628 bytes of flash
|
Verify 64628 bytes of flash
|
||||||
@ -245,24 +286,24 @@ Loading Code
|
|||||||
|
|
||||||
b) Verify the FLASH contents (the bootloader must be running)
|
b) Verify the FLASH contents (the bootloader must be running)
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false -v nuttx.bin
|
$ bossac.exe --port=COM7 --usb-port=false -v nuttx.bin
|
||||||
Verify 64628 bytes of flash
|
Verify 64628 bytes of flash
|
||||||
[==============================] 100% (253/253 pages)
|
[==============================] 100% (253/253 pages)
|
||||||
Verify successful
|
Verify successful
|
||||||
|
|
||||||
c) Read from FLASH to a file (the bootloader must be running):
|
c) Read from FLASH to a file (the bootloader must be running):
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false --read=4096 nuttx.dump
|
$ bossac.exe --port=COM7 --usb-port=false --read=4096 nuttx.dump
|
||||||
Read 4096 bytes from flash
|
Read 4096 bytes from flash
|
||||||
[==============================] 100% (16/16 pages)
|
[==============================] 100% (16/16 pages)
|
||||||
|
|
||||||
d) Change to boot from FLASH
|
d) Change to boot from FLASH
|
||||||
|
|
||||||
$ bossac.exe --port=COM26 -U false --boot=1
|
$ bossac.exe --port=COM7 --usb-port=false --boot=1
|
||||||
Set boot flash true
|
Set boot flash true
|
||||||
|
|
||||||
Uploading NuttX to the Due Using JTAG:
|
Uploading NuttX to the Flip&Click Using JTAG
|
||||||
-------------------------------------
|
--------------------------------------------
|
||||||
|
|
||||||
The JTAG/SWD signals are brought out to a 10-pin header JTAG connector:
|
The JTAG/SWD signals are brought out to a 10-pin header JTAG connector:
|
||||||
|
|
||||||
@ -279,13 +320,16 @@ Loading Code
|
|||||||
9 GND GNDDetect
|
9 GND GNDDetect
|
||||||
10 MASTER-RESET nReset
|
10 MASTER-RESET nReset
|
||||||
|
|
||||||
You should be able to use a 10- to 20-pin adapter to connect a SAM-ICE
|
NOTE: The 10-pin JTAG connector is not populated on the Flip&Click SAM3X.
|
||||||
debugger to the Arduino Due. I have this Olimex adapter:
|
|
||||||
https://www.olimex.com/Products/ARM/JTAG/ARM-JTAG-20-10/ . But so far I
|
|
||||||
have been unable to get the get the SAM-ICE to communicate with the Due.
|
|
||||||
|
|
||||||
Arduino DUE-specific Configuration Options
|
You should be able to use a 10- to 20-pin adapter to connect a SAM-ICE
|
||||||
==========================================
|
debugger to the Flip&Click SAM3X. I have this Olimex adapter:
|
||||||
|
https://www.olimex.com/Products/ARM/JTAG/ARM-JTAG-20-10/ . But so far I
|
||||||
|
have been unable to get the get the SAM-ICE to communicate with the
|
||||||
|
Flip&Click.
|
||||||
|
|
||||||
|
Flip&Click SAM3X-specific Configuration Options
|
||||||
|
===============================================
|
||||||
|
|
||||||
CONFIG_ARCH - Identifies the arch/ subdirectory. This should
|
CONFIG_ARCH - Identifies the arch/ subdirectory. This should
|
||||||
be set to:
|
be set to:
|
||||||
@ -314,7 +358,7 @@ Arduino DUE-specific Configuration Options
|
|||||||
CONFIG_ARCH_BOARD - Identifies the configs/ subdirectory and
|
CONFIG_ARCH_BOARD - Identifies the configs/ subdirectory and
|
||||||
hence, the board that supports the particular chip or SoC.
|
hence, the board that supports the particular chip or SoC.
|
||||||
|
|
||||||
CONFIG_ARCH_BOARD=flipnclick-sam3x (for the Arduino Due development board)
|
CONFIG_ARCH_BOARD=flipnclick-sam3x (for the Flip&Click SAM3X development board)
|
||||||
|
|
||||||
CONFIG_ARCH_BOARD_name - For use in C code
|
CONFIG_ARCH_BOARD_name - For use in C code
|
||||||
|
|
||||||
@ -384,7 +428,7 @@ Arduino DUE-specific Configuration Options
|
|||||||
Configurations
|
Configurations
|
||||||
^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^
|
||||||
|
|
||||||
Each Arduino Due configuration is maintained in a sub-directory and
|
Each Flip&Click SAM3X configuration is maintained in a sub-directory and
|
||||||
can be selected as follow:
|
can be selected as follow:
|
||||||
|
|
||||||
tools/configure.sh [OPTIONS] flipnclick-sam3x/<subdir>
|
tools/configure.sh [OPTIONS] flipnclick-sam3x/<subdir>
|
||||||
@ -397,7 +441,8 @@ Configurations
|
|||||||
correct path to the directory than holds your toolchain binaries.
|
correct path to the directory than holds your toolchain binaries.
|
||||||
|
|
||||||
And then build NuttX by simply typing the following. At the conclusion of
|
And then build NuttX by simply typing the following. At the conclusion of
|
||||||
the make, the nuttx binary will reside in an ELF file called, simply, nuttx.
|
the make, the nuttx binary will reside in an ELF file called, simply,
|
||||||
|
nuttx.
|
||||||
|
|
||||||
make
|
make
|
||||||
|
|
||||||
|
@ -230,7 +230,7 @@
|
|||||||
*
|
*
|
||||||
* There are four Click bus connectors with serial ports available as follows:
|
* There are four Click bus connectors with serial ports available as follows:
|
||||||
*
|
*
|
||||||
* Click A: USART0 RXD0 and TXD0 which are, again, PD10 and PD11.
|
* Click A: USART0 RXD0 and TXD0 which are, again, PA10 and PA11.
|
||||||
* Click B: USART1 RXD1 and TXD1 which are PA12 and PA13, respectively.
|
* Click B: USART1 RXD1 and TXD1 which are PA12 and PA13, respectively.
|
||||||
* Click C: USART3 RXD3 and TXD3 which are PD5 and PD4, respectively.
|
* Click C: USART3 RXD3 and TXD3 which are PD5 and PD4, respectively.
|
||||||
* Click D: USART3 RXD3 and TXD3 which are, again, PD5 and PD4.
|
* Click D: USART3 RXD3 and TXD3 which are, again, PD5 and PD4.
|
||||||
|
@ -39,10 +39,10 @@
|
|||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
flash (rx) : ORIGIN = 0x00080000, LENGTH = 512K
|
flash (rx) : ORIGIN = 0x00080000, LENGTH = 512K
|
||||||
sram0 (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
sram0 (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
||||||
sram1 (rwx) : ORIGIN = 0x20080000, LENGTH = 32K
|
sram1 (rwx) : ORIGIN = 0x20080000, LENGTH = 32K
|
||||||
nfcram (rwx) : ORIGIN = 0x20100000, LENGTH = 4K
|
nfcram (rwx) : ORIGIN = 0x20100000, LENGTH = 4K
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(arm)
|
OUTPUT_ARCH(arm)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user