- 博客(29)
- 收藏
- 关注
原创 【草堂笔记】ARM5到ARM6 分散文件加载错误问题
在最近的一次项目中,使用的是ciu32L系列的单片机,因为初始化时,需要对flash进行一些数据写入,发现其使用的是ARM5编译用官方的历程编译一切正常,但我项目使用的是ARM6编译器,所以我也试了下,直接将编译器改为ARM6,此时编译报了各警告。
2025-03-13 14:42:00
514
原创 【好记性不如烂笔头】RT-Thread 打印rt_object_get_type错误问题
编译没问题,但是总是会打印这个错误,定位到了一个线程中,发现关闭释放信号量就可以了。故判断是信号量没有初始化问题,原因是在信号量初始化之前有GPIO初始化和开启了中断,此时还没信号量初始化,就产生了中断,所以报错。
2025-01-04 14:10:24
498
原创 【好记性不如烂笔头】(四)RT-Thread终端无法输入问题以及输入任意字符导致进入硬件故障的解决办法
在使用RT-THread时,出现了一种奇怪的现象,程序运行正常,各种传感器也正常工作,但就是终端无法输入;或是随便点击键盘,立马会出现硬件故障。
2024-07-17 16:51:46
1562
原创 【CH32V303RCT6】NB模块在CTwing下的OTA升级[实操过程篇]
本篇主要通过日志打印和一些云端的显示,来讲解整个SOTA升级的过程。
2024-07-17 16:49:59
728
原创 【好记性不如烂笔头】(三)RT-Thread硬件错误的处理办法1
人麻了,什么鬼,因为以前有在裸机上运行,所以心中第一反应是线程给的堆栈大小小了?然后,直接从1024加到2048,心想,这样总应该好了吧,谁知道,熟悉的一幕出现了,又是刚才那个问题,天道好循环,苍天饶过谁。发现有两个error,我一看,-2,难道是时间片超时错误?但是,这两个线程是是从软件包里获取到的呀,应该不会错,但是还是尝试这改了一下,然而,并没有什么暖用。依旧是这个错误实在是不想去啃底层。先看下网上有没有人遇到吧,一搜索,好家伙,遇到这个问题的真不少。
2024-07-10 13:20:28
1650
原创 【CH32V303RCT6】NB模块在CTwing下的OTA升级
AT+CTM2MSEND=FFFE(固定起始标识)01(固定版本号)18(消息码,转换为十进制后为24,上报升级结果)9B27(校验码)0011(数据区长度,17个字节)00(结果码,处理成功)56322E30000000000000000000000000(升级后版本号,V2.0,规定长度为16个字节)AT+CTM2MSEND=FFFE(固定起始标识)01(固定版本号)16(消息码,转换为十进制后为22,上报升级包下载状态)850E(校验码)0001(数据区长度,1个字节)00(结果码,升级包下载成功。
2024-07-04 11:09:31
1053
1
原创 【好记性不如烂笔头】(一)CHV303RCT6下移植RT-RTread关于rt_kprintf打印浮点数问题
软件:MounRiver Studio操作系统:RT-Thread 在以往的使用MounRiver Stduio 软件时(下面统称IDE),如果不能打印浮点数,只需要勾选一下的就行但是使用RT-Thread后,使用的时自带的rt_kprintf()函数,此时就出现了问题,终端打印为tem:%f测试代码:三、 解决方案参考官方论坛RT-Thread 入门学习笔记:浮点数终端格式打印的四种实现方法然后发现评论区有官方人员回复,需要使用软件包处理,其实就是重新实现了一下这个函数这是包链接rt_vs
2024-07-04 11:06:13
1079
原创 CH32V303基于Ymodem协议的IAP升级
信息帧包含三种形式:起始帧, 数据帧,结束帧。对于数据帧,中间过程一般是128字节的信息,或者1024,但需要对最后一帧数据做一些处理,例如小于128字节的有效数据或者小于1024,大于128字节的有效数据时的情况处理。
2024-04-28 16:56:38
444
原创 【LVGL】GUI guider学习的一些记录(一)
GUI Guider 触发外围设备如果您希望GUI Guider操作触发外围设备(例如,按下显示器上的按钮可切换LED),自定义代码就是实现这一点的方法。在这个例子中,我们使用已经在board.h中定义的LED宏这些宏仅在board.h中,因此必须在事件中包含board.h。
2024-03-07 09:35:33
483
原创 关于使用VScode使用EIDE插件的问题解决方案
在最近使用VS code进行嵌入式软件编写时,发现每当打开插件时,都会跳出需要安装.net插件,在安装好软件提示需要重启后,又弹出需要修复,从此进入死循环。如下图所示甚是烦恼,特此在网上寻找答案,可却惊奇的发现网上竟然没人解决掉,官方提供的方案完全不起作用。一度不想使用他,但KEIL在编写代码确实不方便,花了大概一天时间,终于找到了解决办法。
2024-03-07 09:23:31
1249
2
原创 【CX32L003】低功耗模式
可以看出,通过设置SCB->SCR寄存器的第二个寄存器位为1,即SLEEPONEXIT = 1,设置为系统从最低优先级的中断处理程序中退出时,微控制器就立即进入睡眠模式。SLEEP-ON-EXIT=0,main()执行__wfi()后进入 Sleep,中断触发且执行完中断程序返回。根据 Cortex®。通过代码可以得知,通过设置位,再将一些指针变量保存后,通过调用WFI指令,使得CPU进入深度睡眠模式。使用WFI 指令可以进入休眠模式,休眠模式下,CPU 停止运行,但系统时钟、NVIC 中断处理以及。
2024-03-06 17:25:00
1946
原创 【好记性不如烂笔头】[Git篇]如何将一个新的文件提交到已经存在的远端仓库,并创建新分支,提交到新的分支中,以及分支名的修改和删除
打开终端或命令行界面。导航到你的程序文件所在的目录。git init这将在当前目录下创建一个新的 Git 仓库。将 替换为你要关联的远程 Git 库的 URL。举例说明:比如你想关联到一个git仓库地址为:https://gitee.com/xxxxxx/xxxxxxxx.git的仓库这将从远程仓库获取所有分支和提交信息,但不会自动合并到本地仓库。所以不用担心会更改本地代码。
2023-11-15 15:22:03
221
原创 【STM32CubeMX+LVGL】记录关于STM32移植LVG时报错问题
打开 构建配置->构建器选项 取消 Use MicroLIB 的勾选,点击保存,测试编译成功。在Keil不报错的情况下,使用VsCode IDE。去掉Use Micro LIB的对钩。如果只报了这三个错误。
2023-06-08 22:16:02
1285
原创 keil ac6运行keil ac5程序
链接:https://pan.baidu.com/s/1pYhjEoz_8CqhCkD8YR9YSQ?然后再KEIL安装目录下的ARM目录创建ARMCC文件夹,安装安装包路径到ARMCC下,再点击魔术棒,点击TARGET,选择ARM compiler版本就可以了,测试没问题。然后把刚才的文件路径添加进去。然后打开KEIL,点击。
2023-05-22 09:36:09
758
2
原创 【STM32cubeMX+HAL库】RS485双机通讯
485(一般称作RS485/ELA-485)隶属于OSI模型物理层,是串行通讯的一种。电气特性规定为2线,半双工,多点通信的类型。它的电气特性和RS-232大不一样。用缆线两端的电压差值来表示传递信号。RS485仅仅规定了接受端和发送端的电气特性。它没有规定或推荐任何数据协议。RS485的特点包括:1,接口电平低,不易损坏芯片。RS485的电气特性:逻辑“1”以两线间的电压差为+(2-6)V表示;逻辑“0”以两线间的电压差为-(2~6)V表示。
2023-05-07 20:18:54
12802
9
原创 【STM32cubeMX+HAL库】独立看门狗和窗口看门狗
独立看门狗的计数器是一个12位的递减计数器,计数最大值为0XFFF,当计数器递减到0时,就会产生一个复位信号,重启整个系统。如果在递减到0之前,将重装载数值写入递减计数器,就会由重装载数值开始递减到0,如此反复,就永远不会到0,也就不会产生复位信号,这个重装载计数值写入递减计数器的过程就叫“喂狗重装载数值来自重装载寄存器 (IWDG_RLR),这个值大小决定独立看门狗的溢出时间(复位倒计时)
2023-04-15 12:33:31
1112
1
原创 【STM32cubeMX+HAL库】US100超声波模块原理篇
US-100超声波测距模块可实现2cm4.5m的非接触测距功能,拥有2.45.5V的宽电压输入范围,静态功耗低于2mA,自带温度传感器对测距结果进行校正,同时具有GPI0,串口等多种通信方式,内带看门狗,工作稳定可靠。
2023-04-14 10:12:23
3886
14
原创 简单的STM32cubeMX+uart+ADC电压采样
2、 Data Alignment (数据对齐方式): 右对齐 Scan Conversion Mode( 扫描模式 ) : DISABLE3、Continuous Conversion Mode(连续转换模式): ENABLE Discontinuous Conversion4、Mode(间断模式): DISABLE Enable Regular Conversions (启用常规转换模式): ENABLE5、 Number OF Conversion(转换通道数):1(用到几个通道就设置为几) E
2023-04-12 10:57:10
919
原创 人生的第一次串口打印
双机通讯是不是很神奇,特别是自己实现的,今天就实现一个最经典的“hello.word!”的打印在上一篇文章中,学会了串口的配置,如果还有不懂得,可以去看看。
2023-03-14 21:08:26
1201
原创 串口初始化配置详解
简单理解就是一个电脑和单片机之间沟通的桥梁,从电脑角度考虑,我要发送信息给单片机,我需要什么,肯定是需要一个数据线对吧,将我要传给单片机的信息通过数据线发送过去,这就需要一个数据线端口,这个端口就是TXD,那单片机要接受电脑传过来的值,那肯定需要一个插数据线的端口,用来接受数据值,这个端口就是RXD;反过来一样,单片机需要一个发送端口TXD,电脑需要一个接收端口RXD。所以,如何使用串口进行发送数据和接收数据呢,现在开始跟我走,保证学会。
2023-03-14 00:07:30
4611
原创 轻松学会SSH远程访问树莓派
首先第一步:你需要知道你树莓派所访问的ip地址,这是一个必要条件。所以我们先来介绍如何得到你想要的IP地址因为你已经想到了使用SSH访问树莓派,那么我就默认你的树莓派是可以连接wifi的,如果这一步不懂的话,你需要重新进行设置你的树莓派网络设置,当你的树莓派连接到了路由器之后,你可以打开路由器,查看路由器所连接的设备,如果你没有改树莓派名称的话,就会有一个Raspberrypi连接,里面会显示...
2020-02-01 10:27:10
254
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人