Want to learn 8051 microcontroller. Need your help.

Discussion in 'Embedded Systems and Microcontrollers' started by ikelectro, Apr 28, 2013.

  1. ikelectro

    Thread Starter New Member

    Apr 22, 2013
    10
    0
    Hi everybody... I'm new in this forum and as well as in electronics. have almost 2 years of experience in basic electronics.

    now i want to learn microcontroller 8051.. I have not any idea of programming knowledge before. I have tried to learn the 8051 (almost 1 month) with internet sources but haven't succeed yet. I have also downloaded MCU 8051 IDE .
    Also purchased a dev board.
    I need some one to show me the path in microcontroller. i'm really desperate to learn micro.

    Any suggestion will be accepted. thanks in advanced.
     
  2. panic mode

    Senior Member

    Oct 10, 2011
    1,318
    304
    hello ikelectro,

    welcome to the forum. in order to learn how to use any mcu, you need following:
    - actual hardware (development board with mcu of your choice)
    - matching software (IDE with usually C or ASM or both)
    - programmer (many development boards include one)
    - datasheet of the MCU (downloadable)
    - resource (preferably "cook-book" style with step by step instructions)
    - plan (what to do)

    normally the plan is to:
    - get overal idea of the MCU (oscillator types, what is GPIO, what are peripherals etc.)
    - learn basic steps like compiling ready code and downloading to MCU
    - learn how to use GPIO and make own code
    - learn how to use timers and peripherals other than GPIO (analog inputs perhaps, PWM...)
    etc.

    when stuck, ask for help but be prepared to be specific. for example "i purchased dev board" is complete opposite because there is hundreds of dev boards for 8051 out there.
     
  3. Arm_n_Legs

    Active Member

    Mar 7, 2007
    183
    10
    Do you have any knowledge in writing C program at all? Do you want to start learning from assembly language? Do you want a development environment where you can debug the program easily, or a simple program-and-download environment (cheaper option)?

    A simple way to start off is to download the evaluation copy of the Keil uVision. Get hold of the Atmel AT89C5131 micro-controller. Compile your codes and download it to the micro-controller using the free Atmel Flip software.
     
  4. Ian Rogers

    Member

    Dec 12, 2012
    158
    29
    You know I'm waiting to help you.... All you need is to ask the questions!!
     
  5. MrChips

    Moderator

    Oct 2, 2009
    12,415
    3,354
    Any particular reason why it has to be 8051?

    Do you want to learn to program in ASM or C?
     
  6. ikelectro

    Thread Starter New Member

    Apr 22, 2013
    10
    0
    Hi, I have already MCU 8051 IDE and Edsim downloaded in my PC.
    no I don't know the C.
    Yes i want to learn with assembly language....
     
    Last edited: May 4, 2013
  7. ikelectro

    Thread Starter New Member

    Apr 22, 2013
    10
    0
    Hi Ian, thanks for your genteel reply.....
    but I'm facing the problem of too much technical suggestion of what you gave me earlier. and yes of course it's a technical subject. but I need guidance like a child get in their first step of leaning.

    Plz don't misunderstand me. You know that I don't know anything about programming.
     
  8. ikelectro

    Thread Starter New Member

    Apr 22, 2013
    10
    0
    yes Panic Mode : I have the following

    1. actual hardware
    2. MCU 8051 IDE and Edsim
    3. programmer
    4. datasheet of the MCU
    5. resource ( but if you give me some pdf or link, will be helpfull ).
    6. plan [ there are numerous plan i have to do with MCU, but want it step by step]
     
  9. ikelectro

    Thread Starter New Member

    Apr 22, 2013
    10
    0
    As I have told mentioned earlier that I'm a novice in electronics. i want to learn microcontroller. want to begin with 8051 and then go on to other MCU like PIC ( i think). :) :) :)
     
  10. Ian Rogers

    Member

    Dec 12, 2012
    158
    29
    Why don't you follow ABSF!! He is learning just like you.... Watch and learn...
     
  11. Arm_n_Legs

    Active Member

    Mar 7, 2007
    183
    10
    Well, in that case, you need to pick up a book to learn about the architecture of the basic 8051, the internal data memories, register banks, bit addressable locations, etc. You can then run your program in simulation mode before embarking on building a hardware for it.
     
  12. tubeguy

    Well-Known Member

    Nov 3, 2012
    1,157
    197
    What particular hardware - development board do you have ?
     
  13. ikelectro

    Thread Starter New Member

    Apr 22, 2013
    10
    0
    have you something in mind please share.
    I have already a books but after some pages I am struggling to understand.....
     
  14. ikelectro

    Thread Starter New Member

    Apr 22, 2013
    10
    0
    very simple and normal one.
     
  15. MrChips

    Moderator

    Oct 2, 2009
    12,415
    3,354
    If you want folks to help you, give a proper answer.

    The proper answer is the make and model number of your board!!!

    We might even ask for a link, photograph and schematics of the board.
     
    tubeguy likes this.
  16. tubeguy

    Well-Known Member

    Nov 3, 2012
    1,157
    197
    Please be specific in what you are struggling with....
     
  17. Arm_n_Legs

    Active Member

    Mar 7, 2007
    183
    10
    I would normally pick up the datasheet and from start from there. You may also want to read the MCS-51 User Manual. This book is based on the very basic Intel 8051.
     
  18. ikelectro

    Thread Starter New Member

    Apr 22, 2013
    10
    0
    1.Code memory is used for writing the program (generally 64K)
    Its has the External ROM also.

    2.RAM : Internal and External RAM. internal RAM(128bytes) is 7 time fast than external RAM(upto 64K).

    3.Register Banks (total 4 registers banks), Bit Memory, General Purpose RAM and SFR are the part of On chip memory.

    The Above sentences I have written, is known and understandable to me.

    But, Now my question is What is Register Bank? I have read some of pdfs, internet sources about 8051 but the concept of register bank is not clear to me.
    If this question is suitable for me (like who wish to learn) to ask you guys, then we should proceed now.
     
  19. Ian Rogers

    Member

    Dec 12, 2012
    158
    29
    The whole of the memory space of the chip is made of registers.

    SFR... Special Function Registers
    ie... R0 to R7, ACC, B etc..
    The R0 to R7 registers are in banks... There are 4 banks Look at this programmers memory map.
     
    • map.png
      map.png
      File size:
      19.3 KB
      Views:
      30
  20. tubeguy

    Well-Known Member

    Nov 3, 2012
    1,157
    197
    The register banks R0-R7 can be considered 'working' registers.
    Think of them as storage locations usually used for temporary storage during program execution.
    There are some specific instructions which allow you to move values in and out of these easily.

    I recall that only one register bank is accessible at a given time. There is a bank switch instruction to select which bank is being used.
    The reason is that when a program subroutine is called (executed), you can leave existing values in one bank and quickly switch to another bank for use in the sub-routine.
     
    Last edited: May 12, 2013
Loading...