Ardix is ARM exclusive (at least for now)
This commit is contained in:
parent
2f3fe766f5
commit
cb1b6c0848
1 changed files with 21 additions and 15 deletions
36
README.md
36
README.md
|
@ -2,32 +2,34 @@
|
|||
|
||||
This is the source tree of Ardix, a microkernel for various Arduino boards that implements some core
|
||||
concepts of the Unix philosophy. Please note that this project is not affiliated with or endorsed
|
||||
by Arduino s.r.l. in any way.
|
||||
by Arduino s.r.l. in any way. Only ARM-based boards are supported at the moment.
|
||||
|
||||
## License
|
||||
|
||||
Ardix is distributed under the terms of the BSD 3-clause license.
|
||||
Ardix is distributed under the terms of the BSD-3-Clause ("New" or "Revised") license.
|
||||
See the `LICENSE` file for details.
|
||||
|
||||
## Compiling
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- The AVR tools, including
|
||||
* `avr-gcc`
|
||||
* `avr-ld`
|
||||
* `avr-objcopy`
|
||||
- The GNU toolchain, including
|
||||
* `arm-gcc`
|
||||
* `arm-ld`
|
||||
* `arm-objcopy`
|
||||
- GNU `make`
|
||||
- A programmer (`bossac` recommended)
|
||||
- A Unix-like shell (sorry Microsoft lackeys, you can use the Windows Subsystem for Linux for
|
||||
compiling but not for flashing)
|
||||
compiling but probably not for flashing)
|
||||
|
||||
### Configuration
|
||||
|
||||
Right now, you have to manually define environment variables:
|
||||
|
||||
- `AVR_CC`: Full path to `avr-gcc`. If unset, we will search for it in your PATH.
|
||||
- `AVR_LD`: Full path to `avr-ld`. If unset, we will search for it in your PATH.
|
||||
- `AVR_OBJCOPY`: Full path to `avr-objcopy`. If unset, we will search for it in your PATH.
|
||||
- `ARM_CC`: Full path to `arm-none-eabi-gcc`. If unset, we will search for it in your PATH.
|
||||
- `ARM_LD`: Full path to `arm-none-eabi-ld`. If unset, we will search for it in your PATH.
|
||||
- `ARM_OBJCOPY`: Full path to `arm-none-eabi-objcopy`.
|
||||
If unset, we will search for it in your PATH.
|
||||
- `ARCH`: Codename for the target architecture. This is mandatory.
|
||||
The following architectures are currently supported:
|
||||
* `at91sam3x8e` (Arduino Due)
|
||||
|
@ -36,17 +38,21 @@ Right now, you have to manually define environment variables:
|
|||
|
||||
### Build
|
||||
|
||||
To build the EEPROM, execute the following command:
|
||||
To build the EEPROM image, execute the following command:
|
||||
|
||||
```shell
|
||||
# Replace <target> with one of the target architectures from the list above
|
||||
ARCH='<target>' make ardix.hex
|
||||
ARCH='<target>' make ardix.bin
|
||||
```
|
||||
|
||||
This will create the `ardix.hex` file, which can be passed to `avrdude` for flashing:
|
||||
This will create the `ardix.bin` file, which can be passed to `bossac` for flashing.
|
||||
If you are using an Arduino DUE (at91sam3x8e), make sure to connect the USB cable to the programmer
|
||||
port (the one closer to the power jack).
|
||||
|
||||
```shell
|
||||
avrdude -vvv -C '<config>' -p '<target>' -c '<programmer-id>' -P '<port>' -b '<baudrate>' -D -U flash:w:ardix.hex
|
||||
# Replace <tty> with the name of the tty device in /dev
|
||||
# that is connected to your Arduino
|
||||
bossac -e -w -v -b -a --port=<tty> ardix.bin
|
||||
```
|
||||
|
||||
Please refer to `man avrdude` for more information on how to use it.
|
||||
Please refer to `bossac --help` for more information on how to use it.
|
||||
|
|
Loading…
Reference in a new issue