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

ARM_ cortex M4国产处理器(AT32F403ZGT6)

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
一、AT32F403ZGT6介绍
  • 效能/性能
    & V$ ?5 \5 R* ^# \/ b3 h# A
    • ARM® Cortex®-M4主频最
      # D4 X9 G. C, Z* k高200MHz
    • 单精度浮点运算单元
    • 內存执行零等待技术
    • 2.6V ~ 3.6V 供电电压
    • I/Os 可承受 5V 电平
    • 温度范围-40 ~ +85°C
      " e; n3 Z& I4 P' H9 ^7 G

      $ Q$ h: h& A! L5 A% V
  • 內存/ F  c8 G7 T4 O6 G4 C
    • 高达1MB闪存
    • 高达224KB SRAM
      3 e7 J( I8 I. b
      . y, l) G$ R' f) T. L2 N+ U) v
  • 时钟
    % s/ D& `; N9 F" U: p8 s1 s+ ^/ ^' y8 B' j
    • PLL (200 MHz输出)
    • 外部高速 4 ~ 16 MHz晶体振荡器
    • 内部高速 8MHz RC振荡器(-40°C ~ 85°C)
    • 外部低速 32.768kHz RTC 晶体振荡器
    • 内部低速 40kHz RC振荡器
      ; N4 A# @. a& i) F0 ~! {! p5 l

      9 {% C1 z8 k# o0 f& o4 _- Q; k
  • 复位和电源管理
    • 上电/断电复位(POR/PDR)
    • 可编程电压监测器(PVD)
      ) {8 I/ \5 W3 @3 t; Q

      : W/ o" G* O# O2 N
  • 仿真高性能外设
    5 y2 S  k# @1 Z1 r
    • 3组2M采样速率12位A/D转换器(21通道)
    • 2通道12位D/A转换器' K, f/ C, A/ D; x

      ( u( X% x+ y6 Z
    7 q1 j0 n% C, W' j/ Y" R

8 \; G/ U5 v: L7 B" q$ H
  • 定时器# [' E* q0 e; e
    • 3个16位带死区控制PWM高级控制定时器
    • 2个32位, 8个16位通用定时器
    • 2个看门狗定时器(独立和窗口型)
    • 2个16位基本定时器(驱动DAC)
    • 1个系统时间定时器: 24位自减型
      0 m( ^( L/ r) F( c

      . d5 Q: m9 K+ l) |" q
  • 外设接口- S2 u  P  C( n9 K# O4 z
    • 3 x I2C
    • 4 x SPI / I2S (SPI可达50MHz)
    • 3 x USART + 2 x UART
    • 2 x SDIO
    • USB 2.0 全速接口
    • CAN 2.0B3 D. a) f! o/ B

        h3 E% A% m4 X* ^7 |/ a
  • DMA
    7 |0 \6 G* U" G. R7 f6 F
    • 12通道, 支持定时器、ADC、DAC、SDIO、I2S、SPI、I2C和USART4 A+ Y+ d$ {6 R+ z

      , P7 Y. p) k1 v6 o+ o, I' T
  • XMC( z0 K# u) M0 a/ @: R
    • 支持CF卡、SRAM、PSRAM、NOR和NAND存储器
    • 支持并行LCD接口, 兼容8080/6800模式
      " W3 j3 I$ N; W2 A& H, ]% b3 R& M$ u

      : U& o' T" e# X* l, g$ x% j6 Y/ h
  • SPIM3 z( b# }8 s* O
    • 外部 SPI Flash memory 扩展(程序执行/数据储存/程序与数据可加密)
      , f6 b- [# G/ x4 o3 e0 L9 m
      3 I5 U- G9 t' i, A3 \) W% K
  • 封装8 ~* \6 T+ m0 l
    • 48/64/100/144-pin LQFP
    • 48-pin QFN
      . f9 J% \3 k4 j0 ]" r
    . c7 A* J- E6 t1 ?. Q( i
+ o4 K: t7 f# H7 K

) i/ w/ M: A' J1 a3 M0 x

! i: O2 H, z# E# \" H8 F5 q- [# r. c5 W% @! r& P
2 _% Z3 }3 Q2 X- v( L  ]; l3 `: I2 D
% C1 D" P9 H7 z: R, z7 o% h
( b' T. V; }; w) y/ ]
, H( a9 t# K7 z
- w) T2 F2 }( g1 G  m; O% E
( Z8 P2 ~6 M8 n% M
7 }" k! d' \7 _! b
) V! H, ]$ _1 K7 q6 N# |: p

% G3 @" t" \2 ~- K/ j' J7 l, A) \" c$ d2 P

9 w% I3 ]. F+ y2 a& \" Q2 Q
  |. w8 B( [2 U# U! }+ A& e7 ^

- |3 }, Q- C& p: s6 Q9 C$ c; X# W; `9 s! a5 z. p

! N  m3 o) F) L, p+ b$ p  I- C, ^
  r) x7 V' B$ P8 m
- E& h4 J' J0 X: `- r( i# _& D

) Q! |# `; y8 d4 }  N0 ]" J$ z/ d$ `3 q  ]* J4 k. [

+ m  q7 J4 g  f0 e" {: g1 \. H2 a) f! @: O8 k
, `0 c# D& q3 P' S# O% x, S
( n* G5 ~. ?# C5 O! R; I
, w6 E) t2 v/ v' v# U# I( D( T
; i, M; ~- e$ ^7 O) a3 b  i2 z2 O

, X/ b/ E8 _6 g+ Y0 X/ ]8 o, M8 ^3 f& i$ X: x2 Z

0 S! B+ p  H* s
; D6 k9 h* q3 U# h6 k5 A$ T
( O# Y- K. l7 D% p0 T1 `/ z5 N' l
' v; D2 _& U; o7 n" W; j* T
# g3 {$ G6 n" F; o, h8 K3 Z' Z

% Y. ~& `) P; E3 [5 p% L, H

# Q" S0 S) z- x; Y
  Z! f2 S2 [. ~# {" X6 Z' b

. V. _' T0 y( f# @- B' |  F" N% ?& m9 W" f6 d1 V# A0 I

1 F; U$ K) [. A2 N) s9 G, ?* D( H/ b0 K7 `2 n1 X

' @, ]3 r+ `7 N3 I7 _& Z7 n  @& u! s0 r
! q- L+ L( K! ?8 b; j, ^0 p

6 N, D. g5 W( d8 P% B6 u
- F0 o* l* v# `3 m. K3 R6 a( l
2 t7 p( v2 l* J/ {- C# s
1 h" N# E' H+ G; x5 |
二、点亮LED灯; }, E# Y/ R1 @' c7 M" f
' H9 C7 T1 T8 G$ ~' K7 }
点亮LED并结合系统滴答时钟进行精确延时. Z- f. j' z% N# I. t
  • #include "systick.h"4 {  i3 t& |4 g# i/ x* H) W
  • ; b5 s; f; T4 T# T, s9 ^' f6 t
  • ! F6 \  g* j( z' d1 |
  • static u8 fac_us;: p3 O) l! ^" m# `6 `
  • static u16 fac_ms;
    ' R' Y* M4 R. C! C+ W
  • " y0 \4 J" t+ E' F
  • void systick_init(u8 sys_clock)* v3 d- ^. X. E. S% q9 w4 J  \/ q$ K
  • {" ?& q5 ?$ o1 K$ I
  •         SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);
    " h  Z* K2 J3 O; [, n2 s; I
  •         
    # [+ `3 t6 e# k/ M$ x
  •         fac_us=sys_clock;- y8 x3 y6 S0 y0 u. a
  •         fac_ms=(u16)fac_us*1000;  `+ Z7 p1 m+ H2 N4 R, h6 j
  • }' P2 X& p" F& ^& r

  • . d5 X# L/ k2 j5 o$ H
  • //'nus'<=83886! t; E) D/ c- b0 e
  • void delay_us(u32 nus)7 R  \( |0 ]5 i6 w6 t3 J9 L
  • {# |0 @. q# t) ?  j& i
  •         u32 temp;
    2 B$ r$ w- C! ^: v) `
  •         8 Y. W- I3 A8 A  S+ ]
  •         SysTick->VAL=0;
    & r- i1 N4 C0 C; P) M& I6 W# r/ y! k: u
  •         SysTick->LOAD=nus*fac_us;/ k- {$ V$ h) |
  •         SysTick->CTRL|=0x01;# {, A# r4 l2 p
  •         
    * O+ \* x0 Q3 H& }' w
  •         do/ i& X/ z" Q' Y
  •         {
    4 c0 i5 [; m; d) Y# n+ T9 x
  •                 temp=SysTick->CTRL;$ p! k8 g$ D6 i: p6 i9 \
  •         }while((temp&0x01)&&!(temp&(1<<16)));
    : V/ @$ p6 o% E6 D
  •         SysTick->CTRL&=~0x01;+ N9 n8 L; m% ?+ X* v' |- @7 E
  •         SysTick->VAL=0;
    0 |1 A& D- p. I$ ^6 e; I5 Z5 }
  • }
    3 }1 p  ^/ x! b* k8 q3 X) f9 c4 w

  • $ U% [" }/ n/ F5 }
  • //'nus'<=83
    ; \; [% Q3 R* X: ~% A, _
  • static void delay_nms(u8 nms)
    - h5 A! r, z) {. b/ V& o' d2 I( n
  • {
    1 T6 Q3 [9 o" {9 T+ e# f
  •         u32 temp;3 x2 o" b! w/ l% i- c7 s$ Y  C
  •         
    & I7 J1 o3 y- N$ k) ?
  •         SysTick->VAL=0;
    8 A2 o# D  Z& u) ?% g
  •         SysTick->LOAD=nms*fac_ms;
    5 v  |4 i4 O( C7 i
  •         SysTick->CTRL|=0x01;
    ' c' ?( U4 u2 j' _8 G. o
  •         ) o- h8 ?; G. _# j0 R( G1 ~
  •         do
    9 D+ @  f0 q& }6 R
  •         {5 R% R) V: m$ W5 d& y
  •                 temp=SysTick->CTRL;
    7 a+ K! t* {- b$ c1 E, }- O
  •         }while((temp&0x01)&&!(temp&(1<<16)));$ m* R8 x+ Q: w. s$ v2 H7 ~: b
  •         SysTick->CTRL&=~0x01;
    0 B* Z8 B3 y" q$ |; @- Q
  •         SysTick->VAL=0;
    8 T5 ^8 f. B+ ?) w2 M
  • }; G+ s( C8 I$ W
  • 8 Q( f7 t. u9 h' `$ l
  • - V3 ]  j0 G( \1 @7 D& Q) D1 w: k  t
  • void delay_ms(u32 nms)) s4 d) _# L0 i" M: S9 j% `) r
  • {
    3 f' ]; _+ C" a6 I: Y
  •         u8 yushu=nms%50;$ u; Z3 g9 J/ M& i3 f, _
  •         u32 zhengshu=nms/50;5 v2 m9 a1 M+ x4 z+ i
  •         
    + f( {8 P9 t3 x5 n
  •         while(zhengshu)
    1 Q8 o6 P4 D# ~8 h
  •         {( ^7 r3 |3 g+ V+ @+ F4 r
  •                 delay_nms(50);
      Q+ b8 n/ O  @. L$ J) x' F) o: |
  •                 zhengshu --;3 q# h* }  D0 j
  •         }& K4 F- v# Q- b; D+ u9 H: W
  •         if(yushu)
    $ c5 Q0 J1 b2 M( o) U
  •         {
    . V/ v( a3 f2 \$ T( [* Q* q  x
  •                 delay_nms(yushu);* b5 }8 ?* j) b. h- [
  •         }* D& V6 N" C; S: T2 Z# p
  • }8 \% ~4 c& D8 g

  • & s3 v' N/ b( D$ P8 r8 T- O

  [' W( U: q" z& S! P' E- r  R0 D, J6 L) i! a$ V" e! D

5 |+ ], f" V' z) d7 o5 U& ^9 }
  • #include "led.h"
    , P; q- w+ x9 k

  • 9 a! `" z- M0 K, F

  • 2 W4 M; p" K8 u: |; Q6 Q
  • void led_config(void)6 m5 I4 Z2 d# Y8 c
  • {
    8 h# [2 ^. d7 ?
  •         GPIO_InitType GPIO_Initstructure;, A5 U$ B# @+ U0 m) v
  •         1 k+ X- j& T6 j, D9 ?! J8 a
  •         RCC_APB2PeriphClockCmd(RCC_APB2PERIPH_GPIOD,ENABLE);6 r8 W. N5 I0 L  N# e
  •         
    ' T7 x5 Q8 b/ w5 e
  •         GPIO_Initstructure.GPIO_MaxSpeed=GPIO_MaxSpeed_50MHz;
    6 {3 m+ _/ D3 p
  •         GPIO_Initstructure.GPIO_Mode=GPIO_Mode_OUT_PP;
    / ]& z$ |! f$ j1 s$ p7 U
  •         GPIO_Initstructure.GPIO_Pins=GPIO_Pins_13|GPIO_Pins_14|GPIO_Pins_15;) l2 M! K& u) z  O4 t$ o# }  d; ~
  •         
    2 q5 E! |  a) y( w% s
  •         GPIO_Init(GPIOD,&GPIO_Initstructure);, q/ A* I) V2 h2 B( ^
  •         
    % F( k: z' x+ Q- ?" ]
  •         GPIO_SetBits(GPIOD,GPIO_Pins_13|GPIO_Pins_14|GPIO_Pins_15);; \: ~9 _, Q- ]5 T6 u
  • }
    ! Q7 q9 h/ C0 n: u9 ]" s6 Q
  • 0 P( \% n# R6 y. y. S

  • ' `( t% {# n, l7 J9 |
  •         
    ' ~3 f( z0 w) J# j6 L' I

  • " D2 k4 ]8 p) x! O

  • - A4 N5 K" f! n+ A7 y# A1 J3 r
2 x# g/ V3 p" g
8 a3 M4 }6 G1 m( C4 y) V2 a
4 b9 q  A3 x$ n% \% m5 q1 E( N

. y0 f% F" J3 R( w8 ?: Z9 V& Z+ F" I% f$ B6 {

" B# A# X9 v- Z8 i/ m! N三、简单总结
* U; |5 A9 ?9 f+ F$ `3 x通过试用并对比了STM32、GD32和华芯威特等M4处理器,该处理器系统时钟在同系列里具有较高主频,丰富的外设,且代码风格与STM32很像,在国产mcu中具有较高的性价比。
& i5 w* _; f! z( w/ N
$ ~3 R3 Q; n& m
9 n" G3 e  n7 T- u# f# C/ \9 c9 e

5 c3 I* U8 `& p* J5 x

! F. g- L* T$ z; r- l) i+ w1 O7 N. w1 p' q/ t% O) t
" ]  z  f  {0 D4 A

. N2 @0 S& v& e
+ L: K- h/ {5 @" w% q) F) E, c
  E: C; I# D) r4 L8 o, F

* F2 o+ A5 K+ p4 V2 `; R" |; ]+ ^8 l+ |3 F# a

9 k8 {$ v- l$ A/ q% R( J! @! P/ _# i) Q4 J  m$ ~* i

5 I( |0 H% ]2 L9 A8 X5 Q2 I: E, I) G9 [1 c" ^

- a6 r% E# J* u- S- r3 L" `5 Q) O2 q" P0 g& |1 F

* X! ]" u& u# G, |/ [
* J1 B6 `3 Q% W5 ]5 q

! q1 |0 L( R7 k+ l, _* {, g1 F+ K4 y) B+ y
' N$ C+ d6 x4 e2 W

' b' q* ?. `6 G. V# N8 _

该用户从未签到

4#
发表于 2019-9-23 09:20 | 只看该作者
写得有点乱!

该用户从未签到

3#
发表于 2019-9-21 15:04 | 只看该作者
请问这款,有没有源码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-25 02:04 , Processed in 0.156250 second(s), 24 queries , Gzip On.

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

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

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