Taming the dsPIC30F4011 Monster

Warning! This article contains graphic descriptions. The readers may experience anxiety, confusion, or a burning desire to “start working immediately”. Professional guidance it is strongly advised.

Unfortunately, it is sufficient to see the name of the beast, dsPIC30F4011, and many readers are going to shy away, or even burst into tears. No, dear friends, there is nothing to fear, and I intend to present how you could easily tame this terrifying dsPIC30F40111 monster and put it to work for you, into many beneficial applications.

Now, the first thing you need to do is to capture the beast; for this you have to take the jungle path--also known as the “Internet”. Walk up to the monsters’ lair, Microchip®, and there you could capture, or purchase one dsPIC30F4011 animal for about 12 pieces of silver.

Once you bring your creature home, analyze its shape and, mostly, its behavior. You will see that the beast looks like any ordinary monster IC of the DIP40 type, and this is good news, because it is best to use through-hole IC type of beasts, during hardware/firmware development work--some of them could pass away while experimenting, so... You think, probably, that the 40 legs the monster has are not sufficient for your particular tasks; do not worry about this, because you are going to discover means to multiply monster’s legs to hundreds of them, just like the truly ferocious monsters! Well, this is all about the shape of the beast, and you can see that there is nothing impressive. However, you also need to study its behavior; this time, a bit more careful.

Please be aware that there are thorough treaties--also known as “Data Sheets”--where the dsPIC30F4011 behavior is described in details, and I will only point out few of the most terrifying features. First, our monster has Flash memory, about 48 Kbytes, and this is very good, because we can erase sucker’s memory whenever it goes nuts, or when we want to teach it new tricks. Next, our monster has 1 Kbytes permanent memory of type EEPROM, and this allows us to store there various configuration data, or to work with adaptive-learning firmware routines. The presence of this EEPROM memory tells us, in fact, that our monster is of good quality!

Now, the most terrifying aspect is that our monster belongs to the 16 bits family, but my advice is to ignore this. Handling 8, 16, or 32 bits monsters it is all the same; the only significant difference is in the tools we use to tame the beast. Another shocking feature you are going to discover, sooner or later, is that the monster belongs to the ferocious dsPIC® family, hence it is capable of DSP and of very fast mathematical calculations. This is, again, very good news, because we need both fast and very intelligent microcontroller-creatures. Regarding its reflexes, our monster works at either 20 or 30 MIPS (Mega Instructions per Second), which should be fair enough for most demanding applications. In order to feed it properly, you should know that this animal likes only regulated DC voltage of 2.5 V up to 5 V!

Our 40-legs creature is capable of UART, SPI, CAN, and I2C communications. In addition, it has 6 PWM channels, because it appears that it has been specifically bred for motor control applications--ugh, scary! The beauty is that it also has ICSP (In Circuit Serial Programming), and this allows us to do many annoying and nasty things to it. Ha, ha!

What else... Ah! Nine of those ugly crooked legs are capable of 10 bits Analog-to-Digital conversion at maximum 0.5 Msps (Mega samples per second); then, about 30 legs are capable of general I/O, and 3 of them are also external interrupts. Wow, the Interrupts! Here is where the power of the monster actually lies! The dsPIC30F4011 beast has no more and no less than 30 interrupt sources, with 8 selectable priority levels.

Fact is, we could go on and on, but it is better to keep it short; besides, I would like that you will discover few interesting things for yourself. Now, it looks that our monster promises a lot, but the problem is: “How do we tame it?” Unfortunately, we cannot use the good, long-time tested methods of fire, hunger, and chains; what we need are the MPLAB® ICD2 Debugger/Programmer and the C30® ANSI C compiler. I know, they are both new tools, but they will do the job--trust me with this one. Please be aware that you can download for free C30 compiler, fully functional for 60 days, from Microchip.

Now we have everything we need to start the infernal process of taming the beast, and I am certain you think that this is a long and very difficult burden. Well, it is not. What you need is a good incantation, like the multitasking one described in... No, I will not make it that easy, but I will give you a hint: you will discover the book with the ritual I am talking about at Corollary Theorems--my home site. You will also discover a good cage there to contain the monster, securely: its name is HCK (Hardware Companion Kit) V2.2.

This is all! It should take you a couple of months to break the dsPIC20F4011 monster down, but then you will have a yoke-beast ready to perform everything you need: all your tasks and all applications! I am certain that your monster is going to repay you back nicely, for all your efforts. In time, you two are going to be friends, and you will come to love and respect your little dsPIC30F4011.