# ControllersTech®: Microcontroller Tutorials with Code from Scratch > Explore STM32, ESP32, AVR \& more tutorials\. Learn HAL, LL, registers, FreeRTOS, IoT, GUIs, and memory in embedded systems projects\. Generated by Yoast SEO v27.9, this is an llms.txt file, meant for consumption by LLMs. ## Pages - [TM4C123G \(Tiva C\) Tutorials – Embedded Programming Guides](https://controllerstech.com/tm4c123g-tutorials/) - [STM32 TCP/IP with Mongoose](https://controllerstech.com/mongoose-tcp-ip/) - [STM32 Register Programming Tutorial \| Direct Access, no HAL](https://controllerstech.com/stm32-registers/) - [STM32 LL UART](https://controllerstech.com/stm32-ll-drivers/peripherals/uart/) - [STM32 LL I2C](https://controllerstech.com/stm32-ll-drivers/peripherals/i2c/) ## Posts - [STM32 USB Mass Storage Class with W25Q NOR Flash: External Drive over SPI](https://controllerstech.com/stm32-usb-mass-storage-class-w25q-nor-flash/): In this tutorial, we connect a W25Q SPI NOR Flash module to the STM32 and use the USB Mass Storage Class to make it appear as a removable drive on the computer\. Includes full CubeMX setup, W25Q library integration, and complete usbd\_storage\_if\.c implementation\. - [STM32 USB DFU Bootloader: Flash Firmware Over USB Without ST\-Link](https://controllerstech.com/stm32-usb-dfu-bootloader/): We trigger the built\-in STM32 DFU bootloader over USB CDC, using an RTC backup register to control the jump, so we can flash a custom STM32F446 board over USB alone, without an ST\-Link\. - [STM32 USB Host Audio Class: Play WAV Files from SD Card](https://controllerstech.com/stm32-usb-host-audio-class-sd-card/): Turn the STM32 into a standalone WAV player\. Read tracks off an SD card over SPI and stream them out through a USB speaker using the USB Host Audio Class, with Next, Previous, and Play/Pause control\. - [STM32 USB Mass Storage Class: Use SD Card as External Drive](https://controllerstech.com/stm32-usb-mass-storage-class-sd-card/): This tutorial shows how to use the STM32 USB Mass Storage Class with an SDIO\-connected SD card\. We start with a RAM storage demo to verify the class works, then switch to a real SD card that shows up as an external drive on any computer — no extra drivers needed\. - [Arduino PWM and analogWrite\(\) Explained with Examples](https://controllerstech.com/arduino-pwm-analogwrite-tutorial/): This beginner\-friendly guide explains how PWM \(Pulse Width Modulation\) works in Arduino and how to use the analogWrite\(\) function to simulate analog output\. Learn to control LEDs, motors, and other devices smoothly using PWM, with easy code examples and practical tips\. ## Headers - [Header 2](https://controllerstech.com/?post_type=us_header&p=155566) - [Header 2 \(2\)](https://controllerstech.com/?post_type=us_header&p=159305) - [Header\_used](https://controllerstech.com/?post_type=us_header&p=150225) ## Categories - [STM32 Tutorials](https://controllerstech.com/category/stm32/) - [STM32 HAL](https://controllerstech.com/category/stm32/hal/) - [Arduino Tutorials](https://controllerstech.com/category/arduino/) - [ESP32 Tutorials](https://controllerstech.com/category/esp32/) - [STM32 Modbus](https://controllerstech.com/category/stm32/stm32-modbus/) ## Tags - [STM32](https://controllerstech.com/tag/stm32/) - [arduino](https://controllerstech.com/tag/arduino/) - [uart](https://controllerstech.com/tag/uart/) - [STM32 Peripherals](https://controllerstech.com/tag/stm32-peripherals/) - [i2c](https://controllerstech.com/tag/i2c/) ## Optional - [Sitemap index](https://controllerstech.com/sitemap_index.xml)