Add support for Uno R4 Minima + WIFI #595
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds support for Uno R4 Minima + WIFI
Closes #590
Compiler options
It looks like the compiler options used to specify the R4 Minima and R4 WIFI are ARDUINO_UNOR4_MINIMA and ARDUINO_UNOR4_WIFI respectively.
Explanation of each definition
CBI and SBI
Clear Bit In and Set Bit In macros.
I am not 100% confident these are the correct implementations over
digitalWrite(bitmask, LOW)
.pulse_high and pulse_low
These are the same for all board variants given the CBI+SBI are correct.
Clear Port and Set Port
Also the same as for all other board variants.
Swap and fontbyte
The
swap
macro conflicts with the definition intuple.h
, which is included in the Uno R4's implementation ofSPI.h
. However,swap
doesn't seem to be used anywhere else in this repo, so I did not define it here.fontbyte
is also not used in this repo but it isn't causing any problems so I left it alone.Register types
These seem to be the only definitions that are actually used anywhere in this repo
I initially thought that since the Renesas RA4M1 is a 32 bit CPU, the registers would be
uint32_t
, but that throws an error at compile time suggesting they areuint16_t
registers. Usinguint16_t
compiles without issue.This is currently untested!
My camera modules haven't arrived yet. This change was sufficient to compile the examples but I do not know whether it works with the camera yet!