This is a series of articles describing a basic real time operating system (let’s call it BRTOS) for PIC microprocessors. It is the result of two projects with which I have been involved and which had similarities in that they were required to monitor slow moving parameters and to provide a simple 4 key and 2 line LCD user interface. Both projects also had to communicate with a PC.
I always like to build software which is reusable where practical so I set about defining a set of fundamental functions on which I could build my applications. The original build used PBPro but was switched halfway through to Proton when PDS was released which caused some rework to really exploit the power of Proton. The result is a program which uses macros, assembler, interrupts, serial communications and I2C.
To describe the operating system on its own would be both dull and lack context so it is described here as part of a real world application. The application is for a simple clock/calendar display which can be set up from the keypad or remotely via a serial interface. This is used to show how many of the underlying functions in the BRTOS are used.
I will also be describing a Visual Basic™ program which can monitor the activities of the BRTOS in operation.
All the code described here can be downloaded, I hope you find the project interesting and are able to make use of some of the concepts and/or can employ extracts from the code.
Many thanks go to Tim Box for his help and support during this project and in particular in the transition to Proton and for introducing me to the great new features in the compiler.
John Barrat