aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/machine/board_nucleol552ze.go
AgeCommit message (Collapse)Author
2022-12-19build: drop deprecated build tagsYurii Soldak
2022-07-15machine: reorder pin definitions to improve pin list on tinygo.orgAyke van Laethem
2022-02-28Revert "all: move stm32 files to separate repository"sago35
This reverts commit 644356c220ed88f110d01300f671a170cd36eb04.
2022-02-18all: move stm32 files to separate repositoryAyke van Laethem
2022-02-04all: update build constraints to Go 1.17Ayke van Laethem
Do it all at once in preparation for Go 1.18 support. To make this commit, I've simply modified the `fmt-check` Makefile target to rewrite files instead of listing the differences. So this is a fully mechanical change, it should not have introduced any errors.
2021-06-25all: add a flag to the command line to select the serial implementationAyke van Laethem
This can be very useful for some purposes: * It makes it possible to disable the UART in cases where it is not needed or needs to be disabled to conserve power. * It makes it possible to disable the serial output to reduce code size, which may be important for some chips. Sometimes, a few kB can be saved this way. * It makes it possible to override the default, for example you might want to use an actual UART to debug the USB-CDC implementation. It also lowers the dependency on having machine.Serial defined, which is often not defined when targeting a chip. Eventually, we might want to make it possible to write `-target=nrf52` or `-target=atmega328p` for example to target the chip itself with no board specific assumptions. The defaults don't change. I checked this by running `make smoketest` before and after and comparing the results.
2021-05-13machine: define Serial as the default outputAyke van Laethem
Previously, the machine.UART0 object had two meanings: - it was the first UART on the chip - it was the default output for println These two meanings conflict, and resulted in workarounds like: - Defining UART0 to refer to the USB-CDC interface (atsamd21, atsamd51, nrf52840), even though that clearly isn't an UART. - Defining NRF_UART0 to avoid a conflict with UART0 (which was redefined as a USB-CDC interface). - Defining aliases like UART0 = UART1, which refer to the same hardware peripheral (stm32). This commit changes this to use a new machine.Serial object for the default serial port. It might refer to the first or second UART depending on the board, or even to the USB-CDC interface. Also, UART0 now really refers to the first UART on the chip, no longer to a USB-CDC interface. The changes in the runtime package are all just search+replace. The changes in the machine package are a mixture of search+replace and manual modifications. This commit does not affect binary size, in fact it doesn't affect the resulting binary at all.
2021-05-13machine: make UART objects pointer receiversAyke van Laethem
This means that machine.UART0, machine.UART1, etc are of type *machine.UART, not machine.UART. This makes them easier to pass around and avoids surprises when they are passed around by value while they should be passed around by reference. There is a small code size impact in some cases, but it is relatively minor.
2021-03-24stm32: i2c implementation for F7, L5 and L4 MCUsKenneth Bell
2021-03-23stm32: separate altfunc selection for UART Tx/RxKenneth Bell
This is needed for stm32l432 nucleo with different altfun for tx and rx
2021-02-16nucleol552ze: implementation with CLOCK, LED, and UARTKenneth Bell