h. Will I benefit, if I use PIC24 or even PIC32 microcontroller instead of PIC18?

PIC24 and PIC32 microcontrollers have 16-bit and 32-bit architectures, which allow you to perform more complex integer mathematics faster. They also have much larger SRAMs, which are ideal for complex signal processing and implementation of complex processing problems in C and C++ programming languages. C++ simplifies programming due to the fact that it is object oriented. However, some 16-bit and 32-bit programming tools are not for free and not all problems have a high level of complexity. If you are new to programming microcontrollers, it is not a bad idea to go straight to 16-bit or even 32-bit controllers, if you have all the programming tools at hand. But, if you would have to port existing software to 16-bit and 32-bit versions, it is probably better to stay with 8-bit PIC18. PIC18 family is backward compatible with PIC16 microcontroller family, but PIC24 and PIC32 families are not.

There is one more aspect you should consider when deciding on a microcontroller family. All three families of PICs have similar functional units. So, it is not possible to gain much in this aspect by choosing PIC24 or even PIC32 family. A/D conversion for instance would still be 10-bit, and there would still be 10 analog inputs to the A/D converter multiplexor. A thorough look into all PIC families’ documentations reveals that additional functional units are not related to a particular PIC family, but rather to a certain microcontroller type within each of the families.

However, writing a fail proof program for a PIC18 microcontroller in C is sometimes difficult, because of the relatively small stack size and the maximum allowed response time on USB. If you want to implement many functions in one microcontroller, then it might not be a bad idea to consider using PIC24 or PIC32. But if you already have a working HEX file and a DLL that suit all your needs, it is probably better not to try to develop your own, because you would spend a lot of time doing what the others have done before not focusing on your real problem.