Hi , im trying to simulate some peripherals for mi c51 application , but i have the following problem :
One of these peripherals needs to write several positions of the external memory of the C51 , im using the function WWORD ( but the same applies to RWORD when i want to read external memory)
if i use :
WWORD ( X: 0003 , WordToCopy) ; the vlaue of WordToCopy its written on the direccion 0x0003 from the external memory
now if i do :
buffer = 0x0003; WWORD (X:buffer , WordToCopy);
or
buffer = X:0x0003: WWORD(buffer , WordToCopy);
in bot cases WordToCopy its written in the address 0x0003 of the internal ram in this case its the register r3 , and r4
My question is , how can i write external memory without having to write address by addres ( i wanted to use this variable buffer inside a for , changing its value , since i have to write lots of bytes)
Thanks for the help !
i've copy&paste those functions on my script and defined the buttons , but both of them keep writting the data on R3 and R4 , are there any special configuration for this functions that i can modify ?
Im not sure if this will help , but im using the following version of Uvision
IDE-Version: µVision V4.14.16.0 Copyright (C) 2011 ARM Ltd and ARM Germany GmbH. All rights reserved.
Tool Version Numbers: Toolchain: PK51 Prof. Developers Kit Version: 9.03 Toolchain Path: C:\Keil\C51\BIN\ C Compiler: C51.Exe V9.03 Assembler: A51.Exe V8.02 Linker/Locator: LX51.Exe V4.55a Librarian: LIBX51.Exe V4.24 Hex Converter: OHX51.Exe V1.38 CPU DLL: S8051.DLL V3.75 Dialog DLL: DCore51.DLL V2.74