|
From: | Eric Weddington |
Subject: | Re: [avr-chat] Write sequence |
Date: | Thu, 19 Jan 2006 16:46:13 -0700 |
User-agent: | Mozilla Thunderbird 1.0.2 (Windows/20050317) |
Keith Gudger wrote:
Thanks for the replies. I tried volatile, and it did not make any difference. I got the tool chain from the web, and compiled it myself. Is there something wrong with the gcc version? Thanks. (I know that avr-libc and binutils are acceptable versions.)
No, they're fine.
I have a macro defined: #define WRITE_4BYTES(x, y) { CS_LOW \ *(BASE + ((y) ))) = (INT8U) (x); \ *(BASE + ((y + 1)))) = (INT8U) (x >> 8);\ CS_HIGH } (where BASE is defined as an 8 bit pointer with a value 0x8000 in ext ram and the macros CS_LOW and CS_HIGH are predefined to set a pin lo / high).get the following (for the atmega128): 42f2: 31 83 std Z+1, r19 ; 0x01 42f4: 20 83 st Z, r18
Keith, can you provide more context of the assembler output? Thanks -- Eric Weddington
[Prev in Thread] | Current Thread | [Next in Thread] |