Skip to content

GPIO API design #2

@zsup

Description

@zsup

Quote @m-mcgowan from this post on the community:

  • The user-facing API will be idiomatic rust, making effective use of traits. Traits will allow the capabilities of the system resources to be described and checked at compile time. For example, not all pins support PWM - traits will capture this information so attempts to use PWM on a pin that doesn't support it would result in a compiler error.
  • we'll consider using parts of zinc.rs that allow bare metal interaction with the MCU, to provide an equivalent of the CMSIS API that C++ developers have access to on our platform.
  • for discussion: will the user API be object-oriented (OO), functional, procedural? Wiring++2 and original Wiring1 are examples of OO and procedural API paradigms.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions