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.

PLease help... I am a noob

Status
Not open for further replies.

surajdn

Newbie level 3
Joined
Jan 5, 2012
Messages
3
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,314
Hello Everyone,
I may sound very stupid and silly but I am new to the world of ucs... I just learnt programming 8051 at college and I love ucs and I want to get good at it and I am really good at programming what I lack is the knowledge of the hardware part of it. Specially the recently developed technologies in ucs.

Here are my questions:

After using 8051, I really believe that I could do almost anything with just 8051 so I have started to think 8051 is just good enough except when one needs more RAM or speed or ROM and yes the RTC.
So am I right here? Why the PIC family and most importantly whats this arduino thing? why use it when you can do so much with just any other uc? I am so happy with 8051 but I just go dizzy when all the forums are talking so much about so many different ucs. please tell me what I am missing and what I must read. I have just read one book "The 8051 Microcontroller And Embedded Systems Using Assembly And C" by Mazidi. So tell me what other books I MUST read.

I don't know whats I2C and I just know what is ISP.

How does a programmer really put the code into the chip? for example, what ports should be activated? what voltages etc...I am good at electronics so if I know what a programmer must do then I think I can design a programmer myself(I badly want to).

please answer my questions I would really grateful to you
 

Some pretty broad questions, but I'll give you my opinions for what they are worth.

The 8051 is a pretty old processor, although I'm not familiar with the latest varieties and I'm not sure it has some of the features that newer devices do. You can get a very small, very inexpensive PIC, or a fairly robust device, with built-in debugging capabilities, analog-digital converter, PWM, I2C, SPI, Ethernet, etc. Atmel's AVR are similar. Development tools for the PIC (and AVR, I think) are free or inexpensive.

I2C is a communications protocol for chip-to-chip communications (so is SPI)

As far as programming your 8051, there's TONS of stuff on the web, I'm sure there's instructions on a do-it-yourself programmer out there.
 

Thank you so much barry.

Your answers were simple and useful. Thanks a lot.

I found a lot of resources on the web for 8051. They give the circuits for programmers.... what I meant to ask was that - if suppose the data sheet of a uc is given then how do you design a controller for it?
I am good at electronics therefore I would love to design my own controller. Is there a some code to put the uc in program mode For example, to program a 8051, is there anything like - keep RST low, write to P3.6... something like that?
I know the software part... What I want to know is the procedure to put a program on the chip.... how do u do it? there are so many chips so where does everyone find the way to make a programmer for them?
 

Usually the data sheets will describe the required steps for programming the device. Each chip is different, you can't program them all with one programmer.

The Microchip website has lots of information, you might want to look at that for a start.

---------- Post added at 21:46 ---------- Previous post was at 21:44 ----------

Usually the data sheets will describe the required steps for programming the device. Each chip is different, you can't program them all with one programmer.

The Microchip website has lots of information, you might want to look at that for a start.
 

I am not very familiar with ucs other than 8051.... could you point me to some resource where I can get an answer to in terms of 8051.... I would be glad if you could explain it to with regard to 8051
 

After using 8051, I really believe that I could do almost anything with just 8051 so I have started to think 8051 is just good enough except when one needs more RAM or speed or ROM and yes the RTC.
So am I right here? Why the PIC family and most importantly whats this arduino thing? why use it when you can do so much with just any other uc?
My dear friend. Those are excellent questions!

You are right - its perfectly possible to implement vast amount of circuits using 8051 family microcnotroler, and there is no really point of not using it if you can :)
Why people do use other microcontrollers then?
Answer is simple: some microcontrollers have some unique futures like for example power saving modes (msp430 is an good example of it) or various communication protocols support build into the chip (serial or usb communication) - so its much easier to use those features.

Last reason is... that many people are using those microcontrollers which they simply know and like. For example I prefer msp430 because that was my "first" mcu, and you will probably always prefer 8051 :)

As for Arudino: arudino is designed as micrcontroler solution for people who wish to use and program them, but lack detailed knowledge about electronic components - becasue in fact in Arudino you are controlling entire board with good high level libraries instead of very low level pure mcu programming.
For example it will take you about 100 lines in C to implement simple serial communication program on raw mcu, and just about 8 lines on Arudino (because you can use those ready to use libraries written for Arudino).
 

I am not very familiar with ucs other than 8051.... could you point me to some resource where I can get an answer to in terms of 8051.... I would be glad if you could explain it to with regard to 8051

As you may already know "8051" refers to many types of MCUs though all share the same essence of hardware/firmware but not necessarily in programming them.

For example, at work, I needed that my assistants can program the small MCU AT89C2051 from ATMEL by themselves. For this I built a stand-alone programmer that copies the 2K code in a serial memory as (24C16, 8-pin) to an AT89C2051. Obviously I read first the 'parallel' programming section on the MCU datasheet. Then using another similar MCU, I wrote the program that reads in sequence the bytes in 24C16 and writes them to the new MCU (after sending the erase commands). But when I liked doing the same for AT89C51, I found myself learning again (also from its datasheet) about how to program it since it has a different procedure (here two 24C16 or one 24C32 was needed to hold the 4K code). Obviously in the two cases, I had already an MCU programmer (via PC) otherwise I couldn't program the MCU of my copiers :). Although the PC programmer can program SEEPs as 24C16 and 24C32, I let my copier work in two directions just in case.

What I like to point out is that programming an IC in the 8051 family is related to the MCU of interest (explained on its datasheet).
For example, lately I used "SST89E58RD" which can re-program itself using its own IAP (In-Application programming) instructions by reading the new code from a serial memory (as 24C256 for 32K). So there is no need to add another MCU to program it ;)

In life, one may need during learning a field go in two directions; from general to specific AND, at the same time, from specific to general. When the two paths meet, the subject becomes clear.

Kerim
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top