This article provides a step-by-step guide on using IAR for ARM development, taking the N32G435 as an example. The process is as follows:
S1: Launch IAR by double-clicking the icon to open the project.

S2: Create a new workspace: File / New workspace.

S3: Create a new project: Project / Create New Project…

A new project window will pop up as shown below:

Select 【Tool chain】 as 【ARM】;
Select 【Project templates】 as 【Empty Project】;
Finally, select 【OK】, a window will pop up to set the project path and name, then 【Save】, as shown below:

The empty project has been created, as shown below:

S4: Add a file group
Right-click on the project, select 【Add】 / 【Add Group】
A window will pop up, enter the group name 【CMSIS】

S5: Add files
Right-click on the file group, select 【Add】 / 【Add Files】

A window will pop up, select the files

All file groups and files have been added, as shown below:

S6: Configure the project
Right-click on the project, select 【Options】

General Options configuration is very important
Select 【General Options】 / 【Target】 / 【Device】 as Nations N32G435KB — target chip
Note: This can only be selected manually, direct input is not supported

Output target configuration
Library configuration

Static Analysis configuration

Runtime Checking configuration
C/C++ Compiler configuration is very important


Add file paths and macro definitions is very important

Switch files to relative paths

After adding, it looks like this:

Assembler configuration
Output Converter configuration is very important

Config configuration is very important

Generally, the default is fine, here I choose a custom icf file
$PROJ_DIR$\N32G435PMSM.icf


Debugger configuration is very important


J-Link/J-Trace configuration is very important


S7: For the first time, select 【Rebuild All】

A new window will pop up to set the Workspace project name

S8: Differences between 【compile】, 【make】, 【rebuild all】, and 【Batch build】
【compile】, shortcut key 【ctrl+F7】 only compiles the selected target file
【make】, shortcut key 【F7】 continues compiling based on the last compilation
【rebuild all】 recompiles everything
【Batch build】 compiles multiple projects at once
Thus, we conclude.