![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
stm32
文章平均质量分 68
打酱油的;
这个作者很懒,什么都没留下…
展开
-
keil注意点
说明:keil工程添加文件文件夹自己创建(右键add或者三个正方形)单个文件可以链接已经建立好的或者自己创建(右键add或者三个正方形)头文件库函数内不用链接,非库的在魔术棒中链接...原创 2021-11-03 10:29:59 · 110 阅读 · 0 评论 -
stm32之IIC总线概述
1.IIC通信协议定义 IIC通讯协议(Inter----Integrted Circuit)是由Phiips飞利浦公司开发的,由于他引脚少,硬件实现简单,可拓展性强,不需要UASRT,CAN通讯协议的外部收发设备,现在被广泛使用在系统内多个集成电路IC(芯片)间的通讯。2.通信方式半双工的通讯方式3.内部结构他是一个支持多设备的总线。”总线”指多个设备共用的信号线,在一个IIC通讯总线中,可连接多个IIC通讯设备,支持多个通讯主机及多个通讯从机。一个I原创 2021-05-02 23:05:10 · 5514 阅读 · 0 评论 -
stm32之系统定时器
1.定义SysTick : 24位系统定时器,只能递减,存在于内核嵌套在NVIC中。所有的Cortex-M中都有这个系统定时器。重装载值reload 递减,当递减到0会触发中断并且会有 置位countflag标志,VAL表示当前值。然后reload继续从预设值开始递减,周而复始。2.系统定时器相关寄存器3.系统定时器时间计算方法①T : 一个计数循环的时间,跟reload和 CLK有关②CLK : 72M 或者9 M, 由CTRL寄存器配置③reload : 2原创 2021-04-13 20:11:32 · 417 阅读 · 0 评论 -
stm32之pwm输出
1.定义脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。2.输出来源以TIM3为例,STM32的通用定时器氛围TIM2,TIM3,TIM4,TIM5,每个定时器都有独立的四个通道可以用来作为: 输入捕获,输出比较,PWM输出,单脉冲模式输出等。STM32的定时器除了TIM6和TIM7(基本定时器)之外,其他的定时器都可以产生PWM原创 2021-04-11 14:59:05 · 9836 阅读 · 1 评论 -
stm32定时器与定时器中断
1.定时器种类注:主要使用通用定时器2.通用计时器特点描述说明:四个通道互不影响3.定时器中断触发条件4.定时器计数模式分为向上,向下,向上向下模式5.通用定时器作用用途测量输入输出波长度等说明:每个定时器完全独立没有共享内存6.工作过程红色重点关注...原创 2021-04-11 01:04:09 · 4998 阅读 · 0 评论 -
stm32外部中断系列
实现步骤1.如果串口中断先配置串口,gpio中断先配置gpio2.串口中断组的选择3.串口外部中断控制器时钟打开4.用外部中断的如gpio要配置exti外部中断与初始化5.串口中断控制器结构体配置与初始化6.编写中断服务函数...原创 2021-04-10 23:53:39 · 626 阅读 · 0 评论 -
stm32之端口复用和重映射
1.端口复用定义STM32有很多个外设,外设的外部引脚与GPIO复用。也就是说一个GPIO可以重复使用外设的引脚,这个GPIO作为内置外设使用的时候,就叫做复用举例:GPIOA 9 可以作为普通PGIO使用,引脚复用为串口1的发送GPIOA 10 可以作为普通PGIO使用,引脚复用为串口1的接收GPIOA1 可以作为普通PGIO使用,复用为外部中断举例:串口1的发送接收引脚为PA9 PA10,我们把这两个引脚不用做PGIO,而复用为串口1的发送和接收引脚,叫做端口复原创 2021-04-10 21:10:48 · 1035 阅读 · 0 评论 -
stm32模块化编程
A.文件编译过程1.预处理阶段:编译器以C文件作为一个单元,首先读这个C文件,发现第一句与第二句是包含.h文件,就会在所有搜索路径中寻找这两个文件,找到之后,就 会将相应.h文件中再去处理宏,变量,函数声明,嵌套的.h文件包含等,检测依赖关系,进行宏替换,看是否有重复定义与声明的情况发生,最后将那些文件中 所有的东东全部扫描进这个当前的C文件中,形成一个中间“C文件”2.编译阶段,在上一步中相当于将那个.h文件中的test变量扫描进了一个中间C文件,那么test变量就变成了这个文件中的一个全局变量,此时原创 2021-04-06 12:59:41 · 1861 阅读 · 0 评论 -
stm32之编译准备工作
编译准备1.新建工程2…c.h文件声明3.用魔术棒添加.h文件路径,添加到文件夹下才能申明备注:任何hal库函数使用都是.c文件中定义,在主函数中调用原创 2021-04-02 20:47:53 · 100 阅读 · 0 评论 -
stm32之重写printf串口发送
操作步骤1、在main中,加上以下函数即可(作用:重写fputc) 库函数版 int fputc( int ch, FILE *f ){ USART_SendData(USART1,(u8) ch ); while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET); return ch;原创 2021-04-02 11:05:50 · 2374 阅读 · 0 评论 -
stm32之最小开发板使用
STM32最小系统板A组成1、电源 : 一般3.3V LDO供电 加多个0.01uf去耦电容2、复位:有三种复位方式:上电复位、手动复位、程序自动复位通常低电平复位:(51单片机高电平复位,电容电阻位置调换)上电复位,在上电瞬间,电容充电,RESET出现短暂的低电平,该低电平持续时间由电阻和电容共同决定,计算方式如下:t = 1.1RC(固定计算公式) 1.110K0.1uF=1.1ms需求的复位信号持续时间约在1ms左右。手动复位:按键按下时,RESET和地导通,从而产生一个低电平,原创 2021-03-30 18:03:17 · 2549 阅读 · 3 评论 -
stm32之串口使用和串口中断
1.定义串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式,其通讯协议可分层为协议层和物理层。物理层规定通信协议中具有机械、电子功能的特性,从而确保原始数据在物理媒体的传播;协议层主要规定通讯逻辑,统一双方的数据打包、解包标准。通俗的讲物理层规定我们用嘴巴还是肢体交流,协议层规定我们用中文还是英文交流。下面分析一下串口通讯协议的物理层和协议层。2.通信基础1.通讯结构串口通讯的物理层的主要标准是RS-232标准,原创 2021-03-21 01:15:29 · 8471 阅读 · 2 评论 -
stm32之gpio使用
GPIO使用1.输入输出模式第一:开漏输出模式;当CPU在左边的编号1端通过位设置/清除寄存器,或输出数据寄存器写入数据后,该数据位将通过编号2的输出控制电路传送到编号4的I/O端口,如果CPU写入的是逻辑“1”,则编号3的N-MOS管将处于关闭状态,此时I/O端口的电平将由外部的上拉电阻决定,如果CPU写入的是逻辑“0”,则编号3的N-MOS管将处于开启状态,此时I/O端口的电平被编号3的N-MOS管拉到了VSS的零电位。在图的上半部,施密特触发器处于开启状态,这意味着CPU可以在“输入数据寄存原创 2021-03-19 23:34:13 · 630 阅读 · 0 评论 -
stm32之寄存器
1.STM32 长啥样芯片正面是丝印,ARM 应该是表示该芯片使用的是ARM 的内核,STM32F103VET6是芯片型号,后面的字应该是跟生产批次相关,最上面的是ST 的LOGO。芯片四周是引脚,左下角的小圆点表示1 脚,然后从1 脚起按照逆时针的顺序排列(所有芯片的引脚顺序都是逆时针排列的)。开发板中把芯片的引脚引出来,连接到各种传感器上,然后在STM32 上编程(实际就是通过程序控制这些引脚输出高电平或者低电平)来控制各种传感器工作,通过做实验的方式来学习STM32 芯片的各个资源。开发板是一种评估原创 2021-03-19 13:33:19 · 839 阅读 · 0 评论