An Ametuer Who needs Advice

Greetings Everyone!

I'm an Undergrad student studyin Electronics Engg. As part of my course I've sudies 8051 and PIC microcontrollers. I find that I'm greatly interested in Embedded Systems design. However, the flood of info. on the net has me confused. Where should I begin? I've done (or doing) the following :-

1) Studied Assembly Language Programming of 8051/PIC micros 2) Learning Linux with Redhat 3) Got hold of a list of Embedded Linux books that I'm gonna buy this weekend

Anything i can do more? What are the companies working on Embedded Sys? Is there any Ametuer resource for guys like me? (I'm also searchin Google right now, not happy with the results).

Grateful if any of you can take time of to post a reply.

Regards, Devyn

Reply to
Devyn
Loading thread data ...

Devyn, how about starting with a small project? Check out

formatting link
, for example, for proto boards, projects, etc. For me, it is the combination of understanding/designing/building stuff that makes electronics interesting. -- Mike

Reply to
Mike Turco

Time to start building stuff. Snag yourself a cheap scope and logic analyzer off of ebay and design something. Start with some simple blinkenlights and go from there. Nothing impresses me more in an entry-level job candidate than them being able to pull out a piece of working hardware software that they built themselves.

Reply to
Jim Stewart

The three fundimentals of electronics are blink, buzz, whirr and smoke!

OH, if you smell somthing burning, don't go poking around on the board with your finger to find out what it is.

Reply to
Mike Turco

Hi! Yeah. I realized that sometime ago. I've built 2 small applications :-

1) Light Guided Rover - 8051 based rover that goes straight or takes left/right turn based on light stimulus (such as a flashlight on the left/right sensor) 2) Keypad Interfaced PIC Clock - A simple app. Takes in time set from user, displays real time on 7 segment LED disp. I'm working to include an alarm and somehow try and bring in the watchdog timer to good use.

I felt that these were too amateur and needed a linux based project. Am i right in thinking so?

Regards, Devyn

Reply to
Devyn

Hi, you need to think of something useful and not allready in production.

Reply to
CBarn24050

Well, if you're into Linux, then sure! But there are a lot of other directions.

I think your idea of going through books is a good idea, but you should take a look at what is out on the Internet, too. Check out the piclist (piclist.com). Microchip.com has a ton of application notes and sample projects. Those two URL's I mentioned earlier are a good resouce. You can also see a lot of interesting things people in this group have done if you search the archives on google.

The last project I did had a Rabbit Semiconductor based control board, which gave my project the ability to communicate through LAN systems and the Internet. I don't have much info online right this second, but you can check it out,

formatting link
.

Oh, there you go. Check out rabbitsemiconductor.com . They have a pretty good product line. Maybe your next project can be something like a motor control (garage door opener?) that you can operate over the Internet.

Mike

Reply to
Mike Turco

Another fundamental is learning to count!

Reply to
Everett M. Greene

If you can read the part number off of the tip of your finger, it's probably running too hot.

Reply to
Jim Stewart

The eight bit processors are far too small for Linux. However, it does not mean that they could not be applied to something useful. A full-blown operating system (e.g. Linux) is far too heavy for the microcontroller-size embedded projects.

What you need: - understanding of the electronics of an embedded system, - understanding of the machine code of the target processor, - plenty of patience, and - a real project.

The electronic understanding is a basic requirement: in most embedded systems the processor is an essential part of the electronics, and a good balance has to be found what to implement in hardware and what in software (in this environment often called firmware). Often it's possible to simplify the hardware to trivial by pushing the complex items to software.

The machine code understanding is essential after something does not work as intended and you have to roll up your sleeves and dig into the dirty basics. It's also very enlightening to read through the assembly code produced by a compiler - there are often surprising differences between what you intended to code and what the compiler has done. You can often tweak the source code and evade the need to use an assembler module instead.

The need for patience is self-evident. I just have fresh experience after three days of EMC testing and repairs (both electronic and software) for an embedded system.

The real project will give you an opportunity to excercise the above skills.

IMHO, if you need something more than an eight-bit processor, I'd pick a flavour of ARM.

HTH

Tauno Voipio tauno voipio @ iki fi

Reply to
Tauno Voipio

with

That must have been a 2.2k resistor.

Reply to
Mike Turco

This sounds like fun, but I'm too practical for this kind of thing.

I like clocks, so this seems a better pick to me.

As a student, you might not fully appreciate this but a clock idea I've had is a "meeting clock." A meeting's attendees enter their hourly rate and the clock accumulates the cost of the meeting as time elapses.

I don't think so. Embedded programming is as much about hardware as it is software, and you'll learn a bunch building these. Hint: As you're designing and building these, consider what you might need to do differently if you were going to manufacture 10,000 of them rather than just one!

--
========================================================================
          Michael Kesti            |  "And like, one and one don't make
                                   |   two, one and one make one."
          mkesti@gv.net            |          - The Who, Bargain
Reply to
Michael R. Kesti

Hi Everyone!

Thank you for the replies. Most of my profs. have been telling me to avoid linux because its uneccessary for the kind of projects I do. Well, I couldnt agree more. But the thing is, as with my other projects, I realise that there's no better way to learn about a device than to actually work on it. Books and the net cant take you as far as projects will. My other projects may seem pointless, but the fact is that they helped me know the devices inside out, program optimizing (esp. the rover; its ALP was marvelous), cross compilers and the like.

So, here's what I'll do :-

Stick to C and cross compilers, tweaking the assembly they generate. Work on a better project. In fact, I was already on it. I got this idea from a micro-controller site. These guys controlled a stepper motor over the net. I thought I could use a PIC (for starters; ARMs are something i'm just beginnig to understand. I'm more confident with PIC) as a Data Aquisition sys. for a comp. online and implement an actuator elswhere. All controlled over the net. It'll take some time before I can come with application that I can really put on paper, but anyhow, I've made start.

Regards, Devyn

Reply to
Devyn

Don't bother with the logic Analyser. Scope yes but buy a cheap dev board. They do you own but you won't need an LA to start with (if at all)

yes. but start with a cheap dev kit and look at the circuit diagram and modify it.

small steps ....

designing you own and learning a logic analyser is a large step.

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ \/\/\/\/\ Chris Hills Staffs England /\/\/\/\/\ /\/\/ snipped-for-privacy@phaedsys.org

formatting link
\/\/ \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

Reply to
Chris Hills

In article , Devyn writes

No... yes... it depends.

The vast majority of embedded systems do not use an OS mush less something like Linux with is NOT an RTOS. I would not bother with Linux unless you are looking at 32 bit systems and that is not the place to start if you want to do the HW as well.

BTW about 1 in 3 embedded systems in the world is an 8051, About 80% are

8 bit systems in general. It depends where you want to go.

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ \/\/\/\/\ Chris Hills Staffs England /\/\/\/\/\ /\/\/ snipped-for-privacy@phaedsys.org

formatting link
\/\/ \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

Reply to
Chris Hills

If you want something a hellofalot more interesting then this is a terrific resource:-

formatting link

(you might have to read up little on containers and their iterators e.g. Stroustrup's C++).

Like the other posters say, patient slow progress is best!

Robin

Reply to
robin.pain

I love it!

It also needs a button to push for every power-point slide displayed. The button would add some amount (e.g. $100) to the total.

--
Grant Edwards                   grante             Yow!  Ask me the DIFFERENCE
                                  at               between PHIL SILVERS and
                               visi.com            ALEXANDER HAIG!!
Reply to
Grant Edwards

One of these should be in every meeting room in every company.

Reply to
Gary Kato

Linux won't help a bit with embedded micros, move on to the three or four main languages used, Basic, Assembler and Forth. Secondly I suggest that you discover your field of interest for that should determine both the micro and tools used. Only then should you delve into detail.

Reply to
Albert Lee Mitchell

In article , Albert Lee Mitchell writes

C in 90%

only by amateurs at home

Definitely

Only by a few on some micros.

agreed

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\ \/\/\/\/\ Chris Hills Staffs England /\/\/\/\/\ /\/\/ snipped-for-privacy@phaedsys.org

formatting link
\/\/ \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

Reply to
Chris Hills

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.