此次的STM32的學(xué)習(xí),,在程序的建立與配置上比以往的要更加復(fù)雜,,所以我個(gè)人也是在新建工程以及配置工程中經(jīng)常落下一些設(shè)置與操作,使整個(gè)程序無(wú)法仿真,,或是程序編譯出錯(cuò),,為了避免這樣的一些基礎(chǔ)的錯(cuò)誤與麻煩,我個(gè)人整理了整個(gè)工程的建立到工程的全部設(shè)置,,談不上非常細(xì)致吧 但也足夠讓一些像我一樣的初學(xué)者避免一些錯(cuò)誤,,已經(jīng)掌握的同學(xué)若在日后有忘記的地方 也可非常方便的來(lái)查看一下。下面就是創(chuàng)建與配置工程的全部過(guò)程,,初學(xué)者請(qǐng)務(wù)必按順序一步步查看,。 1.新建一個(gè)文件夾(以后編的每一個(gè)工程都放進(jìn)這個(gè)文件夾里,自己命名,,例如:STM32 file) 2.創(chuàng)建一個(gè)文件夾(名字可以根據(jù)你編寫的程序來(lái)命名,,如:Demo) 2.1 新建子文件夾User,用于存放用戶源程序 2.2 新建子文件夾Project,,用戶KEIL工程文件 2.3 在Project下依次創(chuàng)建Obj和List子文件夾,,存放編譯過(guò)程中產(chǎn)生的中間文件。 2.4 將main.c stm32f10x_conf.h stm32f10x_it.c stm32f10x_it.h system_stm32f10x.c等文件復(fù)制到User文件 下
3. 復(fù)制源代碼到Demo文件夾 3.1 將stm32f10x_stdperiph_lib3.5 / Libraries文件夾整體復(fù)制到Demo文件夾下 這就是ST的標(biāo)準(zhǔn)庫(kù),,是以源代碼形式提供的,。 也可將Libraries文件夾直接復(fù)制到STM32 file文件夾下,使其與以后創(chuàng)建的其他工程同在一個(gè)目錄下,,這樣可使在該目錄在的工程共享Libraries,。免得以后創(chuàng)建一個(gè)工程就得復(fù)制一次Libraries 4.新建一個(gè)Keil MDK工程 4.1 啟動(dòng)Keil MDK,點(diǎn)擊菜單 New uVision Project,,然后按向?qū)нM(jìn)行操作 4.2 選擇CPU類型為 STM32F103RC 4.3 當(dāng)提示是否復(fù)制啟動(dòng)代碼時(shí),,請(qǐng)選擇否。 4.4 為了延長(zhǎng)芯片使用壽命以及加快仿真速度,,可以在 ram中直接仿真(ram仿真速度快),,用ram仿真 在斷電之后數(shù)據(jù)就全部丟失了,修改Target名字, 添加兩個(gè),一個(gè)Flash,一個(gè)Ram 如圖 4.5 為了便于代碼管理,,在這個(gè)Project下創(chuàng)建幾個(gè)Group User : 存放用戶自己寫的源代碼 RVMDK : 存放啟動(dòng)文件(匯編文件) StdPeriph_Driver : 存放ST標(biāo)準(zhǔn)庫(kù)文件 CMSIS : 存放CMSIS接口文件(這也是庫(kù)的一部分) 4.6 創(chuàng)建好Group后,,我們開(kāi)始依次添加文件。
添加User: 如main.c stm32f 10x_it.c 添加RVMDK:statup_stm32f 10x_hd.x 添加StdPeriph_Driver :我們用到的一些.C文件,。如:misc.c stm32f 10x_rcc.c stm32f 10x_gpio.c 添加CMSIS :core_cm3.c system_stm32f 10x.c 5. 配置工程, 點(diǎn)擊“Options”按鈕 5.1 打開(kāi)Flash 調(diào)整Flash設(shè)置 5.1.1 切換到Output,。 選擇Object文件夾。 在Create Hex File 前打鉤,。 將Name Executable 修改為 output 如圖: 5.1.2 切換到Listing,。 選擇Listings文件夾 5.1.3 切換到C/C++ 添加兩個(gè)預(yù)編譯宏 STM32F10X_HD, USE_STDPERIPH_DRIVER (這是ST庫(kù)用到了這兩個(gè)宏) 修改Includes路徑 如圖: 5.1.4 切換到Debug 選擇硬件調(diào)試器,我們選擇ST-Link Debugger 再 Run to main前打鉤 5.1.5 切換到Utilities 選額調(diào)試器類型,,我們選擇ST-Link Debugger
5.2 打開(kāi)Ram,調(diào)整Ram設(shè)置 5.2.1 切換到target 修改IROM1:0x20000000,0x8000 ; IRAM1:0X20008000,0X8000 如圖: 5.2.2 切換到Output,。 選擇Object文件夾。 在Create Hex File 前打鉤,。 將Name Executable 修改為 output 如圖: 5.2.3 切換到Listing,。 選擇Listings文件夾
5.2.4 切換到C/C++ 選中One ELF Section per Function 添加兩個(gè)預(yù)編譯宏 STM32F10X_HD, USE_STDPERIPH_DRIVER (這是ST庫(kù)用到了這兩個(gè)宏) 修改Includes路徑 如圖:
5.2.5 切換到Debug 選擇硬件調(diào)試器,我們選擇ST-Link Debugger 在 Run to main前打鉤 去掉Load Application at Startup Initialization File :CpuRAM.ini 5.2.6 切換到Utilities 選額調(diào)試器類型,,我們選擇ST-Link Debugger 去掉Update Target before Debugging
這樣整個(gè)工程的建立與配置就全部完畢了,,現(xiàn)在大家就可以進(jìn)行編程然后仿真了
|
|