TechToys said:Hi Help
The question is:
Do we get data RAM larger than 256Mbyte by declaring data to be xdata alone?
Data sheet on 89S52 states that there is 256MB RAM on-chip. Without external RAM chip, do we get data ram more than that by declaring
xdata unsigned char a[50]?
If we can answer this question, we would solve the problem, I think.
John
C-Man said:So again if your cpu does not have external ram you can NOT use xdata.
TechToys said:a = 1; would not allocate the value of 1 to a because a doesn't exist (no x RAM for the hardware).
I am using AT89C52 it doesn't have x RAM! So, if i declare the a[] as
xdata unsigned char a[];
Is it any problem on that?
Haha...you mean my xdata declaration still can work on my code and the code still working fine but on my controller don't have this data on memory?
C-Man said:You could try this simple method:
use one unsigned char variable for 8 signals (one PORT) and again one unsigned char variable for the previous state of these 8 signals.
C-Man said:All you need to do is an XOR operation on the two variables and you will know which signal(s) changed.
Ianp said:is not sufficient why can't you use the upper half (128 bytes) .. after all, as you say, you need only 60 bytes ???
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?