This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How do you choose an ARM family

How do I go about picking an architecture ? My first thoughts suggested Cortex M3 but the more I look into it the less sure I am.

Obviously I don't to go to the trouble of learning a new technology only to find that I've made a bad processor choice (ie nearly end of line). I've spent many hours looking at many websites and have yet to find any high-level stuff on choosing my first ARM device.

If there's one thing wrong with ARM its the almost infinite number of devices

I'm an embedded developer wanting to undertake my first ARM project, so I'm completely new to the ARM architecture. I want a low power device with serial, USB and some ADC channels.

Parents Reply Children
  • This thread quickly evolved into a kindergarten brawl, for no apparent reason.

    Why should I be required to give examples to something I'm not claiming?

    The probability of bugs is similar whoever wrote the code. A much used library from a manufactuer should - hopefully - be reasonably well-tested by all the users.

    But I was talking about the business risks of using a library you don't have the source code - and suitable license - for.

    With the source code, you can perform security reviews, looking for buffer overflows, resource leaks...

    With the source code (and most licenses), you can correct bugs without need to wait for a new official release, and without worrying about the supplier vanishing.

    With the source and a suitable license, you can not only fix any bugs, but also move the complete source code to new platforms.

    Since a chip manufacturer isn't likely to supply general libraries with full source and BSD, LGPL or similar licenses, you should be very careful about using them. You may end up with a very serious nose bleed.

    The CRTL can also be a bit problematic, but the advantage with the CRTL is that there exists a large number of suitable licensed C runtime libraries, so a company can replace printf(), strxxx(), time(), ... with alternative implementations without having to start from scratch, as long as the target has some safety margins in case the alternative implementation takes more code space, RAM or executes a bit slower.

  • With the source code (and most licenses), you can correct bugs without need to wait for a new official release, and without worrying about the supplier vanishing.
    A ticket machine was violating the J1708 protocol and created many errors on the bus. When the manufacturer was approached they, of course, replied "no such thing". After being shown proof they stated "this will be fixed in the next release out in October next year (my emphasis).

    Erik

  • "Why should I be required to give examples to something I'm not claiming?"

    sounds like you are unclaiming what you just claimed. what do you think this guy/gal was claiming when s/he said:

    "For commercial use, you should have full access to the source code, and a license that allows you to run the code on _any_ processor, even if different manufacturer or non-ARM architecture."

    no answer is required, :).