You are on page 1of 25

y mnh s dng Keil C v4

Sau khi ci t Keil C xong


khng nh lp trnh vi PIC hay AVR m mnh lm, mnh thy arm c nhiu ngoi vi.
Mi ngoi vi li c nhiu chc nng, nhiu cch cu hnh. V vy c th s dng cc ngoi
vi bng cch nh cc thanh ghi v chc nng ca chng s rt mt thi gian v pht trin ng
dng chm. ST to ra 1 th vin ngoi vi cho chip ca h v ta s s dng th vin ny
pht trin ng dng.
Sau khi ti v th vin ngoi vi ca ST v gii nn ra ta s c nh sau:

y mnh gii nn vo th mc D:\Arm\STM32F4\Library

To Project:
-Khi ng Keil 4
-Chn Project\ New uVision Project
-t tn Project

-Chn chip: y ta chn STM32F407VG l chip trn kit stm32f4 discovery

-Chn yes

- Thm file m chng trnh

Lu vi tn main.c

G vo ni dung
PHP:
#include <stm32f4xx.h>
void main(void) {
}

Thm file va to vo Project

Bin dch th

10

Khng ging nh chng ta tng lm vi 8051 v PIC hay AVR


ch cn c hm main l c th bin dch thnh cng.
y bin dch bo li

11

Tip tc vi vic to Project:


L do bin dch li l n khng tm thy hm SystemInit
Hm ny nm trong file system_stm32f4xx.c thuc th vin chng ta ti v trn
Trn my mnh l
D:\Arm\STM32F4\Library\STM32F4xx_DSP_StdPeriph_Lib_V1.1.0\Libraries\CMSIS\Device\ST\ST
M32F4xx\Source\Templates
Ty thuc vo bn gii nn trn my bn u th bn tm th mc
STM32F4xx_DSP_StdPeriph_Lib_V1.1.0\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templat
es
Copy file ny vo th mc to Project v thm n vo Project

12

Bin dch li

13

Vy l bin dch thnh cng


Tuy nhin ta gp 1 cnh bo l hm main phi tr v kiu int
Ta sa li thnh int main v bin dch li s khng cn cnh bo ny na

14

Gi chng ta xem th mc cha project:

Trng rt ln xn v n cha cc file tm trong qu trnh bin dch.v.v........


Ta s cu hnh Keil lu cc file ny vo th mc do ta ch nh
Khi nhn vo Project s gn gng hn. Ta cng s to ring cc th mc tch cc file m
ngun ra thnh cc nhm
Chn Project \ Clean Target Keil xa cc file tm i v th mc Project ca chng ta ch cn
li nh sau (nh trc khi ta tin hnh bin dch)

15

16

Trong th mc Project ta s to mi cc th mc sau:


CMSIS
Lst
Out
StdLib
User

Sau ta chuyn file system_stm32f4xx.c vo th mc CMSIS


File main.c vo th mc User
To mi file ISR.c trong th mc user: file ny s dng vit cc hm x l ngt
Copy file stm32f4xx_conf.h (file cu hnh cho th vin ca ST)
th mc STM32F4xx_DSP_StdPeriph_Lib_V1.1.0\Project\STM32F4xx_StdPeriph_Templates
vo th mc StdLib
Trn Keil ta cng to li nh sau

17

bo cho Keil a cc file tm vo th mc Lst ta to trn:


Target Option \ Listing \ Select Folder for Listings

18

V tip theo bo cho Keil a file Hex sau bin dch vo th mc Out ta to
Target Option \ Output \ Select Folder for Objects

19

Nh nh du vo Create HEX file Keil to ra file HEX

20

Cu hnh ng dn th mc c th dng th vin ca ST:


Target Option \ Target : nh du vo Use MicroLib

C/C++
Thm dng: HSE_VALUE=8000000,USE_STDPERIPH_DRIVER

21

mc include path

Chn New v thm vo 2 mc


- Mc th nht ch n th mc StdLib trong th mc Project

22

- Mc th 2 ch n th mc inc ca th vin ngoi vi

23

C 1 cht rc ri l th vin ngoi vi vit cho thch anh 25MHz


nhng thch anh trn kit l 8MHz nn ta cn sa li
( l l do ti sao c dng HSE_VALUE=8000000 m ta lm trn)
M file system_stm32f4xx.c

Sa dng
#define PLL_M 25 thnh
#define PLL_M 8

24

Cu hnh s dng mch np ST-Link trn kit.........................


Cui cng l Project mu mnh lm c th s dng.
Mi khi dng th ch cn copy li v i tn
Bn no dng th c th b tr th vin nh trn my mnh hoc chnh li tham chiu n th
vin trong Project

25

You might also like