I’m developing a C++ application in IAR Embedded Workbench for MSP430. I’m using FreeRTOS 8.0.0 RC2 (although the same thing happens with the 7.6.0 release too). I have the Wittenstein plugin “Kernel awareness for FreeRTOS and OpenRTOS” version 2.0.0.0 installed.
Firstly (an aside), the signature of the vQueueAddToRegistry() is a problem for C++. The pcName parameter should be “const char*” rather than “char*”. This means 3 changes in queue.c and queue.h.
Anyway, I’ve defined configQUEUE_REGISTRY_SIZE to be 5 and I’m calling vQueueAddToRegistry() for the queues that I create. But the plugin won’t show them - it says “Use the vQueueAddToRegistry() API in the source code to make a queue visible in this table”. I am doing that, but it doesn’t work.
Tasks do show correctly in the Task view window, but queues don’t show in the Queue window.
Does anybody have any clues on getting this working, please.
The pcName parameter should be “const char*” rather than "char*
The pcQueueName member of the QueueRegistryItem_t structure has been changed to a const char * to allow the pcName parameter to also be a const char * without generating a warning. You will find this change in the v8 release.
Wittenstein plugin “Kernel awareness for FreeRTOS and OpenRTOS” version 2.0.0.0 installed
Really this is a question for WITTENSTEIN, but I think as a starting point your plug-in version is out of date. Curiously though I would have thought the older version would have problems with the task table, not the queue table. You can download an updated version from the http://www.highintegritysystems.com website.
I’m pretty sure I tested the IAR plug-in with the version 8 release candidate, but only in the IAR MSP430 simulator, and with the latest plug-in version.
Just checked SVN and rev 2183 looks like it does the right thing now - thanks.
I have tried to find a newer version on that website but haven’t had any success. I’ve also tried emailing them, and posting to their support website (both today and a few weeks ago). But I’ve never had any response. Is there any other way to get the newer version? Can you please tell me its version number?
The online form is an automated process. I just tested it and got the download in my email within a few seconds. I suspect your just ended up in a junk or spam folder.
There are not different plug-ins for ARM and MSP430 - the same works with both.
Having re-installed EW430 recently I note they are still shipping with the old plug-in version. It seems EWARM was updated, but not EW430 - but you can update the plug in to V2.1.0 yourself as described in this post just above.
Fill in the form to receive a link to the plug-in in your email (its an automated process, you don’t need to wait more than a few minutes).
Unzip the files you download.
Follow the readme.txt instructions in the file you unzipped.
I just tried it myself and everything is working fine after the update.
NOTE:
If you are using IAR Embedded Workbench for an architecture other than ARM,
modify the following line in the OpenRTOSPlugin.ewplugin file supplied with
this download to match the actual directory structure:
$EW_DIR$\arm\plugins\rtos\OpenRTOS\OpenRTOSPlugin.dll
AND - put this on the download page on the web-site - that only talks of the ARM plugin.
Exact verbage from the web-site:
“STATEVIEWER comes pre-installed with IAR’s EWARM IDE, for information on other platforms supported by STATEVIEWER within the IAR IDE please contact us here.”
NOTE:
If you are using IAR Embedded Workbench for an architecture other than ARM,
e.g.TI MSP430 or Renesas RX etc., then replace “arm” in the above path as
appropriate, e.g. with “rx” for the Renesas RX.
and
If you are using IAR Embedded Workbench for an architecture other than ARM,
modify the following line in the OpenRTOSPlugin.ewplugin file supplied with
this download to match the actual directory structure:
$EW_DIR$\arm\plugins\rtos\OpenRTOS\OpenRTOSPlugin.dll