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.
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