- Design of hardware and software for embedded systems focused on security and machine learning. Introduction to embedded security, Cryptography, current embedded security features, and security in practice. Introduction to TinyML, quantization techniques, optimization of TinyML, and online- offline-training.
- implemented design assignment STM32CubeIDE, written in C
Software:
- STM32CubeIDE
- STM32CubeProgrammer
- STM32CubeMX
Hardware:
- STM32L476 Nucleo
- Arduino Nano 33 BLE Sense
-
DA1 - Implemented some basic labs on the STM32L476 Nucleo board
- Blinky
- Making the LED on Nucleo board blink
- Button Loop
- Make the LED on Nucleo board blink everytime a user hit the button
- Button IRQ
- Use a interrupt to toggle LED on Nucleo board
- Timer
- Use HAL function to create timer interrupt to blink LED
- UART
- Use HAL function to take input and send message to the terminal
- ADC
- Use HAL function to collect ADC data from a selected analog channel
- Blinky
-
DA2 - Security of STM32 Microcontroller Labs
- Unique ID
- Tutorial will introduce the STM32 Unique ID security feature
- Write Protection
- Tutorial will demonstrate the memory write protection mechanism (WRP)
- PCROP
- Tutorial will introduce the STM32 PCROP feature. Specifically, we will hide a call to led blinking API in PCROP region
- ReadOut Protection
- Tutorial will introduce the STM32 Readout Protection feature
- RDP without POR
- Tutorial will demonstrate how to change RDP level without doing a Power on Reset(POR)
- Tamper Protection
- Tutorial will demonstrate the tamper protection feature
- Crypto Library
- Tutorial will introduce the STM32 Crypto Library
- Unique ID
-
DA6 - Arduino Nano 33 BLE Sense did the gesture model tutorial.
- Student Name: Angelo Nolasco
- Student Email: [email protected]
- youtube link DAs: https://www.youtube.com/playlist?list=PLQKv7ukC_Zvbnd4iN56bMAoxmVSLoa5IM