初级会员

- 积分
- 128
- 金钱
- 128
- 注册时间
- 2017-8-28
- 在线时间
- 39 小时
|
发表于 2018-2-18 13:57:27
|
显示全部楼层
我也是刚学单片机,没有学过51,直接从stm32学起,或者这样不是从低学起不合适,所以也没有学到一些基础知识只能一点一点摸索。我也对时钟有些疑惑,我买了一些教学书籍,他们普遍是对技术层面的讲解,但是涉及到一些单片机的基础理念,基本就是零,我觉得这样对初学者很不友好,特别是自学的初学者。刚开始的时候,我就疑惑为什么要有时钟?那些书里会跟你说要开启开设时钟什么的,但是为什么要有时钟这个概念根本没有说明。我自己对时钟是这样理解的,输入单片机的是通过高低电平组成的信号,假如高电平为1,低电平为0,这样的话就组成了10101010的信号,但是数据之间并不都是那么壁垒分明的,如果输入的信号是1110000,就是前面是高电平后面是低电平,这时候如果没有时钟,那么这个11110000,会被系统理解成10?还是1100?还是11110000? 这几个信号所代表的数据是不一样的,所以需要一个时钟的概念,就像一把尺子,有标准的刻度,去量度信号,正确理解信号,不知道我这样理解时钟的存在原因有没有错。至于时钟在硬件方面是怎么从晶振转化成可以用软件操控的时钟,我现在也还搞不懂。另外现在又对时钟有一些疑问,就是为什么要分开系统总线时钟和外设时钟?如果把系统总线时钟设置成频率A,是不是就是系统(处理器、内存)的所有部件都运行在这个频率下?STM32可以在运行途中动态变更系统时钟吗?外设时钟可以设定高于系统的频率吗? |
|