PIC C Documentation


Online documentation and tools information


First Release, at last!
PIC C This has been my most extensive project to date, it commenced in July 1997 and has only just been completed. The reason for the long development time has been threefold.
  1. I had to finish the final year of my degree!
  2. The original PIC C code generator, produced a code output that was compatible with the parallax assembler which uses a Pseudo 8051 syntax. I had to re-write it.
  3. I am a bit lazy when it comes to completing projects. I also like HTML.

Anyway here is the first release. It still needs some testing, but I belive that I have removed most of the bugs from it. Here is the features list.
The current features list is as follows:
  • It uses the majority of Microchip assembler commands.
  • A standard header file for MPASM and other assemblers is used.
  • Routines to set the IO Ports are complete but need testing.
  • Routines to read and write to memory and the EEPROM have being written.
  • Only 8 bit chars are implemented. This is suitable for display strings.
  • Serial I/O routines are likely to be included.
  • Supports for, if while and do loops and other C constructs. Functions work.
  • Supports pointers, case statements and I/O commands.
  • Assembler output compatible with the included assembler.
  • An assembler is now included so that once your C Code compiles successfully, you can assemble it.
  • A GUI for the Amiga Version is in development, a windows version is being investigated.

Limitations
It only supports 8 bit datatypes at the moment.
Recursion can not be supported due to the PICs H/W stack.

NOTE
One thing to point out is that the C compiler uses the old style K&R syntax, as it was written 5 years before ANSI standardisation. Any book on C will explain the differences. Just beware of this. It would be nice to change it at a later date.
All the source code now uses ANSI syntax, but it the Compiler body will need to be modified to work with ANSI syntax properly. Once I have a working code generator, I will do this. Any suggestions and code snippets in Assembler will be greatly recieved. Contact me at this address. Will be available for the PC under MS-DOS and the Amiga.
You will be able to use the supplied assembler or at a later date MPASM via a command line option.