3 ms·
Greetings, Elec Eng turned Software Eng here, so I have some background in both fields. I'm going to make a couple of assumptions as to what you're using, but
by tonteldoos 14y ago
Greetings,
Elec Eng turned Software Eng here, so I have some background in both fields. I'm going to make a couple of assumptions as to what you're using, but the comments should be reasonably generic. My $0.02:
1] Get yourself a 'decent' development kit for the micro platform you'll be working on. You don't specify manufacturer or type, but look for something that comes with all the cables, LEDs, drivers and other goodies, and a board that 'just works'. If you have limited background, you don't want to spend your time trying to get basic comms or drivers working, or figuring out that your LED isn't turning on because of a wrong or missing pulldown resistor.
2] In tandem with [1], try and find a well documented compiler toolchain. Gone are the days when the good toolchains cost several grand - GNU can crosscompile for quite a number of platforms, and plugs into IDEs like eclipse nicely. All this is reasonably well documented too. If this venture is being sponsored, have a look at reviews for paid-for software.
3] Learn how to use debuggers in embedded environments. This is a very wide topic, and depends on the debugger, what type of debugging the hardware supports, etc. If you haven't picked your platform yet, make this a large part of your decision process - if you're new to an environment, you'll need all the help you can get. Especially since it looks like you'll be doing communications heavy development, a good debugging and tracing infrastructure will help, unless you have access to logic analyzers.
4] Start with basic development on your board, just to get the hang of it and the toolchain. The development kit version of a 'hello world' program is a flashing LED. This will show you how to setup the micro, communicate with external devices, use timers, etc. Next look at serial communications, and then start looking at communication with more complex external devices using whatever bus they support, etc.
If you're willing to give more information on devices and requirements (or even design choices already made), I might be able to give more info.
4 weeks is a tight deadline if you have little to no experience, but having said that, modern development setups are substantially more forgiving to the newbie than 5-10 years ago.
- got2surf 14y agoThanks for the advice! I'll start downloading and playing around with the software - I'll start with Hello World and keep going up from there. I may end up PMing you later on with more specific questions if that's ok. Thanks again!