| ??? 12/11/03 22:03 Read: times |
#60470 - RE: 89C51RC and Keil Responding to: ???'s previous message |
Hi,
from 12k to 32k will give me enough space for MOVX commands. No!!!!.... You have got "not enough program memory available" problem and so just may use MCU with more program memory space, for example, AT89C55WD which is cheap and has 20kB of code memory. Let explain. Program code is placed into internal or external (or both) (EE)PROM/OTP/FLASH memory. It may be accessed only via command fetch or MOVC instruction (oh well, some parts - for example, Dallas`es ones, have another way where program memory may be accessed as data memory, but it seems like a "featured trick" and not the point here). So, both the program code and the constant variables are placed into CODE memory; other variables are placed into DATA memory. Okay, if it is clean, then let come to PDATA. PDATA is a part of XDATA. In fact, PDATA is internal/external DATA memory segment which may be accessed both via MOVX@DPTR or MOVX@R0/R1. Now, I can not understand: if you have not enough program (CODE) memory so how does extra DATA memory help you? The things are simple: MOVC acceses program memory (for C53/C55 the internal ones are 12/20kB), MOVX accesses DATA memory which has nothing with program memory limit (here I need to say that I have program way to use DATA memory as CODE one but it is another thread about "virtual machine" :) At finaly, if you have not PROGRAM memory then switch to AT89C55WD (it is much more cheap than RC). From other side, if you have not enough space for the XDATA variables then use AT89C51RC or another chip which has extra-internal memory (XRAM) inside. Anyway, at first place - LOCALISE your problem: PDATA has nothing with program memory limit (okay, I will be more mild: it is not so direct relative, but sometimes... oh, another theme :) cu! |
| Topic | Author | Date |
| 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: Add. info | 01/01/70 00:00 | |
| RE: Add. info | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| again | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
RE: 89C51RC and Keil | 01/01/70 00:00 | |
| RE: 89C51RC and Keil | 01/01/70 00:00 | |
| once more | 01/01/70 00:00 | |
| RE: once more | 01/01/70 00:00 | |
| RE: once more | 01/01/70 00:00 | |
| RE: once more | 01/01/70 00:00 | |
| RE: you are right | 01/01/70 00:00 | |
| RE: you are right | 01/01/70 00:00 |



