Singapore University of Social Sciences

Microprocessor Programming

Microprocessor Programming (ENG301)


ENG301, Microprocessor Programming is intended to introduce the programming fundamentals of the ARMv7 microcontroller system, its instruction set, and the programming/control of ARMv7 based systems through the use of various LabVIEW functions. To enhance the understanding and application of ARMv7 microcontroller, the classical ARM architecture and assembly language programming, ARM organization and implementation and architecture support for system development are comprehensively discussed.

Level: 3
Credit Units: 5
Presentation Pattern: Every July


  • Introduction to LabVIEW
  • Introduction to Cortex-M3 ARMv7M Architecture
  • Different Functions of LabVIEW I
  • Introduction to Processor Design
  • Different Functions of LabVIEW II
  • The ARM Architecture
  • ARM Assembly Language Programming I
  • ARM Assembly Language Programming II
  • ARM Organization
  • ARM Implementation
  • Architecture Support for System Development I
  • Architecture Support for System Development II

Learning Outcome

  • Examine the principles and basic concepts of National Instruments LabVIEW.
  • Analyze ARM processor architecture and microcontroller configuration.
  • Appraise the abstraction in hardware / software design and the trade-offs in processor design.
  • Demonstrate the handling of ARM interrupts, data processing instructions, data transfer instructions and execution of programming languages.
  • Sketch the ARM memory interface and advanced microcontroller bus architecture.
  • Execute simple assembly language programs.
  • Design systems based on: (a) ARM Microcontroller architecture (b) ARM Cortex™-M3 processor.
Back to top
Back to top