一步步建立STM8S工程項目(祥圖)_第1頁
一步步建立STM8S工程項目(祥圖)_第2頁
一步步建立STM8S工程項目(祥圖)_第3頁
一步步建立STM8S工程項目(祥圖)_第4頁
一步步建立STM8S工程項目(祥圖)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、一步步建立STM8S工程項目鑒于本人曾經(jīng)摸索了不少時間,走了很多彎路,為了使新手更好地快速入門,特編寫此教程。本文件期望達(dá)到如下目的:1、 從無到有建立全新的STM8S工程項目2、 能調(diào)用標(biāo)準(zhǔn)庫函數(shù)3、 會定義位,懂得如何查找特定的寄存器并直接賦值。在開始之前,假設(shè)你已經(jīng)安裝了STVD和cosmic軟件,STVD在ST官網(wǎng)下載,COSMIC到官網(wǎng)或網(wǎng)上可找到評估版或破解版。首先下載ST標(biāo)準(zhǔn)庫,從官網(wǎng)下載,我在網(wǎng)上下載到的壓縮文件名是stm8_stdperiph_lib。可按如下方法下載:進(jìn)入STM8Smainstream的resources頁,進(jìn)入Firmware,下載“STM8S/A Sta

2、ndard peripheral library”如下圖所示:其次搜索并下載“STM8S庫函數(shù)中文參考”,對新手省去學(xué)習(xí)庫函數(shù)的麻煩。第一步,打開STVD,F(xiàn)ile -> New WorkSpace可選creat workspace and project創(chuàng)建工程和項目在新工程框中,輸入工程名,先點左邊紅色框的選擇文件夾,然后點新建文件夾并輸入名稱確定后填入項目名稱,在Toolchain選擇所用編譯器,本例選cosmic點擊OK后,選中IC型號,雙擊,再點OK點擊OK,初步工程和項目已經(jīng)建立,編譯通過。將下載的STM8S標(biāo)準(zhǔn)庫stm8_stdperiph_lib解壓,如下圖,我下載的版本

3、解壓后是STM8S_StdPeriph_Lib_V2.1.0文件夾。打開以上文件夾,如下圖目錄,從標(biāo)準(zhǔn)庫中復(fù)制以下三個文件到新建工程項目中:新建工程文件目錄粘貼如下:將STM8S_StdPeriph_Lib_V2.1.0Libraries下的STM8S_StdPeriph_Driver文件夾復(fù)制到你剛才建立的工程文件夾里,如下圖:將以上stm8s_it.c和stm8s_conf.h添加到STVD的工程文件夾中,然后將stm8s.h從STM8S_StdPeriph_Driver下的inc文件夾中添加,如下圖雙擊打開stm8s.h,將所用的單片機(jī)型號的注釋符號去掉,如下圖:將stm8s_it.c中

4、的INTERRUPT_HANDLER(NonHandledInterrupt, 25)函數(shù)注釋掉,因為重復(fù)定義了。然后編譯通過。在STVD中的project右鍵New Folder,建立所需文件夾建立一個文件夾STM8S_StdPeriph_Driver,如下圖:在STVD中點擊STM8S_StdPeriph_Driver右鍵,添加標(biāo)準(zhǔn)庫文件stm8s_gpio.c。雙擊打開stm8s_conf.h文件,將如下圖所示紅色框的定義文件注釋掉。打開STM8S庫函數(shù)中文參考,下例中設(shè)置PA0口點擊復(fù)制,將其粘貼到main函數(shù)中,并在main.c中添加#include "stm8s.h&qu

5、ot;,編譯通過,如下圖。至此一個基本的STM8S工程項目建立完畢。若需要使用到單片機(jī)的其它模塊功能,直接按添加stm8s_gpio.c的方法添加,比如要用到time4,則添加stm8s_tim4.c到工程中即可。以上是使用標(biāo)準(zhǔn)庫函數(shù)的編寫方法,另外可直接使用已經(jīng)定義好的頭文件,直接對寄存器和位賦值設(shè)置操作。到STVD安裝目錄找到單片機(jī)類型的頭文件,本例是C:Program FilesSTMicroelectronicsst_toolsetinclude中找到STM8S003.h和STM8S103F.h,復(fù)制到新建的工程文件夾中,如下兩圖一中在STVD中添加單片機(jī)頭文件,如下圖,本例是stm8

6、s003f3.h和stm8s103f.h,文件中有對特殊功能寄存器的定義。在main.c文件中加入“#include "stm8s003f3.h"”或“#include "STM8S103F.h"”。這樣就可以直接以單片機(jī)頭文件定義的寄存器名直接賦值,比如:為了便于位操作,可另建一個位定義文件,本例是建立stm8s_bitsdefine.h文件名,以下是示例,用戶可自行設(shè)置添加內(nèi)容:#ifndef _MACRO_BITS_DEFINE_H_ #define _MACRO_BITS_DEFINE_H_ /*-*/IO bits define/* Port

7、A data output bits*/volatile _BoolPA_ODR_0PA_ODR:0;volatile _BoolPA_ODR_1PA_ODR:1;volatile _BoolPA_ODR_2PA_ODR:2;volatile _BoolPA_ODR_3PA_ODR:3;volatile _BoolPA_ODR_4PA_ODR:4;volatile _BoolPA_ODR_5PA_ODR:5;volatile _BoolPA_ODR_6PA_ODR:6;volatile _BoolPA_ODR_7PA_ODR:7;/* Port A data input bits*/volat

8、ile _BoolPA_IDR_0PA_IDR:0;volatile _BoolPA_IDR_1PA_IDR:1;volatile _BoolPA_IDR_2PA_IDR:2;volatile _BoolPA_IDR_3PA_IDR:3;volatile _BoolPA_IDR_4PA_IDR:4;volatile _BoolPA_IDR_5PA_IDR:5;volatile _BoolPA_IDR_6PA_IDR:6;volatile _BoolPA_IDR_7PA_IDR:7;/* Port B data output bits*/volatile _BoolPB_ODR_0PB_ODR:

9、0;volatile _BoolPB_ODR_1PB_ODR:1;volatile _BoolPB_ODR_2PB_ODR:2;volatile _BoolPB_ODR_3PB_ODR:3;volatile _BoolPB_ODR_4PB_ODR:4;volatile _BoolPB_ODR_5PB_ODR:5;volatile _BoolPB_ODR_6PB_ODR:6;volatile _BoolPB_ODR_7PB_ODR:7;/* Port B data input bits*/volatile _BoolPB_IDR_0PB_IDR:0;volatile _BoolPB_IDR_1P

10、B_IDR:1;volatile _BoolPB_IDR_2PB_IDR:2;volatile _BoolPB_IDR_3PB_IDR:3;volatile _BoolPB_IDR_4PB_IDR:4;volatile _BoolPB_IDR_5PB_IDR:5;volatile _BoolPB_IDR_6PB_IDR:6;volatile _BoolPB_IDR_7PB_IDR:7;/* Port C data output bits*/volatile _BoolPC_ODR_0PC_ODR:0;volatile _BoolPC_ODR_1PC_ODR:1;volatile _BoolPC

11、_ODR_2PC_ODR:2;volatile _BoolPC_ODR_3PC_ODR:3;volatile _BoolPC_ODR_4PC_ODR:4;volatile _BoolPC_ODR_5PC_ODR:5;volatile _BoolPC_ODR_6PC_ODR:6;volatile _BoolPC_ODR_7PC_ODR:7;/* Port C data input bits*/volatile _BoolPC_IDR_0PC_IDR:0;volatile _BoolPC_IDR_1PC_IDR:1;volatile _BoolPC_IDR_2PC_IDR:2;volatile _

12、BoolPC_IDR_3PC_IDR:3;volatile _BoolPC_IDR_4PC_IDR:4;volatile _BoolPC_IDR_5PC_IDR:5;volatile _BoolPC_IDR_6PC_IDR:6;volatile _BoolPC_IDR_7PC_IDR:7;/* Port D data output bits*/volatile _BoolPD_ODR_0PD_ODR:0;volatile _BoolPD_ODR_1PD_ODR:1;volatile _BoolPD_ODR_2PD_ODR:2;volatile _BoolPD_ODR_3PD_ODR:3;vol

13、atile _BoolPD_ODR_4PD_ODR:4;volatile _BoolPD_ODR_5PD_ODR:5;volatile _BoolPD_ODR_6PD_ODR:6;volatile _BoolPD_ODR_7PD_ODR:7;/* Port D data input bits*/volatile _BoolPD_IDR_0PD_IDR:0;volatile _BoolPD_IDR_1PD_IDR:1;volatile _BoolPD_IDR_2PD_IDR:2;volatile _BoolPD_IDR_3PD_IDR:3;volatile _BoolPD_IDR_4PD_IDR:4;volatile _BoolPD_IDR_5PD_IDR:5;volatile _BoolPD_IDR_6PD_IDR:6;volatile _BoolPD_IDR_7PD_I

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論