初始化分为系统初始化和ip初始化

本文主要讲 系统初始化,主要是时钟相关的设置。

先看手册中时钟的框图

新唐arm系统初始化_原理图

涉及到系统初始化的引脚,通过原理图上可知 HXT使用pf2 pf3.uart0使用pb12 pb13引脚。

新唐arm系统初始化_原理图_02

第一步:使能外部hxt(根据自己需要选择)

 设置pf2 pf3为输入模式,并使能外部hxt,等待hxt时钟源稳定。

新唐arm系统初始化_初始化_03

第二步 :调用接口开启pll时钟,并设置最大频率。

#define PLL_CLOCK       192000000

根据官方的时钟框图,到这里系统时钟基本配置完毕,mcu可以运行起来。

新唐arm系统初始化_原理图_04

第三部: 开启uart

设置uart的分频。使能uart时钟。选择uart时钟源。配置pb12 pb13引脚的多能功为uart的rxd和txd。按照官网案例,初始化外设时钟的顺序是先使能时钟再选择时钟源。datasheet上讲解先选择时钟源再使能时钟。实际测试下这俩顺序前后不影响。

新唐arm系统初始化_初始化_05

到此我们就可以通过调用printf打印信息,并通过串口查看了。

至此往后可以开始怼业务功能了。

感觉回到了熟悉的linux控制台了,,,,,,,,,,