Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Stan

Pages: [1]
ATMELTM AT91SAM7X and AVR32 / uTasker on SAM7X512
« on: May 22, 2009, 05:10:23 PM »

I'm trying to run the uTasker for CrossStudio on SAM7X512. The only differences that I saw from SAM7X256 are:
                     SAM7X256            SAM7X512
Flash Size:           256K                     512K
RAM Size:             64K                      128K
Lock Bits               16                        32

The Flash in SAM7X512  is:
"Organized in Two Banks of 1024 Pages of 256 Bytes (Dual Plane)"
instead of
"Organized in 1024 Pages of 256 Bytes (Single Plane)"

and that's why:

"The AT91SAM7X512 is equipped with two EFCs, EFC0 and EFC1. EFC1 does not feature the
Security bit and GPNVM bits. The Security and GPNVM bits embedded only on EFC0 apply to
the two blocks in the AT91SAM7X512."

I couldn't find any other differences and I think that I should be able to use the uTasker on SA7X512 without any changes. I think there is no difference in accessing the first Bank of 256K so I can't explain to myself what is the problem.

I made a simple CrossStudio project with their startup files (using AT91SAM7_Startup.s, crt0.s, etc.) which only blinks one LED and It works fine. However the same source won't work using startup_gnu.s and SAM7X.c.

I tried to see what are the differences but couldn't find what's wrong.

Any help will be appreciated!  :)

Best Regards

Hello everyone,

I'm trying to implement the ping request in my board. I'm using AT91SAM7X256.

I have a task in which I do:
if (z % 200 == 0) // This is executed every 10 seconds
    case PING_RESULT: ser_write_string(RS232_UART, "\n\r Ping OK"); break;
    case ARP_RESOLUTION_SUCCESS: ser_write_string(RS232_UART, "\n\r ARP Success"); break;


OWN_TASK is defined to be the same as the first letter of my task's name, in my case it's '_' .
I saw that it goes in case ECHO_PING_REPLY in fnHandleICP() and it writes '_' in int_message[MSG_DESTINATION_TASK]. I'm not sure but I think something is wrong with the scheduler. I check my task's  ucEvent field with the Watch but it's always 0.

In config.h I have all the definitions:
#define USE_ICMP                                                // enable ICMP

        #ifdef USE_ICMP                                              // specify ICMP support details
            #define ICMP_PING                                       // allow PING reply
            #define ICMP_SEND_PING                               // support PING transmission
            #define ICMP_DEST_UNREACHABLE                   // allow destination unreachable if no UDP port exists

Any help will be appreciated :) Thanks!

ATMELTM AT91SAM7X and AVR32 / FTP Server stopped working
« on: September 19, 2008, 08:42:07 AM »

Today I saw a strange effect concerning uTasker's FTP Server. Yesterday everything seemed to be fine. Today when I run my device I couldn't open the ftp, I tried to open it through MS Explorer and I got a message which said:

"The folder "" is read-only because the proxy server is not set up to allow full acess.

To move, paste, rename, or delete files, you must use a different proxy. For information on changing your proxy contact your administrator."

After that it opened me the address in read-only mode and there was only the -r Empty file.

I'm not sure if it's problem in uTasker or in Windows or in my network because I erased the entire flash and uploaded the uTasker again but the problem still occurs. 

ATMELTM AT91SAM7X and AVR32 / Bootloader and Flash segments
« on: June 12, 2008, 12:58:19 PM »

I work with SAM7X256 and I've made some changes in the uTasker's code because I wanted to use custom web pages with custom parameters. This is what I did:

1) I inserted my array of parameters in struct stPARS (application.h)

2) I increased PARAMETER_BLOCK_SIZE from 2*FLASH_GRANULARITY(1k) to 14*FLASH_GRANULARITY(7k) as I need more space for the parameters (app_hw_sam7x.h)

3) I changed UPLOAD_FILE_LOCATION from 0x127800 to 0x129000 (uTaskerBootLoader.c in Bootloader's project) - I increase this address with 6kbyte as I increase parameter block size with 6kbyte

Do I have to make more changes in order to work everything properly? Now I upload z_Upload.bin file, reboot and when uTasker is loaded I see that it deletes the bin file for the ftp but software remains the same, the newer version is not loaded.

There are few things to mention:

1) In uTasker's Documents it is said that the files in the file system are in the following order: 0...9a...zA...Z
but in the source code they are 0...9A...Za...z like in ASCII.

2) I don't think that it's good idea UPLOAD_FILE_LOCATION to be constant number.

3) From what I see the FLASH memory is divided in the following order(originally):

0x100 000 - FLASH start

0x100 000 to 0x100 6FF - Bootloader

0x100 700 to 0x117 FFF - Application

0x118 000 to 0x118 400 - Parameters (0x400 = 1024 = 1k which is by default)

0x118 401 to 0x127 7FF - File System

0x127 800 to 0x140 000 - Space for uploading new software (0x127 800 is the address on which file starting with 'z' is placed)

0x140 000 - FLASH end

Am I right?

4) Where ucKey[] = {0xa7, 0x48, 0xb6, 0x53, 0x11, 0x24} is placed in the bin file?

5) When I open z_Upload.bin with HEX editor I see:
00 00 B3 61 12 34 ... at the start of the file. What 0000 and B361 are for?

When I upload this file to the FTP and read the SAM7X memory from the CrossStudio I see:

69 B3 00 00 05 00 00 B3 61 12 34 ...

Do you know what happens?

Thanks in advance!

µTasker general / uTaskerBoot for CrossStudio
« on: April 04, 2008, 01:39:24 PM »
Hi Mark,

I was wondering if you intend to make a version of your bootloader for CrossStudio. I'm not familiar with .s79 files and so it would be quite difficult for me to make it by myself :] If you don't have such plans or enough time, please, can you guide me on how to move this project in CrossStudio? Thanks!

Pages: [1]