AllenNeuralDynamics / AllenNeuralDynamics/harp.device.cuttlefish

Interface Overhaul

Abierto
#31 4 comentarios 0 reacciones 1 asignado Reclamado por @Poofjunior Ver en GitHub
MVP
Lenguaje dominante
C#
Estrellas
0
Forks
2
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

To crystallize the overall function of the board, here's a summary:
* general purpose input/output (set/clear groups of pins configured to do so)
* input probing: produce events when specified pins change
* PWM output up to ~1-2KHz

To get there, let's rewrite the interface to reflect the features above and group functionality in the above ordering.

### GPIO Features
* `PortDir`
* `PortState`
* `PortSet`
* `PortClear`

### Edge Event Settings
* `EnableRisingEdgeEvents`
* `EnableFallingEdgeEvents`
* `RisingEdgeEvents`
* `FallingEdgeEvents`

### PWM Settings
* `PWMStart`
* bitmask. writing 1 starts the corresponding pwm output.
* `PWMStop`
* bitmask. writing 1 stops the corresponding pwm output.
* _maybe_: Issue `Event` when a PWM sequence completes if set to issue a finite number of pulses.
* `PWM0Settings`
* `offset_us` (`uint32_t`)
* `on_time_us` (`uint32_t`)
* `off_time_us` (`uint32_t`)
* `inverted` (`uint8_t`)
* ...
* `PWMNSettings`

### Errors
* `ErrorState`
* bitmask. Errors include:
* Schedule cannot keep up with PWM Settings.
* Cannot Dispatch Edge Events to the PC fast enough.
* Device is running in external-io-mode and has no software control of the pins.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.