This repository contains code samples and resources for the ENCS4330 - Real time applications & embedded systems course at Birzeit university (BZU)
Variety of issues regarding the real-time application of embedded microprocessor systems, problems of real-time computer applications in process control or similar areas, digital processing, the physics of sensors and transducers, signal representation, and system design and software development, applications on automotive control, biomedical instrumentation, communication systems, speech processing, data compression and audio processing.
- OpenGL Race Simulation
A multi-processing race simulation, written in C & OpenGL, using signals & named pipes.
- Factory OpenGL Simulation
A multi-threaded multi-processing application that simulates the behavior of a chocolate-manufacturing factory., written in C & OpenGL, using Linux IPC techniques for synchronization.
- OIM OpenGL Simulation
⚠️ THIS PROJECT HAS NEVER BEEN FINISHED⚠️ - PIC16F877A LCD Assembly
control a 16x2 LCD using PIC16F877A assembly and a push button with timer interrupts to change the displayed text.
- Basic Code: fork, exec, args
- Signals: signal, alarm, pause
- Pipes: pipes, named pipes, fifo
- Queue: message queues, client-server example
- OpenGL: various OpenGL examples
- Shared Memory: shared memory, semaphores
- Sockets: sockets, servers, clients
- Threads: threads, pthread library
- ADC: Analog to digital convertison to read a temperature sensor and trigger an LED
- Calculator: A calculator that can add, subtract, multiply, and divide two numbers. output to a 16x2 LCD.
- Keypad: Reads a 4x4 keypad and displays the key pressed on a 7-segment display.
- ISR Keypad: modified version of the keypad example that uses interrupts to read the keypad.
- LED Timer: A timer that displays its output to a set of LEDs
- Timer ISR: Flips an LED on and off every 2.5 seconds using a TIMER0 interrupt service routine.
- Analogue Input: Analogue input using an external reference voltage of 2.56V
- Microchip PIC16F877A Datasheet
- PIC Assembly Language Cheatsheet
- PIC Timers 0/1/2 Cheatsheet
- 16x2 LCD Usage
Website: Ibraheem Alyan
Email: contact@ibraheemalayan.dev