主要内容:时钟和GPIO
单片机时钟:
1.现代计算机系统中必有时钟
2.高级的单片机系统中,存在不同频率
·外部晶振精读比较高,内部晶振精读比较低
简写意思:
HSE 高速外部时钟
LSE 低速外部时钟
HSI 高速内部时钟
LSI 低速内部时钟
CUBE里面的时钟的设置很像上图
STM32的GPIO
1.STM32f103c8t6一共有48个引脚
2.GPIO按ABC进行分组,每组16个引脚
3.工作模式(四个输入模式和四个输出模式)
推挽输出,1,则PMOS导通,另一个截止;0,则NMOS导通,另一个截止,。(P导通称为推,N导通称为挽)
·优点:1.MOS能提高端口的负载能力/驱动能力和电平切换速度
2.输出高低电平与电源电压基本没有压差
(除非一定要开漏输出,一般都设置推挽输出)
·缺点:不支持线与,如下图
开漏输出,上方的PMOS不工作。若控制端输出0,NMOS导通,控制端输出1,都不导通。(若要输出1,则要上拉电阻)
·优点:
1.可实现电平转换,输出电平取决于上拉电阻电源(芯片提供3.3v电压的时候,上拉电阻提供5v,那么实现了从3.3转换到5)
2.实现IO的线与
·缺点:
1.高电平驱动能力差,取决于外部上拉电阻
2.电平切换速率取决于外部上拉电阻,电阻越小速度越快
线与:有很多个开漏模式引脚连接到一起时,只有当所有引脚都输出高阻态(即MOS管关断),才由上拉电阻提供高电平,此高电平的电压为外部上拉电阻所接的电源的电压
如图:
总结:由以上的图得stm32F1推挽输出都可以设置上下拉(但是目前来看是没有任何意义的)、开漏输出可以设置上拉
复用推挽输出,开漏输出,即将GPIO变成其他功能
·复用推挽输出和复用开漏输出,表示外设(如串口、IIC、SPI)控制stm32芯片的GPIO输出。普通的话需要通过GPIO寄存器操作引脚。
4.
·上下拉输入是蓝色框那里进行硬件的变化,上拉是为了使输入一直上拉,当输入到底电平时,才检测到变化 ,为了避免没有输入的时候会有莫名其妙的高电平,设置一直是高电平的话,只要输入检测到低电平,芯片就做出相应的任务/反应。
下拉输入同理
·浮空输入和模拟输入(输入的送给ADC)是蓝色框那里,开关断开的。
·单片机上电后,GPIO默认浮空输入状态