STM32内部含有硬核,对于一些协议(例如:UART,SPI,IIC,CRC等)我们只要调用硬核就可以了,同时我们也可以自己写通信协议。
这些硬核最终肯定是要有引脚输出的,这就是为什么STM32的引脚有复用功能的原因。
以SPI通信协议硬核为例,其硬核连接的引脚是PA4,PA5,PA6,PA7,那么我们如果使用内部硬核就必须使用这几个引脚作为通信引脚
也可以自己编写SPI通信协议,此时的引脚就可以随意定义了。
通常一个引脚有好几种复用功能,在使用硬核时需要我们设置好引脚的寄存器,同时又不影响寄存器其他的状态。
关键字:STM32 内部硬核
引用地址:
STM32内部硬核的认识
推荐阅读最新更新时间:2024-03-16 15:27
STM32速成笔记(2)—GPIO
一、什么是GPIO GPIO(英语:General-purpose input/output),通用型之输入输出的简称,可以用来输入高低电平或者输出高低电平。这里的高电平指的是3.3V,低电平指的是0V。通常称GPIO为IO口,或者引脚。 STM32F103ZET6有GPIOx_0~GPIOx_15,其中x = A,B,C,D,E,F,G。 二、GPIO的输入/输出模式 GPIO有多种输入输出模式,输入模式有 • 输入浮空 输入浮空指的是GPIO与外设之间既不接高电平,也不接低电平,呈高阻态。除了类似于在数据传输时将GPIO配置为输入浮空外,一般不配置为该模式。因为输入浮空状态的GPIO电压具有不确定性,可能是0V,
[单片机]
STM32 Cubemax(十四) ——基于Cubemax的FreeRTOS移植与LED点灯测试
前言 之前的代码其实一直都是裸机在跑,即本质上就是在一个while(1)中在跑,这对于任务量较小的程序来说,没有什么问题。但最近遇到一些工程性的代码,其参考代码均采用了FreeRTOS操作系统,以此来记录一下自己的学习过程。 一、CubeMax移植FreeRTOS 废话不多说,想把FreeRTOS配置起来,再说一些其他东西。 时钟配置 时钟树配置 这个地方主要根据自己的开发板配置下面两个部分 嘀嗒时钟配置 如果使用FreeRTOS,嘀嗒时钟源要使用定时器产生的,这里不说原因,先配置就好。 FreeRTOS配置 这里下面的配置功能,等有特殊功能需要,再介绍,这里不需要动(其实也就是打开或者关闭一些功能) Fr
[单片机]
stm32之CAN发送、接收详解
CAN接收报文并过滤之标识符过滤:(重点、难点) 在CAN协议里,报文的标识符不代表节点的地址,而是跟报文的内容相关的。因此,发送者以广播的形式把报文发送给所有的接收者。节点在接收报文时-根据标识符的值-决定软件是否需要该报文;如果需要,就拷贝到SRAM里;如果不需要,报文就被丢弃且无需软件的干预。 为满足这一需求,bxCAN为应用程序提供了14个位宽可变的、可配置的过滤器组(13~0),以便只接收那些软件需要的报文。硬件过滤的做法节省了CPU开销,否则就必须由软件过滤从而占用一定的CPU开销。每个过滤器组x由2个32位寄存器,CAN_FxR0和CAN_FxR1组成。这两个寄存器用途在下面有大用处; 可变的位宽
[单片机]
基于stm32通用定时器设置的学习心得
stm32 单片机的定时器资源相当丰富,它的定时器分为高级控制定时器、通用定时器和基本定时器,具体这些定时器资源在哪个系列的片子有就得看不同的片子的手册了。他们具体有什么区别,我也是刚接触这个,看他的数据手册介绍也是茫然,主要是刚开始摸,那些功能都没用到,反正用做定时作用的话哪种定时器都行。在这我就把我自己配置通用定时器的方法及心得简短做个总结,以防以后忘记了。我配置的是定时器2(TIM2)。 通用 定时器 的时钟可来自于外部或内部,选用默认即是采用内部的。通用定时器的时钟来源为APB1总线,所以首先,得将APB1外设时钟打开。 RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENAB
[单片机]
STM32 可编程电压监测器(PVD)实现数据掉电保存
STM32内部有一个完整的上电复位和掉电复位电路,当供电电压达到2v时系统即能正常工作。 STM32内部自带PVD功能,用于对MCU供电电压VDD进行监控。通过电源控制寄存器中的PLS 位可以用来设定监控电压的阀值,通过对外部电压进行比较来监控电源。当条件触发,需要系统进入特别保护状态,执行紧急关闭任务:对系统的一些数据保存起来,同时对外设进行相应的保护操作。 操作流程: 1)、系统启动后启动PVD,并开启相应的中断。 PWR_PVDLevelConfig(PWR_PVDLevel_2V8); // 设定监控阀值 PWR_PVDCmd(ENABLE); // 使能PVD EXTI_StructInit(&
[单片机]
stm32和电机开发(开篇)
第一次知道电机开发,是在2019年的时候,也就是差不多3年半前。当时有一位同事在美的上班,是他让我知道了电机控制的一些应用场景。等到后来自己做了AGV的一些工作,对电机开发和控制这块就更有兴趣了。利用pwm就可以控制加速度、速度和位置,这本身就是很神奇的事情。现在网上,尤其是b站上面已经有很多mcu控制电机的视频了,某野火、某原子、某硬石也出了类似开发板,正好可以拿来学一下。 1、电机种类 常用电机主要是直流有刷电机、直流无刷电机、步进电机、舵机和永磁同步电机(pmsm)这几种。 2、电机控制构成 电机控制一般有这几个部分组成,控制电路板(一般是mcu开发板)、驱动板(实现控制信号到电机驱动信号的转变)、电机、电源这几个部
[单片机]
STM32开发板例程讲解之二:GPIO的描述和配置
上一讲创建了一个stm32工程,从本讲开始将深入stm32内核与外设讲解。 首先介绍stm32的GPIO,这是入门的起点,也是最容易上手的部分。 一、GPIO的综合描述 stm32每一个GPIO端口拥有2个32bits的configuration寄存器(GPIOx_CRL,GPIOx_CRH),2个32bits的数据寄存器(GPIOx_IDR,GPIOx_ODR),1个32bits的set/reset寄存器(GPIOx_BSRR),1个16bits的reset寄存器(GPIOx_BRR)和1个32bits的Lock寄存器(GPIOx_LCKR)。 (一)每一个IO引脚都可以使用软件配置为以下几种模
[单片机]
STM32单片机的PSAM卡驱动模块设计
引言 刷卡消费随着人们生活水平的提高已经成为常用的支付方式之一。为了保证刷卡消费的安全性,将PSAM卡内嵌于各种终端刷卡设备中。PSAM(Purchase SecureAccess Module,销售点终端安全存取模块),由IC卡发行主管部门或者应用主管机构发行,是可以用于对IC卡进行脱机消费交易认证的安全认证卡,主要应用于商用POS、网点终端、直连终端等设备上,支持多级发卡机制,适用于多应用的环境,符合识别卡、带触点的集成电路卡标准、ISO/IEC 7816—1/2/3/4以及《中国人民银行PSAM卡规范》。 1 PSAM卡简介 PSAM卡是接触式CPU卡的一种。CPU卡也称智能卡,卡内集成电路带有微处理CPU,存储单元
[单片机]