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
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.
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.
>... > 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).
Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
Log in with Google account
No account? Register here.