What's next in embedded after C

Discussion in 'Embedded Systems and Microcontrollers' started by aamirali, Feb 11, 2014.

  1. aamirali

    Thread Starter Member

    Feb 2, 2012
    I have learned C & doing programming in C for making new projects.
    What next after it in embedded, should I learn C++ or any other language keeping in mind its embedded relation.
  2. ErnieM

    AAC Fanatic!

    Apr 24, 2011
    C is still the rulling compiler for embedded apps. C++ is a very minor playa as it demands a heap RAM area, a place it can get small and release chunks of memory to store things (mostly "objects"). Micros do not do this very well, the smallest almost not at all. For example, you just about have to move up to the PIC32 to use C++ in a PIC.

    That said, it doesn't hurt your brain to learn anything new. Quite the opposite in fact.
  3. Potato Pudding

    Well-Known Member

    Jun 11, 2010
    I would say that the next things in embedded that you want to learn are - not in any particular order.

    • Hardware integrations. Learn new areas where the micros can be used for control. To properly work with embedded design you need to really understand hardware including stuff like mechanical systems, hydropneumatics, optics, and all of the circuitry that fits between the MCU and the world it is meant to work with. If your system has a mechanical resonance you would want to be able to recognize it and decide if it should be tuned out mechanically, electronically, or tuned in and put to work.
    • Communication protocols. Learning the nuts and bolts of a communication standard is one of the most valuable goals you can achieve. There are plenty of them out there that have roles to play. Knowing them ahead of time can make a project trivial when it would be a serious PITA if you were working with an unfamiliar protocol at the same time. Think ahead and do some research and you will find the protocol you need to absorb. It might be LIN, SPI, CAN, HTTP, UDP, IMAP, Bluetooth, SSH, SSL, NTP, PPP, TCP/IP... There is plenty to keep you busy and the more you learn the more likely you will pick the option that will work best.
    • Study the science of user interfaces. Touch Screens. Browser connection HTML configuration screens. You don't necessarily want to get fancy, in fact an embedded designer will strive to keep things simple. An awareness of where a user is likely to get confused and go wrong, by working through the use case scenarios is what you need.
    • For advanced work start to think in terms of cognitive processes. You will need a basis in databases. At embedded scale you need a very efficient data structure. You can put a lot of data in 1 Mb if you know how. Your embedded sensor fills that database and then it checks its data. To anyone that doesn't know how it works you will seem like a magician. A simple Bar Code reader is an example of what you want to be able to achieve.
  4. THE_RB

    AAC Fanatic!

    Feb 11, 2008
    Just try to keep up with the new chips that come out every year... ;)
  5. aamirali

    Thread Starter Member

    Feb 2, 2012
    Has anyone worked on labview embedded??
    Is it useful to learn, however labview has no further support for it.
  6. t06afre

    AAC Fanatic!

    May 11, 2009
    As this product was phased-out from 2012, I would say no. Looking through your postings. I would say start by managing the basics good first. Allow your self a learning curve. And adapt your projects to your learning curve
    Last edited: Feb 27, 2014