Learn, Implement and Share

nRF52840 IOT Tutorial – nRF5 SDK – DAPLink – ARM Keil MDK

Key Points

Who can take this course?

  •  School students, college students, professionals, and hobbyists.
  •  Anyone who wants to dive into IOT Microcontroller Peripheral and Protocol Programming using Embedded C.
  • Anyone who wants to make IOT / Embedded projects or products.

Brief Description

nRF52840 IOT Tutorial explains in accessible, understandable detail the internal working of the nRF52840, which is an ultra-low power 2.4 GHz wireless system on chip (SoC) integrating a multiprotocol 2.4 GHz transceiver, an ARM® Cortex®-M4F CPU and flash program memory. It is the ultimate SoC for any short range wireless personal area network or IPv6-enabled automation application.

nRF52840 Development Board
nRF52840 Development Board

nRF52840 supports Bluetooth® Low Energy, the ANT™, 802.15.4, and user-proprietary 2.4 GHz protocols. Fully qualified Bluetooth Low Energy and ANT stacks are available for the SoC. An 802.15.4 protocol library and a certified USB stack are also available.

We will be coding and conducting lab experiments for each and every peripheral in an in-depth and step by step manner and will develop software drivers completely from scratch using the hardware registers by employing information from the datasheet and reference manual of the Microcontroller.

In many industries such as consumer appliance, automotive, and aerospace, Microcontrollers are widely used and programs for them are written in Register level using either Embedded C or C++. An understanding of Microcontroller’s internal working and peripheral programming is therefore essential for designing a successful project or product related to these industries. This will be one key takeaway from this course.

How is this Course Different From Other Courses?

In this course, we will be employing Grove Mesh Kit for nRF52840-MDK, which is widely available, inexpensive, and reliable. The nRF52840 IOT Tutorial also works without the Grove Kit. We will be using the professional ARM Keil uVision 5 IDE. In the process, we will learn the use of CMSIS-DAP Link for debugging the Hardware. I will cover important topics like Interrupts including different Industry Standard Communication and IOT Protocols.

My Promise

You can proceed in this course with confidence as I always will be available to answer your questions and assist your understanding. I love to share my knowledge with others and I warmly welcome you to this course!

Grove Mesh Kit for nRF52840-MDK
Grove Mesh Kit for nRF52840-MDK

Curriculum for nRF52840 IOT Tutorial

Time needed: 30 days.

  1. Course Introduction and Welcome
    1. Course Introduction and Welcome
    2. Prerequisite S/W and H/W
  2. Software and Hardware Setup
    1. Setting Up the Software Toolchain
  3. nRF52840 Architecture and Core Components
    1. CPU
    2. Memory
    3. NVMC — Non-Volatile Memory Controller
    4. FICR — Factory Information Configuration Registers
    5. UICR — User Information Configuration Registers
    6. EasyDMA
    7. AHB multilayer
    8. Debug and Trace
    9. Power Management Unit (PMU)
    10. CLOCK — Clock Control
  4. Peripheral Interface
  5. AAR — Accelerated Address Resolver
  6. ACL — Access Control Lists
  7. CCM — AES CCM Mode Encryption
  8. COMP — Comparator
  9. CRYPTOCELL — ARM TrustZone CryptoCell 310
  10. ECB — AES Electronic Codebook Mode Encryption
  11. EGU — Event Generator Unit
  12. GPIO — General Purpose Input/Output
  13. GPIOTE — GPIO Tasks and Events
  14. I2S — Inter-IC Sound Interface
  15. LPCOMP — Low Power Comparator
  16. MWU — Memory Watch Unit
  17. NFCT — Near Field Communication Tag
  18. PDM — Pulse Density Modulation Interface
  19. PPI — Programmable Peripheral Interconnect
  20. PWM — Pulse Width Modulation
  21. QDEC — Quadrature Decoder
  22. QSPI — Quad Serial Peripheral Interface
  23. RADIO — 2.4 GHz Radio
  24. RNG — Random Number Generator
  25. RTC — Real-Time Counter
  26. SAADC — Successive Approximation Analog-to-Digital Converter
  27. SPI — Serial Peripheral Interface Master
  28. SPIM — Serial Peripheral Interface Master with EasyDMA
  29. SPIS — Serial Peripheral interface Slave with EasyDMA
  30. SWI — Software Interrupts
  31. EMP — Temperature Sensor
  32. TWI — I2C Compatible Two-Wire Interface
  33. TIMER — Timer/Counter
  34. TWIM — I2C Compatible Two-Wire Interface Master with EasyDMA
  35. TWIS — I2C compatible Two-Wire Interface Slave with EasyDMA
  36. UART — Universal Asynchronous Receiver/Transmitter
  37. UARTE — Universal Asynchronous Receiver/Transmitter with EasyDMA
  38. USBD — Universal Serial Bus Device
  39. WDT — Watchdog Timer
Slider image
Slider image
Slider image


khushvir · November 18, 2019 at 2:02 pm

I can’t find full tutorial. is it complete?

    Crazy Engineer · November 22, 2019 at 12:56 am

    Hi, Thanks for Checking Out. But Currently, it is under Construction. Please Check other Tutorials.

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.