GithubHelp home page GithubHelp logo

Comments (1)

jannic avatar jannic commented on July 28, 2024

This is partly a design decision: Do we want to make it as easy as possible to write some one-off firmware using rp2040-hal? Then we should obviously provide those methods.

Or do we intentionally point to the more difficult to use embedded-hal methods? While it might seem strange at first, it has several advantages:

  • It makes code more portable. If you later decide to change the MCU you use, you can keep more of your application logic
  • It keeps the ecosystem more consistent. Ideally, if you find some HOWTO describing how to perform some task using MCU A, you can apply the same knowledge when using MCU B, if both use the embedded-hal traits
  • It reduces cognitive load if you switch between different HALs, eg. if your design contains multiple MCUs or you work on several projects at the same time

Of course, there are use cases where you really only need to toggle a few GPIO pins and don't care about portability. So it's not an easy decision, IMHO.

from rp-hal.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.