Open Source Static Code Analysis: Cppcheck with Eclipse

I have a challenge for you: Can you spot the problem in the following source?

TMOUT1_CounterHandle TMOUT1_GetCounter(TMOUT1_CounterType nofTicks)
{
  TMOUT1_CounterHandle handle;
  CS1_CriticalVariable();
  handle = 0;
  if (nofTicks==0) {
    nofTicks = 1; /* wait at least for one tick, otherwise will timeout immediately */
  }
  CS1_EnterCritical();
  while (!TMOUT1_FreeCounters[handle] && handle<TMOUT1_NOF_COUNTERS) {
    handle++;
  }
  if (handle<TMOUT1_NOF_COUNTERS) {
    TMOUT1_FreeCounters[handle]=FALSE;
    TMOUT1_Counters[handle] = nofTicks;
  }
  CS1_ExitCritical();
  if (handle==TMOUT1_NOF_COUNTERS) {
    return TMOUT1_OUT_OF_HANDLE;
  }
  return handle;
}

No? Well, I have not spotted the problem the first time neither. However, a reader of this blog did: he used a cool tool named ‘cppcheck’: that tool reported the following:

Continue reading

How to Reset an ARM Cortex-M with Software

There are cases when I need to do a reset of the device by software. For example I have loaded the application image with the bootloader, and then I need to perform a reset of the microcontroller to do a restart. As a human user I can press the reset button on the board. But how to do this from the software and application running on the board, without user manual intervention? Or if I simply want to reset the system for whatever reason?

Performing a Software System Reset with Kinetis Design Studio
Performing a Software System Reset with Kinetis Design Studio
Continue reading

Freescale Kinetis CAD Footprints and Symbols for Eagle/Altium/etc

One question I have received many times:

“Where can I find the Eagle footprint for Kinetis device XYZ?”

(replace Eagle with Altium or any other CAD/PCB Layout/Schematics program). So far I had to point either to Google, or to the symbols I have used in my design. Finally, Freescale has now a site where footprints can be downloaded :-):

Kinetis Footprints

Kinetis Footprints

Continue reading

Tutorial: Using Kinetis Design Studio V3.0.0 with IAR and Keil IDE’s

Freescale Kinetis Design Studio V3.0.0 came out early May this year. One of the new cool features is that it includes the Processor Expert V3.0.0 with an extended New Project Wizard. With this wizard I’m able to create and use Processor Expert projects with IAR Embedded Workbench and Keil MDK :-).

Kinetis Design Studio, Keil MDK and IAR Embedded Workbench

Kinetis Design Studio, Keil MDK and IAR Embedded Workbench

Continue reading

Hello World!! :)

Hello to all the amazing viewers of this fantastic blog! I am Manya Rastogi, a Master’s student at Texas A&M University pursuing Electrical Engineering. This summer, I got a wonderful opportunity to intern at Freescale, as a Technical Product Marketer for the Kinetis Microcontrollers.
Freescale gave me the great chance to attend the Freescale Technology Forum 2015, where I met Erich, a very talented engineer and blogger.  I am really grateful to him for giving me the chance to be his guest blogger.

Continue reading

Say ‘Hello’ to Manya!

I have a problem, and I want to solve it. I’m documenting my journey, findings, tips and tricks in this blog. However as I’m progressing, things are getting too advanced for others who are beginners or new to the embedded world. For them, my latest tutorials might be simply too complex. For beginners my stuff is far too advanced. Yes, there is a compendium, and yes, anyone could start reading from the early days. But things like tools have changed on my journey: I moved up from CodeWarrior to Kinetis Design Studio, so my very early tutorials do not apply to the current tools any more. Should I reset and reboot myself? Update or rewrite articles (would be many!)? Luckily, I don’t have to! At the Freescale Technology Forum (FTF) in Austin this week, I have met a solution for my problem:

Say ‘hello’ to Manya 🙂

Say hello to Manya, my new Guest Blogger

Say hello to Manya, my new Guest Blogger

Continue reading

Impressions from Freescale Technology Forum 2015

With Freescale merged into NXP, I guess this was the last FTF (Freescale Technology Forum) after a history of 10 years. Maybe it will transform into a ‘NTF’, at least I hope that such an energizing event and conference will continue in the new NXP area. I was busy with delivering my own sessions, but had time to meet and greet and see a lot of interesting stuff. After visiting the TechLab several times and after all the discussions with other embedded enthusiasts I have now many cool projects in mind :-).

So what I do here is to share some impressions with pictures and videos. It will take me weeks to absorb everything. Not to talk about the huge email backlog I have now ;-). So enjoy:

Willie Nelson at ACL (Austin City Limit)

Willie Nelson at ACL (Austin City Limit)

Continue reading