We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Why do we use only R0 & R1 in case of Indirect Addressing mode and why not any other GP registers? Can we use R0 & R1 of any bank or only Bank 0?
All the available instructions and addressing modes are fully documented in Chapter 2 of the so-called "bible" for the 8051:
Chapter 1 - 80C51 Family Architecture: www.nxp.com/.../80C51_FAM_ARCH_1.pdf
Chapter 2 - 80C51 Family Programmer's Guide and Instruction Set: www.nxp.com/.../80C51_FAM_PROG_GUIDE_1.pdf
Chapter 3 - 80C51 Family Hardware Description: www.nxp.com/.../80C51_FAM_HARDWARE_1.pdf
You might also want to take a look at this 8051 Tutorial: www.8052.com/tutorial.phtml
And some books about the 8051: http://www.keil.com/books/8051books.asp www.8052.com/books.phtml
Thanks for the links....they were helpful..
unfortunetely, many start with the '51 without reading "the bible".
I do not have an idea how to make it so that everyone, the moment they say 8051/MCS-51/'51 (in whichever form) automatically get the links to "the bible" sent to them. It would be very beneficial if it was so.
Erik
I found two routines from different books to start working with an LCD. The first one (at LCD.asm) works on PROTEUS but not physically. The second one (at LCD3.asm) works nowhere but is supposed to. Can anyone help me fix the routines I've got or give me one in assembly language that actually works?
1-Vss (GND) 2-Vdd (5V) 3-Vss (GND) 4-RB6 5-Vss (GND) 6-RB5 7 to 14 - RB0 to RB7
Can anyone help me fix the routines I've got 1) how can anyone 'fix' what they can not see 2) if you can not ask a specific question you need to study the datasheet for your LCD before posting.