Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

How can I start learning micro-controller programming ?

Status
Not open for further replies.

spherulite

Newbie level 5
Joined
Nov 12, 2004
Messages
9
Helped
1
Reputation
2
Reaction score
0
Trophy points
1,281
Activity points
87
ccs c demo period

Hi there,

I want to learn micro-controller programming.

(1) I want to learn general micro-controller architecture first, then I want to know, what are new features available in latest micro-controllers ?

(2) then I want to learn c programming for mcu's and

(3) then i want some projects to test my knowledge.

(4) Which micro-controller is easiest and feature-rich to start with (what do you think about 8051 ?) ?

(5) Is there any software for beginners which can simulate some micro-controller projects ?

I know it's boring to answer such a long querry, but I didn't want to scatter my querries regarding mcu. Please provide answers and good resources for each of 5 above written querries, If u can't answer all at once, then please take your own time to answer each section separately, but do give me answers for all 5 sections.


Thanks in advance for all your help.
 

start can controller

spherulite said:
Hi there,

(4) Which micro-controller is easiest and feature-rich to start with (what do you think about 8051 ?) ?

(5) Is there any software for beginners which can simulate some micro-controller projects ?

Thanks in advance for all your help.

I prefer Microchip PIC and CCS C Compiler. Good for beginers.

For uC simulators

h**p://www.oshonsoft.com [Sim. for PIC, Z80, 8085]

h**p://www.labcenter.co.uk/ [Proteus VSM] <- Really good

Regds

happy_99
 

Firstly you need to decide which line of micro-controller you want to start with. Factors that may affect you decision:

1) How easy you could acquire that micro?
2) What is the development tools available/offered by the micro manufacturer/3rd party/the webs(self make tools)? You will need at least a programmer to start with.
3) How rich are the application notes/web tutorial available?

Well I don't know about 8051, hope someone could explain that to you.

Anyway if you still not make the decision, I would recommend Microchip PICMicro. You could go to their web site and grab MPLAB IDE v6.xx(about 30+ MB). It's FREE. You could then start some programming experiment with the software simulator. MPLAB IDE default installation only support assembly language programming. If you want to program in C, you could download C18 demo(60 days). It works same as the full version without any limitation. Well I heart that after demo period expire, you could simply uninstall/re-install it.
 

Let's say, I don't want to go for some Industry Standard Project Development. I wish to grasp all basics first. I mainly want to learn through online resources, ebooks, simulated projects and simulation softwares (like proteous etc.). Please, keep that in mind and read the first message in this post again and try to reply then.

thanks a lot for your help.
 

The best and only way to learn is to do it! Think of a project, put it together and make it work. This will be a better learning tool than 100 books.
Get your hands dirty.
 

hi,

i would suggest 8051 to start with. b'coz when u start with 8051 which is more basic u can easily understand the other asm very well and in no time u can switch to any other micro easily. that's why most universities teach 51 first .u can get the development tools for 51 from
www.keil.com
http://www.wickenhaeuser.de/

and programmer from
**broken link removed**
best wishes
 

Hi spherulite

1) you have to know some base electronics
2) try from the beginning MICOCHIP PIC family - they have a lot of stuff about microcontroller architecture, application notes, or type in google PIC16F84 - a lot of funny applications.
3) you need to spend some money for an environment design : a breadboard, a compiler (I think CCS compiler is the best for you), a programmer (if you know electronics, you can try to make it by yourself, see www.icprog.com)

You'll see it's easy and funny.

Enjoy
 

(1) I want to learn general micro-controller architecture first, then I want to know, what are new features available in latest micro-controllers ?

its better to start learning a specific microcontroller architechture. the PIC microcontrollers will be a good choice. you will find all the latest features of microcontrollers in PICs.

(2) then I want to learn c programming for mcu's

but i do recommend that you have a good knowledge of assembly. assembly will help you understand the architechture of the microcontroller you are using and it will also help you optimize the code generated by C compilers. as for learning C i would recommend that you first learn C on a PC. try out some programs. then start out with embedded applications.

(3) then i want some projects to test my knowledge

if you chose PICs then you will see that the internet is full of PIC projects. you can see them and get inspiration from them. the EPE magazine has alot of PIC projects every month. and the PIClist http://www.piclist.com has alot of PIC projects.

(4) Which micro-controller is easiest and feature-rich to start with (what do you think about 8051 ?) ?

again i would say the PIC. thats because the 16 series of PIC micros have only 35 assembler instructions. and the 18 series of microcontrollers have a C optimized instruction set. and as i have said before you can find a number of additional features on PICs like PWM modules, comparators, A2D converters, USARTs, AUSARTs etc

(5) Is there any software for beginners which can simulate some micro-controller projects ?

yes and the suggestions have already been given by other users.

for a good start i would recommend that you go to http://www.winpicprog.co.uk there you can find great PIC tutorials, PIC programming hardware and software and a great support forum. i would also recommend that you regularly go to the PIClist. and another great resource is the EPE magazine. especially the EPE PIC tutorial which came as a supplement. for more details go to the EPE website.

i hope that answers your questions
 

HI , HERE IS A STARTIG LINK "http://www.8052.com/tutorial.phtml" .

FOR SIMULATING SYSTEMS & PROJECTS PLZ USE PROTEUS THAT CONTAINES
LCD - DC MOTORS -..............

THANKS
 

First You Must Think if the microcontroller Satisfies Your Need or Not.

Differences Between Microcontrollers and Microprocessors:

1- in Microcontrollers RAM,ROM,I/O Ports,timer,.... are Built in Chip unlike Microprocessors

2- Microcontrollers are Suitable For Ext Interrupt Base Process.
3- in Microcontrollers you can Access to Pins Like Bit But im MicPro
You can access in Byte Form.
4- They Are varius types of MicroControllers which are costumized
for special purposes like Real time clock,USB interfacing ,.....
5- Most of Microcontrollers are RISC Redueced Instruction
for example they don't have many instruction so their chips
are less complicated
6- Most Microcontrollers are 8 Bit - But New Micro Proc are 32 & 64 Bit So
they can manipulate Numbers much faster in the same OCS Freq
7- In the Micro Procs they are many LOW Level Command for faster Math
,MultiMedia Processing.
8- In the Micro Cont you can Save your program or firmware On the Chip and
Lock that.

So :
if your system needs Heavy Computation use MicroProc and design an
interface for that
if you want to Control many System in Compact board use Micro Con

For Beginners it better to start with 8051 MCU :
Because they are more popular than others and you can find many progs and
tools for 8051 MCU and they are very cheap chips.

For Starting these books are Recommended:
8051 Microcontroller and Embedded systems (Mazidi)
The 8051 Microcontroller By Scott Makenzi
Microcontroller Projects in C for the 8051 By ibrahim dogan

www.keil.com -> C Compiler for 8051

after 8051 work with AVR MCU .
 

hi,

learn pic is a good for you to start with
there are a lot of help on the web about it
try to read the application notes of the pic from microchip
also there are many books about it here

hope that help you
bye

Fire in the Wire :sm2:
 

If you REALLY want learn MCUs programming, FIRST the BEST learn ASM, and THEN, only Then(the best way my friend), you can use like a TOOL the compilers, there are Basic Compilers(powerfulls and fasters) and C compilers(Powerfulls and slowler) the diferences and the decision its yours, but i recommend try ALL and YOU select one ....
JUST remember theres not a PERFECT COMPILER, but if you know ASM you can make a perfect work.
Regards
 

It is easy and convenient to design the mcu with C language, but it is disadvantage for u to understand the structure of mcu.
so i suggest you use asm to program at the beginning, it is really helpful to improve your level further.
 

1 Learning Assembly Language according to your chips and study programming by assembly at first
2 Reading the specification of the chips including address mode, register functions & address, interrupts and io control...
3 C51 could support 51 serial chips and it's easy to get, the chips are also cheap. If you a freshman approaching MCU programming, it's good for you
4 other 32bit high-end MCUs such as ARM are more complex, suggest you read specification detailly.
 

u can go through this file, i think u will find some usefull information about the general microcontrollers,
to get the latest controllers features

surf- atmel.com,microchip,analogdevices

K.Bhaskaran
 

If you would like to learn 8051 based microcontroller, you may consider this book:

The 8051 Microcontroller and Embedded Systems


In my opinion, the book is good for beginner.
 

Atmel AT89S8252 controller is vary useful and easliy download through parallel port.
use ASEM51 assembler
 

Try the MSP430 from Texas Instruments,

It needs the least power compared to all the µC's around.

Though this is not very famous one, but then its really cool, as u will not have to keep draining ur batteries.

I have also used PIC microcontrollers and they have extensive documentation.

But I suggest you try the MSP430 if you have voltage constraints.
 

It really doesn't matter which controller you use if you learn assembler,as far as books go i've read a ton and the best info is still the free info you find here and elsewhere on the net
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top