There's only so much debugging information an LED or LCD display can report. What's worse, embedding debugging code in the executable can provoke misuse, while stripping it out can cause heisenbugs.
Your C compiler can help manage debugging information for you in a way that doesn't interfere with your product. Here's how:
Just when you think an old misconception is dead...
The "stack/no stack" discussion has arisen again. We've heard renewed
claims that C programs require a hardware stack, and that a software
stack is unacceptably slow. Both ideas are patently false.
Byte Craft Limited has been involved in many projects you've heard of, and many you haven't. We've posted some pictures from the "Historical Products Department".
A support question brought up an interesting optimization topic: alternative opcodes.
We've all heard stories of using undocumented or unofficial opcodes to squeeze out a few cycles' extra performance. It's much easier, not to mention safer, to work within the published instruction set but to approach it in novel ways.
Here's an example:
C macros are very useful, but a little taxing for both compiler writers and programmers.
I just read Jack's editorial on Embedded.com on the RS08 processor. This is a fun little processor.
We did some work on the instruction set design on this processor, and wrote a C compiler for the RS08. This is a remarkable little processor that, in the end, outperformed many people's expectations (including mine).
Jack Ganssle's latest column in embedded.com reminds us that there is still life in 8-bit architectures.
He mentions the Freescale RS08, which is supported by our C6808 Code Development System.
UPDATE: Jack cites an article on Circuit Cellar by Tom Cantrell, who also talks about RS08.
We've started to get some requests for header file support for ICD3, Microchip's new In-Circuit Debugger. There are some differences between ICD3 and previous generations of ICD. These differences are reflected in the device header files Byte Craft Limited issues for MPC.
If you're using MPC with MPLAB and ICD3, please contact Byte Craft Limited for more information about obtaining updated header files.
We've just posted a new paper that compares IEC 61131 fuzzy logic constructs and Fuzz-C additions to C for embedded systems. If you're moving from programmable logic controllers to C for embedded systems, this paper shows the similarities and differences between the two.
Byte Craft Limited will support Enhanced PIC16 with our MPC Code Development System. A PIC16-specific code generator will ship with MPC at the same time as silicon general availability.