{"id":1255,"date":"2022-10-13T04:35:47","date_gmt":"2022-10-13T04:35:47","guid":{"rendered":"https:\/\/blog.embeddedexpert.io\/?p=1255"},"modified":"2022-10-13T04:45:02","modified_gmt":"2022-10-13T04:45:02","slug":"settings-up-stm32cubeide-for-bare-metal-programming","status":"publish","type":"post","link":"https:\/\/blog.embeddedexpert.io\/?p=1255","title":{"rendered":"Settings Up STM32CubeIDE for Bare Metal Programming"},"content":{"rendered":"\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"749\" height=\"434\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/stm32-cube-ide.png\" alt=\"\" class=\"wp-image-1256\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/stm32-cube-ide.png 749w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/stm32-cube-ide-300x174.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/stm32-cube-ide-400x232.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/stm32-cube-ide-250x145.png 250w\" sizes=\"(max-width: 749px) 100vw, 749px\" \/><\/figure><\/div>\n\n\n\n<p>In this guide, the installation of the IDE is presented.<\/p>\n\n\n\n<p>In this guide, we shall cover the following:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Installing the IDE<\/li><li>Constructing the correct project tree<\/li><\/ul>\n\n\n\n<p>Note: This guide for STM32F411. However, the method will apply to most of STM32 families.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. Installing the IDE<\/h2>\n\n\n\n<p>Head to main ST website (<a href=\"http:\/\/www.st.com\/\">www.st.com<\/a>).<\/p>\n\n\n\n<p>From the website, in search bare, search for STM32CubeIDE:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"569\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-1024x569.png\" alt=\"\" class=\"wp-image-1261\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-1024x569.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-300x167.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-768x427.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-1536x854.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-2048x1139.png 2048w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-1150x639.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-750x417.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-400x222.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-31-48-250x139.png 250w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>After that, select STM32CubeIDE. Select the version or get the latest.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"421\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20-1024x421.png\" alt=\"\" class=\"wp-image-1259\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20-1024x421.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20-300x123.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20-768x316.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20-1536x632.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20-1150x473.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20-750x309.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20-400x165.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20-250x103.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-20.png 2042w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>After selecting the version, the website will ask to accept the license agreement and requires either sign-in or create new account. Hence, either sign-in or create account.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"435\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-1024x435.png\" alt=\"\" class=\"wp-image-1260\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-1024x435.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-300x128.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-768x327.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-1536x653.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-2048x871.png 2048w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-1150x489.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-750x319.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-400x170.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-33-55-1-250x106.png 250w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"752\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-1024x752.png\" alt=\"\" class=\"wp-image-1262\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-1024x752.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-300x220.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-768x564.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-1536x1128.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-2048x1504.png 2048w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-1150x844.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-750x551.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-400x294.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-05-21_08-34-20-250x184.png 250w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>After log-in, the download shall start automatically. After Download finishes, extract the file and run the executable file.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"794\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-06-02_07-45-09.png\" alt=\"\" class=\"wp-image-1264\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-06-02_07-45-09.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-06-02_07-45-09-300x233.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-06-02_07-45-09-768x596.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-06-02_07-45-09-750x582.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-06-02_07-45-09-400x310.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-06-02_07-45-09-250x194.png 250w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>You can go through the installation by clicking on next.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">&nbsp;<\/h2>\n\n\n\n<h2 class=\"wp-block-heading\">2. Construct the right project tree:<\/h2>\n\n\n\n<p>For constructing the right project tree, the header files can be downloaded from STM32CubeF4 repository on github.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"442\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-08-14-at-11.04.46-AM-1024x442.png\" alt=\"\" class=\"wp-image-1265\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-08-14-at-11.04.46-AM-1024x442.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-08-14-at-11.04.46-AM-300x130.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-08-14-at-11.04.46-AM-768x332.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-08-14-at-11.04.46-AM-1150x497.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-08-14-at-11.04.46-AM-750x324.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-08-14-at-11.04.46-AM-400x173.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-08-14-at-11.04.46-AM-250x108.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-08-14-at-11.04.46-AM.png 1306w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Then go to github to download the firmware.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"596\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34-1024x596.png\" alt=\"\" class=\"wp-image-1266\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34-1024x596.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34-300x175.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34-768x447.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34-1536x894.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34-1150x669.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34-750x437.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34-400x233.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34-250x146.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-08-14_11-06-34.png 2024w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>After downloading the firmware, extract it as following:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"638\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-1024x638.png\" alt=\"\" class=\"wp-image-1267\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-1024x638.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-300x187.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-768x479.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-1536x958.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-2048x1277.png 2048w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-1150x717.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-750x468.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-400x249.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-48-29-250x156.png 250w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>After clicking on extract here, this will pop-up:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"749\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-49-24-1024x749.png\" alt=\"\" class=\"wp-image-1268\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-49-24-1024x749.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-49-24-300x219.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-49-24-768x561.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-49-24-1150x841.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-49-24-750x548.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-49-24-400x292.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-49-24-250x183.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-49-24.png 1264w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>After extraction, open STM32CubeIDE and select your work space:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"450\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-53-48-1024x450.png\" alt=\"\" class=\"wp-image-1270\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-53-48-1024x450.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-53-48-300x132.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-53-48-768x338.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-53-48-1150x506.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-53-48-750x330.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-53-48-400x176.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-53-48-250x110.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-53-48.png 1264w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>After that, go to file, new, STM32 Project:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"709\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00-1024x709.png\" alt=\"\" class=\"wp-image-1271\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00-1024x709.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00-300x208.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00-768x532.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00-1536x1063.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00-1150x796.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00-750x519.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00-400x277.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00-250x173.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-56-00.png 1664w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Then, select your MCU by writing the part number in the dialog box. This book shall use STM32F411 as main MCU.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"890\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-1024x890.png\" alt=\"\" class=\"wp-image-1272\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-1024x890.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-300x261.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-768x667.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-1536x1335.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-2048x1780.png 2048w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-1150x999.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-750x652.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-400x348.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-58-46-250x217.png 250w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>After selecting the correct MCU, press next and give a project name called blinky and make it is an empty project:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"926\" height=\"1024\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-59-23-926x1024.png\" alt=\"\" class=\"wp-image-1273\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-59-23-926x1024.png 926w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-59-23-271x300.png 271w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-59-23-768x849.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-59-23-750x829.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-59-23-400x442.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-59-23-250x276.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_15-59-23.png 988w\" sizes=\"(max-width: 926px) 100vw, 926px\" \/><\/figure>\n\n\n\n<p>Then, the project shall be generated.<\/p>\n\n\n\n<p>From the project explorer, right click on the project name, select new and select folder:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"887\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41-1024x887.png\" alt=\"\" class=\"wp-image-1274\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41-1024x887.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41-300x260.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41-768x665.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41-1536x1331.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41-1150x996.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41-750x650.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41-400x347.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41-250x217.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-01-41.png 1752w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Name the folder as chip_header and click on finish:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"888\" height=\"1024\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-02-24-888x1024.png\" alt=\"\" class=\"wp-image-1275\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-02-24-888x1024.png 888w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-02-24-260x300.png 260w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-02-24-768x886.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-02-24-750x865.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-02-24-400x461.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-02-24-250x288.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-02-24.png 1044w\" sizes=\"(max-width: 888px) 100vw, 888px\" \/><\/figure>\n\n\n\n<p>Now, within the firmware folder, go to Drivers\/CMSIS and simply drag and drop Device and Include folders to chip_header folder:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"673\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-1024x673.png\" alt=\"\" class=\"wp-image-1276\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-1024x673.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-300x197.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-768x505.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-1536x1010.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-2048x1347.png 2048w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-1150x756.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-750x493.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-400x263.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-05-09-250x164.png 250w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>This window will pop-up:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"828\" height=\"514\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-10-23.png\" alt=\"\" class=\"wp-image-1277\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-10-23.png 828w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-10-23-300x186.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-10-23-768x477.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-10-23-750x466.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-10-23-400x248.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-10-23-250x155.png 250w\" sizes=\"(max-width: 828px) 100vw, 828px\" \/><\/figure>\n\n\n\n<p>After copying the files, the path of those folder shall be added to the project. To do so, right click on the project name, and select properties:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"429\" height=\"1024\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45-429x1024.png\" alt=\"\" class=\"wp-image-1278\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45-429x1024.png 429w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45-126x300.png 126w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45-768x1835.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45-643x1536.png 643w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45-857x2048.png 857w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45-750x1792.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45-400x956.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45-250x597.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-11-45.png 962w\" sizes=\"(max-width: 429px) 100vw, 429px\" \/><\/figure>\n\n\n\n<p>Then, go to C\/C++ General and select path and symbols:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"677\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56-1024x677.png\" alt=\"\" class=\"wp-image-1279\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56-1024x677.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56-300x198.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56-768x508.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56-1536x1016.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56-1150x761.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56-750x496.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56-400x265.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56-250x165.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-13-56.png 1672w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Remove everything within include directories and add as shown in the figure below:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"680\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13-1024x680.png\" alt=\"\" class=\"wp-image-1280\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13-1024x680.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13-300x199.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13-768x510.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13-1536x1020.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13-1150x763.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13-750x498.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13-400x266.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13-250x166.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-17-13.png 1672w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-text-align-center\">${ProjDirPath}\/Inc<\/p>\n\n\n\n<p class=\"has-text-align-center\">${ProjDirPath}\/chip_header\/Device\/ST\/STM32F4xx\/Include<\/p>\n\n\n\n<p class=\"has-text-align-center\">${ProjDirPath}\/chip_header\/Include<\/p>\n\n\n\n<p>Now, head to next window which is Symbols and add the following:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"679\" src=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47-1024x679.png\" alt=\"\" class=\"wp-image-1281\" srcset=\"https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47-1024x679.png 1024w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47-300x199.png 300w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47-768x509.png 768w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47-1536x1018.png 1536w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47-1150x762.png 1150w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47-750x497.png 750w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47-400x265.png 400w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47-250x166.png 250w, https:\/\/blog.embeddedexpert.io\/wp-content\/uploads\/2022\/10\/2022-10-03_16-20-47.png 1690w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-text-align-center\">STM32F411xE<\/p>\n\n\n\n<p>Now, STM32CubeIDE is ready for bare metal programing for STM32F411RE.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>Enjoy this and happy  coding \ud83d\ude42 <\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this guide, the installation of the IDE is presented. In this guide, we shall cover the following: Installing the IDE Constructing the correct project tree Note: This guide for STM32F411. However, the method will apply to most of STM32 families. 1. Installing the IDE Head to main ST website (www.st.com). From the website, in [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"class_list":["post-1255","post","type-post","status-publish","format-standard","hentry","category-stm32"],"_links":{"self":[{"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=\/wp\/v2\/posts\/1255"}],"collection":[{"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1255"}],"version-history":[{"count":2,"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=\/wp\/v2\/posts\/1255\/revisions"}],"predecessor-version":[{"id":1282,"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=\/wp\/v2\/posts\/1255\/revisions\/1282"}],"wp:attachment":[{"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1255"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1255"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.embeddedexpert.io\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1255"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}