EmbDev.net

Forum: ARM programming with GCC/GNU tools Winarm & Crossworks


Author: Amit Chatre (aseem)
Posted on:

Rate this post
0 useful
not useful
Hi ,
    Using winarm I tested my touchscreen driver.In touchscreen interface
I used a onchip adc (AD0 and AD1). Its working well.
    But when I port this code on crossworks Its not working properly.
Adc readings are varing automatically. when I touch to touchscreen it
gives some wrong reading and when i realease my touch it also gives some
readings.

please tell me if is ther any changes required in prototype definition
or any in crossworks.

or what may be the issue when same files are working well in winarm and
not working in crossworks.

Its really serious problem for me.

thanks in advance

Author: Martin Thomas (mthomas) (Moderator)
Posted on:

Rate this post
0 useful
not useful
Amit Chatre wrote:
> Hi ,
>     Using winarm I tested my touchscreen driver.In touchscreen interface
> I used a onchip adc (AD0 and AD1). Its working well.
>     But when I port this code on crossworks Its not working properly.
> Adc readings are varing automatically. when I touch to touchscreen it
> gives some wrong reading and when i realease my touch it also gives some
> readings.
First check the versions of the GNU-tools used by Crossworks. Maybe it's
just an optimization-issue which did not show up with older tools (as
maybe in WinARM). Check for missing volatiles and correct handling of
IRQs (setup, handlers). Check that the compiler-options passed by the
Crossworks-IDE to the GNU-tools (arm-*-gcc...) are the same as with your
standalone-build. Check if the generated linker-script from Crossworks
leads to the same memory-layout as the one from the standalone-build
(map-file).

> please tell me if is ther any changes required in prototype definition
> or any in crossworks.
Sorry, I do not understand this questions but may not be able to help
anyway since I do not have Crossworks. Since Crossworks is a commercial
product: did you ask Rowley's support?

> or what may be the issue when same files are working well in winarm and
> not working in crossworks.
If nothing helps look into the disassemblies (generate with objdump)
from both builds and check for differences.

Author: Amit Chatre (aseem)
Posted on:

Rate this post
0 useful
not useful
Martin Thomas wrote:
> Amit Chatre wrote:
>> Hi ,
>>     Using winarm I tested my touchscreen driver.In touchscreen interface
>> I used a onchip adc (AD0 and AD1). Its working well.
>>     But when I port this code on crossworks Its not working properly.
>> Adc readings are varing automatically. when I touch to touchscreen it
>> gives some wrong reading and when i realease my touch it also gives some
>> readings.
> First check the versions of the GNU-tools used by Crossworks. Maybe it's

GNU-tool version is 3.4.4 & I used adc in polling mode only.
Even I have not added any compiler option it just work on default
settings.

> just an optimization-issue which did not show up with older tools (as
> maybe in WinARM). Check for missing volatiles and correct handling of
> IRQs (setup, handlers). Check that the compiler-options passed by the
> Crossworks-IDE to the GNU-tools (arm-*-gcc...) are the same as with your
> standalone-build. Check if the generated linker-script from Crossworks
> leads to the same memory-layout as the one from the standalone-build
> (map-file).

>
>> please tell me if is ther any changes required in prototype definition
>> or any in crossworks.
> Sorry, I do not understand this questions but may not be able to help
> anyway since I do not have Crossworks. Since Crossworks is a commercial
> product: did you ask Rowley's support?
>
?

>> or what may be the issue when same files are working well in winarm and
>> not working in crossworks.
> If nothing helps look into the disassemblies (generate with objdump)
Is winarm generates the disassembly code?if yes please tell me the way,
how to generate disassemblies?
> from both builds and check for differences.

Author: Martin Thomas (mthomas) (Moderator)
Posted on:

Rate this post
0 useful
not useful
>...
> Is winarm generates the disassembly code?if yes please tell me the way,
> how to generate disassemblies?
>...
As already mentioned: use objdump
(arm-elf-objdump/arm-none-eabi-objdump).  I don't know the needed
settings for the Crossworks-IDE. If you are using a makefile based on
one of my WinARM templates the disassembly is generated as file with
extension .lss (as with the WinAVR sample-makefiles).

Reply

Entering an e-mail address is optional. If you want to receive reply notifications by e-mail, please log in.

Rules — please read before posting

  • Post long source code as attachment, not in the text
  • Posting advertisements is forbidden.

Formatting options

  • [c]C code[/c]
  • [avrasm]AVR assembler code[/avrasm]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]




Bild automatisch verkleinern, falls nötig
Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.