金牌会员
 
- 积分
- 2765
- 金钱
- 2765
- 注册时间
- 2018-11-8
- 在线时间
- 438 小时
|
1金钱
已经看过原子视频里关于systeminit函数的讲解那一节视频
现在遇到如下几个问题:
1.systeminit函数执行完之后就进入main函数了嘛?启动代码那里看不太懂 但是我看systeminit下面就跟着__main了
2.视频里的介绍,一切都是以外面接晶振作为前提的,我看介绍说如果外部晶振挂了会自动切换回内部晶振,试着不焊晶振,确实可以下程序不耽误使用,但是发现原子提供的delay延时明显不对了,于是想到了systick定时器的时间也不对了
所以想问一下如果使用内部时钟的2分频作为PLL 程序要怎么修改呢?这个systeminit以及setsysclock函数全都是以操作寄存器的方式配置的,我看网上有介绍使用库函数的方式:自己写一个RCC_configuration函数,里面调用库函数配置时钟源、HCLK、APB等等
如果使用这个函数是需要在system_stm32f10x.c里,删掉systeminit的部分然后把RCC_configuration写在main函数的第一行嘛?
3.还有个问题,systeminit函数第一行,把HSI打开,如果这一句不写或者关闭HSI,也不接入外部晶振,是不是就会因为没有高速时钟部分程序就无法进行了呢?
4.最后还想问一下,像视频里实用的跑马灯实验,程序里都没有低速时钟的部分,是不是默认这个就是关闭没有用呢?另外想问一下关于低速时钟配置的部分在原子视频/教材的哪部分有提到呢?
|
|