STM32内部FLAsh概述今天说一下STM32中的内部flash。当我们把写好的代码下载MCU中,这个代码时存放在flash中的。当芯片重启复位上电后,会通过内核对flash进行代码的加载运行。大致是这个过程。主要特性flash读操作flash编程/擦除操作读写保护I-Code上的预取操作I-Code上的64个缓存(128位宽)D-Code上的8个缓存(128位宽)128位宽数据读取字节、半字、字和双字数据写入扇区擦除与全部擦除除了程序下载对自身flash读写外,本身也可以通过软件编程对其进行书写,可进行一些数据的存储。下面就说一下这方面的东西(当然不同的芯片flash有所不同,这里以STM
RT-ThreadNUCLEO-STM32L010RB开发板BSP说明RT-ThreadNUCLEO-STM32L010RB开发板BSP说明简介开发板介绍外设支持使用说明快速上手硬件连接编译下载运行结果进阶使用注意事项示例代码源码下载维护人:RT-ThreadNUCLEO-STM32L010RB开发板BSP说明简介本文档为ST官方NUCLEO-L010RB开发板的BSP(板级支持包)说明。主要内容如下:开发板资源介绍BSP快速上手进阶使用方法通过阅读快速上手章节开发者可以快速地上手该BSP,将RT-Thread运行在开发板上。在进阶使用指南章节,将会介绍更多高级功能,帮助开发者利用RT-Thr
一.看门狗是啥。 首先,它不是真的狗。看门狗(Watchdog)是一种硬件定时器,用于监测程序执行是否正常,并在系统出现故障或死锁时重启系统。在STM32F10xxx中内置了两个看门狗,提供了更高的安全性、时间的精确性和使用的灵活性。两个看门狗设备(独立看门狗和窗口看门狗)可用来检测和解决由软件错误引发的故障;当计数器达到给定的超时值时,触发一个中断(仅适用于串口型看门狗)或产生系统复位。 IWDG(独立看门狗): 由专门的低速时钟(LSI)驱动,即使主时钟发生故障它也仍然有效。 WWDG(窗口看门狗): 由从APB1时钟分频后得到的时钟驱动,通过可配置的时间窗口来检测应用程序非正常
文章目录1.概述2.官方下载地址3.步骤详解3.1打开官网3.2工具与软件➡嵌入式软件➡MEMS软件3.3微控制器软件➡STM32微控制器软件➡STM32标准外设软件库➡选择产品系列3.4选择版本➡点击下载3.5点击“接受”➡填写邮箱信息➡点击“下载”3.6点击接收到的邮件里面的下载链接,即可下载3.7总结1.概述STM32标准外设库是一个固件函数包,它由程序、数据结构和宏组成,包括了微控制器所有外设的性能特征。该函数库还包括每一个外设的驱动描述和应用实例,为开发者访问底层硬件提供了一个中间API,通过使用固件函数库,无需深入掌握底层硬件细节,开发者就可以轻松应用每一个外设。Keil新建工程前
文章目录前言一、芯片简介二、Cortex-M内核三、芯片内部结构1.外设资源2.内部模块框图3.时钟树4.存储空间四、BOOT启动五、库介绍六、编译过程总结前言一、芯片简介1.家族STM32:32代表32位MCU,有32根地址线,可以寻找4GB的地址STC15单片机是8位CPU,地址以16进制表示:0x__;STM32:0x________容量为2^32=4,294,967,296≈4×10^9(其中1GB=10^9)2.产品类别G:支持DSP和FPU指令的可适用信号应用像正点原子的F4,F:基础型,通用型3.特点功能103:STM32基础型407:高性能,带DSP和FPU431:未知4.引脚
文章目录解决LCD与LED显示冲突问题解决LCD显示翻转问题解决LCD与LED显示冲突问题 不知道大家在开发过程中有没有碰到:LCD与LED同时(宏观上的同时)点亮时产生的LED状态紊乱问题。LCD与LED显示冲突现象图 为了解决上述问题,小编给出了以下三种解决方案:方案一: 每次LCD显示完成数据后,关闭所有LED一次。 但是使用该方法比较麻烦,并且如果想要反转LED的状态,还必须使用变量保存上一次LED的状态。详细代码可见下图:方案2:借助寄存器BRR STM32中是将BRR定义为:__IOuint32_tBRR;//! 其意思为:GPIO位复位寄存器;也就是说可以通过该寄存器
一.硬件1.需要一台步进电机,私服驱动器,stm32单片机;先按照说明文档,连接好硬件相关线路,对应好sign+,sign-,puls+,puls-线路,其中sign只是个io口拉高拉低操作,puls是pwm波形输出口,虽然有两根线,但只是需要控制一个IO口输出波形即可;二.软件采用主从模式,TIM1为主定时器,tim3未从定时器;不可乱选,查看技术文档选择;附对应文档截图;意思是浅文字部分是你选的主定时器,深色是你能选的从定时器,ITR是需要在代码里配置的;(主定时器也不是可以选乱的,对应IO口有对应的定时器)1.初始化输出pwm波形的IO口代码TIM_SelectMasterSlaveMo
其他红外介绍不多说了,下面介绍一下我使用stm32控制格力空调所遇到问题。1.红外实现过程中遇到的问题 网上大部分对格力空调红外编码的介绍都是 起始码(S)+35位数据码+连接码(C)+32位数据码 0的电平宽度为:620us低电平+540us高电平,1的电平宽度为:620us低电平+1620us高电平起始码S电平宽度为:9000us低电平+4500us高电平连接码C电平宽度为:620us低电平+20000us高电平以上是在接受端的定义,要注意分辨。发射端是相反的红外发射端的波形。红外接受端是以下这种两者是不同的。网上大多是第二种容易产生误解。格力空调的编码如下图——网上的格式都大同小异
目录一:输入模式1.1:模拟输入1.2:浮空输入 1.3:上拉输入 1.4:下拉输入1.5:为什么没有复用输入配置模式 二:输出模式2.1:推挽输出2.2:开漏输出 2.3:复用推挽输出2.4:复用开漏输出 一:输入模式1.1:模拟输入模拟输入(GPIO_Mode_AIN):这种输入方式和浮空输入非常相似,都不接入内部的上拉和下拉电阻,它们二者唯一的区别在于,模拟输入不接入TTL肖特基触发器,它接入的信号是完全的模拟信号,所以称为模拟输入。当引进外部不接稳定的电路时,他的电平状态我们无从得知,可以说他的引脚电平状态完全取决于外部输入。TTL肖特基触发器:简单说就是将相对缓慢变化的模拟信号变成矩
HC-05蓝牙串口通信HC05模块是一款高性能主从一体蓝牙串口模块,是一种集成蓝牙功能的PCBA板,用于短距离无线通信,十分方便。从某宝商家那里可以看到,蓝牙可以使用多种方法使用,这里我使用的是蓝牙主机连接,所以我们这里需要准备的器件:两块HC-05蓝牙模块、一块USB-TTL、STM32F103ZET6。除此之外,还要准备串口调试助手:XCOMV2.0在配置蓝牙模块前,需要了解蓝牙模块的调试。HC-05蓝牙串口通讯模块具有两种工作模式:命令响应工作模式和自动连接工作模式。在自动连接工作模式下模块又可分为主(Master)、从(Slave)和回环(Loopback)三种工作角色。当模块处于自动