Hello I have created a new WinARM package. Since there have been a few changes in the "background" some testing is needed. I will do this in the next few days and hope that readers of this forum are also willing to test the new package and send feedback. - Readme: http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/WinARM_20071113b_readme.html - Package (ca. 100MBytes zip-Archive:) http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/WinARM_20071113b.zip Martin Thomas mthomas( at)rhrk(dot )uni-kl( dot)de
Dear Martin, I just installed the new version of WinARM over the previous 20070505, automatically replacing older files with new ones and tried to compile and run several proven projects for ADuC7020. Everithing is Ok! You do a fantastic work. Thank you very much. One request: is there a detailed description of WinAMP subdirectories? Especially for system files: binaries, inludes, libraries. Varuzhan Martin Thomas wrote: > Hello > > I have created a new WinARM package. Since there have been a few changes > in the "background" some testing is needed. I will do this in the next > few days and hope that readers of this forum are also willing to test > the new package and send feedback. > > - Readme: > http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/WinARM_20071113b_readme.html > - Package (ca. 100MBytes zip-Archive:) > http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/WinARM_20071113b.zip > > > Martin Thomas > mthomas( at)rhrk(dot )uni-kl( dot)de
Varuzhan Danielyan wrote: > Dear Martin, > > I just installed the new version of WinARM over the previous 20070505, > automatically replacing older files with new ones and tried to compile > and run several proven projects for ADuC7020. Everithing is Ok! > You do a fantastic work. Thank you very much. Thanks for the feedback. I'm glad that it's working for you. So far I havn't seen any issues with "pure C" too. > One request: is there a detailed description of WinAMP subdirectories? > Especially for system files: binaries, inludes, libraries. Most of the directory-structure is the one created during the build of the GNU tools. I expect there is some information on the structure in the manuals from the tools. But I don't think it's worth the time analysing this completly if the setup works. Most important is the bin/ - directory which holds the GNU tools or the "frontend"-programs (like arm-*-gcc) which call other binaries "deeper" in the directory structure. That's why this directory needs to be added to the search-path. I have added ( where <target> is arm-eabi for the current test-release and arm-elf for the older releases): <target>/include/arch - some register defintions I collected in the "early days" of WinARM, I suggest not to use them, they are only in for compatibilty with older WinARM packages. Try to use register-defintions on a "per project" basis. It seems there is no real "standard" even for the same controller-model. I have seen differences between register-definitions ("defines") availble from different sources for the same target. I do not recomment adding own include-files in the toolchain's include-directories to avoid side-effects. <target>/lib/.../newlib-lpc.a: library support-functions for newlib on LPC2000 from Aeolus (source for this in utils/newlib_lpc_src). I do not recomment to add own libraries in this directory for the same reason mentioned above. bin/lpc21isp.exe - Martin Maurer's lpc21isp tool examples/ - my example collection. Not everything in this directory has been developed by myself and not all examples I provide on my web-pages are included. The examples are used to test new releases and should serve users as "getting started" projects. Note that the examples are of very different "quality". For sure they do not always demonstrate the "best" method. doc/ - some of the documents I collected from which I think they are useful for others too pn/ - Simone Steele's Programmers Notepad utils/bin - a collection of tools to support building. It's a GNU make built for Win32 and tools to support it. This directory needs to be added to the search path to use the build-tools from WinARM. If you use mingw/minsys or cygwin or have WinAVR installed the tools from these packages can be used and there is no need to add the winarm/utils/bin-directory to the path. utils/ - some utilities and code. It's a personal selection of tools I use or plan to use and thought they might be useful for others too <snip> Current of the test-release: - I have some problems getting my C++ and newlib-lpc examples to work with the new test-release but I'm working on it. The toolchain itself should be o.k. just the example-code/setup needs some adaption. - Michael Fischer reported an issue with Insight that it's not finding all files during debugging. Since the issue is also present in the Insight binary from the latest Yagarto package Michael is working on a fix. Modifications will be applied to both packages Yagarto and WinARM. - included OpenOCD SVN211 may halt the controller after standalone flashing with "reset-script" if the JTAG-probe did already halt the controller on startup. Seems to be cause by a change done between SVN203 and SVN211. Flashing/debugging itself is o.k with the included version so this is not a major issue. I asked on the OpenOCD mailing-list about this, but it seems the mail still has to be approved to appear in the list. - at least one makefile of the examples still refers to lpc21isp_beta which does not longer exist. _beta needs to be removed. - I missed to include 2 or 3 newer examples.
Hello, I just tested this release with success. I was interested in seeing the resulting figures of the compilation related to previous versions. 4.1.2 4.2.1 4.2.2 WinArm Yagarto WinArm .text 77136 79128 77560 .rodata 50608 50664 50696 .data 16488 16300 16312 The rest of lines did not change. Cheers
Improved format 4.1.2 4.2.1 4.2.2 section WinArm Yagarto WinArm .text 77136 79128 77560 .rodata 50608 50664 50696 .data 16488 16300 16312
Martin Thomas wrote: > - included OpenOCD SVN211 may halt the controller after standalone > flashing with "reset-script" if the JTAG-probe did already halt the > controller on startup. Seems to be cause by a change done between SVN203 > and SVN211. Flashing/debugging itself is o.k with the included version > so this is not a major issue. I asked on the OpenOCD mailing-list about > this, but it seems the mail still has to be approved to appear in the > list. There was a slight addition in svn rev 204 - adding a exit state for the io's (parallel interface only). Do you have any more details/testcase? Cheers Spen
Further experiments show, that an interrupt handler for the ADI example project "Pulse" works only with no optimization (level 0), for all other optimization levels seems the handler is entered once again immediately after exit. The same example works with any level of optimization with WinARM 20070505. Varuzhan Varuzhan Danielyan wrote: > Dear Martin, > > I just installed the new version of WinARM over the previous 20070505, > automatically replacing older files with new ones and tried to compile > and run several proven projects for ADuC7020. Everithing is Ok! > You do a fantastic work. Thank you very much. > One request: is there a detailed description of WinAMP subdirectories? > Especially for system files: binaries, inludes, libraries. > > Varuzhan > > Martin Thomas wrote: >> Hello >> >> I have created a new WinARM package. Since there have been a few changes >> in the "background" some testing is needed. I will do this in the next >> few days and hope that readers of this forum are also willing to test >> the new package and send feedback. >> >> - Readme: >> http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/WinARM_20071113b_readme.html >> - Package (ca. 100MBytes zip-Archive:) >> http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/WinARM_20071113b.zip >> >> >> Martin Thomas >> mthomas( at)rhrk(dot )uni-kl( dot)de
Spencer Oliver wrote: > Martin Thomas wrote: >> - included OpenOCD SVN211 may halt the controller after standalone >> flashing with "reset-script" if the JTAG-probe did already halt the >> controller on startup. Seems to be cause by a change done between SVN203 >> and SVN211. Flashing/debugging itself is o.k with the included version >> so this is not a major issue. I asked on the OpenOCD mailing-list about >> this, but it seems the mail still has to be approved to appear in the >> list. > > There was a slight addition in svn rev 204 - adding a exit state for the > io's (parallel interface only). > > Do you have any more details/testcase? Thanks for answering Spen. Yes, I have a test-case with config/reset-script to flash a NXP LPC2129 using a Olimex Wiggler-Clone. This would match "parallel interface only". I have not tested with the Amontec JTAGkey FT2232-based probe so far. Please contact me by e-mail (mthomas(at)rhrk(dot)uni-kl(dot).de) and I will send the test-case later this week (currently no access to my development PC). I will do some tests with the STmicro STR710 eval-board which might be easier for you to reproduce too. In the e-mail to the OpenOCD developer-mailing-list I suggested to add an optional parameter (i.e. "restoreio") to the shutdown command. So shutdown without the parameter would leave the IO-pins as "configured" by the reset-script. So the command reset run followed by shutdown (without parameter) would not restore the io's while shutdown with the parameter would restore the io's to the state found on OpenOCD start. Martin Thomas
I am surprised, that the new verion testing is so passive. Besides, I am afraid that Martin did not notice the problem report (below). Hope to activate the discussion a little by this message. Varuzhan Varuzhan Danielyan wrote: > Further experiments show, that an interrupt handler for the ADI example > project "Pulse" works only with no optimization (level 0), for all other > optimization levels seems the handler is entered once again immediately > after exit. The same example works with any level of optimization with > WinARM 20070505. > > Varuzhan > > > Varuzhan Danielyan wrote: >> Dear Martin, >> >> I just installed the new version of WinARM over the previous 20070505, >> automatically replacing older files with new ones and tried to compile >> and run several proven projects for ADuC7020. Everithing is Ok! >> You do a fantastic work. Thank you very much. >> One request: is there a detailed description of WinAMP subdirectories? >> Especially for system files: binaries, inludes, libraries. >> >> Varuzhan >> >> Martin Thomas wrote: >>> Hello >>> >>> I have created a new WinARM package. Since there have been a few changes >>> in the "background" some testing is needed. I will do this in the next >>> few days and hope that readers of this forum are also willing to test >>> the new package and send feedback. >>> >>> - Readme: >>> http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/WinARM_20071113b_readme.html >>> - Package (ca. 100MBytes zip-Archive:) >>> http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/WinARM_20071113b.zip >>> >>> >>> Martin Thomas >>> mthomas( at)rhrk(dot )uni-kl( dot)de
Varuzhan Danielyan wrote: > I am surprised, that the new verion testing is so passive. > Besides, I am afraid that Martin did not notice the problem > report (below). Hope to activate the discussion a little by > this message. Hi Varuzhan, although not having tested/ssen your particular issues my projects are running okay with this version. However, some myths are accompanying me in VISTA still: I have OpenOCD installed at THREE places (program files = programme). Although I assumed ONE should be sufficient it turned out removing just one installed location lets the "build" collapse at some point. I spent D_A_Y_S !!! on trying to improof this to some kind of a LOGICAL installation (single OPENOCD). I gave up to so far and stick to my current working environment as the de facto standard. Learning from the Yagarto experience it might be more healthy to install the compenents OUTSIDE the "program files" ("Programme") folder: - OpenOCD - WinARM / YAGARTO - eclipse Funny, even eclipse has problems when residing in the standard VISTA program folders. May be you encountered already difficulties when installing eclipse plugins etc. when installation failure messages turned up telling you that the folder names are too long. Personally I am not happy with the idea to install the packages so near to the ROOT dir. Currently I think if noone finds out how to solve these issues with VISTA/Microsoft, more and more users will be forced to do so. At this moment in time I see this as a tribute to the open software idea as it is not typically focussing on windows as the prime system. Regards Thomas
Varuzhan Danielyan wrote: > I am surprised, that the new verion testing is so passive. > Besides, I am afraid that Martin did not notice the problem > report (below). Hope to activate the discussion a little by > this message. > > Varuzhan > > > Varuzhan Danielyan wrote: >> Further experiments show, that an interrupt handler for the ADI example >> project "Pulse" works only with no optimization (level 0), for all other >> optimization levels seems the handler is entered once again immediately >> after exit. The same example works with any level of optimization with >> WinARM 20070505. By "project pulse" do you mean the example in the ADuC7026_blink folder of the WinARM 200711 test-release? If not: give a link to the source-code or attach it to a message in this forum Martin Thomas
Thank you very much. The zipped file is attached. Best regards, Varuzhan Martin Thomas wrote: > Varuzhan Danielyan wrote: >> I am surprised, that the new verion testing is so passive. >> Besides, I am afraid that Martin did not notice the problem >> report (below). Hope to activate the discussion a little by >> this message. >> >> Varuzhan >> >> >> Varuzhan Danielyan wrote: >>> Further experiments show, that an interrupt handler for the ADI example >>> project "Pulse" works only with no optimization (level 0), for all other >>> optimization levels seems the handler is entered once again immediately >>> after exit. The same example works with any level of optimization with >>> WinARM 20070505. > > By "project pulse" do you mean the example in the ADuC7026_blink folder > of the WinARM 200711 test-release? If not: give a link to the > source-code or attach it to a message in this forum > > Martin Thomas
Varuzhan Danielyan wrote: > Thank you very much. > The zipped file is attached. Varuzhan, Ok, this seems to be another problem with the interrupt attribute (return address "adjusted" twice). The attributes used to produce correct machine-code for exception-handlers with older versions of the toolchain even with -Os optimization and when everything has been build for ARM-mode. It seems this has changed somehow. So far I don't know the real reason maybe because of the new versions of the tools or the eabi-target. Well, it's a good idea to avoid compiler-specific extensions anyway. Find attached a modified version of your code. The user's IRQ handler (assigned to function-pointer IRQ) is now called from an assembler-wrapper located in file startup.S. This should avoid any attribut problems. So far no modifications done for the other exceptions like FIQ, SWI etc. I do not own hardware with an Analog Devices ARM7TDMI to test this so I could just test a little bit with the simulator of the Keil eval-version. I hope it works on the real hardware too. Martin Thomas
Dear Martin, Thank you very much! Now it works. Varuzhan Martin Thomas wrote: > Varuzhan Danielyan wrote: >> Thank you very much. >> The zipped file is attached. > > Varuzhan, > > Ok, this seems to be another problem with the interrupt attribute > (return address "adjusted" twice). The attributes used to produce > correct machine-code for exception-handlers with older versions of the > toolchain even with -Os optimization and when everything has been build > for ARM-mode. It seems this has changed somehow. So far I don't know the > real reason maybe because of the new versions of the tools or the > eabi-target. Well, it's a good idea to avoid compiler-specific > extensions anyway. Find attached a modified version of your code. The > user's IRQ handler (assigned to function-pointer IRQ) is now called from > an assembler-wrapper located in file startup.S. This should avoid any > attribut problems. So far no modifications done for the other exceptions > like FIQ, SWI etc. I do not own hardware with an Analog Devices ARM7TDMI > to test this so I could just test a little bit with the simulator of the > Keil eval-version. I hope it works on the real hardware too. > > Martin Thomas
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.