单片机时钟
● 现代计算机系统中必定有时钟
● 高级的单片机系统中,存在不同频率的时钟
STM32 时钟树
● ①HSI( 内部高速时钟)
● ②HSE(外部高速时钟)
● ③LSE(外部低速时钟)
● ④LSI(内部低速时钟)为时钟源
● ⑥系统时钟SYSCLK最高为72MHz
● ⑦高速接口总线AHB由⑥SYSCLK系统时钟分频得到,最高是系统时钟的72MHz。
● ⑧外设总线APB1和⑨外设总线APB2,来源于⑦高速接口总线AHB, APB1的输出时钟最高是36MHz, APB2的输出时钟最高是72MHz。
● ⑩RTCCLK(实时时钟)的时钟源也有三个,分别是②外部高速时钟HSE的128倍分频(黄色)、③外
部低速时钟LSE的32.768kHz(蓝色)、④内部低速时钟LSI的40kHz(橙色)。
● ⑪ IWDGCLK(独立看门狗)的时钟来源于④内部低速时钟LSI的40kHz(橙色)。
STM32 的 GPIO
● GPIO 支持8种工作模式
输出模式:
■ 推挽输出( Push-Pull, PP)
- 推挽模式,让“输出控制”变为了VDD/Vss输出,使得输出电流增大,提高了输出引脚的驱动能力,提高了电路的负载能力和开关的动作速度。
■ 开漏输出( Open-Drain, OD)
- 灰色框的P-MOS管看作不存在。即该模式下只能输出低电平,若要输出高电平,则需要外接电阻,所接的电阻称为上拉电阻,此时输出电平取决于此时上拉电阻的外部电源电压情况,如图 8.1.2 中蓝色框的外部电路。
■ 复用推挽输出
● GPIO引脚除了作为通用输入/输出引脚使用外,还可以作为片上外设( USART、 I2C、 SPI等)专用引脚,即一个引脚可以有多种用途,但同一时刻一个引脚只能使用复用功能中的一个 。
● 当引脚设置为复用功能时,可选择复用推挽输出模式或复用开漏输出模式。
■ 复用开漏输出
● 在设置为复用开漏输出模式时,需要外接上拉电阻 。
输入模式:
■ 上拉输入
如图 8.1.1 中②所示, VDD经过开关、上拉电阻,连接外部I/O引脚。当开关闭合, 外部I/O无输入信号时,默认输入高电平。该模式的典型应用就是外接按键,当没有按键按下时候, MCU的引脚为确定的高电平,当按键按下时候,引脚电平被拉为低电平。
■ 下拉输入
如图 8.1.1 中②所示, Vss经过开关、下拉电阻,连接外部I/O引脚。当开关闭合,外部I/O无输入信号时,默认输入低电平。
■ 浮空输入
- 如图 8.1.1 中②所示,两个上/下拉电阻开关均断开,既无上拉也无下拉, I/O引脚直接连接TTL肖特基触发器,此时I/O引脚浮空,读取的电平是不确定的,外部信号是什么电平, MCU引脚就输入什么电平
- MCU复位上电后,默认为浮空输入模式。
■ 模拟输入
- 如图 8.1.1 中②所示,两个上/下拉电阻开关均断开,同时TTL肖特基触发器开关也断开,引脚信号直接连接模拟输入,实现对外部信号的采集 。