Commit Graph

114 Commits

Author SHA1 Message Date
Savanni D'Gerinel bda8637c08 Allow passing an MCU description to reprocess just that one file.
This is a useful convenience for debugging one particular processor
2023-04-02 13:20:16 -04:00
Savanni D'Gerinel f17af2ba44 Resolve ambiguities with the timer/counter code
The goal was to add attiny85, but this ended up adding a lot more, too. The problem was with the TC16 module, which seems to be a bit ambiguous between the hardware description file and the datasheet.
2023-04-02 13:14:50 -04:00
Savanni D'Gerinel 8235d34f95 Add CS, PDI, and PDO pins
This has the side effect of adding atmega32u4 and atmega16u4
2023-04-02 11:37:13 -04:00
Savanni D'Gerinel f516e1216b Rename MISO/MOSI to SerialDataIn and SerialDataOut 2023-04-02 11:35:35 -04:00
Savanni D'Gerinel d2b11bceb8 Add a flake for rust-avr 2022-10-30 13:57:46 -04:00
Geert Stappers c057499975 [CI] git revert e6167ec6
This reverts commit e6167ec647.

Revert "[CI] Pin the nightly version in the Dockerfile to one that is working"

Because nightly is working again (since a couple of weeks).
2022-06-29 15:35:04 +02:00
Geert Stappers 61a8e0d144 Fix delay dependency to git revision 849918a8dfb2
So we can test it with `blink` before a "crate" of `delay` is published.
2022-06-16 21:44:03 +02:00
Geert Stappers c113fc881e Cargo.toml: more semver for avr_delay
In an attempt to publish it. Current error:
| $ AVR_CPU_FREQUENCY_HZ=8_000_000 cargo +nightly publish --target ./avr-atmega328p.json -Z build-std=core
|     Updating crates.io index
|    Packaging ruduino v0.4.0 (/home/gs0604/src/rust/RustAVR/ruduino)
| error: failed to prepare local package for uploading
|
| Caused by:
|   failed to select a version for the requirement `avr_delay = "^0.4"`
|   candidate versions found which didn't match: 0.3.2, 0.3.1, 0.3.0, ...
|   location searched: crates.io index
|   required by package `ruduino v0.4.0 (/home/gs0604/src/rust/RustAVR/ruduino)`
2022-06-08 15:07:50 +02:00
Geert Stappers ba9e78840c Fixed warning unused no-compiler-rt
The
  warning: target json file contains unused fields: no-compiler-rt
is now gone.
2022-06-08 14:57:40 +02:00
Geert Stappers a33d38a755 Switching from llvm_asm!() to asm!()
Macro llvm_asm is replace by asm.
This a reason to increase the version number.
2022-06-08 12:21:34 +02:00
Geert Stappers 6fec9ca38f features removed
as adviced by
  rustc --explain E0557
2022-06-08 12:21:34 +02:00
Geert Stappers 5c1fcb5add delay crate via git
Because my request for uploading Rust AVR crates is still pending.
( https://github.com/avr-rust/delay/issues/19 )
2022-06-08 12:21:34 +02:00
Geert Stappers da80c65e66
Merge pull request #45 from mbuesch/bash_pipefail
regenerate-cores.sh: Enforce bash
2022-06-08 12:19:27 +02:00
Michael Buesch 9be6f666eb regenerate-cores.sh: Enforce bash
Plain sh (like dash) doesn't support pipefail.
2022-05-21 22:53:37 +02:00
Geert Stappers 73215fda85
Use delay with asm
Because llvm_asm!  has been replaced by asm!
2022-05-21 10:36:41 +02:00
Dylan McKay e6ebb19037 Update the examples in the README to newer APIs 2021-02-02 02:25:32 +13:00
Dylan McKay 9dcdab852a Bump patch version to 0.3.2 2021-02-02 02:09:46 +13:00
Dylan McKay bf3c3d53ae Bump version of avr-config dependency 2021-02-02 02:08:52 +13:00
Dylan McKay f973881e60 Add 'avr_delay' as a dependency and expose crate 2021-02-02 01:50:14 +13:00
Dylan McKay 8d3c2466ce Use 'avr-config' for CPU frequency logic rather than reimplement it
This crate is also used by the 'delay' crate.
2021-02-02 01:45:41 +13:00
Dylan McKay 37884cc15f Bump minor version to 0.3.1 2021-01-29 21:46:57 +13:00
Dylan McKay ba6dec1b60 Move the target-cpu feature enable logic back into a build script
It didn't do anything in the core generator.
2021-01-29 21:46:01 +13:00
Dylan McKay 5557377087 Bump minor version to 0.3.0 2021-01-29 20:44:08 +13:00
Dylan McKay e6167ec647 [CI] Pin the nightly version in the Dockerfile to one that is working 2021-01-29 20:44:08 +13:00
Dylan McKay 3403b0c512 [CI] Set $AVR_CPU_FREQUENCY_HZ in the CI Dockerfile 2021-01-29 20:44:08 +13:00
Dylan McKay 372f774176 Run re-generate MCU cores script 2021-01-29 20:44:08 +13:00
Dylan McKay 0f333527c4 By default, the crate should only bother compiling the MCU being targeted 2021-01-29 20:44:08 +13:00
Dylan McKay fc6531296a Fix a 'invalid URL' rustdoc warning 2021-01-29 20:44:08 +13:00
Dylan McKay 9fbcff1f45 Regenerate the core files, committing them to VCS for the first time 2021-01-29 20:44:08 +13:00
Dylan McKay d6ab7fafd2 Improve the core generator so that it doesn't generate broken modules
Now that the core generator is set to generate modules for all
microcontrollers, we need to blacklist the ones it cannot yet handle.
2021-01-29 20:44:08 +13:00
Dylan McKay ccad9c169b Stop autogenerating config.rs file 2021-01-29 20:44:08 +13:00
Dylan McKay 0311381490 Remove autogenerated files from .gitignore file
Keep them in version control from now on.
2021-01-29 20:44:08 +13:00
Dylan McKay db36e8b0b7 Move the 'core_generator' from a build script to an in-repository tool
The core generator will be run manually before release.
2021-01-29 20:44:08 +13:00
Dylan McKay 309426d6a6 Bump patch version to 0.2.7 2020-10-30 01:08:15 +13:00
Dylan McKay 79dd2543a1 Use volatile write operation for 'set_mask_raw' function
The other methods had previously been updated to use volatile memops,
but due to an oversight this method was missed.

Fixes avr-rust/ruduino#31.

Thanks to @MalteT for reporting this issue.
2020-10-30 01:04:47 +13:00
Dylan McKay 41967edeb2 Bump patch version to 0.2.6 2020-08-24 20:49:03 +12:00
Paul Daniel Faria c11738600f Export ClockSource and WaveformGenerationMode for each timer 2020-08-24 20:48:32 +12:00
Dylan McKay 302095dca2 Bump the patch version to 0.2.5 2020-07-31 22:05:21 +12:00
Dylan McKay 3868326bca Replace regular memory read/writes with volatile memory read/writes
Fixes #21.
2020-07-31 22:04:16 +12:00
Dylan McKay c7dfee4617 Bump the patch version to 0.2.4 2020-07-26 03:25:52 +12:00
Jake Goulding fe0720d53e Always inline disabling interrupts
It never makes sense to call a function for these two instructions.

Additionally, I use this at system boot time to configure the stack
pointer itself. If this becomes a function call, then _everything_ is
broken!
2020-07-26 03:25:21 +12:00
Jake Goulding 74a824ba29
Merge pull request #25 from shepmaster/from-vs-into
Prefer implementing From instead of Into
2020-07-25 11:15:46 -04:00
Dylan McKay 63a15a865d Bump the patch version to 0.2.3 2020-07-26 03:10:24 +12:00
Dylan McKay 9904454521 Make the 'avr-std-stub' dependency optional
This way, downstream users may user their own panic handlers and
exception handling personality functions if they desire.
2020-07-26 03:08:40 +12:00
Dylan McKay 921b305cc1
Merge pull request #26 from shepmaster/optional-std
Make the std-stub optional
2020-07-26 03:04:15 +12:00
Jake Goulding c02a95baa5 Make the std-stub optional
This allows people to provide their own `panic_handler`
2020-07-25 10:05:35 -04:00
Jake Goulding 3148d18363 Prefer implementing From instead of Into 2020-07-25 10:04:35 -04:00
Dylan McKay 572fb8be7c
Merge pull request #20 from avr-rust/factor-out-std-stub
Factor out std stub into a crate
2020-07-26 00:40:25 +12:00
Dylan McKay 869113a693 Use the std stub definitions from the 'avr-std-stub' crate 2020-07-26 00:33:58 +12:00
Dylan McKay 6dfffaa3f9 Factor the 'std_stub' module out into the 'avr-std-stub' crate
This way it can be reused by other crates.
2020-07-26 00:24:09 +12:00