Introduction to IoT LAB Exercises 2023 IoT LAB - Outline ● Hardware overview ● IDE ● Environmnet setup Hardware Overview ● Building blocks consisting of: ● Base board (green) ● Communication board (red) ● Application board (blue) ● Interconnection – cabling ● Suplemental items – uSD ● Debugging tools – logic analyzer Hardware – Base boardsSTM32-BluePill RockPiS Hardware - MCUs Hardware - CommunicationRS–485 CANBus Hardware - Applications Push Buttons, Switch, LEDs Temperature, Relative Humidity, Barometric Pressure NFC Card Reader, RGB LED Hardware - Applications LCD 2x16, Rotarry Encoder OLED 1.3“, uSD, RGB LED IDE ● For bare-metal programming ● Lightweight – Arduino IDE ● Heavy duty – STM Cube Environment setup ● Use your fi.muni account ● https://www.fi.muni.cz/tech/account.html.cs ● Data should be stored in cloud ● Today configuration and test of the IDE ● Application: just blinking the LED Arduino IDE ● File Preferences→ ● Additiona Boards Manager URLs: ● http://dan.drown.org/stm32duino/package_STM32duino_index.j son ● Tools Board Boards Manager→ → ● STM32F1xx/GD32F1xx ● Tools Board STM32F1 Boards (Arduino_STM32)→ → ● Generic STM32F103C series Arduino IDE ● File Examples 0.1Basic Blink→ → → ● Tools Upload Method: STLink→ → ● Sketch Verify/Compile→ ● Sketch Upload→ Arduino IDE void loop() { digitalWrite(led, HIGH); // turn the LED on delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off delay(1000); // wait for a second } STM Cube ● H:\_profile\Documents\stm ● STM Cube – getting started STM Cube – getting started STM32F103C8T6 STM Cube – getting started STM Cube – getting started STM Cube – getting started STM Cube – C programming ● Main.c while (1) { // LED OFF HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET); HAL_Delay(100); // LED ON HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET); HAL_Delay(100); } Please consider both Arduino IDE and STM Cube