天天看點

STM8S單片機入門1(開發環境搭建)



     STM8S單片機開發環境由三大部分組成,包括PC機上的開發軟體(內建開發軟體、驅動程式等)、調試&程式設計器ST-LINK、目标單片機電路闆。如下圖所示:

STM8S單片機入門1(開發環境搭建)

1、PC機上開發軟體

    PC機上的軟體包括:ST-LINK驅動程式、IAR內建開發環境、STM8S标準函數庫、STVP燒錄工具。

  • ST-LINK調試&程式設計器需要驅動程式

        這個驅動程式不需要單獨安裝,安裝STVP時會一起安裝。

  • IAR內建開發環境

         IAR內建開發環境是集程式編輯、編譯、程式下載下傳、調試等功能為一體的內建開發工具,它可以通過 ST-LINK調試&程式設計器向目标STM8S單片機下載下傳程式,并進行線上調試(包括設定斷點、單步執行、檢視内單片機存資料等)。針對STM8S的內建開發工具有多種,本教程選用IAR內建開發工具,主要是由于其成熟穩定,簡單易用。IAR內建開發工具的全稱是“IAR for STM8”,版本号推薦比較成熟的2.10.5版本 。

STM8S單片機入門1(開發環境搭建)
  • STM8S标準庫函數

         STM8S标準函數庫是ST原廠推出的C語言函數庫,把STM8S單片機的基本操作都封裝成了庫,能極大提高開發效率。STM8S标準函數庫的全稱是STM8S_StdPeriph_Lib_V2.1.0。當然不使用标準庫函數也能進行單片機程式開發,但是這需要自己操作單片機的每個寄存器,需要對單片機内部構造和寄存器的作用非常熟悉才能做到,開發複雜度會成倍增加。

  • STVP燒錄工具

         STVP(ST Visual Programmer)燒錄工具也是ST原廠推出的。雖然說一般的程式下載下傳到單片機,使用IAR內建開發環境就可以了,但設定STM8S單片機的選項位元組(OPTION BYTE)使用STVP燒錄工具還是友善一些。選項位元組有兩個最重要、最常用的功能:一是設定讀出保護開關(ROP),大家可能遇到買回來的成品STM8S單片機開發闆,無法用IAR進行程式下載下傳和調試,這就是ROP設定為開了,這種情況下需要用STVP重新設定為關才能用; 二是設定單片機引腳的第二功能,STM8S單片機很多引腳都有多個功能,比如作為SPI接口還是作為定時器通道,也是要通過選項位元組來設定的。

STM8S單片機入門1(開發環境搭建)

      下面說說PC機上的軟體的安裝,要用到的安裝包如下:

  • EWSTM8-2105-Autorun.exe
  • IAR for STM8 2.10.5注冊機.7z 

         上面兩個包是IAR forSTM8的安裝程式及注冊機。第一個直接安裝即可,第二個按壓縮包自帶的教程操作。

  • STM8S_StdPeriph_Lib_V2.1.0.rar

          上面這個包是STM8S标準庫函數,不需要安裝,直接解壓備用。每次在IAR中建立新工程後,都要首先把這個包的Libraries\STM8S_StdPeriph_Driver目錄和Project\STM8S_StdPeriph_Template裡面的main.c、stm8s_conf.h、stm8s_it.c、stm8s_it.h等檔案拷貝到新工程目錄下。

  • sttoolset.zip
  • sttoolset_pack24_patch.zip

          上面的兩個檔案是STVP燒錄工具和ST-LINK驅動程式的安裝包,直接解壓安裝即可。注意會同時安裝STVD(ST Visual Develop)繼承開發軟體,但是STVD預設隻支援彙編語言,是以一般用IAR,安裝後不用就行。

     至于這些安裝包,可以從官網上下載下傳,也可以從百度網盤下載下傳(通過盤多多按檔案名搜尋),這裡就不貼了。

2、ST-LINK調試程式設計器

      ST-LINK是一款USB接口的硬體産品,連接配接PC機與目标STM8S單片機。下面是一款相容的ST-LINK調試程式設計器:

STM8S單片機入門1(開發環境搭建)

      ST-LINK調試程式設計器一般通過4根杜邦線與目标單片機的電路闆連接配接。4根線分别是電源(3.3V或5V可選),接地GND,以及SWIM和RST。ST-LINK的SWIM和RST與單片機晶片的SWIM和RST引腳相連後,即可對單片機進行調試和程式設計操作。

3、目标單片機電路闆

     目标單片機電路闆就是要開發的STM8S單片機系統硬體了。如上面所說,需要把目标單片機晶片的SWIM和RST引腳與ST-LINK的SWIM和RST端口連接配接。在本教程中後面的學習過程中,可以用使用STM8S最小系統闆(僅包含複位電路)作為目标單片機電路闆來做實驗,也可以使用本教程第5部分介紹的STM8S開發闆(包含複位電路、電源開關、锂電充電管理、藍牙通信電路等)來做實驗。

STM8S單片機最小系統闆:

STM8S單片機入門1(開發環境搭建)

STM8S開發闆:

STM8S單片機入門1(開發環境搭建)

甚至耐心足夠的話,也可以自己用單片機IC焊接,使用面包闆作實驗。如下(中間上面的小方塊是單片機IC,在其0.65mm間距的引腳上焊了線插在面包闆上):

STM8S單片機入門1(開發環境搭建)

     以上是開發環境的介紹,下面再來簡單說說開發環境的使用。

    1、IAR建立新工程

     IAR建立新工程的過程,推薦參考這個文檔《STM8在IAR環境下建立工程标準步驟詳述》:http://wenku.baidu.com/link?url=01T1358oA4Hgs4YgaM-YmLD5lCJwx5c1vokjZGr_c0lAkcos5QJ15B2cJHRBLNwlxhmSPepEbvhC3OlsiMJ7N4w2jRcS7-xheI8jerTaHrS

    需要特别注意兩點:1)建立完工程後,需要在工程屬性(在workspace視窗中點選工程名,單擊右鍵選option菜單)中設定Debugger的的Driver是ST-LINK,否則預設選Simulator是不會通過實際的ST-LINK連接配接目标單片機電路闆的。

STM8S單片機入門1(開發環境搭建)

      2)把STM8S_StdPeriph_Lib的庫檔案(Libraries\STM8S_StdPeriph_Driver目錄的所有.h和.c檔案)加入後,可能編譯不通過,因為不同的單片機子型号支援的功能不同,總有不支援的功能,不過沒有關系,把編譯出錯的庫檔案從工程中删除即可。

   2、使用STVP設定單片機晶片選項位元組(OPTION BYTE)

    前面也提到了,兩項設定要通過STVP完成,一是設定讀出保護開關(ROP); 二是設定單片機引腳的第二功能,特别是第一個,新買的單片機IC或最小系統闆、開發闆,最好都要使用STVP設定一下ROP,否則無法在IAR中使用。用STVP的設定的過程比較簡單,這裡也不詳細說了。

   開發環境就說到這裡了,從下一片開始,就以STM8S103F3P6這個型号的單片機為例來具體介紹如何使用單片機了。

繼續閱讀