[hal] Add support for DMA to Java (#3158)

This commit is contained in:
Thad House
2021-06-14 19:56:42 -07:00
committed by GitHub
parent 85144e47ff
commit 4a36f86c81
39 changed files with 2013 additions and 97 deletions

View File

@@ -19,11 +19,16 @@
namespace frc {
class DMASample : public HAL_DMASample {
public:
HAL_DMAReadStatus Update(const DMA* dma, units::second_t timeout,
int32_t* remaining, int32_t* status) {
units::millisecond_t ms = timeout;
auto timeoutMs = ms.to<int32_t>();
return HAL_ReadDMA(dma->dmaHandle, this, timeoutMs, remaining, status);
enum class DMAReadStatus {
kOk = HAL_DMA_OK,
kTimeout = HAL_DMA_TIMEOUT,
kError = HAL_DMA_ERROR
};
DMAReadStatus Update(const DMA* dma, units::second_t timeout,
int32_t* remaining, int32_t* status) {
return static_cast<DMAReadStatus>(HAL_ReadDMA(
dma->dmaHandle, this, timeout.to<double>(), remaining, status));
}
uint64_t GetTime() const { return timeStamp; }