![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STM32
文章平均质量分 81
走路打滑
梦想有天去放羊
展开
-
STM32启动文件startup_stm32f407xx.s
在嵌入式系统中,启动文件是整个系统非常关键的部分,它会进行一些底层的初始化。在此阶段,C语言是没法运行的,所以需要用到汇编语言编写的启动文件去构建C语言程序运行的必要环境,然后再跳转到main函数到达C语言的世界。...原创 2022-07-12 13:52:56 · 3940 阅读 · 0 评论 -
STM32链接脚本STM32F407ZETx_FLASH.ld
STM32F407ZETx_FLASH.ld链接脚本中看出链接脚本大致所做的工作了,和官网描述基本一致,有通过SECTIONS命令描述如何将输入文件中的SECTIONS mapped 到输出文件的SECTIONS中,也有通过MEMORY命令在输出文件中控制内存布局。.........原创 2022-07-05 17:40:26 · 2935 阅读 · 1 评论 -
STM32CUBEIDE配置FreeRTOS
环境:STM32CUBEIDE 版本1.02STM32103C8T6最小系统板F1,1.8.0 版本固件包新建工程,选择芯片,不多做赘述 RCC中选择时钟源为 Crytal/Ceramic Resonator SYS 中Debug 选择为 serial Write,这不很重要,若选择NO debug 则在烧写一次程序后,芯片会锁住变砖。若不小心变砖了,参考这篇文章入口。 SYS 中 Timebase 不能选择为 systick ,因为FreeRTOS 会使用systick 作为时钟.原创 2021-04-10 20:17:44 · 2790 阅读 · 0 评论 -
STM32--ADC
平台:STM32F103C8T6最小系统板STM32CUBEMX-V6.1.2-1.8.4版本的F1固件包原创 2021-06-15 11:44:00 · 421 阅读 · 0 评论 -
STM32CUBEIDE打印浮点数问题
IDE不像MDK5那样默认就可以使用串口输出浮点数。解决办法:右键你的工程,在最下面点击properties 在弹出来的框中点击C/C++ Build 下拉框 在下拉框中点击 Settings 在弹出来的框中最底部找到 Miscellaneous 并点击 在other flags 中点击图标 输入 -u_printf_float ,然后点击ok 最后点击 Apply and close,就可以使用串口打印浮点数了。...原创 2021-04-21 19:40:21 · 1671 阅读 · 0 评论 -
STM32--DMA
eg:STM32F407ZGT6目录1:DMA简介2:DMA主要特征3:DMA框图4:DMA配置参数1:DMA简介DMA:Direct Memory Access 直接存储器访问DMA传输将数据从一个地址空间复制到另一个地址空间,当CPU初始化这个传输动作,传输动作本身是由DMA控制器来实现和完成的 ,其作用,就是为CPU减负的。STM32F4最多有2个DMA控制器(DMA2仅存在大容量产品中),2个DMA控制器总共有16个数据流(每个控制器8个)。每个DMA控制器都用原创 2020-05-30 10:50:13 · 1942 阅读 · 0 评论 -
HAL库_RTC定时器时间卡住
在使用HAL库驱动RTC的时候,遇到过一个BUG,那就是读出来的时间没有变化,后来找到原因。 那就是在读取RTC时间的时候必须日期和时间一起读,且最好保证先读时间,再读日期。在HAL_RTC_GetDate 这个函数中有如下注释:*@noteYoumustcallHAL_RTC_GetDate()afterHAL_RTC_GetTime()tounlockthevalues*inthehigher-ordercalendarshadow...原创 2020-09-23 15:41:46 · 871 阅读 · 0 评论 -
linux下STM32开发环境搭建
linux环境下开发STM32原创 2021-08-27 22:36:01 · 8887 阅读 · 4 评论 -
STM32--bxCAN2
STM32 参考手册中提到:bxCAN 控制器为应用程序提供了 28个位宽可变的、可配置的过 滤器组(0~28))(103只有14个)每个过滤器组的位宽都可以独立配置。可以配置成 16 位或者 32 位。过滤器组还可配置为屏蔽位模式或标识符列表模式。每个过滤器组x由2个32位寄存器,CAN_FxR1和 CAN_FxR2组成先看一个过滤器:如图这里的ID并不是发送数据帧里面的ID,此ID非彼ID,硬件上属于不同的register,这里的ID就是你需要去设置来达到你想要过滤接收某个数据ID的一串原创 2020-07-28 17:21:33 · 427 阅读 · 0 评论 -
STM32--bxCAN1
1:CAN简介CAN是Controller Area Network,是一种串行的通信协议,有两标准:ISO11898、ISO11519-2,其中ISO11898是针对通信速率为125Kbps~1Mbps的高速通信标准,而ISO11519-2是针对通信速率为123Kbps以下的低速通信标准CAN有很多优点,比如多主控制,速度快,距离远,具有错误检测,恢复,连接节点多等功能。所以CAN协议特别适合工业过程监控设备的互联讲下ISO11898标准,物理层特征如下CAN控制器根据CAN_L和C原创 2020-06-07 21:19:40 · 619 阅读 · 0 评论 -
STM32串口下载程序
若在使用STM32CUBEMX 生成代码的时候,若配置SYS->Debug 为 No Debug,那么在烧写一次程序后STM32就会变砖,这个时候可以通过 串口下载一次程序来 解锁通过USB转串口将电脑连接到STM32 的 USART1 设置BOOT0 为高电平,BOOT 1 为低电平 ,代码将从ROM区启动,上电都会运行Bootloader,在此过程中可以实现IAP程序的更新,一般通过USART 进行更新 打开串口下载程序的软件,以FlyMcu 为例。配置好之后,点击开始编程。 ...原创 2021-04-10 19:57:17 · 930 阅读 · 0 评论 -
STM32+ESP8266获取网络时间和天气
先给出两个可以获取天气和时间的网站https://www.seniverse.com/docs 可以获取天气http://api.k780.com:88/?app=life.time&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json&HTTP/1.1可以获取时间接下来简单说说怎么通过AT指令的方式去获取天气及时间信息...原创 2020-10-04 21:17:50 · 12089 阅读 · 6 评论 -
STM32--SPI
最近做个项目,用到了SPI,遇到一些问题。 SPI,四根线,MISO,MOSI,SCK,和NSS,这其中NSS用起来最麻烦。NSS是片选线,是用于选择从器件的引脚,可让SPI主器件与从器件进行单独通信,从而避免数据线上的竞争。问题1:从机发送数据给主机 要知道,SPI主机发数据,从机去收。但是从机发数据,主机可以不理会。因为主机控制着SCK线,从机若想要发送数据,只能去通知主机来“读”。怎么通知? 从机若有数据要发送给主机,可以用一根 INT 线来通知,拉低...原创 2020-09-03 18:17:39 · 2368 阅读 · 1 评论 -
STM32--IIC
1:IIC简介IIC:(Inter_integrated circuit),两线式串行总线,它是由数据线SDA和时钟SCL构成的串行总线,可发送和接受数据,在CPU与被控IC之间,IC与IC之间进行双向传送,高速IIC总线一般可达400kbps.一般在51中,没有硬件的IIC,只能用软件加引脚去模拟IIC的通信时序,STM32则一般都有硬件IICIIC是半双工 通信方式2:IIC协议空闲状态 开始信号 停止信号 应答信号 数据的有效性 数据传输 通信过程简述空闲状态.原创 2020-05-31 12:09:56 · 1453 阅读 · 0 评论 -
STM32地址映射、位带操作
目录1:前言2:地址(门牌号)3:STM32地址映射4:位带操作原理5:位操作代码实现1:前言 以前学51的时候,没有注重地址的这个概念,因为51寄存器少,一个reg52.h里面涵盖了你要用到的所有寄存器地址,你只需要去写几个字母调用一下就可以了。我甚至一度以为TMOD就是TMOD,单片机生产出来,程序就是这样写,就好像用手机指纹解锁,你只是把手指放上去,手机就解锁了。你以为理所应当,但是手机却做了很多工作。 直到学习32后,由于庞大的寄存器数量...原创 2020-05-17 13:32:31 · 3942 阅读 · 1 评论 -
STM32F4时钟系统
STM32有5个时钟源:HSI,HSE,LSI,LSE,PLLHSI是高速内部时钟,RC振荡器、频率为16MHZ,精度不高。可以直接作为系统时钟或者用作PLL时钟输入 HSE是高速外部时钟,可接石英/陶瓷谐振器,或接外部时钟源,频率范围为4M~26M.LSI是低速内部时钟,RC振荡器,频率为32KHZ,提供低功耗时钟。主要供独立看门狗和自动唤醒单元使用。 LSE是低速外部时钟,接频率为32.768KHZ的石英石钟。RTCPLL为锁相环倍频输出。STM3...原创 2020-05-15 12:12:11 · 2340 阅读 · 0 评论