Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Программирование встроенных приложений STM23F10xxx_Keil_uVision-4

.pdf
Скачиваний:
32
Добавлен:
06.01.2021
Размер:
2.41 Mб
Скачать

СПБГУАП группа 4736 / https://new.guap.ru

,,( 18 ) 0 E 81 DMA.

57

СПБГУАП группа 4736 / https://new.guap.ru

DMA->ISR (O() 1 1 ( 4 1 DMA)

‰ >

7

 

GIFx

a = = 7 = ) Œ x. Š$ $ ,

 

$7$)$ $ “1” $ $F + DMA_IFCR.

 

1” – $ $7) TE, HT TC.

58

СПБГУАП группа 4736 / https://new.guap.ru

TCIFx

a = > > (TC) Œ x. Š$ $

 

, $7$)$ $ “1” $ $F +

 

=$ DMA_IFCR.

 

1” – $ $7) TC (> >).

HTIFx

a = > ) )] (HT) Œ x. Š$ $

 

, $7$)$ $ “1” $ $F +

 

=$ DMA_IFCR.

 

1” – $ $7) HT ( )] ).

TEIFx

a = 9 7 > (TE) Œ x. Š$ $ ,

 

$7$)$ $ “1” $ $F + =$

 

DMA_IFCR.

 

1” – $ $7) TE (9 7 > )]).

DMA->IFCR (O() 5 D, ) DMA)

‰ >

7

 

CGIFx

1” – $7$ * = DMA->ISR[GIFx, TCIFx, HTIFx, TEIFx].

CTCIFx

1” – $7$ * = DMA->ISR[TCIFx].

CHTIFx

1” – $7$ * = DMA->ISR[HTIFx].

CTEIFx

1” – $7$ * = DMA->ISR[TEIFx].

DMA->CCRx (O() D )E : , DMA p x) $ $ $7$ - 0x0000 0000. ˆ ) $) > $ .

ˆ

‰ >

0

EN

0: ) >.

 

 

1: >%.

1

TCIE

0: ) (TC).

 

 

1: 9 ) (TC) > >.

2

HTIE

0: ) (HT).

 

 

1: 9 ) (HTC) > >

 

 

) )].

3

TEIE

0: ) (TE).

 

 

1: 9 ) (TE) $> 9 7 >.

4

DIR

‰ >.

 

 

0: * + = $+$ .

 

 

1: * + $+$ .

5

CIRC

6)7 # : >$+ 7 ).

 

 

0: : >$ > .

 

 

1: : >$ > 9.

6

PINC

c F $ * + = $+$ .

 

 

0: $ * + = $+$ F%.

 

 

1: 9 (>) $ * + =

 

 

$+$ .

7

MINC

c F $ .

59

СПБГУАП группа 4736 / https://new.guap.ru

 

 

0: $ F%.

 

 

1: 9 (>) $ .

8

PSIZE0

6)7 )] * + = $+$ :

9

PSIZE1

00: 8 7, 01: 16 7, 10: 32 7, 11: .

10

MSIZE0

6)7 )] :

11

MSIZE1

00: 8 7, 01: 16 7, 10: 32 7, 11: .

12

PL0

6)7 :

13

PL1

00: +, 01: 16 $+, 10: )$+, 11: > )$+.

14

MEM2MEM

8 9 * : .

 

 

0: F.

 

 

1: 9 * : .

15-31

-

8

DMA->CNDTRx (O() 5ŠT8 ( (0 ,E DMA p x)

Š )$ >$ )] )] (7 +, $ , + )] $ ). c$ >

> =$ $ $ $) $ . t= $#

>$ $ (9$ ). t$ $ : >$

7, $ 7 =$ 7 >$ = # >

>.

DMA->CPARx (O() 0 ( ( D( ) E , DMA p x)

6 =$ )$ $ * + = $+$ . c$ > DMA-7 $# =$ # $ . c $) 16-7 )] )]

PA[0] =$ , > 32-7 )] )] ) PA[0 1] =$ .

DMA->CMARx (O() 0 ( 81 , DMA p x)

6 =$ )$ 7 )+ $ . c$ > DMA-7 $#

=$ # $ . c $) 16-7 )] )] PA[0] =$ , > 32-7 )] )] ) PA[0 1] =$ .

^ 8( 5 4 DMA Keil:

int main(void)

{

int My1[10]={1,2,3,4,5,6,7,8,9,10}; // • D 8 :. int My2[10]; // ^ ,E (,$ D 8 :.

…………………………………..

RCC->AHBENR |= 0x00000001; // O / ('$ 9 / : 6 1-) , DMA. DMA1_Channel1->CCR = 0x00007AC0; // < ( (0 81$-81$. DMA1_Channel1->CPAR =(unsigned int)My1; // C0 ( D 8 :.

60

СПБГУАП группа 4736 / https://new.guap.ru

DMA1_Channel1->CMAR = (unsigned int)My2;

// C0 ( ,E (,1 D 8 :.

DMA1_Channel1->CNDTR = 10;

// +5ŠT8 ( (0.

DMA1_Channel1->CCR |= 0x00000001; // S E DMA.

while((DMA1->ISR & 0x00000001)!=0x00000001); // +P 0 ( 1 DMA-58(.

………………………………….

}

C , )-: D ( 5 / (,$ ADC.

b•c $ 12-# ) 18 $)] , 16

)] $ $ 9 ] $=. < $9 ]$ $) $$) > ) $> = #. b•c

7 )] # 7: ()E,1 4 P( 4. 6 $ $ b•c

# ] 4 8. 8 7 # 7) )

. d$ 7 %$ # = .

61

СПБГУАП группа 4736 / https://new.guap.ru

O(P 8 ()E,1 49 ( 5 /.

6 O # %$ = , 7 7 )]

$ $ . 8 # = 7 F$

$)+ 12-)+ =$ = + = ). c$ $

7 + # 7) : >$+ >$+, . . 7 $ $$+. G = )] 7 + $ $ =

$= + 1-+ 9 ] ) + (EXT1). : $] 7 b•c1 $ DMA. <

: = $ $ )

9 c<c, # # : = 7 * 7 DMA.

O(P 8 P( 49 ( 5 /.

6 $ $ 7 + # + = ) # ]

> ) %] , $ )$ =. $ $ O + = ) $ $ : * = )] 7 +, ,

> # )] 7 +, 7$ . 8

7 F$ 4 12-)] =$ )] # + = ). 6 =$) $: # = 12- >,

>$ )>$ 7 b•c. t$ )> $ $ : ), =$ # = 7

$ .

+ 4 8.

} )+ > = = $] b•c

)] ) + ). $

: $ 7 b•c $ $# ) =$

.

ADC->SR (O() 1 1 ADC). $ $ $7$ - 0x0000 0000. ˆ ) 0 - 4 $) > $7$ ( $ “0”).

ˆ

‰ >

0

AWD

a = = . Š$ $ 1” ,

 

 

$ # ] )9 ),

 

 

% ) =$] ADC_LTR ADC_HTR.

1

EOC

a = > 7. Š$ $ 1” ,

 

 

> = = = 7 (

 

 

= )] 7 ], # )]).

2

JEOC

a = > # = 7.

 

 

Š$ $ 1” ..

62

СПБГУАП группа 4736 / https://new.guap.ru

3

JSTRT

a = $ # = 7. Š$ $

 

 

1$ # = 7.

4

STRT

a = $ = = = 7.

 

 

Š$ $ 1$ = =

 

 

= 7.

5-31

-

8

^ 8( (: 7$ * = # $F$ $ = ) $ $ .

ADC->CR1 (O() E ,( 1 C]^) $ $ $7$ - 0x0000. ˆ )$) > $ .

ˆ

‰ >

0

AWDCH0

6)7 = ( $ 7 AWDSGL=1).

1

AWDCH1

00000: r Œ 0.

2

AWDCH2

00001: r Œ 1.

3

AWDCH3

………

4

AWDCH4

10001: r Œ 17.

5

EOCIE

8 9 ) > $= :

 

 

b•c (> 7).

 

 

0: .

 

 

1: 8 9 ) EOC.

6

AWDIE

8 9 ) $= =

 

 

( > )9 $) ).

 

 

0: .

 

 

1: 8 9 ) AWD.

7

JEOCIE

8 9 ) 9 # =

 

 

7.

 

 

0: .

 

 

1: 8 9 ) JEOC.

8

SCAN

8 9 $ ) .

 

 

0: .

 

 

1: 8 9 $ .

9

AWDSGL

6)7 = $ .

 

 

0: 6$ )

 

 

1: Ž )+ 7 AWDCH[4:0]/

10

JAUTO

b >$ ()) 7

 

 

# )] .

 

 

0: >$ 7.

 

 

1: 9 >$ 7.

11

DISCEN

<$)+ ( $)+, )$)+ ) #

 

 

7 + = )] .

 

 

0: $)+ # 7 ).

 

 

1: 9 $)+ # 7 ).

12

JDISCEN

<$)+ ( $)+, )$)+) #

 

 

7 + # )] .

 

 

0: $)+ # 7 ).

 

 

1: 9 $)+ # 7 ).

13

DISCNUM0

r >$ , $)] # = )]

14

DISCNUM1

7 +:

15

DISCNUM2

000: 1 . 001: 2 . …. . …… 111: 8 .

16-21

-

8

63

СПБГУАП группа 4736 / https://new.guap.ru

22

JAWDEN

 

0: } )+ >% # = .

 

 

 

1: } )+ >% # .

23

AWDEN

 

0: } )+ >% = = .

 

 

 

1: } )+ >% = .

24-31

-

 

8

^ 8( (: 6 ] $ b•c 7 ) 16-19 $ $

$+ $ $+ 7 ) ] b•c.

 

ADC->CR2 (O() E ,( 1 C]^) $ $ $7$ - 0x0000. ˆ )

$) > $ .

 

ˆ

 

‰ >

 

0

ADON

6 > b•c.

 

 

 

0: c b•c # # = O = 7. t$

 

 

$] 7 7, ) ].

 

 

1: 8 7 b•c 9.

 

1

CONT

8 # 7.

 

 

 

0: } )+.

 

 

 

1: ‰ ) )+.

 

2

CAL

.$ 7. Š$ $ =, $7$)$

 

 

9 7.

 

 

 

1: .$ 7.

 

3

RSTCAL

c = =$ 7. ˆ $ $

 

 

=, $7$)$ “0” $ =.

 

 

1: c = =$) 7.

(8$ )

 

 

$ >.)

 

4-7

-

 

8

8

DMA

8 9 7 ) DMA.

 

 

 

0: . F.

 

 

 

1: 8 9.

 

9-10

-

 

8

11

ALIGN

6) )].

 

 

 

0: 6 (9 7 $ $ 9 >).

 

 

1: 6 (9 7 ) $ ).

12

JEXTSEL0

6)7 $> 9 = $ 7

13

JEXTSEL1

# )] .

 

14

JEXTSEL2

000: Ž + 1 TRGO.

 

 

 

001: Ž + 1, $ Œ 4.

 

 

 

010: Ž + 2 TRGO.

 

 

 

011: Ž + 2, $ Œ 1.

 

 

 

100: Ž + 3, $ Œ 4

 

 

 

101: Ž + 4 TRGO.

 

 

 

110: EXTI 15.

 

 

 

111: ˆ JSWSTART.

 

15

JEXTTRIG

8 9 $ 7 # )]

 

 

9 $=.

 

 

 

0: ..

 

 

 

1: 8 9.

 

16

-

 

8

 

17

EXTSEL0

6)7 $> 9 = $ 7 = )]

18

EXTSEL1

.

 

19

EXTSEL2

000: Ž + 1, $ Œ 1.

 

 

 

001: Ž + 1, $ Œ 2.

 

64

СПБГУАП группа 4736 / https://new.guap.ru

 

 

010: Ž + 1, $ Œ 3.

 

 

011: Ž + 2, $ Œ 2.

 

 

100: Ž + 3 TRGO.

 

 

101: Ž + 4, $ Œ 4.

 

 

110: EXTI 11.

 

 

111: ˆ SWSTART.

20

EXTTRIG

8 9 $ 7 = )]

 

 

9 $=.

 

 

0: ..

 

 

1: 8 9.

21

JSWSTART

.$ 7 + # )] .

 

 

1: .$ 7 # )] . #

 

 

$ $ ) $ $ 7 $7$)$

 

 

0”(# > F$ =). 6 7 + ] JEXTSEL[2:0]

 

 

# 7) )7 $> $ JSWSTART.

22

SWSTART

.$ 7 + = )] .

 

 

1: .$ 7 = )] . # $

 

 

$ ) $ $ 7 $7$)$ 0” . 6 7 + ]

 

 

EXTSEL[2:0] # 7) )7 $> $ SWSTART.

23

TSVREFE

1: 6 > ) ) UREF.

 

 

^ 8( (: UREF – O # >

 

 

). } # b•c 7 9, 7

 

 

$ $ # = + >$ VDDA.

24-31

-

8

ADC->SMPR1 (O() (8( ( 4 - 1)

ADC->SMPR2 (O() (8( ( 4 - 2)

8 =$) ADC->SMPR1 ADC->SMPR2 $ >$ 7

# = :

 

 

 

 

 

 

 

 

 

 

 

SMPx_2

SMPx_1

SMPx_0

f 7.

 

SMPx_2

SMPx_1

SMPx_0

f 7.

 

0

0

0

1,5 :

 

1

0

0

41,5 :.

 

0

0

1

7,5 :

 

1

0

1

55,5 :

 

0

1

0

13,5 :.

 

1

1

0

71,5 :

 

0

1

1

28,5 :.

 

1

1

1

239,5 :

 

 

 

 

 

 

 

 

 

 

65

СПБГУАП группа 4736 / https://new.guap.ru

ADC->HTR (O() ( 9 ( ) :4 ) 8)

ADC->LTR (O() P ( ) :4 ) 8)

6 $> )] ) > +, )] O ] =$], $7 ) )+

.

ADC->SQR1 (O() p 1 E ,( 1 ()E,1 ,(0 (,$ $6)

ADC->SQR2 (O() p 2 E ,( 1 ()E,1 ,(0 (,$ $6)

ADC->SQR3 (O() p 3 E ,( 1 ()E,1 ,(0 (,$ $6)

8 =$

ˆ )

 

‰ >

SQR1

L[3:0]

< = + + $ $ ( . .

 

 

>$ 7 + :):

 

 

0000:

1 7.

 

 

0001:

2 7.

 

 

…………..

 

 

1111:

16 7 +.

66