ARM Cross Development with Eclipse GNUARM Cygwin and AT91ISP

Discussion about SAM7 Series and ARM7TDMI based products.

Moderator: nferre

nleahcim
Posts: 87
Joined: Thu Aug 25, 2005 7:06 pm

Fri Apr 07, 2006 4:48 am

Hello again - I have been having various problems with this code, and so I've been looking carefully at it. I found something that I think may be a mistake. The linker script, ldscript:

Code: Select all

OUTPUT_ARCH(ARM)

/* specify the AT91SAM7S64 memory areas  */
MEMORY 
{
	flash	: ORIGIN = 0x00000000, LENGTH = 64K	/* free FLASH area  */
	ram   	: ORIGIN = 0x00200000, LENGTH = 16K	/* free RAM area  */
}

/* define a global symbol _stack_end <=> End of SRAM  */
_stack_end = 0x00210000;

SECTIONS
{
	/* Code and data are mapped at the bottom of the internal FLASH */
	.text : {
		_text = .;				/* define a global symbol marking the start of the .text section  */
		*(.startup)				/* define the entry point */
		*(.text)				/* all .text sections (code)  */
		_etext = .;				/* define a global symbol marking the end of the .text section  */
	} > flash

	.rodata : {
		_srodata = .;			/* define a global symbol marking the start of the .rodata section  */
		*(.rodata)				/* all .rodata .rodata* sections (constants, strings, etc.)  */
		*(.rodata*)				/* all .rodata* sections (constants, strings, etc.)  */
		*(.glue_7)				/* all .glue_7 sections  (mandatory before gcc 4.0.0) */
		*(.glue_7t)				/* all .glue_7t sections (mandatory before gcc 4.0.0) */
		_erodata = .;			/* define a global symbol marking the end of the .rodata section  */
	} > flash

	.data : {
		_sdata = .;				/* define a global symbol marking the start of the .data section  */
		*(.data)				/* all .data sections  */
		_edata = .;				/* define a global symbol marking the end of the .data section  */
	} > ram
	
	.bss : {
		__bss_start = .;		/* define a global symbol marking the start of the .bss section */
		*(.bss)					/* all .bss sections  */
		*(COMMON)
		__bss_end = .;			/* define a global symbol marking the end of the .bss section */
	} > ram

	_end = .;					/* define a global symbol marking the end of application */
	end = .;
}
Note that this file appears to be designed for an AT91SAM7S64, not an AT91SAM7XC256 like the rest of the files. Can anybody tell me how to fix this file? Are the two lengths the only things that need to be changed? What about the stack end?
hunter
Posts: 1
Joined: Wed May 31, 2006 11:14 pm

Debugging woes

Wed May 31, 2006 11:52 pm

I'm having trouble debugging the BasicGNU project. I see the following error messages in the debug control window when I start a debug session through Eclipse:

Embedded GDB (5/31/06 5:34 PM) (Suspended)
Thread [0] (Suspended) <Stack is not available: Reply contains invalid hex digit 78.>

If I click on the resume button, the error message changes to:

Embedded GDB (5/31/06 5:34 PM) (Suspended)
Thread [0] (Suspended: Signal 'SIGTERM' received. Description: Terminated.) <Stack is not available: Reply contains invalid hex digit 78.>

Also, in the GDB server's window, I see the follow error repeated several times:

Rx: m0,4
Reading 4 bytes @ addr 0x00000000
Failed to read memory @ addr 0x00000000
Tx: $ENN#e1

Any help/info/tips are greatly appreicated.

Thanks,

hunter
ujakkal
Posts: 4
Joined: Thu Jul 20, 2006 2:01 pm

need AT91SAM7X256 GNU example code

Mon Jul 24, 2006 11:22 am

i tried to download the BasicGNU.zip but it is currept please send me the GNU example code for AT91SAM7X-EK with AT91SAM7X256 controller
zenox
Posts: 1
Joined: Wed Sep 20, 2006 3:55 pm

Wed Sep 20, 2006 4:08 pm

nleahcim wrote:Hi - I'm having an odd problem. I can't use the divide or modulus operators using this code! I have been reading about GNU-ARM and I think I might have to include a special library or something? I've tried including math.h but that had no effect. Anybody have any idea how to get divide and modulus working? Thanks!!


edit: with the help of Richard at the gnuarm yahoo group I have gotten the problem fixed. Some modifications had to be made to the makefile. If anybody runs into the same problem and wants to see the updated makefile let me know and I'll post it.
I am having the same issue. From what I read I need to add the -lm to the linker but it did not seem to work. Could I possibly get a copy of your makefile?
User avatar
Fredo_Boyer
Contact:
Location: ATMEL Rousset FRANCE
Posts: 145
Joined: Mon Mar 22, 2004 12:29 pm

Mon Sep 25, 2006 3:26 pm

A new application note called "Using Open Source Tools for AT91SAM7 Cross Development" has been released recently. It could really help people wanting to develop their application thanks to the Open Source Tools.

Find it at the following link:
http://www.atmel.com/dyn/products/app_n ... nt%20Tools

Bye
Cyberian
Posts: 19
Joined: Wed Sep 06, 2006 3:06 pm

Tue Nov 21, 2006 1:03 pm

It seems there are some config files missing.

In the included pdf doc the mentioned config files in the atmel_tutorial_source.zip do not exist.
Are they located elsewhere in the meantime?
The tutorial deals with revision 93 of openocd and my download contains revision 115
ChrisJC
Contact:
Location: UK
Posts: 7
Joined: Sat Mar 17, 2007 11:34 pm

Wed Mar 21, 2007 11:11 pm

Referring to the OP, can somebody confirm (or not), that the toolset described supports 'managed make', i.e. it automatically generates the makefile from your project settings.

I tried the tutorial from James Lynch, and it worked perfectly, but I had to modify the makefile manually when adding source files. And this becomes a bit of a pain.

Thanks,

Chris.
kamejoko80
Posts: 43
Joined: Sat Jun 13, 2009 5:50 pm

Re: ARM Cross Development with Eclipse GNUARM Cygwin and AT9

Fri Apr 12, 2013 9:22 am

Hello,

We should add entry point

ENTRY(startup)

Regards.

Return to “SAM7 ARM7TDMI MCU”

Who is online

Users browsing this forum: No registered users and 2 guests