element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Embedded and Microcontrollers
  • Technologies
  • More
Embedded and Microcontrollers
Embedded Forum The absolute question ... Where to start??
  • Blog
  • Forum
  • Documents
  • Quiz
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Embedded and Microcontrollers to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 9 replies
  • Subscribers 472 subscribers
  • Views 795 views
  • Users 0 members are here
Related

The absolute question ... Where to start??

Former Member
Former Member over 14 years ago

Hi guys,

 

I recently discovered this website and seems pretty cool. I see people with a lot of experience with embedded systems.

As a begineer, in my career and with embedded systems i want to ask you some questions:

First, i finished the studies of an electrical engineering university, i work as a software developer mostly for industrial applications : programming PLCs (until now only small ones), intelligent modems(C/C++ over OpenAT OS), building scada applications.

 

I don't know if programming PLCs and modems means programming for embedded devices (maybe someone more experienced can clear this out), they are in essence for a one task, but when i hear about embedded i think more at microcontrollers and low level programming.

 

So...i picked up some 16F PICs, i learned a little the arhitecture, built some hello world applications, flashing leds, using ext port interrupts, etc - all these in ASM.

 

Is these the path to a embedded system developer, or should i advance to a better microcontroller, C programming?

What should i read to optimize my work?

Have any good books or trainings that can you recommend?

Where can i read about latest technologies, IDEs, etc?

My goal is to achieve a level when i trully can understand what a embedded OS is all about, what requierments are for designing one (software & hardware), etc.

 

Is this the right path? should i try to find anoher job more towards small processors ?

 

Any sugestion can help.

 

Thank you in advice!

  • Sign in to reply
  • Cancel
Parents
  • DAB
    DAB over 14 years ago

    Hi Ionut,

     

    Welcome to E14.

    You ask several very good questions.  As a systems engineer, I would say that learning to program any logically ordered device gives you experience to understand and learn to program other devices like FPGA's and MCU's.  Logic is logic.  Instruction sets for different processors all basically do the same thing.  They just change the names of everything to protect the guilty. image

     

    During my 30+ years, I have seen a lot of changes, a slew of languages, programing approaches, fuzzy logic, adaptive systesm, you name it, it seems that something new comes down the pike everyday.  Rather than try to keep up with the changes, I concentrated on learning one system very well.  That way I could see how the new device implemented the same features and translate my design from what I knew into the different implementation.  I found this approach allowed me to do new designs on new devices very quickly.

     

    I am sure that others in the community will have different views, but this is my 2 cents worth.

     

    DAB

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • DAB
    DAB over 14 years ago

    Hi Ionut,

     

    Welcome to E14.

    You ask several very good questions.  As a systems engineer, I would say that learning to program any logically ordered device gives you experience to understand and learn to program other devices like FPGA's and MCU's.  Logic is logic.  Instruction sets for different processors all basically do the same thing.  They just change the names of everything to protect the guilty. image

     

    During my 30+ years, I have seen a lot of changes, a slew of languages, programing approaches, fuzzy logic, adaptive systesm, you name it, it seems that something new comes down the pike everyday.  Rather than try to keep up with the changes, I concentrated on learning one system very well.  That way I could see how the new device implemented the same features and translate my design from what I knew into the different implementation.  I found this approach allowed me to do new designs on new devices very quickly.

     

    I am sure that others in the community will have different views, but this is my 2 cents worth.

     

    DAB

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
  • Former Member
    Former Member over 14 years ago in reply to DAB

    I can only agree with you DAB, even though I havent been in embedded systems for 30 years, I have gone the same path in IT and now I am following it in embedded electronics and my IT and embedded electronics paths converge as time goes by. In embedded electronics I started with 8bit Atmel AVRs and now work with Parallax Propeller, embedded linux on ARM and start having fun with FPGAs and VHDL/Verilog.
    I believe same approach can be applied to every engineering field.

     

    To answer the question where to start, IMO Atmel AVRs is good starting point, start with infamous Arduino, program it in native IDE, when you get a hold of what is what and why, jump to Atmel Studio and start messing with MCU registers directly and learn to get most out of the small chip.

     

    RR

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to DAB

    I see...you gave a response exactly as i would expected...it reflects a lot of experience wich i don't have for now. My biggest problem outhere was not programming PLCs instead of uC, it is that the company i work doesn't have for now lots of projects on plcs and for a year i was stuck with a single one on my desk, and a small one with not so much capabilities. I want to do more, to learn more, and then i remembered from my studies, maybe i should try to work with uC, i can then buy another one ...more advanced if i like and do different projects and so on..so i started..

    I started learning a little bit of ASM, doing some basic interfacing projects to really learn the interoperability of registers etc, and after that going to C programming and trying to do more advance projects, and so on.

    Do you think this is a right way ? Or i should see this from a different angle, be satisfied with what i am doing now and hope there will be projects that will bring me more experience.

     

    Thank you for your response DAB, really enjoyed reading your '2 cents worth', for sure i learned some things already.

     

    Regards,

    Ionut

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube