Skip to content
Ilya-Legchilin edited this page Sep 14, 2020 · 154 revisions

Course program

# Title
(link to video in rus)
Slides Lab Ad hoc articles
Introduction.
eng Toolchain installation guide
Main system
1 Toolchain. Blank project rus blank Blank project building
2 NVIC rus rus nvic
3 Memory map rus boot_gdb Alternative way to program STM32
4 CPU rus control_clock,
reset
Peripheral essentials
5 GPIO rus gpio GPIO revisited
6 I2C rus i2c_oled_display
i2c_oled_sprites
i2c_ext_eeprom
SSD1306 driver tutorial
7 Universal synchronous
asynchronous receiver
transmitter (USART)
rus usart_terminal
usart_xprintf
Jupyter notebook installation
8 Serial Peripheral
Interface (SPI)
rus spi_shift_reg
9 Timers 1 rus timers_basics
timers_freq_meter
10 Timers 2 rus timers_encoder
timers_pwm_sound
RTOS from scratch
11 EXTI. System Timer rus exti_systick Random stuff
12 RTOS and FSM rus fsm_basic
rtos_basic
FSM & RTOS info
13 FreeRTOS.
IPC
rus
14 FreeRTOS.
Processes
rus
Advanced
15 Low power
mode
rus
16 Direct memory
access (DMA)
rus
17 Real time clock (RTC) rus rtc_alert
rtc_backup_regs
18 ADC
& DAC
rus adc_temp
dac
19 Libraries overview.
libopencm3
rus
20 Designing STM32
board from scratch
rus

Proper documentation

  1. The full details of the instruction set, programmer's model, and other topics (detailed) [pdf]
  2. Cortex-M0 programmer's model, instruction details and general information about the architecture [pdf]
  3. The timing information of the processor core, and implementation-related information [pdf]
  4. STMicroelectronics version of Cortex-M0 core [pdf]
  5. General description of peripherals within chip [pdf]
  6. STM32F051-specific information (like pinout) [pdf]
  7. STM32F0Discovery description [pdf]
  8. Low Layer library description [pdf]
  9. GDB commands cheat-sheet [pdf]
Clone this wiki locally