- Install STM Cube MX -> used to create code in an instant using HAL libraries automatically by specifying the peripherals we need to use
- Install Teraterm -> for reading UART messages from COM ports
- Install Keil uVision 5
- By default, the compiler version 5 does not come installed in uVision, so use version 6 which is pre-installed
- Create a stm32 account as we need it to use the Cube MX software
- Enable the following peripherals -> GPIO, USART2, USART3, CRC, RCC
- Select an appropriate workspace folder to save the project.
- Specify the uVision workspace path for the generated code
- Click the generate code option to generate the code
- Install any extensions or software when prompted (user login required - STM32 account)
- Open the generated code in uVision
- If any other code apart from the above peripherals are present, remove those and compile the code to verify in uVision
- Obtain a UART to USB converter -> https://www.amazon.in/dp/B072TGR223?ref=ppx_yo2ov_dt_b_fed_asin_title
- For this board -> STM32F407VG the USART is not connected to the ST-LINK, so when the board is connected we can't view any messages sent via USART2
- Hence we need a separate device which is connected to the USART GPIO pins in the board and to the host computer via the USB
- But for Nucelo Boards, USART2 is connected to the ST-LINK which allows us to use that connection iteself to view USART messages
- Driver Installation for the USART to USB converter -> https://www.silabs.com/developer-tools/usb-to-uart-bridge-vcp-drivers
- After installation of the driver, the converte device shows under COM ports in Device manager when connected