2022-03-06 18:18:09 +01:00
|
|
|
# Clock Generator [![status-badge](https://ci.onders.org/api/badges/finga/clock_generator/status.svg)](https://ci.onders.org/finga/clock_generator)
|
2021-10-12 18:42:07 +02:00
|
|
|
|
2022-03-29 17:29:13 +02:00
|
|
|
A simple board to control an Si5351 clock generator board with the
|
|
|
|
TWI. Though, this is not limited to the Si5351 board as it is designed
|
|
|
|
to be universal usable.
|
2021-10-12 18:42:07 +02:00
|
|
|
|
2022-03-29 17:29:13 +02:00
|
|
|
## Board
|
2022-04-06 17:45:23 +02:00
|
|
|
The board is populated with an ATmega328p, a display and its
|
2022-03-29 17:29:13 +02:00
|
|
|
backlight driver, a switchable rotary encoder and powered by a mini
|
|
|
|
USB port. All unneeded MCU pins are accessible via pin headers.
|
2021-10-12 18:42:07 +02:00
|
|
|
|
2022-04-06 17:45:23 +02:00
|
|
|
## Firmware
|
|
|
|
Currently there are two different firmwares. The older one which is
|
|
|
|
written in C and is not finished, and the newer one which is in an
|
|
|
|
early but functioning state and written in Rust.
|
|
|
|
|
|
|
|
### The Rust Firmware
|
|
|
|
To flash the firmware, connect the ICSP pins of the board to the
|
|
|
|
programmer and inside the `firmware/rust/` directory run `cargo make
|
|
|
|
all`. This burns the fuses, writes the the default values to the
|
|
|
|
eeprom and flashes the firmware.
|