Browse papers
A

Section A: Long Answer Questions

Attempt all / any as specified.

4 questions
1long12 marks

(a) Define an embedded system and explain its key characteristics that distinguish it from a general-purpose computing system. [6]

(b) With a neat block diagram, describe the typical hardware architecture of an embedded system, clearly identifying the role of the processor core, memory subsystem (RAM, ROM/Flash), input/output ports, and peripheral interfaces. [6]

embedded-system-architectureembedded-system-design-process
2long12 marks

Explain the embedded system design process. Your answer should:

(a) Describe the major phases from requirement specification through to maintenance, illustrating the flow with a suitable design life-cycle diagram. [7]

(b) Discuss the key trade-offs a designer must consider among performance, power consumption, cost, and time-to-market while selecting hardware and software for an embedded product. [5]

embedded-system-design-processembedded-system-architecture
3long12 marks

(a) What is a Real-Time Operating System (RTOS)? Differentiate between hard real-time and soft real-time systems with one practical example of each. [5]

(b) Explain the concept of task scheduling in an RTOS. Compare pre-emptive priority-based scheduling with round-robin scheduling, and explain how priority inversion can occur and how it may be avoided. [7]

real-time-operating-systemsinterrupt-handling
4long10 marks

Consider an 8051-family microcontroller used in an embedded application.

(a) With a block diagram, describe the internal architecture of the 8051 microcontroller, including its CPU, on-chip memory organization, timers, and I/O ports. [6]

(b) Write an embedded C program for the 8051 to generate a square wave of approximately 1 kHz on a port pin using one of its on-chip timers in mode 1. State the assumptions you make about the crystal frequency. [4]

microcontrollersembedded-c-programming
B

Section B: Short Answer Questions

Attempt all / any as specified.

9 questions
5short6 marks

Compare the I2C and SPI serial communication protocols with respect to number of signal lines, addressing mechanism, speed, and the typical number of devices that can be connected on the bus. State one suitable application for each.

communication-protocolsi2c
6short6 marks

(a) Explain the frame format of asynchronous UART communication, identifying the start bit, data bits, parity bit, and stop bit(s). [4]

(b) Calculate the time required to transmit one byte of data using a UART configured at 9600 baud, 8 data bits, no parity, and 1 stop bit. [2]

communication-protocolsuart
7short6 marks

(a) What is an interrupt? Differentiate between maskable and non-maskable interrupts. [3]

(b) Explain the sequence of steps a microcontroller performs when an interrupt occurs, including the role of the Interrupt Service Routine (ISR) and the importance of saving and restoring context. [3]

interrupt-handlingmicrocontrollers
8short6 marks

Describe how an analog temperature sensor (such as an LM35) is interfaced to a microcontroller. Explain the role of the ADC, the need for signal conditioning, and how the digital reading is converted back into a temperature value in degrees Celsius.

interfacing-sensors-and-actuators
9short6 marks

A DC motor and a relay-driven load are to be controlled by a microcontroller.

(a) Explain why a driver circuit (e.g. transistor/ULN2003 or an H-bridge) is required between the microcontroller pin and the actuator. [3]

(b) Explain how Pulse Width Modulation (PWM) is used to control the speed of a DC motor. [3]

interfacing-sensors-and-actuatorsembedded-c-programming
10short4 marks

Explain bit manipulation in embedded C programming. Show, with code fragments, how to set, clear, toggle, and test a particular bit of an 8-bit hardware register without affecting the other bits.

embedded-c-programmingmicrocontrollers
11short6 marks

Explain the producer-consumer problem in the context of a multitasking embedded system. Describe how inter-task communication and synchronization mechanisms such as semaphores, mutexes, and message queues can be used to solve it safely.

real-time-operating-systemsembedded-c-programming
12short6 marks

Differentiate between the following pairs as applied to embedded processors:

(a) Microprocessor and Microcontroller. [2]

(b) Harvard architecture and Von Neumann architecture. [2]

(c) RISC and CISC instruction set architectures. [2]

microcontrollersembedded-system-architecture
13short4 marks

Compare polling and interrupt-driven approaches for handling I/O in an embedded system. Discuss the advantages and disadvantages of each in terms of CPU utilization and response time.

interrupt-handlingcommunication-protocols