在STM32 開發的過程中,其實並不像【STM32學習】(1)新建工程,寄存器操作點亮一盞燈 裏面的工程那麼簡單。
本次代領大家新建一個企業中常用的開發工程環境,供大家借鑑。我們這裏使用的STM32型號爲:STM32F103VET
步驟:
1.先要找到固件庫文件
可在網址:https://www.st.com/content/st_com/zh.html下載,接下來按照圖給出的步驟執行就好了。
把郵箱賬號填完,然後會發送到你的郵箱,最後到郵箱裏下載固件包。樣子如下:
2.新建如下五個文件夾
工程文件夾:
裏面含有五個文件夾:,注意,這五個文件裏都是空的,接下來需要拷貝資源文件到對應的文件夾下面。
3.資源複製與粘貼
先解壓第一步下載的固件庫:解壓後,打開文件裏面的內容有,如下:
便於觀察清晰明瞭,只保留兩個文件夾,其他的刪掉,留下的文件夾如下:
接下來先看:將裏面的文件夾中的,裏的,
文件夾中的這兩個文件拷貝到我們新建的中。然後再將中的
中的文件也拷貝到中,然後再將
拷貝到
最後CMSIS文件夾中的內容爲:
然後,再到這個文件夾中:
拷貝這個兩個文件夾到新建的FWLIB文件夾中,如:
最後,回到中拷貝,如下文件
到新建的USER文件夾中,
到這裏就把工程中的資源都複製粘貼完成,接下來開始搭建開發環境。
4.開發環境搭建
點擊OK後的效果:
main.c中添加這一部分代碼,如下:
到這裏工程就建完了,現在就可以驗證一下工程是否成功:
證明工程已經正確建成:
5.LED閃爍程序實現
#include "stm32f10x.h" // Device header
#include "stm32f10x_gpio.h"
void delay(void);
int main(void)
{
RCC_DeInit();
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
GPIO_InitTypeDef GPIO_InitStruct;
GPIO_DeInit(GPIOA);
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStruct.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA,&GPIO_InitStruct);
while(1)
{
GPIO_Write(GPIOA, 0XFFFF);
delay();
GPIO_Write(GPIOA, 0X0000);
delay();
}
}
void delay(void)
{
int i,j;
for(i=0;i<100;i++)
{
for(j=0;j<400;j++);
}
}
下載到STM32開發板即可運行。
我這裏使用的是J-link V8 下載器
設置過程,如下:
搞定,有什麼問題可以隨時留言。O(∩_∩)O哈哈~