REDAC HybridController
Firmware for LUCIDAC/REDAC Teensy
Loading...
Searching...
No Matches
ctrlblock.h
Go to the documentation of this file.
1// Copyright (c) 2024 anabrid GmbH
2// Contact: https://www.anabrid.com/licensing/
3//
4// SPDX-License-Identifier: MIT OR GPL-2.0-or-later
5
6#include <Arduino.h>
7#include <block/ctrlblock.h>
8#include <bus/functions.h>
9#include <chips/SR74HCT595.h>
10#include <entity/meta.h>
11#include <entity/hardware.h>
12
13#include <bus/functions.h>
14
15namespace blocks {
16
18
20protected:
21 static const SPISettings F_SYNC_SPI_SETTINGS;
22
23 // TODO
27
28public:
29 CTRLBlockHAL_V_1_0_2(bus::addr_t block_address);
30
31 bool write_adc_bus_muxers(ADCBus adc_bus) override;
32
33 bool write_sync_id(uint8_t id) override;
34
35};
36
37} // namespace blocks
const functions::SR74HCT595 f_adc_mux
Definition ctrlblock.h:24
const functions::SyncFunction f_sync
Definition ctrlblock.h:26
bool write_adc_bus_muxers(ADCBus adc_bus) override
Definition ctrlblock.cpp:29
const functions::TriggerFunction f_adc_mux_latch
Definition ctrlblock.h:25
static const SPISettings F_SYNC_SPI_SETTINGS
Definition ctrlblock.h:21
CTRLBlockHAL_V_1_0_2(bus::addr_t block_address)
Definition ctrlblock.cpp:23
bool write_sync_id(uint8_t id) override
Definition ctrlblock.cpp:38
The SR74HCT595 is an 8-Bit Shift Register with 3-State Output Registers.
Definition SR74HCT595.h:15
A trigger function exploits the fact that setting an address on the bus triggers an action (TODO: Is ...
Definition functions.h:33