STM32 プロジェクトの作成 -- Keil uVision5 ソフトウェア
Xiaoli Ziを使用
1 ライブラリ関数ライブラリの準備
STM32F10x_StdPeriph_Lib_V3.5.0
VX 「Xiao Li Zi」を検索してフォローし、返信して STM32F10x をダウンロード
2. プロジェクトを保存するディレクトリを作成します
STM32勉強
STM32Study/study1 にはこのプロジェクトのディレクトリが格納されます
3. Keil uVision5 を開いてプロジェクトを作成します
4. モデルの選択(ボードのモデルに応じて選択)
5. 必要なファイルをプロジェクトに追加する
5.1. スタートアップファイル
スタートアップ ファイルは、ライブラリ関数
STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\armにあります。
ファイル ディレクトリを作成します。 プロジェクト ファイル ディレクトリで開始し、スタートアップ ファイル内のファイルをプロジェクト ファイルにインポートします。
5.2 周辺レジスタ記述ファイルとクロックファイルのコピー
STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x にあります
スタートにもコピーされます
5.3 メモリレジスタファイルのコピー
STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport にあります
5.4 必要なファイルをプロジェクトにロードする
6. ヘッダーファイルのパスを追加する
7. テストプロジェクトの可用性
7.1 プロジェクトにユーザーストレージメインファイルを作成する
グループを作成し、その名前を「ユーザー」に変更します
7.2 メインファイルの追加
8. テストコードを書く
#include "stm32f10x.h" // Device header
int main(void)
{
while(1)
{
}
}
9. エラー処理
9.1 エラー 1
Build target 'Target 1'
Start/core_cm3.c(445): error: non-ASM statement in naked function is not supported
uint32_t result=0;
理由: 使用されているコンパイル済みバージョンが新しすぎます
9.2 エラー 2
.\Objects\study2_1.sct(7): error: L6235E: More than one section matches selector - cannot all be FIRST/LAST.
理由: すべての起動ファイルがロードされました。
現実が図に示されている場合、プロジェクトは使用できます。
10 デバッグ、書き込み、デバッグ
10.1 降下モードの選択とダウンロードリセット実行の設定
11. ライブラリ関数を使ったプログラミング
11.1 コピーライブラリ関数
Library ディレクトリを作成し、\STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver の src と inc にあるファイルをコピーします。
11.2 上記のようにライブラリグループを追加します。
11.3 関連ファイルと割り込み関数を含むライブラリ関数ヘッダー ファイルの追加
STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template にあり、ユーザー ファイル ディレクトリにコピーされます