說明之所以補充是因為前面一篇有不完整之處,但是也有一些參考價值。兩篇結合起來可以解決更多的問題。
1 打開IAR軟件如下圖

2 在菜單欄中點擊PROJECT----creat New Project 彈出一個對話框選擇STM8S Series 以及 Empty project 單擊OK

3 進入工程文件的保存設置,在你要保存的工程的路徑下以當前項目名稱為名的文件夾,然后項目名稱文件夾下依次新建APP、BSP、CFG、Libraries和Project共5個文件
APP,用於存放應用程序
BSP 存放板級支持包
CFG 存放工程配置文件
Libraries :存放工程里面使用到的開源或官方庫文件。
project 存放工程,工程編譯連接輸出文件。

將工程命名后保存在project文件下。

4 上面完成啦工程的新建,然后就是官方庫的移植,首先復制官方標准外設庫路徑下的Libraries文件夾下的STM8S_StdPeriph_Driver文件到工程文件名文件夾下Libraries文件下

然后復制官方標准外設庫路徑下Project文件夾下的STM8S_StdPeriph_Template文件夾下的man.c stm8s_conf.h stm8s_it.c stm8s_it.h共4個文件到APP下

6 下面在IAR中右鍵單擊工程名稱 選擇ADD---Add Group選項 一次添加APP BSP CFG Libraries 四個組別然后在Libraries組別下添加STMIS_StdPeriph_Driver組別


完成組別添加后,開始添加文件,首先右鍵單擊APP組別,選擇ADD ADD Group,給APP組添加文件main.c stm8s_conf.h stms_it.c stm8s_it.h四個文件
同樣把Libraries庫文件下的src文件夾下的所有文件添加到工程中的libraries中

7 下面開始配置IAR
右鍵單擊工程選擇Options彈出的對話框中選擇對應的芯片

然后,按下圖在C/C++ Compiler 選項中,選擇Preprocessor項目,在Additional include directories欄目的編輯框中輸入如下頭文件包的路徑
$PROJ_DIR\..
$PROJ_DIR\..\Libraries\STM8S_StdPeriph_Driver\inc
$PROJ_DIR\..\APP
$PROJ_DIR\..\BSP
$PROJ_DIR\..\Cfg
並且在Defined symbols欄目的編輯框內輸入STM8S105。告訴編譯器使用的庫。

最后,在Output Converter選項中,選擇Generate additional output,格式為 Intel extended.

下面開始編譯工程
第一次編譯時候會提示保存工程路徑我們保存在project文件夾下

如果編譯整個工程的時候出現報錯
因為我們用的官方庫包含所有的外設,但是我們用的單片機只包含其中一部分那么我們需要把不包含的那部分不參與編譯。
展開Libraries組別下的STM8S_StdPeriph_Driver,看到帶紅色星號的就是當前單片機不具備的外設,可以依次屏蔽他們不參與編譯。

選擇帶星號的文件右鍵----option


勾上。
如果包如下錯誤
Fatal Error[Pe035]:#error directive: "Please select first the target STM8L device used in your APPLICATION
雙擊該條提示,沒有定義單片機型號,其實庫文件已經定義好只需要我們把注釋去掉

