STM32三种启动模式对应的存储介质均是芯片内置的,它们是:1)用户闪存 = 芯片内置的Flash。2)SRAM = 芯片内置的RAM区,就是内存啦。3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootl
由于我的J-LINK 坏了,新买的还没到,就用串口工具进行下载。信息提示框提示下载内容不在0x08000000 与0x20000000范围内,即不在程序FLASH或SRAM上。而读器件信息,清除芯片就没问题,表示我的串口下载工具没有问题。
最近用到的温湿度传感器,AM2305驱动,单总线,上电后至少要延时2S才能读取温湿度,温度精度很高,跟DS18B20一样,数据带校验,不会出现DS18B20那样,并且时序要求不高/***************************************************
串口记录: STM32有好几个串口。比如说STM32F103ZET6有5个串口,串口1的引脚对应的IO为PA9,PA10.PA9,PA10默认功能是GPIO,所以当PA9,PA10引脚作为串口1的TX,RX引脚使用的时候,那就是端口复用。 复用端口初始化有几
LWIP是一款开源的嵌入式网络协议栈,支持的功能很多,而且能在多任务环境下和单任务裸机环境下跑,今天说说他的移植过程,芯片为STM32,网卡为ENC28J60,无操作系统 首先下载LWIP的源代码,我下载的是1.4.1的源码,下载后解
例程: /* Configure one bit for preemption priority */ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); /* Enable the WAKEUP_BUTTON_EXTI_IRQn Interrupt */ NVIC_InitStructure.NVIC_IRQChannel = WAKEUP_BU
stm32 HardFault_Handler调试及问题查找方法STM32出现HardFault_Handler故障的原因主要有两个方面:1、内存溢出或者访问越界。这个需要自己写程序的时候规范代码,遇到了需要慢慢排查。2、堆栈溢出。增加堆栈的大小。
1、基本的GPIO配置,注意,因为需要用到普通IO口作为中断输入口,因此是用了IO口德复用功能,因此必须打开RCC_APB2Periph_AFIO时钟,负责复用IO无效。2、IO口复用功能映射3、嵌套中断向量配置调试发现这几句话是必须
1 __set_PRIMASK(1);//关总中断23 /************4 **********/5 __set_PRIMASK(0);//开总中断
一、使用复用功能(AF)时,要对端口位配置寄存器进行编程。1)对于复用的输入功能,配置必须为上拉/下拉或者浮空;2)对于复用输出功能,配置必须为复用功能输出模式(推挽,开漏)。对于双向复用功能,必须配置为复
一、RCC_AHBPeriphClockCmd函数其中RCC_AHBPeriph的取值范围:二、RCC_APB2PeriphClockCmd函数其中RCC_APB2Periph的取值范围:GPIOx[0-15]、高级定时器TIM1,TIM8,高速SPI1,高速异步通信USART1,ADC1,ADC2
在MDK环境下,终于将3.90版本的UCGUI移植到STM32下了,在网上看到的都是例程代码,很少看到有关于在STM32下移植UCGUI的教程方法,为了方便大家,特写此移植方法,大家可以借鉴(有错误之处,望大家指点出来共同讨论!
我们经常会使用STM32 ADC功能测试外部电压,在一些精度不高的场合,我们一般就用3.3V作为参考电压来计算测到的电压值。不过,这种情况很少见,可能只有单片机学习板才会这样使用。因为我们使用的3.3V稳压芯片,很少有
Systick :系统心跳定时器,提供系统节拍裸机程序中可作为独立的延时定时器用途:1.产生操作系统的时钟节拍2.便于不同处理器之间程序移植SysTick定时器被捆绑在NVIC中,异常号153.作为一个闹铃测量时间用于测量时间,但当
1.不要太相信stm32内部的IO上下拉,必要的话,在外部接上下拉电阻。2.当把JTAG的IO口当成普通IO口来使用时,要先禁止JTAG。即:要使用到PB3、PB4、PA13、PA14、PA15时,要先禁止JTAG。在库函数中,调用一下函数:GPIO
一、wm_redraw.c移植我在上一篇笔记中讲过如何将ucGUI移植到STM32上开发裸机程序。在本篇笔记中分析一下wm_redraw.c的移植及源码。首先打开移植好的ucGUI工程文件,然后将ucGUI\\Sample\\GUI目录下WM_Redraw.c文件中的
以stm32的TIM2作为例,将其配置成为普通的定时器,计时时间到即触发中断。1:对定时器的基本配置先声明一个定时器配置用的结构体变量TIM_TimeBaseStructure,具体可以参考STM32提供的TIM库TIM_TimeBaseStructure.TIM
对于STM32来说软件复位有两种方式:1)采用官方自带的软件库在官方软件库的stm32f10x_nvic.c 文件里 直接提供了 系统复位的函数/********************************************************************************
当SYSCLK等于72M,APB1等于36MAPB2等于72M时,定时器的时钟为72M。注意图中这句话:如果APB1/APB2预分频器=1则频率不变,否则频率x2。如果此时,APB1分频2,则PCLK1的外部时钟为36M,此时的定时器时钟x2为72M;APB2分
Ⅰ、写在前面学习本文之前可以查看我前面的文章:STM32CubeMX介绍、下载与安装STM32CubeMX使用方法及功能介绍STM32CubeMX新建工程+基本IO配置过程本文接着前面STM32CubeMX文章结合USART实例,讲述关于STM32CubeMX新建