I am an absolute beginner , what I know is that to start embedded programming you should get a development board , create your project code using the development board. then in order to use that code in a real project you can either:
1-"manufacture" your own board using microcontroller chips and various electronic components from the market.
OR
2- use one of the boards that are "ready made".
correct? I mean is #1 is the way to go?
I think using a development board in real world projects is expensive. and even often development boards are large and heavy. given the complexity (I think) of arm processors is it feasible for "serious hobbyist" to create his own boards at home?
john moore said:I am an absolute beginner
Do you have any other programming experience?
If not, it would be easier to start by learning the basics of programming in C or C++ on a "conventional" computer - where you will have a far more "comfortable" experience away from all the added complications & restrictions of embedded microcontrollers.
Here are some C learning & reference materials - including a free online textbook:
blog.antronics.co.uk/.../
Once you have that, then you can move on to applying it to embedded microcontrollers.
I would certainly strongly recommend that you start with development board: then you have known-good hardware, support, examples, tutorials, etc - and won't be left wondering if it's your hardware or your software or both that's at fault.
I would also suggest that you get a manufacturer's own development board - as a known & supported platform - rather than some no-name board from ebay or suchlike.
Be sure to get a board with built-in debugger: you don't want the hassle of having to source, configure, and connect a separate one at this stage. They are pretty much de rigueur these days anyhow - so anything without one is really behind the times...
Or there's always Arduino ...
john moore said:is #1 is the way to go?
is #1 is the way to go?
As above, I would say not for "an absolute beginner" - start out on known-good hardware.
Designing your own board requires a whole lot more than just programming - you will also need good electronics skills, etc ...
john moore said:I think using a development board in real world projects is expensive.
Not at all - especially if you account for your time.
Even the manufacturer's own dev boards with built-in debugger these days are often under $20 or so.
Once you have gained experience, there are plenty of very cheap boards available on the likes of ebay - often for less than you can buy the parts yourself. They don't come with all the support that a beginner would need - but are fine for experienced users.
john moore said:often development boards are large and heavy
Not necessarily.
Nowadays, there are lots of very compact dev boards; eg, the STM32 Nucleo-32; Microchips Xplained Nano and Curiosity Nano, etc ...
See also:
https://community.arm.com/developer/f/infrastructure-solutions/49407/i-am-new-to-arm-development-how-do-i-start/
https://community.arm.com/developer/tools-software/f/simulation-models/48752/an-emulator-for-arm-cortex-m-mcues/
https://community.arm.com/developer/f/infrastructure-solutions/49417/is-c-programming-standard-for-all-arm-chips
And here are some general microcontroller beginner 'Getting Started' tips:
https://www.avrfreaks.net/comment/2079906#comment-2079906
thank you very much