This is just support for the chip, no boards are currently supported.
However, you can use this target on a custom board.
Notes:
- This required a new runtime and machine implementation, because the
hardware is actually very different (and much nicer than older
AVRs!).
- I had to update gen-device-avr to support this chip. This also
affects the generated output of other AVRs, but I checked all chips
we support and there shouldn't be any backwards incompatible
changes.
- I did not implement peripherals like UART, I2C, SPI, etc because I
don't need them. That is left to do in the future.
You can flash these chips with only a UART and a 1kOhm resistor, which
is really nice (no special hardware needed). Here is the program I've
used for this purpose: https://pypi.org/project/pymcuprog/
25 строки
493 Б
JSON
25 строки
493 Б
JSON
{
|
|
"llvm-target": "avr",
|
|
"build-tags": ["avr", "avrtiny", "baremetal", "linux", "arm"],
|
|
"goos": "linux",
|
|
"goarch": "arm",
|
|
"gc": "conservative",
|
|
"linker": "ld.lld",
|
|
"scheduler": "none",
|
|
"rtlib": "compiler-rt",
|
|
"libc": "picolibc",
|
|
"default-stack-size": 256,
|
|
"cflags": [
|
|
"-Werror"
|
|
],
|
|
"ldflags": [
|
|
"-T", "targets/avrtiny.ld",
|
|
"--gc-sections"
|
|
],
|
|
"extra-files": [
|
|
"src/internal/task/task_stack_avr.S",
|
|
"src/runtime/asm_avr.S",
|
|
"targets/avrtiny.S"
|
|
],
|
|
"gdb": ["avr-gdb"]
|
|
}
|