STM32

关注492人关注
我要报错
STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex?-M0,M0+,M3, M4和M7内核(ST's product portfolio contains a comprehensive range of microcontrollers, from robust, low-cost 8-bit MCUs up to 32-bit ARM-based Cortex?-M0 and M0+, Cortex?-M3, Cortex?-M4 Flash microcontrollers with a great choice of peripherals. ST has also extended this range to include an ultra-low-power MCU platform)。按内核架构分为不同产品:主流产品(STM3
  • STM32之ADC库函数的介绍

    ADC的基本概念希望各位网友查阅相应的手册,上面对ADC有比较详尽的介绍,包括误差的分析和消除。这里主要介绍ADC的基本库函数的定义和使用。1.ADC_DeInit函数的功能是将外设ADCx的全部寄存器重设为默认值。ADC_DeIni

  • STM32串口设定流程总结

    STM32配置串口需要配置的寄存器包括:1、时钟配置,开启相应IO端口的时钟,以及串口模块的时钟。串口1模块时钟寄存器:RCC_APB2Periph_USART1;串口1的端口是PA9,PA10,对应的时钟寄存器:RCC_APB2Periph_GPIOA;开

  • 初涉STM32之浅谈时钟使能问题

    作为一个STM32的菜鸟级人物,我刚开始接触STM32时,其实和当年开始学习51单片机的心理是一样的。茫然,谁说不是呢?但是,正常的学习途径无非就是看书,然后敲代码,最后烧程序,有问题就check,然后再继续烧,我都怀

  • stm32串口发送数据,丢失字节问题分析

    STM32 串口 发送 必须 先检测 状态,否则 第一个 字节 无法 发出,发送完毕,必须检测发送状态是否完成,否则,发送不成功,使用stm32f10x调试串口通讯时,发现一个出错的现象,硬件复位重启之后,发送测试数据0x01

  • STM32用SysTick来做定时器

    1 硬件电路配置这里还是借用前面LED电路我就不贴图片。2 时钟说明SysTick和HCK的时钟频率是一样的库函数代码如下/***@briefInitializeandstarttheSysTickcounteranditsinterrupt.**@paramticksnumberofticksbetweent

  • STM32串口的基本用法

    前言:本来用不到串口,但在最近在读取传感器数据的时候数据发生了错误,被师兄推荐用串口来检查一下究竟读出的数据是什么,因此学习了串口的使用。事实证明,串口很有用,也没有想象中的那么复杂...一、关于串口需要

  • STM32 IAP(在线更新程序)的使用关键点

    所谓IAP其实就相当于一个小小的bootloader 用来更新程序的很多产品基本都是程序做好后就直接在产线烧录一次就OK了,但是,但是BUG有时候是无可避免的,经常有产品装好后又要重新拆外壳 取下板子重新上烧录架烧的惨痛

  • STM32的PWM产生主要工作

    PWM信号的模式,主要做了如下工作1.设定TIM信号周期,该周期就是PWM的周期,后期比较输出在占空比上会有变化2.设定TIM预分频值,分频系数,计数模式3.根据TIM_TimeBaseInitStrcut这个结构体里面的值初始化TIM4.设定TI

    单片机
    2018-12-26
    pwm STM32
  • 关于stm32串口莫名进入中断问题

    stm32串口printf输出,全速执行时老是进入中断入口地址处,如果把中断函数屏蔽掉,全速执行时显示执行B,表示找不到中断入口地址,然后打开中断函数,则又死掉,通过把发送中断使能关闭则显示正常。所以:1、相应串口

  • (五)stm32工程代码HardFault异常查错调试方法

    一、导致异常的原因很多,例如:直接使用未分配空间的指针、栈溢出等一场非法操作便会使程序进入HardFault异常状态。下面介绍怎么找出程序中的异常。接下来在keil_MDK工程中,编译代码,并debug,之后全速运行,可以

  • STM32音乐播放器,文件查找的实现

    使用FATFS只是完成了一个基本的文件读写,有时候我们需要扩展一些功能,比如MP3实验,需要上一曲下一曲的切换,扩展的代码如下//显示目录下所有文件u8 ShowFileList(u8* dirPath){ u8 *pname; //带路径的文件名,最

  • STM32关于外部时钟晶振为什么选用8MHz

    芯片的主晶振频率范围一般来说在数据手册(Datasheet)和技术参考手册(Technical Reference Manual)中都有介绍。你提到的时钟先分频再倍频,这个需要深入到STM32的内部去一探究竟了,在其技术参考手册的第7.2节Clo

  • STM32 可编程电压监测器(PVD)

    STM32内部自带PVD功能,用于对MCU供电电压VDD进行监控。通过电源控制寄存器中的PLS[2:0]位可以用来设定监控电压的阀值,通过对外部电压进行比较来监控电源。当条件触发,需要系统进入特别保护状态,执行紧急关闭任务

  • STM32内存映射

    一、概述  STM32内存映射是STM32的架构的重要组成部分,不可或缺。二、STM32内存映射图1、内存映射图--摘自《CM3权威指南》2、内存映射图--摘自《STM32F103x简要芯片手册》

  • stm32 AD模数转换[操作寄存器+库函数]

    stm32f103最少有2个AD模数转换器,每个ADC都有18个通道,可以测量16个外部和2个内部模拟量。最大转换频率为1Mhz,也就是转换时间为1us(在 ADCCLK = 14Mhz,采样周期为1.5个时钟周期时)。最大时钟超过14Mhz,将导致A

  • STM32 USB SD读卡器(SDIO)

    这次是做一个SD卡的USB读卡器的功能,我们就在上次NAND Flash模拟出的U盘的工程上修改了,这样的话只要修改一小部分了。工程的绝大部分不需要修改,只要将fsmc_nand.c文件移除工程,添加上官方的关于SDIO的SD卡的驱动

  • 关于STM32的GPIO输入输出的位带操作

    支持位带操作的两个内存区的范围是:0x2000_0000‐\0x200F_FFFF(SRAM区中的最低1MB)0x4000_0000‐\0x400F_FFFF(片上外设区中的最低1MB)位带操作可以在不加任何特殊指令时实现位操作。在对一个外设寄存器或者SRAM进

  • STM32进入HardFault_Handler处理办法

    STM32进入HardFault_Handler处理办法HardFault_Handler出现的情况一般有两种:一种是:数组越界一种是:堆栈溢出,程序指针指飞方法一在中断HardFault_Handler中的while()处打上断点,让程序执行到此处停止。在Regis

  • STM32库函数void USART_SendData的缺陷和解决方法

    问题及现象(STM32F103系列:http://www.y-ec.com/cpcp/class/?32.html)使用USART_SendData()函数非连续发送单个字符是没有问题的;当连续发送字符时(两个字符间没有延时),就会发现发送缓冲区有溢出现象。若发送的

  • STM32中断理解

    题外话:几乎所有的要学习的实在或虚拟的事物(或仅仅是一个理论)都可以用下面的方法对其了解;但对于具体某一个事物不一定需要全部研究下面的项目;什么是XXX为什么要XXXXXX的分类XXX的组成XXX的特点XXX的流程用及

    单片机
    2018-12-25
    中断 STM32