You are currently browsing the archives for the Tools category.
- AV16 (4)
- builtin (1)
- Chapter 1 (2)
- Chapter 12 (3)
- Chapter 14 (1)
- chapter 2 (1)
- Chapter 3 (1)
- Chapter 4 (1)
- Chapter 5 (4)
- Configuration (1)
- Events (2)
- Flying (4)
- I2C (5)
- Linux (1)
- MPLAB 8.00 (5)
- mplab c30 v3.02 (11)
- PIC24 (2)
- PIC32 (9)
- Tips and Tricks (14)
- Tools (10)
- Warnings (2)
- 19. November 2008: Bending the laws of physics
- 13. November 2008: Electronica 2008
- 6. November 2008: Deep Blue PIC32
- 4. November 2008: MIPS DSP Libraries
- 1. November 2008: Inexplicably Working Errata
- 26. October 2008: PIC32, Harvard or Von Neumann
- 22. October 2008: Back online, Excuses and the Blues Brothers
- 28. July 2008: Not a dsPIC!
- 23. July 2008: Scilab, FLEX and the Evidence
- 22. July 2008: New compiler and new libraries for the PIC32
Blogroll
PIC24
PIC32
Archive for the Tools Category
MIPS DSP Libraries
4. November 2008 by pilot.
With the latest release of MPLAB C32 compiler v.1.04, Microchip has added a complete set of DSP functions for the PIC32 to complement the standard math libraries. Among them you will find a number of vector processing functions and as expected several different types of FFT functions. You will remember that in Chapter 7, in order to give the PIC32 some work to do while we were playing wit the cache and pre-fetch mechanism to find the optimal performance tuning, we used a FFT function. That was a simple “schoolbook” implementation of the basic algorithm in C.
If you try the new DSP library, don’t be too surprised if you discover that the speed of execution is increased by orders of magnitude. In fact the libraries are written for fractional numbers (16 and 32-bit fixed point numbers) as most DSP algorithms do, and were hand optimized (large portions were written in assembly) by MIPS experts to obtain the maximum performance from the PIC32 instruction set.
Posted in PIC32, Tools | No Comments »
Scilab, FLEX and the Evidence
23. July 2008 by pilot.
Third day of the Masters’08 and I discovered another little treasure.
If you have been dreaming about using a tool like MATLAB to model your applications and to generate automatically your control algorithms, but you did not have the kind of money required to purchase the tool, here is an interesting Open Source alternative called Scilab:
But wait there is more, much more. The guys from Evidence s.r.l. have actually combined the Scilab tool with a vast library of modules for the dsPIC and PIC24 so that you can generate an entire advanced control application simply by dragging and dropping graphic icons on your PC screen, it’s called SciCOS. To complete the picture they have created a line of modular components (that somewhat reminded me of the PC104 standard) called FLEX. Useless to say that all FLEX boards/components have a corresponding model in Scilab and integrate perfectly in your control solution.
I have seen some pretty impressive real time demos, check them out!
Posted in Tools | No Comments »
New compiler and new libraries for the PIC32
22. July 2008 by pilot.
The MPLAB C32 compiler got today its first new release v1.03!
And it is not just any minor update of the tool as the small version number change would have you believe… there are two important changes:
1- The math libraries have been significantly optimized, in particular the floating point math

2- The Student Edition of the compiler (free download) is now using a scheme similar to the MPLAB C30 compiler. The first 60 days there are NO limitations of any sort. After this period, only the maximum optimizations level is limited to level 1 (still very effective).
Gone is the limitation in size that had so many of us frustrated when trying to compile the more advanced libraries (like the USB Host Stack for example)!
Check the MPLAB C32 compiler web page for more info.
Posted in PIC32, Tools | No Comments »
freeRTOS for the PIC24 and PIC32
22. July 2008 by pilot.
Today was my second day at the Masters 2008. After attending a number of excellent PIC32 classes (taught by the same architects and engineers that designed the chip and its libraries and tools) I sneaked out and went looking for a hands on class introducing the freeRTOS port for the PIC24 and PIC32.
freeRTOS is one of the few Real Time Operating Systems that have been ported to a large selection of microcontrollers commonly used in embedded control applications. Previous PIC architectures had been supported in the past but of course the PIC24 and PIC32 are now part of the list.
The integration with the MPLAB C30 and C32 compilers is quite natural and even the MPLAB IDE recognizes the tool and allows you to inspect the list of active tasks and perform some basic debugging.
If you are like me, looking for a way to run multiple software libraries (Graphics, USB, TCP/IP etc ), you are most probably looking for a small and inexpensive RTOS that can help you manage the complexity.
Check out the freeRTOS web site, it might just be what the doctor ordered!
Posted in PIC32, Tools | No Comments »
Visualizing Data - A taste of Visual C#
15. April 2008 by pilot.
Our brain is wired for image processing and all things visual just reach deep in our mind faster! If there is one moment when I just cannot seem to ever get enough of a “view”, that’s when I am debugging code. The Watch windows, the local variables windows, the stack window are not what I am talking about. The Logic Analyzer window (in MPLAB SIM) and the DCMI (with simulator and emulators) are barely starting to scratch the surface, when I need to debug some complex code, I am willing to use literally everything at my disposal, beyond MPLAB, using hardware (scopes and logic analyzers) but also additional software.
Posted in Tools, Tips and Tricks, MPLAB 8.00 | No Comments »
Visualizing Data - DMCI
10. April 2008 by pilot.
I guess one of the advantages of getting older (if there is any) is that I am becoming somewhat more patient and I am learning to resist the temptation of trying out on the hardware target every single line of new code I write. I am finding myself using the simulator (MPLAB SIM) more and more every day to test thoroughly sections of my code before throwing it out to the ICD. The result is overall less development cycles (code, program (ICD), run, crash, … repeat), more bugs caught early and more productivity.
Posted in Tools, MPLAB 8.00 | 1 Comment »
LINUX catch-22
4. April 2008 by pilot.
For some reason I used to think that Linux was destined to be a hot topic among embedded control developers, so I have been disappointed last summer, at the MASTERs (the 11th), when a couple of enthusiastic colleagues decided to try and offer a short class on Linux tools for Microchip products. The class was great, I learned a lot in that single hour and I came out with a great desire to learn more about developing code in Linux, but the attendance (statistics) turned out pretty discouraging.
Posted in Linux, Tools | 2 Comments »
Addictive Tools
31. March 2008 by pilot.
Of the many tools I have used in the recent years, while working on various embedded control projects, there is one that I have quickly learned to love: the INTRONIX Logic Port.
Now I am sure you have seen and possibly tested plenty of USB based tools that rely on your PC to do the heavy lifting and promise to replace some expensive and bulky traditional oscilloscope, logic analyzer or meter for a fraction of the cost. Well I have tested my share, and while they all shine for their ingenuity and often they speak well about the creativity and good intentions of the designer, they all kind of fall short of delivering on their promise and definitely pale in comparison to the LogicPort!
The LogicPort is not the cheapest of the USB logic analyzers you can find online nowadays, nor the one with the fanciest plastic case, but it does work. It does exactly what the brochure says it would and most importantly it does what an embedded control designer needs with an effective and intuitive interface.
I know that their use has spread inside the company like a virus, by word of mouth, or I should say by our constant borrowing of each other’s tools… that’s the way I learned about it in my turn… now you are warned it’s addictive!
P.S.: Jon, I promise, I will return it to you … one day!
Posted in Tools | 1 Comment »
Of Explorer 16 boards and 5V LCD displays…
12. March 2008 by pilot.
I read with interest today an errata for the Explorer16 demonstration board…
I know, it seems strange to think of an errata for a demonstration board, but it can happen and as in this case, there is a good lesson to learn for all of us, living the dangerous lives of the Embedded Control designers on the edge between 5V legacy technology and the new 3V generations of products.
In order to keep their options as open as possible, the Explorer16 designers arranged for a number of different LCD displays to be used alternatively on the board. Three different layouts were pre-wired and, depending on market conditions (price) and availability, one of several different models of LCD displays (from different manufacturers) will be mounted at any given point in time. Since they are all compatible (or I should say there is a common minimum denominator among all of them) there are virtually no changes required to the demos and code offered with the board.
Interestingly some of these LCD displays are 5V and some are 3V devices. Since most of the PIC24 digital I/O pins are 5V tolerant, theoretically the two technology can be alternated without consequences except for one case that was recently uncovered.
When the Lumex LCM-S01602DTR/M module was used (the errata document will teach you how to recognize it) things got more complicated. This 5V LCD module has internal pull-up resistors connected to the 5V rail. When the PIC24 I/Os connected to it (for example PMPA0 which is multiplexed with the AN15 analog input function) is left three stated (very high impedence) it will let 5V get inside the PIC24!
Notice that this will not necessarily damage the part (the pull ups are pretty weak after all), but it will produce a more subtle problem, it will skew the internal analog voltage references and produce a large offset on the A/D module readings for example.
Reading the errata carefully, you will realize how an essential part of the problem is the high impedence of the input pins once three stated, which produces, with the LCD internal pull ups, a partition with a very high output voltage (close to 5V).
Decreasing the impedence, by turning pins to outputs (as you do when you enable the PMP), or by adding pull down resistors (even if of relatively high values) solves the problem as the partition is modified to produce a lower voltage …
The lesson learned: Once more, make sure that when you interface to a 5V device you either:
- use exclusively pins that are pure digital inputs (5V tolerant)
- use open drain outputs if you want to swing a 5V signal
Watch out from all pins that are multiplexed with analog functions, even if you have the analog function disabled in your particular configuration.
The pin-out cross reference table published in the previous posting “The Missing Pinout Table” might help you double check…
Posted in Tools, Tips and Tricks | No Comments »
Having Fun Prototyping Lately?
5. March 2008 by pilot.
PICTail(tm) Plus is the name that Microchip uses for the expansion socket offered by the Explorer16 boards. It is one of the easiest and most flexible options available for prototyping out there. All the signals from a 100 pin PIC microcontroller are grouped logically and conveniently in three sections so that if only a few signals are required a smaller board can be arranged. The edge of any PCB can be quickly transformed in an inexpensive (as in free) connector as soon as you realize that all it takes is a set of 1mm spaced traces (gold plating is an option you might consider for longevity). NOTE that all connections are clearly documented in the appendix of the Explorer16 User Guide (DS51589) .
The AV16 board that I developed to support the code examples of the book is only one example of PICTail Plus expansion board, on microchiDIRECT you will find many other options to support: IrDA, Graphic displays with touch sensing, Ethernet, SD Cards and more.
But my all times favorite is the simplest one of all: AC164126 also known as the:
Prototype PICTail Plus board
For $20 you get 3 (three) boards actually. All the signals are accessible in a standard spacing four row line up with silk screen call outs. Get your soldering irons warm!
Posted in Tools, AV16 | No Comments »
