Skip to main content
Northern IrelandTechnology and DesignSyllabus dot point

How is a control program designed using flowcharts, and what programming structures does it use?

Flowcharts and their symbols, programming constructs (sequence, selection, iteration), inputs/outputs, delays and subroutines for microcontroller control.

A CCEA A-Level Technology and Design answer on designing microcontroller control programs with flowcharts and their standard symbols, and the programming constructs of sequence, selection (decision) and iteration (loops), plus inputs, outputs, delays and subroutines.

Generated by Claude Opus 4.812 min answer

Reviewed by: AI editorial process; not yet individually human-reviewed

Have a quick question? Jump to the Q&A page

Jump to a section
  1. What this dot point is asking
  2. The answer
  3. Examples in context
  4. Try this

What this dot point is asking

CCEA expects you to design a microcontroller control program using a flowchart with the standard symbols, and to use the three programming constructs - sequence, selection and iteration - plus inputs/outputs, delays and subroutines. Drawing or completing a control flowchart is a regular task.

The answer

Flowchart symbols

The three programming constructs

Inputs, outputs, delays and subroutines

Worked example: designing a flashing-beacon program

Examples in context

Example 1. Pedestrian crossing. The program sequences the light changes, selects on the button press, iterates the flashing amber, and uses delays for each phase, all four ideas in one familiar control system.

Example 2. Burglar-alarm logic. A loop continuously checks the sensors (iteration), decides if a zone is breached while armed (selection), and triggers the siren subroutine, showing constructs working together.

Try this

Q1. Which flowchart symbol represents a yes/no decision? [1 mark]

  • Cue. A diamond.

Q2. Name the three basic programming constructs. [3 marks]

  • Cue. Sequence, selection (decision) and iteration (loop).

Q3. Why are subroutines useful in a control program? [2 marks]

  • Cue. They are reusable named blocks called from several places, avoiding repeated code and making the program easier to read and modify.

Exam-style practice questions

Practice questions written in the style of CCEA exam questions on this dot point, with worked answer explainers. The year tag is the paper they imitate, not the source.

CCEA 20196 marksDraw a flowchart for a microcontroller program that lights an LED when a push switch is pressed and turns it off when released, looping forever. Name the flowchart symbols you use.
Show worked answer →

The flowchart uses standard symbols: a terminal (rounded box) for start/stop, a process (rectangle) for an action, a decision (diamond) for a yes/no test, and an input/output (parallelogram) for reading or writing, joined by flow arrows.

A correct flowchart:

  1. Start (terminal).
  2. Read the switch input (input/output parallelogram).
  3. Decision (diamond): "Is the switch pressed?"
    • Yes branch: process "turn LED on".
    • No branch: process "turn LED off".
  4. Both branches loop back to step 2 (read the switch again), forming an infinite loop.

So the program continuously reads the switch and sets the LED accordingly. Markers reward the correct symbols (terminal, input/output, decision, process), the decision testing the switch, the two output actions, and the loop back to re-read (continuous operation).

CCEA 20214 marksExplain the three basic programming constructs - sequence, selection and iteration - giving an example of each in a control program.
Show worked answer →
  • Sequence: instructions carried out one after another in order. Example: turn on motor, wait 2 seconds, turn off motor - the steps run in that fixed order.
  • Selection (decision): the program chooses between paths based on a condition (an IF or a flowchart diamond). Example: IF temperature > set point THEN switch fan on ELSE switch fan off.
  • Iteration (loop): a block of instructions is repeated, either a fixed number of times or while/until a condition holds (FOR, WHILE, DO-UNTIL). Example: flash an LED 5 times (a FOR loop), or keep checking a sensor WHILE the machine is running.

Markers want the three constructs correctly defined (do in order / choose a path / repeat) with a sensible control example for each.

Related dot points

Sources & how we know this