AllenNeuralDynamics / AllenNeuralDynamics/harp.device.cuttlefish

Interface Overhaul

Aperta
#31 4 commenti 0 reazioni 1 assegnatario Rivendicata da @Poofjunior Vedi su GitHub
MVP
Lingua principale
C#
Stelle
0
Fork
2
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

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.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.