- This system is designed to provide a temperature controlled functionality with some timing constraints.
- The system provides the ability to reach a targeted temperature requested by a user interface.
- It provides information for the user about the system state, the current temperature and the selected set temperature.
- It enables the user to calibrate the heater output through a potentiometer interfaced with ADC.
-
- MCAL
- HAL
- Service
- Application
-
- Proxy pattern: all the micro-controller abstraction layer (MCAL) is implemented with a proxy pattern that encapsulates and abstracts the hardware.
- Periodic Polling: the core Scheduler of the main application is implemented with periodic polling pattern
- State Machine: system states are treated as state machine.
-
- Temperature sensor update: every 200ms.
- The calibrator update: every 500ms.
- LCD Animation steps: every 100ms.
- Heating checker: checks if the system doesn't reach the targeted temperature for 3 consecutive minutes.
- Jitter is assumed 10% of periodicity of each component.
- Atmega32 Microcontroller.
- LM016 character LCD.
- TC72 SPI to temperature convertor.
- 4X3 Keypad.
- PWM to voltage convertor module.
- Calibration resistor.