Skip to content

Category Archives: PIC

MIHA675 – Multi Input Hall Automaton

Previous examples illustrated VELOOS programming aspects. This post provides an example of using object oriented paradigm for designing VELOOS application. Unlike the previous examples which were purely programming exercises, this example is dedicated to a utilitarian home appliance application and provides a "reference design" for VELOOS applications.

VELOOS Example 3

This example for PIC12F675 implements set of “actuators” and “generators” controlled via USART. Actuators produce one 300 ms pulse when it receives command ‘ON’ and three 100 ms pulses delimited with 100 ms spaces (pauses) on command ‘OFF’. Generators, when turned on, produce pulses and spaces of the specified duration (1..255).

VELOOS 1.0 released

VELOOS is an object-oriented message-triggered cooperative operating system for 8-bit Microchip microcontrollers licensed to public under the Open Software License Release 1.0 includes VELOOS kernel and two timer drivers (TMR0 and TMR2 based). It has been tested on the following devices: PIC12F675, PIC16F690, PIC18F248. Download VELOOS v.1.0

VELOOS Example 2

This post continues series of examples and describes how VELOOS can be used for implementing time-triggered applications.

VELOOS Example 1

The previous post gave a brief introduction to VELOOS design idea. VELOOS assumes that an application is decomposed on PDOs (Process Data Objects). This post describes by example features provided by VELOOS for implementing PDO.

Very Low Overhead Operating System

VELOOS – Very Low Overhead Operating System VELOOS is a message-triggered cooperative operating system designed to run in places were a large vehicles can not run. Its implementation for PIC12F takes less than 200 instructions and 20 data registers1. With addition of a timer driver, it becomes a time-triggered RTOS.

Simple sampler as a "COM2" plugin

This post presents an alternate implementation of SISAM hardware – a “COM2” plug-in. It is designed for plugging in ahead of a bracket DB9 cable, usually used for accommodating a second serial port. This implementation uses a different MCU – PIC16F88, which allows the application to utilize 30% more RAM for the sampling buffer.

Speed tickets on RS232 Level Converters

As practice has shown, simple level converter with -12V supply derived from DTR/RTS is not capable to work on high speed. Therefore I have made several tests on speed with the original PNP-based design and a RS232 line driver SN75150 and publish test results in this post. Test summary is given in Table 1.

A Simple Environment for Automated Testing

This post describes how SISAM can be used to build a simple environment for automated testing of embedded applications.

SISAM Protocol

SISAM uses RTS/CTS flow control for reading command and DTR flow control for sending acquired data. This means that PC should set RTS before sending commands and watch for CTS (e.g. use CTS sensitivity option). When PIC goes into data acquisition mode, it sends an ASCII string starting with Y4-MODE: followed with new mode description. […]