STM32
文章平均质量分 82
zhaqonianzhu
在向大佬学习的小同志,有工作机会记得叫我哦。
展开
-
MS-RTOS STM32 初次使用笔记
最近发现有这个主打完全国产化的OS,翼辉信息开发了多款,本次只针对STM32友好的MS-RTOS进行尝试学习。官方地址文档地址这个是官方的板子不知道会不会指定,一般操作系统都会有移植文档的,稍后进行研究一下工具介绍软件介绍IoT StudioMS-RTOS 集成开发环境(集设计、编码、调试、测试、分析功能于一体的专业集成开发环境)MS-RTOS AutoTester自动化测试工具(支持通过脚本对 MCU FLASH 编程,实现自动化测试)MS-RTOS I原创 2021-01-06 17:52:41 · 548 阅读 · 0 评论 -
RT-Thread 串口 RX TX交换Swap
stm32部分是支持串口RX TX的交换的。本次是如何修改RT-Thread 达到交换串口引脚的目的。分为三部,操作时间三分钟。board.h文件修改drv_usart引脚修改drv_usart串口Swap功能修改board.h文件修改按照实际的需求进行对引脚定义,比如这个引脚实际用来发送,就是TX。drv_usart引脚修改这个地方的引脚按照右侧TX RX对应,比如未交换前TXRXPB6PB7实际应用时,交换后TXRXPB7原创 2020-12-14 16:32:47 · 1467 阅读 · 0 评论 -
stm32cubemx hal usb VCP 虚拟串口 调试笔记
stm32cubemx 虚拟串口是十分便捷的,读完此文能解决你90%问题。参考文章步骤配置usb硬件(略)配置usb中间件(略)代码调试配置usb硬件 + 配置usb中间件 使用基本配置就可以关于都说的heap问题:没那么夸张。因为heap,没有人写代码会直接用这个动态申请,usb申请也只申请一次,唯一申请一次,大小为154字节。那是不是刚刚好就行了呢?不是,因为有时候申请后会释放掉,再申请,反复过程中会产生碎片,这时,再申请可能因为碎片导致没有完整的大小,不能进行申请。usb的原创 2020-09-18 15:05:52 · 1361 阅读 · 0 评论 -
stm32 cubemx usb spi flash w25q128 u盘调试笔记
真的太简单了,十分钟就搞定参考文章我卡住了几天,最后发现delay函数的问题,去掉就好了。步骤如下使用cube mx 生成基本代码调试spi flash调试usb融合代码使用cube mx 生成基本代码确定使用需求 USB SPIusb以下配置保持默认配置即可,切记不要胡乱修改参数。spi调试spi flash我使用的flash 是w25q128 spi 通信模式,所以直接找一个别人写好的驱动就可以了。w25qxx驱动我使用的是这个驱动,w25q的都能原创 2020-09-02 16:30:06 · 4532 阅读 · 4 评论 -
stm32 hal库 rtc 备份 寄存器 备份sram 调试笔记
rtc 是可以单独供电的,通常设计rtc是带有一个纽扣电池用来给rtc供电。本次是调试rtc 的备份寄存器和备份sram,这两个都是可以在rtc不断电情况下一直保存数据。步骤配置rtc参数,用cube mx 生成初始化代码使能备份寄存器时钟和备份sram时钟写入数据,不断电重启等读取数据使用的hal库函数*** Main and Backup Regulators configuration ***==========================================原创 2020-08-25 15:56:36 · 5454 阅读 · 0 评论 -
STM32 cubemx uart串口 硬件RS485 自动(自适应)波特率 发送引脚和接收交换引脚 调试笔记
之前使用cubemx时发现部分单片机是具有硬件485和自动波特率的。串口硬件RS485硬件自动波特率只有部分系列是支持的自动波特率分为四种模式串口发送时是先发送低位,LSB模式,比如0x01 二进制为0000 0001 先发送1再发送0000 000任意以1 bit开始的字节任意以1 0 发送的字节固定0x7F固定0x55误差率发送引脚和接收交换...原创 2020-08-05 10:18:34 · 5525 阅读 · 1 评论 -
终极调试利器 EventRecorder 调试笔记
EventRecorder 是可使用下载的线进行通信,不需要额外的线,通信速率也很高。添加步骤添加步骤如图,前提是开启微库情况下。配置这里有几种选择,第一个是除M0内核外都可使用,然后是系统时钟,下面就是自己实现的定时器,这里暂时选这个做一个演示效果。portuint32_t tim_count;void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){ if (htim->Instance == TIM17)原创 2020-07-23 14:32:18 · 3592 阅读 · 0 评论 -
绝对式编码器的ssi协议 stm32 hal
虽然开始研究的时候比较疑惑,其实还是比较简单的。十几分钟就可以全部掌握。整体框架发送时钟读取数据stm32RS422编码器编码器的厂商为了抗干扰,在SSI信号使用了RS422,RS422和RS485这类的都是通信协议而已,打个比方,只是你去往同一城市的不同道路而已,最终还是你过去,你并没有变化。编码器经过RS422的协议是SSI,编码器的SSI是什么样子的STM32如何实现编码器的SSI协议编码器的SSI协议其实非常的简单,他是同步信号,类似SPI。SSI为同步串联信号,实际的两对RS原创 2020-06-29 10:01:40 · 11479 阅读 · 14 评论 -
max7219共阴极数码管驱动 stm32 hal
因为做这个需要用到max7219,所以在网上找了一些前车之鉴。和以前找其他资料一样,我认为他们写的真的不好,甚至都辣眼睛,更有甚者上来就放两句话,最后一句是我实现了,倒不如发目录目的步骤max7219资料解读功能概述stm32 参数配置驱动实现目的实现max7219驱动数码管显示步骤max7219资料解读stm32 参数配置驱动实现max7219资料解读此部分只摘取官方文档部分内容。我认为足够使用了max7219 与stm32通信方式max7219通信方式为SPI,16bit 数原创 2020-06-19 11:53:17 · 7458 阅读 · 17 评论 -
stm32微秒延迟终于找到了解决方法使用定时器 cubeMX hal us
本文将花费你3分钟时间,如果你懒,请直接拉到代码处拷贝关键代码。定时器配置cubeMX定时器输入时钟TIM14时钟挂载于AHB1,其实不用看那么多,直接看cube 软件timer clock ,84Mhz定时器计数配置定时器微秒实现原理84Mhz时钟输入定时器,分频后1Mhz = 1us,也就是count CNT每加一次就是1us。开始计数到达CNT值设置CNT为0比较CNT...原创 2020-04-03 14:22:41 · 5718 阅读 · 11 评论 -
腾讯 tiny os shell移植
默认你已经调通tos,如果没有请移步官网准备好要移植的文件需要把shell文件夹下c和h文件加入到工程中(不会的请自行搜索)因为是需要串口进行接收,需要用过平台调用st的库调用调用shell框架platform/hal/stm32xxx.c我们自己cube生成的usart如图,是将串口抽象的方式,就是上层和下层映射的关系。非常好理解。串口接收中断回调函数,接收是一个字节一个字节...原创 2020-03-09 09:36:50 · 4208 阅读 · 0 评论 -
stm32 hal库开源命令行移植F205
见识过一些大佬之后,发现命令行还是很有意思的,RTT有这个功能非常棒,所以本文就是在自己的片子上加入类似功能。准备工作调好串口的HAL库 stm32 一个串口工具xshell类似开源命令行软件包接下来就开始移植工作获取文件加入到工程解压后文件如下,我们只需要几个文件 User/global.h User/SYS文件夹下全部文件修改代码因为只使用到串口,所以我们...原创 2020-01-15 19:36:55 · 586 阅读 · 0 评论 -
stm32cube fatfs tf卡读写 文件系统创建文件 调试笔记 f205
文件系统比想象中的要简单,步骤也简单。想要使用主要分为以下几步配置生成代码编写代码封装类似printf 到文件配置生成代码文件系统参数配置第一眼看很多,其实一点都不复杂,使能就是有些函数的开关,直接用起来就理解了。编写代码void MX_FATFS_Init(void) { /*## FatFS: Link the SD driver ################...原创 2019-12-05 15:25:38 · 2478 阅读 · 3 评论 -
TencentOS-tiny at框架移植记录stm32f303
发现官方移植手册还是非常详细的,但是组件暂未发现有详细的相关手册。内核移植AT框架移植内核移植内核移植可直接参照官方文档 https://github.com/Tencent/TencentOS-tiny添加链接描述 代码下载后解压 doc文件夹内有大部分手册,包括移植手册!AT部分移植所以我们需要加入以下文件IT回调函数按照需要串口将数据给入tosuint8_t ...原创 2019-11-19 15:50:48 · 2650 阅读 · 2 评论 -
TencentOS-tiny esp8266B组件部分笔记
我主要想使用其中组件AT框架,所以对官方例程进行个人笔记。因为是第一次看代码,水平也有限没看到哪里记到哪里,在完成最后我会做一个总结。下载源码后打开例子工程肯定是从主函数进行看main.c#include "mcu_init.h"#include "cmsis_os.h"#define APPLICATION_TASK_STK_SIZE 4096extern voi...原创 2019-11-08 13:58:04 · 1459 阅读 · 7 评论 -
STM32HAL内部EEPROM读写L151
简单生成代码后找到MDK的驱动文件官方建议步骤 #####数据EEPROM编程功能#####=============================================================================== [..]擦除或编程的任何操作都应遵循以下步骤: (#)调用@ref HAL_FLASHEx_DATA...原创 2019-08-02 17:48:01 · 8840 阅读 · 3 评论 -
STM32CUBEIDE ADC内部温度值L476
adc不用DMA搞了一段时间,发现adc通道和内部一些传感器是连在一起的,之前也听人说过这个事情。今天我就实验了一下。在网上查了一下这方面的资料,发现都是废话分为两步获取ADC原始值换算ADC原始值与温度关系第一步,略。第二部,查看手册,手册中温度传感器部分说,厂家校准的值存在系统存储器中。开始我用FLASH读取,是错误的行为。我使用IDE连接后直接对地址进行查看,不知道相同型号...原创 2019-07-15 16:01:04 · 3443 阅读 · 1 评论