A portable, cooperative multitasking OS with tasks based on a very lightweight threading system.
Files which compose ESOS consist of:
- esos.c - contains the main ESOS scheduling loop
- esos.h - top-level ESOS header file
- esos_task.h - header file for defining ESOS tasks
- esos_comm.h - header file for defining ESOS communications services
- esos_comm.c - contains ESOS communications services library
- esos_irq.h - header file for defining ESOS interrupt services
- esos_irq.c - contains ESOS communications services library
- esos_pic24_tick.c - implements ESOS system tick for Microchip PIC24 Family implementation of ESOS
- esos_pic24_irq.h - implements ESOS interrupt services for Microchip PIC24 Family implementation of ESOS (header file)
- esos_pic24_irq.c - implements ESOS interrupt services for Microchip PIC24 Family implementation of ESOS (library code)
- esos_pic24_rs232.h - implements ESOS asychronous serial communications services for Microchip PIC24 Family implementation of ESOS (header file)
- esos_pic24_rs232.c - implements ESOS asychronous serial communications services for Microchip PIC24 Family implementation of ESOS (library code)
- esos_pic24_i2c.h - implements ESOS two-signal synchronous serial communications services for Microchip PIC24 Family implementation of ESOS (header file)
- esos_pic24_i2c.c - implements ESOS two-signal synchronous serial communications services for Microchip PIC24 Family implementation of ESOS (library code)
- esos_pic24_spi.h - implements ESOS three-signal synchronous serial communications services for Microchip PIC24 Family implementation of ESOS (header file)
- esos_pic24_spi.c - implements ESOS three-signal synchronous serial communications services for Microchip PIC24 Family implementation of ESOS (library code)
Example files which demonstrate ESOS operation include:
- esos_skel.c - A skeleton application which blinks the heartbeat LED using ESOS, providing a starting point for creating new ESOS applications.