- implement `tx()` in asm, does not work yet!
- enable TXC interrupt, to be woken when the uart is done
in order to power down. Alias the DRE interrupt.
- Rework `send_char()` and `send_str()`.
- Remove …_nosleep() and `panik()`.
- Better account for volatile-ness of buffer pointers.
- add calib values to `adc_conf`,
- double the size of `struct adc_conf`
- reduce the sape for `testdata`.
- implement the calibration with offset and scale.
- new config.cperiod: print configuration one in a while
- SEND_BATED: print `W` and `D` sensor words separately,
send `W` with config.
- testdata: do not wait for config.period.
- clock: dorp `trigger` from `T` record,
send it with debug `X` instead
- config version 4, sane order.
- adc `A`: do not send unused entries.
The RESRDY vector is never called, neither the SAMPRDY, when enabled.
No idea why. We do polling now.
No idea what wakes the CPU from sleep with STOP_MCLK.
- adc.h: adc_init(), disable inputs used for analog inputs.
- bate: PORTA → VPORTA, restore blinkenlight's bate_bit()
- config V2: add cpu_clk, remove config pointer indirection
- CLKCTRL: make extra sure we run at 10 MHz
→ regained telemetry at 2400 baud
- turn on LED while digitizing and transmitting
This compiles with an up to date toolchain pulled from git.
TODO:
- Use the SPI hardware to talk to the sensor.
- Send results via UART hardware.
- Setup the watchdog.
- Control power to the RF transmitter
- Light the LED.
- Readout the ADCs, thermistors.
- Readout the internal temperature sensor.