Some little PIC tools
Updated Information, S/W Released soon
>
Updated January 1999
- I have been developing programs and software for the Microchip PIC
16F84 Microcontrollers for a while now and I have the following tools and programs in development. Once released,
the programs will be available from Aminet
for the Amiga and Simtel for the PC. The source code and binaries where possible will be available
from this page and the distribution sites listed above.
A little project of mine
For my final year project at University, I had to design a keyboard encoder. To achieve this aim I
chose to use a PIC. The code I developed is included here.
The system had to read in a 4 bit code from a switch array and convert the code to a standard PC
keyboard code. For full details on keyboard's go here to get a copy
of the Keyboard FAQ, an invaluable guide. A local copy, but not necessarily the most up to date is here.
It has a few bugs, only one I/O line operates properly, and if there is no input to the system, the lookup
table totally screws up. It needs debuging. It was not completed for my project due to long delays beyond
my control. I will try to fix this at a later date.
PIC C
My main project. This is based on some code available on the net for a PIC C compiler.
It was originally writen by John Favata. The original code dates back to a small C compiler,
written in 1984 by Ron Cain, and modified by Chris Lewis.
One thing to pint 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.
The problem with the original version was that the code it produced was for the
Parallax assembler which used a 8051 style assembly language.
I downloaded the code last July (97) and I have been working on it since. The code generator
has nearly been re-written to use standard Microchip menmonics.
The current state of play is as follows: (Bold Indicates updated info)
- 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. Functions work.
- Supports pointers, case statements and I/O commands.
- Assembler output in MPASM syntax.
- 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
The code generator is all but done, a few little glitches and beautifying of the code produced are needed. I still have to
implement a stack routine and some decent math routines.
Any suggestions and code snippets in Assembler will be greatly recieved. Contact
me at this address.
Expected release date, End of January 1999
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.
Attention
The download available from thsi site is Not the current version, it date from May 1997, a lot has been done since then. I promise to finish
this program soon.
Click here to download the current source.
Back to the index page.
Click here for various Electronics and PIC links.
This page has been visited
times since March 1999.