正点原子STM32探索者学习笔记1

1.在STM32的数据手册中,引脚定义中的I/O structure中如果是FT的话,说明该引脚兼容5V;

2.IO口一般都有多个功能,可以通过寄存器的设置来选择其IO口的功能,F1还有重映射的概念,F4没有;

3.IO口分为两种情况:一个是完全独立的IO(不能有任何外设连接的IO,一般比较少)(如ADC采集);一种是允许IO口挂其他外设,但是必须可以单独做输入、输出使用。

4.基本外设:GPIO输入输出,外部中断,定时器,串口。这四个基本外设任何一款MCU都有;然后是一些高级的通信外设如SPI,IIC,WDG,FSMC,ADC/DAC,SDIO等;再是一些高级功能的应用了,如UCOS,EMWIN等;

5.Cortex-M4采用ARMv7-ME架构,此架构定义了三大分工明确的系列:“A”系列:面向尖端的基于虚拟内存的操作系统和用户应用;“R”系列:针对实时系统;“M”系列:对微控制器。

6.GPIO:STM32F407ZGT6有7组IO口,每组IO口有16个IO,一共有112个IO,从GPIOA~GPIOG.

7.STM32的大部分引脚除了当GPIO使用外,还可以复用为外设功能引脚(比如串口,定时器,IIC等)。

8.GPIO的工作方式:4种输入模式:输入浮空,输入上拉,输入下拉,模拟输入;4种输出模式:开漏输出(带上拉或者下拉),开漏复用功能(带上拉或者下拉),推挽式输出(带上拉或者下拉),推挽式复用功能(带上拉或者下拉);具体区别可以参考STM32八种IO口模式区别.pdf;4种最大输出速度:2MHZ\25MHZ\50MHZ\100MHZ.

9.推挽输出可以输出强高低电平,适合连接数字器件;开漏输出只可以输出强低电平,高电平得靠外部电阻拉高。适合做电流型的驱动。

10.每组GPIO端口的寄存器包括如下图:

11.端口模式寄存器(GPIOx_MODER)如下:

12.端口输出类型寄存器(GPIOx_OTYPER)如下:

13.端口输出速度寄存器(GPIOx_OSPEEDR)如下:

14.端口上拉\下拉寄存器(GPIOx_PUPDR)如下:

15.端口输入数据寄存器(GPIOx_IDR)如下:

16.端口置位/复位寄存器(GPIOx_BSRR)如下:

17.所有的IO口都可以用于中断输入(stm32);

时间: 2024-10-04 19:41:00

正点原子STM32探索者学习笔记1的相关文章

STM32 FSMC学习笔记+补充(LCD的FSMC配置)

STM32 FSMC学习笔记+补充(LCD的FSMC配置) STM32 FSMC学习笔记 STM32 FSMC的用法--LCD

STM32 UVC学习笔记2

主机环境:Windows 7 SP1 开发环境:MDK5.18 目标板:STM32F103C8T6 开发库:STM32F1Cube库和STM32_USB_Device_Library 承接前文,动手之前看见昨天的文章居然有900+的阅读量,我还震惊了好久,之前写的一些东西隔天一般就十几二十的阅读量,这次居然直接上升了一个数量级,由此,可以看到大家对于STM32 UVC的学习很有兴趣,也更加激励了我,我只能尽可能把我在学习STM32 UVC的过程中遇到的问题分享给大家,让大家少走弯路,共同进步.

STM32本学习笔记EXTI(外部中断)

参考资料:STM32数据表.网络信息 =========================================切割线========================================= 外部中断/事件控制器由19个产生事件/中断要求的边沿检測器组成.每一个输入线能够独立地配置 输入类型(脉冲或挂起)和相应的触发事件(上升沿或下降沿或者双边沿都触发).每一个输入线都能够被独 立的屏蔽. 挂起寄存器保持着状态线的中断要求. ==========================

STM32学习笔记——USART串口(向原子哥和火哥学习)

一.USART简介 通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换.USART利用分数波特率发生器提供宽范围的波特率选择. STM32 的串口资源相当丰富的,功能也相当强劲.STM32F103ZET6 最多可提供 5 路串口,有分数波特率发生器,支持同步单向通信和半双工单线通信,支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作.它还允许多处理器通信.

STM32学习笔记——点亮LED

STM32学习笔记——点亮LED 本人学习STM32是直接通过操作stm32的寄存器,使用的开发板是野火ISO-V2版本: 先简单的介绍一下stm32的GPIO: stm32的GPIO有多种模式: 1.输入浮空 2.输入上拉 3.输入下拉 4.模拟输入 5.开漏输出 6.推挽式输出 7.推挽式复用功能 8.开漏复用功能 stm32GPIO模式设置相关寄存器设置的介绍 stm32中文参考手册中对GPIO模式设置对应寄存器的详细介绍: 下图为开发板LED的接线图: 根据上面的电路图可知,将GPIOB

ucos实时操作系统学习笔记——操作系统在STM32的移植

使用ucos实时操作系统是在上学的时候,导师科研项目中.那时候就是网上找到操作系统移植教程以及应用教程依葫芦画瓢,功能实现也就罢了,没有很深入的去研究过这个东西.后来工作了,闲来无聊就研究了一下这个只有几千行代码的操作系统,也没所有的代码都看,只是看了其中部分内容.自己还自不量力的尝试着去写过简单的操作系统,最后写着写着就被带到了ucos的设计思路上了,后来干脆就“copy”代码了,虽说对操作系统内核的理解有很大的帮助,但是很是惭愧啊,智力不够,对操作系统内核的设计者更加仰慕,O(∩_∩)O哈哈

stm32寄存器版学习笔记07 ADC

STM32F103RCT有3个ADC,12位主逼近型模拟数字转换器,有18个通道,可测量16个外部和2个内部信号源.各通道的A/D转换可以单次.连续.扫描或间断模式执行. 1.通道选择 stm32把ADC转换分成2个通道组:规则通道组相当于正常运行的程序:注入通道组相当于中断.程序初始化阶段设置好不同的转换组,系统运行中不用变更循环转换的配置,从而达到任务互不干扰和快速切换. 有16个多路通道.可以把转换组织成两组:规则组和注入组.在任意多个通道上以任意顺序进行的一系列转换构成成组转换.例如,可

stm32寄存器版学习笔记05 PWM

STM32除TIM6和TIM7外都可以产生PWM输出.高级定时器TIM1和TIM8可以同时产生7路PWM,通用定时器可以产生4路PWM输出. 1.TIM1 CH1输出PWM配置步骤 ①开启TIM1时钟,配置PA8为复用输出 APB2外设时钟使能寄存器(RCC_APB2ENR) APB1外设复位寄存器 (RCC_APB1RSTR) 置1开启.清0关闭. Eg:RCC->APB2ENR|=1<<11; //使能TIM1时钟 配置I/O口: 参见stm32寄存器版学习笔记01 GPIO口的配置

STM32学习笔记6(TIM通用模块生成PWM)

1.     TIMER输出PWM基本概念   脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术.简单一点,就是对脉冲宽度的控制.一般用来控制步进电机的速度等等. STM32的定时器除了TIM6和TIM7之外,其他的定时器都可以用来产生PWM输出,其中高级定时器TIM1和TIM8可以同时产生7路的PWM输出,而通用定时器也能同时产生4路的PWM输出. 1.1   PWM输出模式 S