STM32

关注408人关注
我要报错
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--UART异步通信学习

    字符发送的过程描述:在UART的发送过程中先将数据输入到发送数据寄存器中(TDR)此时(TXE)被硬件置1,之后TDR寄存器将数据串行移入到发送移位寄存器中,将数据在TX端口发送,此时(TC)被硬件置1。发送与接收是逆过程。

  • STM32-IIC 配置解说

    STM32-IIC 配置解说(原创)STM32 - I2C 简介 :I2C 总线接口连接微控制器和串行 I2C 总线。它提供多主机功能,控制所有 I2C总线特定的时序、协议、仲裁和定时。支持标准和快速两种模式,另外 STM32的 I2C 可以使用

    单片机
    2018-11-08
    iic STM32
  • 单片机STM32的引脚模式设置

    单片机STM32的引脚有多种方式可以选择。如果你是用直接写寄存器来配置的话,那么,看上手册,给“配置寄存器”对应的位写0或者1就可以达到目的。如下图:如果是用库函数来配置的话,就需要知道下面这个结构体中的变量

  • STM32单片机的BOOT0和BOOT1应用原理

    STM32三种启动模式对应的存储介质均是芯片内置的,它们是:1)用户闪存 = 芯片内置的Flash。2)SRAM = 芯片内置的RAM区,就是内存啦。3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootl

  • stm32 串口下载错误解决方法

    由于我的J-LINK 坏了,新买的还没到,就用串口工具进行下载。信息提示框提示下载内容不在0x08000000 与0x20000000范围内,即不在程序FLASH或SRAM上。而读器件信息,清除芯片就没问题,表示我的串口下载工具没有问题。

  • STM32 AM2305高精度温湿度传感器驱动

    最近用到的温湿度传感器,AM2305驱动,单总线,上电后至少要延时2S才能读取温湿度,温度精度很高,跟DS18B20一样,数据带校验,不会出现DS18B20那样,并且时序要求不高/***************************************************

  • STM32笔记记录

    串口记录: STM32有好几个串口。比如说STM32F103ZET6有5个串口,串口1的引脚对应的IO为PA9,PA10.PA9,PA10默认功能是GPIO,所以当PA9,PA10引脚作为串口1的TX,RX引脚使用的时候,那就是端口复用。 复用端口初始化有几

  • stm32使用LWIP实现DHCP客户端

    LWIP是一款开源的嵌入式网络协议栈,支持的功能很多,而且能在多任务环境下和单任务裸机环境下跑,今天说说他的移植过程,芯片为STM32,网卡为ENC28J60,无操作系统 首先下载LWIP的源代码,我下载的是1.4.1的源码,下载后解

  • STM32的nvic之理解

    例程: /* Configure one bit for preemption priority */ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); /* Enable the WAKEUP_BUTTON_EXTI_IRQn Interrupt */ NVIC_InitStructure.NVIC_IRQChannel = WAKEUP_BU

    单片机
    2018-11-06
    nvic STM32
  • stm32 HardFault_Handler调试及问题查找方法

    stm32 HardFault_Handler调试及问题查找方法STM32出现HardFault_Handler故障的原因主要有两个方面:1、内存溢出或者访问越界。这个需要自己写程序的时候规范代码,遇到了需要慢慢排查。2、堆栈溢出。增加堆栈的大小。

  • STM32学习笔记之中断调试

    1、基本的GPIO配置,注意,因为需要用到普通IO口作为中断输入口,因此是用了IO口德复用功能,因此必须打开RCC_APB2Periph_AFIO时钟,负责复用IO无效。2、IO口复用功能映射3、嵌套中断向量配置调试发现这几句话是必须

  • STM32关总中断的语句

    1 __set_PRIMASK(1);//关总中断23 /************4 **********/5 __set_PRIMASK(0);//开总中断

  • STM32学习005_端口复用与重映射

    一、使用复用功能(AF)时,要对端口位配置寄存器进行编程。1)对于复用的输入功能,配置必须为上拉/下拉或者浮空;2)对于复用输出功能,配置必须为复用功能输出模式(推挽,开漏)。对于双向复用功能,必须配置为复

  • STM32-AHB、APB1、APB2的使(失)能函数

    一、RCC_AHBPeriphClockCmd函数其中RCC_AHBPeriph的取值范围:二、RCC_APB2PeriphClockCmd函数其中RCC_APB2Periph的取值范围:GPIOx[0-15]、高级定时器TIM1,TIM8,高速SPI1,高速异步通信USART1,ADC1,ADC2

  • STM32移植UCGUI3.90笔记

    在MDK环境下,终于将3.90版本的UCGUI移植到STM32下了,在网上看到的都是例程代码,很少看到有关于在STM32下移植UCGUI的教程方法,为了方便大家,特写此移植方法,大家可以借鉴(有错误之处,望大家指点出来共同讨论!

  • STM32如何通过内部VREF得到实际的VDDA值

    我们经常会使用STM32 ADC功能测试外部电压,在一些精度不高的场合,我们一般就用3.3V作为参考电压来计算测到的电压值。不过,这种情况很少见,可能只有单片机学习板才会这样使用。因为我们使用的3.3V稳压芯片,很少有

  • STM32的Systick系统滴答定时器

    Systick :系统心跳定时器,提供系统节拍裸机程序中可作为独立的延时定时器用途:1.产生操作系统的时钟节拍2.便于不同处理器之间程序移植SysTick定时器被捆绑在NVIC中,异常号153.作为一个闹铃测量时间用于测量时间,但当

  • stm32实际运用中遇到的问题

    1.不要太相信stm32内部的IO上下拉,必要的话,在外部接上下拉电阻。2.当把JTAG的IO口当成普通IO口来使用时,要先禁止JTAG。即:要使用到PB3、PB4、PA13、PA14、PA15时,要先禁止JTAG。在库函数中,调用一下函数:GPIO

  • 在STM32上移植ucGUI之WM_REDRAW.c源码分析

    一、wm_redraw.c移植我在上一篇笔记中讲过如何将ucGUI移植到STM32上开发裸机程序。在本篇笔记中分析一下wm_redraw.c的移植及源码。首先打开移植好的ucGUI工程文件,然后将ucGUI\\Sample\\GUI目录下WM_Redraw.c文件中的

  • 将STM32的TIM作为普通定时器的方法

    以stm32的TIM2作为例,将其配置成为普通的定时器,计时时间到即触发中断。1:对定时器的基本配置先声明一个定时器配置用的结构体变量TIM_TimeBaseStructure,具体可以参考STM32提供的TIM库TIM_TimeBaseStructure.TIM