nRF52840 IOT Tutorial – nRF5 SDK – DAPLink – ARM Keil MDK
- MOVE FORWARD TOWARDS A SUCCESSFUL IOT FIRMWARE DEVELOPER
- HARDWARE USED > nRF52840-MDK from SeeedStudio
- IDE USED > PROFESSIONAL ARM Keil µVision® IDE
- SDK USED > nRF52 OFFICIAL SDK FROM NORDIC SEMICONDUCTOR
- DEBUGGER USED > CMSIS-DAPLink
- YOU WILL LEARN LAYERED PROGRAMMING ARCHITECTURE
- YOU WILL LEARN PROFESSIONAL CODING STANDARDS
- YOU WILL LEARN IOT COMMUNICATION PROTOCOLS
- YOU WILL LEARN BOTH THEORY AND LAB EXPERIMENTS
- YOU WILL BE ENABLED TO MAKE YOUR OWN IOT PROJECT / PRODUCT
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.
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 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.
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!
Curriculum for nRF52840 IOT Tutorial
Time needed: 30 days.
- Course Introduction and Welcome
- Course Introduction and Welcome
- Prerequisite S/W and H/W
- Software and Hardware Setup
- nRF52840 Architecture and Core Components
- NVMC — Non-Volatile Memory Controller
- FICR — Factory Information Configuration Registers
- UICR — User Information Configuration Registers
- AHB multilayer
- Debug and Trace
- Power Management Unit (PMU)
- CLOCK — Clock Control
- Peripheral Interface
- AAR — Accelerated Address Resolver
- ACL — Access Control Lists
- CCM — AES CCM Mode Encryption
- COMP — Comparator
- CRYPTOCELL — ARM TrustZone CryptoCell 310
- ECB — AES Electronic Codebook Mode Encryption
- EGU — Event Generator Unit
- GPIO — General Purpose Input/Output
- GPIOTE — GPIO Tasks and Events
- I2S — Inter-IC Sound Interface
- LPCOMP — Low Power Comparator
- MWU — Memory Watch Unit
- NFCT — Near Field Communication Tag
- PDM — Pulse Density Modulation Interface
- PPI — Programmable Peripheral Interconnect
- PWM — Pulse Width Modulation
- QDEC — Quadrature Decoder
- QSPI — Quad Serial Peripheral Interface
- RADIO — 2.4 GHz Radio
- RNG — Random Number Generator
- RTC — Real-Time Counter
- SAADC — Successive Approximation Analog-to-Digital Converter
- SPI — Serial Peripheral Interface Master
- SPIM — Serial Peripheral Interface Master with EasyDMA
- SPIS — Serial Peripheral interface Slave with EasyDMA
- SWI — Software Interrupts
- EMP — Temperature Sensor
- TWI — I2C Compatible Two-Wire Interface
- TIMER — Timer/Counter
- TWIM — I2C Compatible Two-Wire Interface Master with EasyDMA
- TWIS — I2C compatible Two-Wire Interface Slave with EasyDMA
- UART — Universal Asynchronous Receiver/Transmitter
- UARTE — Universal Asynchronous Receiver/Transmitter with EasyDMA
- USBD — Universal Serial Bus Device
- WDT — Watchdog Timer