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.
- I had to finish the final year of my degree!
- 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.
- 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.