找回密码
 注册
关于网站域名变更的通知
查看: 1420|回复: 3
打印 上一主题 下一主题

ARM_ cortex M4国产处理器(AT32F403ZGT6)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-8-6 10:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
一、AT32F403ZGT6介绍
  • 效能/性能
    - U' L# g) ?0 j! _8 c
    • ARM® Cortex®-M4主频最
      " k! h4 F3 ], ~' U8 j高200MHz
    • 单精度浮点运算单元
    • 內存执行零等待技术
    • 2.6V ~ 3.6V 供电电压
    • I/Os 可承受 5V 电平
    • 温度范围-40 ~ +85°C
      4 n/ V* F1 k. D/ \2 m) ]$ O
      5 y( |8 }4 |3 |) \+ u1 G9 v
  • 內存
    9 y! ?7 \3 b1 W2 ~) x) s. t
    • 高达1MB闪存
    • 高达224KB SRAM
      0 i7 j9 P8 O% j6 R
      % G# ?( L. G% J) t
  • 时钟
    / k, {4 q3 W2 m3 ^- D8 i
    • PLL (200 MHz输出)
    • 外部高速 4 ~ 16 MHz晶体振荡器
    • 内部高速 8MHz RC振荡器(-40°C ~ 85°C)
    • 外部低速 32.768kHz RTC 晶体振荡器
    • 内部低速 40kHz RC振荡器* K6 g: [1 H1 H8 P
      8 C5 W3 ?: _! w. B8 p  R' M
  • 复位和电源管理
    • 上电/断电复位(POR/PDR)
    • 可编程电压监测器(PVD)
      & L  o- O6 _8 m( D
      ( c; g* D- _+ R
  • 仿真高性能外设
    ! d8 w& U# j$ ^3 C1 p
    • 3组2M采样速率12位A/D转换器(21通道)
    • 2通道12位D/A转换器
      / L/ f7 f. B& h
      5 G  e# b& z) N1 f
    / M  ~  J9 a: \4 B" Q
3 M6 b' F% B. O1 i  f  [9 g
  • 定时器
      l8 a- ~; W" ~: M8 ?) F# t0 _
    • 3个16位带死区控制PWM高级控制定时器
    • 2个32位, 8个16位通用定时器
    • 2个看门狗定时器(独立和窗口型)
    • 2个16位基本定时器(驱动DAC)
    • 1个系统时间定时器: 24位自减型
      & i2 @8 C. f. E+ P

      8 K  t' q$ n# C2 V
  • 外设接口
    ' \  b* c/ W8 |0 {+ V5 \
    • 3 x I2C
    • 4 x SPI / I2S (SPI可达50MHz)
    • 3 x USART + 2 x UART
    • 2 x SDIO
    • USB 2.0 全速接口
    • CAN 2.0B
      " S3 U" V' U6 C3 ?. w

      ) {! c9 T$ z: Q0 ?
  • DMA
    + b+ Z6 M% L7 u9 Q1 M
    • 12通道, 支持定时器、ADC、DAC、SDIO、I2S、SPI、I2C和USART
      3 y# X1 Q- U5 G0 O8 n) W/ u6 v
      2 @0 O. C* P2 \6 O
  • XMC
    2 r3 l0 R+ o& ~5 I8 M; k" t
    • 支持CF卡、SRAM、PSRAM、NOR和NAND存储器
    • 支持并行LCD接口, 兼容8080/6800模式# c' a$ l) W4 |! d8 S& f/ R
      ; |3 W* I5 m: \
  • SPIM
    & t. x! \+ I* t& g$ f1 L0 i- w' P
    • 外部 SPI Flash memory 扩展(程序执行/数据储存/程序与数据可加密)
      6 E& b- I$ I/ q5 B2 D9 V" O$ G7 s! A

      9 k2 s' n* [: O7 a5 G8 J
  • 封装
    # F! L( Z" M  U: [
    • 48/64/100/144-pin LQFP
    • 48-pin QFN8 r7 E3 R! a7 q* W) y8 O" L2 F
    / ?1 d9 m  T$ B+ M7 F2 e

  \- j7 u% `  E- l/ q$ `& S9 V; a7 }* }
. i! H! [- C: y9 U) ^
4 Y: S) Q3 }" o
( d  g( \/ d, U5 O3 n  I
1 n! N( }4 G- Z

8 u" k7 o5 K6 y7 j2 A# f1 Q4 ?' z5 {& i, a( f; e* p' K4 p
! b: X! w0 h/ I* L7 B/ g" }
! Z* ~+ Y/ l4 k( s1 N  P, |
" ]. a' x7 b! C+ E2 B" H
8 |/ Y; B( z) s% K% v  n

! [& A9 l6 H2 V+ [' c+ j4 J1 {
2 j! m0 j! E- ~/ ?; g8 k3 @
6 w$ D2 E  i- {1 W$ z

* D+ x" z# D7 z
0 c, W' |% {4 }6 ?
( k' m/ g7 c7 U
5 ]" D3 H! E0 G- Q" r& k" n
: j) b7 T  o# o$ }1 Y) E. \* I
! J1 ^7 W" \( A6 p1 r
  W7 @3 J- Q$ x

. N$ J! x: O. ^$ X2 \* v* C. L: w  N: `! B: i

! d& H( _: |( k7 l0 e) B8 q
3 V$ D( W  Y- D' k! t4 O

# z8 g9 b. \' \7 P5 D& w! I
& p+ h5 x5 _( V* R' ]  y9 d1 I

) W, x+ I0 O, J% x" ^! I% y4 y& Y
5 g  L$ H2 r9 |# u9 A8 ~% g& q
" d0 C4 i/ Q) R6 J# G" k  ^

9 W7 B/ T; R! {' [5 ^0 x
" u" F2 j& g, [3 m

) m( T4 Q8 k8 i& ^
7 z) Z: m6 b, h( s

8 ?- a1 W1 y' |& y3 [, k. d! {
6 p( a! A+ \$ G: |/ p: |% N# J% u6 d

5 Q* [( n$ v# k7 b/ \/ D. @4 I2 Z0 t4 l: |2 [9 o) r
' j. \4 G  f* ?$ d6 @4 Q% G
) l6 \3 t  w7 D2 P$ M

2 ?, P8 l. u$ K! x; L$ D3 T1 B2 p8 t5 h0 t" c/ X
* w0 O) _; O3 s' }' Z- ~

0 f! G! x( N" v5 w) B1 o
+ }& ~2 m, N, Y% ?4 z

$ M6 K+ x, E/ C: C* [- D5 p

# a2 I* O+ A  `2 t9 j
; F7 ^0 n' X/ x' C

9 ]# A% }' [& F5 I, d" {二、点亮LED灯
8 B- X) h4 ^4 F
4 |9 ~. D+ @" q2 S$ {. U8 a点亮LED并结合系统滴答时钟进行精确延时: w& t- @$ y: K) V( |: x
  • #include "systick.h"  Q, |5 Z2 c$ M. Y0 K! e% H

  •   f. Y8 z2 S/ r: Z

  • ( ?2 v# O. f# R# `! k! E: G
  • static u8 fac_us;
    3 K) u" m. }' v, \2 `# r9 ~5 p" w
  • static u16 fac_ms;
    , S* H( j3 w/ h6 X3 P
  • 3 a) F* L3 {( m% z4 y2 S$ D
  • void systick_init(u8 sys_clock)% P: Z! Z1 _+ I( I+ O% s* P& H+ E. v' f
  • {
    ) l9 i1 g3 P0 |8 W% u& k
  •         SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);% r% f+ E# q! m+ H! q8 Z' H' w- A& w
  •         2 i9 u6 S5 @3 V% Y( ?4 Z6 o2 @% r1 O& W
  •         fac_us=sys_clock;$ K0 i+ `" n/ x
  •         fac_ms=(u16)fac_us*1000;# w/ U& Y# w5 t: v/ l2 C7 |: J
  • }
    & F  ~. C1 n; e5 p, \6 h! R+ F

  • & r7 P0 g' J' C4 U4 t
  • //'nus'<=838861 e' r' H( R8 t3 w- A/ X6 v
  • void delay_us(u32 nus)
    4 W+ M& v& G0 I( ?5 h" t
  • {, e2 K8 Y$ ]1 Q
  •         u32 temp;
    + @0 R( `% M' l1 K! B' h7 ]3 Z
  •           L& c, B+ a  O( q
  •         SysTick->VAL=0;
    # C) p" E6 F5 }4 e
  •         SysTick->LOAD=nus*fac_us;
    4 N8 ]1 o$ n) H' r
  •         SysTick->CTRL|=0x01;
    / g8 Q0 ~1 Q) G0 N4 F
  •         
    * D9 h6 U7 m0 F4 r" s/ L8 w! c
  •         do
    ' v0 g3 ^5 B5 n1 |9 A
  •         {
    8 ?; ?1 l( x& Y
  •                 temp=SysTick->CTRL;
    ; N$ m  @- p. z& d
  •         }while((temp&0x01)&&!(temp&(1<<16)));" z& W$ N, G0 A. ^
  •         SysTick->CTRL&=~0x01;
    , U7 `/ y0 @, e6 i
  •         SysTick->VAL=0;
    ( ^* x2 i! S# r! k5 l# c; o$ B
  • }/ R1 s! d  `7 t) L2 i) @
  • $ F4 Q9 o9 S7 |$ @) U
  • //'nus'<=83
    9 `) W7 J' E* ?2 b( h- m
  • static void delay_nms(u8 nms)' \) A' r+ o3 O4 Z; o5 u2 b
  • {7 Z: T3 m& l% r) A
  •         u32 temp;
    + i) a* p( X9 R- }7 r; p& A
  •         5 w; U  u$ G& a9 B
  •         SysTick->VAL=0;
    $ _' C) U" o7 k# w; m4 Y: g
  •         SysTick->LOAD=nms*fac_ms;
    % g; A- Q7 n; o4 L* o! {4 ~$ F" L
  •         SysTick->CTRL|=0x01;
    / m! D; m9 k/ d- T: W: G6 N
  •         ' q1 Y  V# d4 G) y7 d5 T
  •         do
    1 \5 t$ y; J0 y8 k( A  W
  •         {* u& F# ~+ l# s3 y  D7 Z
  •                 temp=SysTick->CTRL;
    , h; G, {6 `0 P! x- `# X2 H$ G
  •         }while((temp&0x01)&&!(temp&(1<<16)));
    , B/ c! R1 \2 P" l' s. C" J
  •         SysTick->CTRL&=~0x01;. L: F# H2 s: K
  •         SysTick->VAL=0;
    6 S3 i9 ^/ K& U- s
  • }. |3 s- e4 `4 t+ I/ ~; q
  • $ U1 K5 w3 g' ^/ h& B/ A9 X2 t/ P
  • . f+ ~. a( g5 ^& A4 P9 f
  • void delay_ms(u32 nms)
    4 g5 f7 u6 s) n
  • {
    $ x4 R8 \: W" n
  •         u8 yushu=nms%50;" `, Y6 a: u, M  \+ B7 F
  •         u32 zhengshu=nms/50;( b6 I, j( g+ n$ q* W
  •         8 t8 c8 K4 X' A5 O" @1 r
  •         while(zhengshu), ]$ L3 b, n/ ^+ Z2 }
  •         {
    $ y6 J0 p' u3 O1 b) S0 _
  •                 delay_nms(50);' U; g' s! f7 b/ Y2 c/ V: _* R9 v
  •                 zhengshu --;, t6 o3 u7 o6 K1 `# L9 b  U
  •         }! M! `1 h% N* r0 A) r/ d, A/ C+ W
  •         if(yushu)
    6 _1 v+ C  O6 j: e# ]0 @5 w
  •         {
    , C& Z  _' |9 [
  •                 delay_nms(yushu);
    $ u* `" u7 H, L; g* T
  •         }9 B. y; y+ w1 B% k- v$ H
  • }! ]; K7 ?8 I) s
  • $ q3 j" `1 a" O9 m

5 l$ F3 u+ @, f9 ~5 X& Q! i# S7 p% l' q8 m. |6 @! K

1 x5 W* X) D; q. E4 e) G
  • #include "led.h"
    + G' e9 I4 [2 G3 i, h9 N

  • ' W/ y" @. i' ^- u
  • 1 v+ s. K2 l& l# S$ B5 Q& `# {5 r
  • void led_config(void)/ C) Z% M, n# X3 ]! Z& f
  • {$ ?. r$ ?7 s7 N( c4 G1 G
  •         GPIO_InitType GPIO_Initstructure;
    9 }: E7 }& c. _, Z
  •         1 T9 k. h% k( w
  •         RCC_APB2PeriphClockCmd(RCC_APB2PERIPH_GPIOD,ENABLE);
    ( c6 x$ v1 o, L
  •         
      f7 b. h2 z+ A9 o
  •         GPIO_Initstructure.GPIO_MaxSpeed=GPIO_MaxSpeed_50MHz;6 ~0 M. p) Z! @9 o' x
  •         GPIO_Initstructure.GPIO_Mode=GPIO_Mode_OUT_PP;7 d# e8 C" N& Y+ I) j- P3 U1 @% r
  •         GPIO_Initstructure.GPIO_Pins=GPIO_Pins_13|GPIO_Pins_14|GPIO_Pins_15;, b* E+ \. v* `- i' \
  •         
    1 @1 ~. m0 i) c; I
  •         GPIO_Init(GPIOD,&GPIO_Initstructure);+ y( r" p$ [" n: j/ F5 K
  •         
    , H( m* O3 R! a9 i) q# g% f
  •         GPIO_SetBits(GPIOD,GPIO_Pins_13|GPIO_Pins_14|GPIO_Pins_15);
    ' u* q! j# I5 I" s0 z( H/ |' ]
  • }& m- M; M4 y/ c% T2 [: o% e

  • . K' v1 R; O7 f2 I; F
  • ( ?& D. G4 j1 p
  •         
    ; @% z& a! Y' A$ {
  • ; |* q7 r9 f% M( V" K& y( {. @

  • + Q( ^$ @- j  K5 C4 J

  r8 [$ M. o. L8 W9 C( Z: O2 x7 u! o8 P) L* i/ s, h# j) [# D
% _- ~. p0 ]# I% T1 D

; t/ o" y4 W  ]( I" K, t7 n5 T4 D) `& h8 n) l2 o

5 w/ s. r0 C! r7 `1 j, v7 e9 L! Y三、简单总结( u+ Z% Y: ?& Y0 b% x
通过试用并对比了STM32、GD32和华芯威特等M4处理器,该处理器系统时钟在同系列里具有较高主频,丰富的外设,且代码风格与STM32很像,在国产mcu中具有较高的性价比。/ ?; p' n% W) ~* y

8 d, N! B# ?7 m
4 H4 @2 o* X; \0 U) f7 [3 q5 c  |. S

% g2 H% \1 u1 G4 v3 k/ `+ l

( o5 C0 }# s/ T* D4 [6 ]" C+ n& q3 c

$ Z: F3 \  o8 x/ Q
6 L8 k% M: I  u

  X7 C, _% y$ v  S- n% k1 f( o9 b, s! N
" f0 d9 A" t3 b5 @2 @  o
5 B& ^% W. N, F- W" _6 D& W' ^  Y

  o( W# A& j% E2 {% V% y/ i3 [8 {% e( V. v+ ~
# S$ y% D- I  f6 K4 a: U- H7 v

) G+ {0 a0 r& ?7 w; x: y, C7 S* N

8 u! b1 \! c- V4 A/ G/ q# \7 M- F
! P. y& w. ^. d* U& j0 e/ F

! W  K# @6 h& d* s- t; `- q  T+ |1 W( x  h# X( @
6 L( C  x* d2 a8 X

1 K1 x) y) N( G& q6 q4 B
4 z. g% ?( Q9 m
. B, _2 H- L0 X) S% k  }

该用户从未签到

3#
发表于 2019-9-21 15:04 | 只看该作者
请问这款,有没有源码

该用户从未签到

4#
发表于 2019-9-23 09:20 | 只看该作者
写得有点乱!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-23 22:19 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表