This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

New to ARM - suggestions and how to start

Note: This was originally posted on 25th January 2010 at http://forums.arm.com

I'm new to ARM but have used MCUs like Microchip PIC, 8051, and MSP 430.

My main attraction the ARM platform is the availability of on chip peripherals like USB and SDRAM controllers.

I am an experienced C/C++ programmer.

Also, I bought one of these Mini2440 kits from FriendlyArm.net which uses the Samsung S3C2440.

I was able to write WinCE applications in Visual C++ but I am not sure how to program the ARM device at the system level without an operating system like WinCE.

Questions:
1) Is there a book or tutorial I can get to show me how to get started? From what I understand, I need a copy of ADS to compile code.  Once the code is compiled, how do I transfer the binaries into the ARM device / write it into the NOR flash of the FriendlyArm devices?  With the friendlyarm, I compiled a Windows CE NK.bin image which I loaded using their supplied DNS.exe program.   Can I compile the ARM programs somehow with Visual Studio 2008? 

The friendlyarm devices included a Parallel port JTAG. Is this JTAG supported in the ARM development tools or do I need to purchase another one?

2) How is SDRAM memory addressed in the ARM?  Can I just write it in C and declare a large 2MB array and address it with C style pointers?

3) How is the onchip USB used?  Is there a simple library like FTDI's D2xx or Silicon Lab's USBXpress where the functions are basically fopen/fread/fwrite?

Thank you in advance for the answers.
Parents
  • Note: This was originally posted on 26th January 2010 at http://forums.arm.com

    Questions:
    1) Is there a book or tutorial I can get to show me how to get started? From what I understand, I need a copy of ADS to compile code. Once the code is compiled, how do I transfer the binaries into the ARM device / write it into the NOR flash of the FriendlyArm devices? With the friendlyarm, I compiled a Windows CE NK.bin image which I loaded using their supplied DNS.exe program. Can I compile the ARM programs somehow with Visual Studio 2008?

    The friendlyarm devices included a Parallel port JTAG. Is this JTAG supported in the ARM development tools or do I need to purchase another one?

    A:
    Try google, you can find tons of doc to learn.  After build , your need JTAG flash tools to program flash. To make it run in 2440, you may have to use a bootloader for scatter loading ( sandstone??? from Sumsang)

    VS2008 is just an IDE. Of course, you can configure it to support other compilers.

    JTAG is hw in-circuit interface debug ARM. Of course you can make it supported if you install the right driver in PC. Go find one.
    If you want a better one, JLink is a good choice.

    2) How is SDRAM memory addressed in the ARM? Can I just write it in C and declare a large 2MB array and address it with C style pointers?

    A:
    SDRAM needs init/driver before use in 2440. I guess your board already has the bsp for this. Go use it.

    3) How is the onchip USB used? Is there a simple library like FTDI's D2xx or Silicon Lab's USBXpress where the functions are basically fopen/fread/fwrite?

    A:
    NEED USB driver ( client/host ) as well.  Go check uclinux.
    I'm new to ARM but have used MCUs like Microchip PIC, 8051, and MSP 430.

    My main attraction the ARM platform is the availability of on chip peripherals like USB and SDRAM controllers.

    I am an experienced C/C++ programmer.

    Also, I bought one of these Mini2440 kits from FriendlyArm.net which uses the Samsung S3C2440.

    I was able to write WinCE applications in Visual C++ but I am not sure how to program the ARM device at the system level without an operating system like WinCE.

    Questions:
    1) Is there a book or tutorial I can get to show me how to get started? From what I understand, I need a copy of ADS to compile code.  Once the code is compiled, how do I transfer the binaries into the ARM device / write it into the NOR flash of the FriendlyArm devices?  With the friendlyarm, I compiled a Windows CE NK.bin image which I loaded using their supplied DNS.exe program.   Can I compile the ARM programs somehow with Visual Studio 2008? 

    The friendlyarm devices included a Parallel port JTAG. Is this JTAG supported in the ARM development tools or do I need to purchase another one?

    2) How is SDRAM memory addressed in the ARM?  Can I just write it in C and declare a large 2MB array and address it with C style pointers?

    3) How is the onchip USB used?  Is there a simple library like FTDI's D2xx or Silicon Lab's USBXpress where the functions are basically fopen/fread/fwrite?

    Thank you in advance for the answers.
Reply
  • Note: This was originally posted on 26th January 2010 at http://forums.arm.com

    Questions:
    1) Is there a book or tutorial I can get to show me how to get started? From what I understand, I need a copy of ADS to compile code. Once the code is compiled, how do I transfer the binaries into the ARM device / write it into the NOR flash of the FriendlyArm devices? With the friendlyarm, I compiled a Windows CE NK.bin image which I loaded using their supplied DNS.exe program. Can I compile the ARM programs somehow with Visual Studio 2008?

    The friendlyarm devices included a Parallel port JTAG. Is this JTAG supported in the ARM development tools or do I need to purchase another one?

    A:
    Try google, you can find tons of doc to learn.  After build , your need JTAG flash tools to program flash. To make it run in 2440, you may have to use a bootloader for scatter loading ( sandstone??? from Sumsang)

    VS2008 is just an IDE. Of course, you can configure it to support other compilers.

    JTAG is hw in-circuit interface debug ARM. Of course you can make it supported if you install the right driver in PC. Go find one.
    If you want a better one, JLink is a good choice.

    2) How is SDRAM memory addressed in the ARM? Can I just write it in C and declare a large 2MB array and address it with C style pointers?

    A:
    SDRAM needs init/driver before use in 2440. I guess your board already has the bsp for this. Go use it.

    3) How is the onchip USB used? Is there a simple library like FTDI's D2xx or Silicon Lab's USBXpress where the functions are basically fopen/fread/fwrite?

    A:
    NEED USB driver ( client/host ) as well.  Go check uclinux.
    I'm new to ARM but have used MCUs like Microchip PIC, 8051, and MSP 430.

    My main attraction the ARM platform is the availability of on chip peripherals like USB and SDRAM controllers.

    I am an experienced C/C++ programmer.

    Also, I bought one of these Mini2440 kits from FriendlyArm.net which uses the Samsung S3C2440.

    I was able to write WinCE applications in Visual C++ but I am not sure how to program the ARM device at the system level without an operating system like WinCE.

    Questions:
    1) Is there a book or tutorial I can get to show me how to get started? From what I understand, I need a copy of ADS to compile code.  Once the code is compiled, how do I transfer the binaries into the ARM device / write it into the NOR flash of the FriendlyArm devices?  With the friendlyarm, I compiled a Windows CE NK.bin image which I loaded using their supplied DNS.exe program.   Can I compile the ARM programs somehow with Visual Studio 2008? 

    The friendlyarm devices included a Parallel port JTAG. Is this JTAG supported in the ARM development tools or do I need to purchase another one?

    2) How is SDRAM memory addressed in the ARM?  Can I just write it in C and declare a large 2MB array and address it with C style pointers?

    3) How is the onchip USB used?  Is there a simple library like FTDI's D2xx or Silicon Lab's USBXpress where the functions are basically fopen/fread/fwrite?

    Thank you in advance for the answers.
Children