Discussion in "New Ideas regarding projects" started by    rawat742    Aug 13, 2017.
Sun Aug 13 2017, 11:31 pm
#1
Dear Sir ,
Please help me for store a parameter for or data in memory that cannot erase after power off i.e it will be retentive type i want to store my data and want to use that data farther in program to compare my other data i am search memory use and syntax on many site but i am not able to do so i am fresher in embedded but i want to work on project . sir i am working on 8051 and keil software in embedded C language.
Mon Aug 14 2017, 04:41 am
#2
The basic 8051 has no eeprom and you can't reprogram the system memory
the way many modern devices can.
It can't do what you want.
Some fancy 8051 types have eeprom , but are less common and more expensive.

The simplest way to add eeprom is by adding a separate memory chip
such as the Micropchip 24LC64.
You then read/write the 24LC64 using 3 pins of the 8051 to "bit bang" the
I2C protocol.

 rawat742 like this.
Mon Aug 14 2017, 12:22 pm
#3
Dear sir, First of all i want to thanks to you for giving a response. sir i want to know only way how to use a memory because i am read some 8051 have internal memory but i am not able to use that memory i am want to simulate only Proteus and keil if we have to need change controller then i am ready to change them . if you have any code and simulating design regarding to external memory please send me . if possible please give comment also in code. by which i am able to understand easily.
Tue Aug 15 2017, 03:49 am
#4
The original 8051 is a primitive device.
Over the years , manufacturers made controllers based on the 8051
with added features such as eeprom.
Proteus and Kiel do not support all these 8051 variants.

You will have to look at those Proteus lists and see if any contain eeprom.
Then you will need to check that Kiel can access that memory.
It might be easy, but probably is not.
A safer way is to add an eeprom to a simple 8051.
This project does that.
(U13 driven by pins P3.6 and P3.7)
http://www.8051projects.net/download-d253-led-scrolling-message-display-using-8051.html

Use the memory reading/writing code code from the project as an example.
There are similar projects on this site and on other sites to copy.
 rawat742 like this.
Fri Aug 18 2017, 01:54 am
#5
Dear Sir ,
Please help me for storing a local variable data in a memory I am able to store a array but I want to use a local variable to store a value like a parameter as well as tell me if possible hex to ascii when I am trying it to print then it will give me a garbage value I am attach my sample code where I have faced a problem to store a value .
Fri Aug 18 2017, 04:24 am
#6
Try this.
Attachment
Fri Aug 18 2017, 04:49 pm
#7
Dear Sir,
as per your attachment I will try the code which you are send to me and many of my problem are short out for which I want to give thanks to you but after using this I have face a problem it will not convert the proper ascii it will also print a hex value . and I have also a problem to increased my value by pressing a button .
Fri Aug 18 2017, 04:54 pm
#8
Dear Sir ,
I am not able to increased value by pressing a button but it will be print a value when I am using a for loop Please help me and Please tell me if power has been off the value are store in a memory are retentive or not if not then tell me how I am able to make it retentive memory . Thankyou Sir for giving a useful feedback and valuable time to me .
Fri Aug 18 2017, 08:28 pm
#9
Dear Sir, I have a another program in which I am able to convert hex to ascii code but in this attachment I am not able to do so
code that is I am use for converting is
s=count;
y= s /10;
d11=s%10;
d22=y%10;
d33=y/10;
please help for converting hex to ascii in eeprom
I am also use your subroutine
void print4bits(unsigned char x)
{
if(x < 10) //0-9

x+=0x30; //print as ascill 0x30 to 0x39 1-9

else
x+=0x46; //print as ascill 0x41 to 0x46 A-F

WriteDataToLCD(x);

}

but there is no result from all of these please help sir
Sat Aug 19 2017, 08:17 am
#10
else
x+=0x46; //print as ascill 0x41 to 0x46 A-F

should be..
else
		x+=55;  //print as ascii    0x41 to 0x46 A-F
 rawat742 like this.

Get Social

Information

Powered by e107 Forum System

Downloads

Comments

Bobbyerilar
Thu Mar 28 2024, 08:08 am
pb58
Thu Mar 28 2024, 05:54 am
Clarazkafup
Thu Mar 28 2024, 02:24 am
Walterkic
Thu Mar 28 2024, 01:19 am
Davidusawn
Wed Mar 27 2024, 08:30 pm
Richardsop
Tue Mar 26 2024, 10:33 pm
Stevencog
Tue Mar 26 2024, 04:26 pm
Bernardwarge
Tue Mar 26 2024, 11:15 am