Minor Degree:Time-Triggered Reliable Systems Engineering
About Lesson

Course No.:1

Course (Category)

Code

Course Name

Teaching Scheme (Hrs/week)

Credits Assigned

L

T

P

O

E

L

T

P

Total

MDM1

Programming ARM : The bare metal way       

2

0

2

3

7

2

0

1

3

Examination Scheme

Component

ISE (%)

MSE (%)

ESE (%)

Total

 

MDEC15

Theory

20

20

60

100

Laboratory

80

20

100

                             

 

Pre-requisite Course Codes, if any.

Digital Systems

Course Objective: To develop ability to read the data sheet and reference manual of the microcontroller to develop device drivers in the C programming language and study similar code in C++ language

Course Outcomes (CO): At the end of the course students will be able to

MDEC15.1

Understand and recall the ARM architecture using the STM32 ARM CORTEX Mx

MDEC15.2

Find and apply the information essential to build drivers for GPIO, UART, SysTick Timer, General Purpose Timers, Interrupts and ADC from the data sheet and the reference manual

MDEC15.3

Set up the industry standard ARM KEIL toolchain for programming the STM32F103VB using C and C++ programming languages. Use the C++ Template based programming technique.

MDEC15.4

Create device drivers in C and C++ programming language using bare-metal approach.

MDEC15.5

Evaluate and justify the driver design decision

MDEC15.6

Analyse and fix anomalies in ‘C’ code

     

 CO-PO Correlation Matrix (3-Strong, 2-Moderate, 1-Weak Correlation)

 

PO1

PO2

PO3

PO4

PO5

PO6

PO7

PO8

PO9

PO10

PO11

PO12

MDEC15.1

2

 

 

 

 

 

 

 

 

 

 

 

MDEC15.2

3

 

3

 

 

 

 

 

 

 

 

 

MDEC15.3

 

 

 

 

3

 

 

 

 

 

 

 

MDEC15.4

3

3

 

 

3

 

 

 

 

 

 

 

MDEC15.5

 

 

 

3

 

 

 

 

 

 

 

 

MDEC15.6

2

 

 

3

 

 

 

 

 

 

 

 

 BLOOM’S Levels Targeted 

Remember√

Understand√

Apply√

Analyze√

Evaluate√

Create√

 Theory Component

Module No.

Unit No.

Topics

Ref.

Hrs.

1

 

Title

Introduction to CORTEX-M processor family

1

1

1.1

CORTEX-M processor family, profiles , hardware architectures Cortex M-ArmV7-M,CORTEX M3 and CORTEX M4

2

Title

Developing software for CORTEX-M family

1

1

2.1

Introduction to KEIL MDK Community edition and software packs.

2.2

Third Party Configuration tools

3

Title

Inside the STM32

1 ,online resource-2

12

3.1

Pipeline , Programmers model ,CPU operating modes ,Thumb2-instruction set ,Memory map ,Buses

3.2

System timer, Interrupt handling ,Nested Vectored Interrupt controller(NVIC) , Advanced interrupt handling modes, Power modes

Power supply ,Reset circuitry , Oscillators ,Clocking

4

Title

STM32 Peripherals

1 ,online resource-1 and online resource 2

09

4.1

GPIO (General purpose Input / output) ,AFIO (Alternate function Input / output) ,External Interrupts ,General Purpose Timers, Backup domain, USART

4.2

NVIC , SysTick timer ,System Control Block

5

Title

C++Foundations

Lecture Notes

05

5.1

Creating and LED class

5.2

Template programming fundamentals

5.3

GPIO template design

6

Self Study

Material in the Online resources  has to be read as told by the instructor for understanding the implementation details of the peripherals

Online      resource -2

*42

Total(Does not include* )

28

 Laboratory Component 

Sr. No

Title of the Experiment

1

Installation of KEIL MDK ,Create the first blinky  project Configuring the project from scratch

Configuring the run time environment ,Project configuration, Third party configuration tools

2

GPIO (General purpose Input / output)  C PROGRAM

3

AFIO (Alternate function Input / output)  C PROGRAM

4

External Interrupts C PROGRAM

5

ADC C PROGRAM

6

General Purpose Timers C PROGRAM

7

Backup domain C PROGRAM

8

USART  C PROGRAM

9

NVIC

10

SysTick timer

 Text Books 

Sr. No

Title

Edition

Authors

Publisher

Year

1

Designers Guide to Cortex-M processor Family

3rd Edition

Trevor Martin

Newnes

2023

 Online Resources:    

        1.   https://developer.arm.com/documentation/dui0552/a/preface/about-this-book

  1. https://www.st.com/resource/en/reference_manual/cd00171190-stm32f101xx-stm32f102xx-stm32f103xx-stm32f105xx-and-stm32f107xx-advanced-arm-based-32-bit-mcus-stmicroelectronics.pdf

You cannot copy content of this page