- 博客(178)
- 资源 (5)
- 收藏
- 关注
原创 优先使用ram中的脉冲计数值原因。
1.ram中的值最新(eeprom未实时写,往往累积到一定值写,数据较旧)。2.避免掉电等时候,eeprom为及时更新或异常,数据未更新。3.多重机制:先使用ram中的读取的脉冲计数,其次考虑a、b组备份,再考虑掉电时刻的数据。一文足矣:用EEPROM存储遇到的技术问题,看这一篇就够了!优先使用ram中的脉冲计数值原因。
2025-11-27 08:00:59
357
原创 到百度首页 source insight4窗口缩放后,已有的布局窗口消失问题解决
窗口放大缩小后,已有布局窗口消失,主要是缩小后的窗口菜单栏未显示原来布局的几个窗口图标导致。2、如果缩小太小,恢复后。
2025-11-19 14:10:35
158
原创 单片机进行物联网产品开发时候,嵌入式软件代码的低功耗,怎样设计的呢
系统的功耗管理就是为每个任务的功耗进行管理,整体在一个有效的协调方式下才能做到功耗最小。从宏观角度来看,任意时刻可能有多个任务同时在执行,每个任务按最低需求随时来休眠协调机构签到投票,表明自身当前能够容忍的最低功耗对应的休眠等级,休眠协调机构的仲裁者定时或轮询检查所有任务的投票结果,找到最小的休眠等级,然后进入相应的休眠等级。将多个传感器的数据采集任务集中在一个时间窗口内完成,然后让系统进入长时间的睡眠,而不是分散地、频繁地唤醒系统。例如,将数据缓存本地,定期将其传输到服务器,可以减少通信的频率。
2025-11-06 07:32:40
296
原创 开源MultiTimer时间片轮训系统-yymmdd
https://mr.baidu.com/r/1LH0Wb0zATm?f=cp&u=dd8184144490b879
2025-10-28 17:45:16
166
原创 freertos学习之中断优先级
自己的疑惑,裸机各接口有优先级;加了freertos操作系统后,创建任务的时候有个优先级,怎样区分和管理的呢?裸机硬件中断优先级和任务优先级是两码事:裸机硬件中断优先级>任务优先级。
2025-09-22 13:58:57
198
原创 独立看门狗配置
需要注意的是这里将IWDG counter clock prescaler设置为64并不是64分频的意思。而是将 (4 * 2^prv) 这里的整个值设置为64,实际上也就是最小的4分频。其中:prv是预分频器寄存器的值,rlv是重装载寄存器的值。由时钟树可以知道LSI的值是32KHz。超时时间 Tout (s) = (4 * 2^prv) / LSI * rlv。// if(KEY_Scan(0)==WKUP_PRES)//按上键就喂狗。所以我上面设置的时间是Tout=64/32*500=1000ms。
2025-09-16 11:28:48
330
原创 基础巩固__之基本定时器01
用一段话来概括就是计数器根据预分频输出的时钟向上计数,来一个脉冲就计数1次,待计数器的值与自动重装载寄存器的设定值相等的时候,就发生更新事件,更新事件可用于触发中断、DAC同步、DMA请求等。这个就是基本定时器的所有功能。基本定时器只能用来定时,它没有任何的外部输出通道,只有内部输出更新信号用于中断、DAC同步。计数器的值就一直都是从0计数到自动重装载器的设定值,溢出则从0重新开始。
2025-09-11 09:31:02
386
原创 原子工程用AC6编译不过问题
armclang -E --target=arm-arm-none-eabi -mcpu=cortex-m7 -xc, 用于AC6编译报错(L6709E错误)时,请使用此设置。armclang -E --target=arm-arm-none-eabi -mcpu=cortex-m7 -xc, 用于AC6编译报错(L6709E错误)时,请使用此设置。armcc -E, 用于AC5编译报错(L6709E错误)时,请使用此设置。armcc -E, 用于AC5编译报错(L6709E错误)时,请使用此设置。
2025-09-05 23:06:37
341
原创 STM32H7的USB自定义HID调试通过250826
0x05,0x01, // USAGE_PAGE(Generic Desktop) //可用USBD_CUSTOM_HID_REPORT_DESC_SIZE = 35// 0x05, 0x8c, // USAGE_PAGE (ST Page) / //可用,33// /* 6// //19// //32。
2025-08-26 14:43:33
625
原创 python写上位机并打包250824
import serialimport serial.tools.list_portsimport tkinter as tkfrom tkinter import ttk, scrolledtext, messagebox, filedialogimport threadingimport timefrom datetime import datetimeclass SerialPortAssistant:def init(self, root):self.root = rootself
2025-08-24 19:36:38
562
原创 DFU前期看资料的总结
最近在调试STM32H750片子,担心片内flash不够用,在QSPI bank2外挂了 W25Q40CL做XIP,当然也可以copy到片上ram运行。
2025-08-16 09:06:58
261
原创 板子指示灯状态设计
/ 错误中断(ERRIE)// 错误指示RS485接口:c// DE引脚控制(发送使能)// 发送模式// 接收模式// 接收中断(RXNE)// 接收指示4. 抗干扰与低功耗优化硬件优化:信号隔离:使用数字隔离器(如ADuM1201)隔离通信信号与指示灯驱动电路。电源去耦:在LED供电引脚附近添加100nF陶瓷电容,抑制电源噪声。软件优化:PWM调光:通过PWM控制LED亮度,降低平均电流(如占空比50%时电流减半)。
2025-08-04 17:56:09
1225
原创 基于OpenOCD 的 STM32CubeIDE 开发烧录调试环境搭建 DAPLINK/STLINK
需要部署一个开发环境,实现h7的板子通过daplink功能给目标板烧写程序(同事要将这个过程用fpga实现),需要通过openocd+gdb+daplink stm32;
2025-07-23 18:11:37
641
原创 usb转can测试
usb转can功能测试:对于前期对canfd等不熟悉,再加上硬件也有可能有问题,配置can参数花了很长时间。就让程序定时发送数据出来,方便测试。
2025-07-18 18:54:48
497
原创 FreeRTOS学习一:使用 FreeRTOS 实现简单多任务调度(初识 RTOS)
https://blog.youkuaiyun.com/hoony123/article/details/149260535
2025-07-17 08:04:48
129
原创 基于stm32的ft2232的读写93LC46B程序
说明:用于93C46的结束,防止由于CS_93C46的改动而引起数据线为0而无法输入。说明: 93C46的编程关闭.操作码(100 00XXXX)说明:93C46的字读取程序 操作码110 A5-A0。说明:93C46的字写入程序 操作码101 A5-A0。说明:93C46的字擦除 操作码111 A5-A0。输入: address 要写入的字地址(6位)输入: address 要擦除的字地址(6位)输入: op_data 要写入的数据(16位)说明:在93C46启动下,送入指定位数的数据。
2025-06-17 08:01:10
93
原创 tc3975开发板上有ft2232这块的电路,我想知道这个开发板有哪些升级方式,重点关注是怎样通过ft2232实现的烧录升级的
关于TC3975开发板上FT2232芯片支持的升级方式,特别是如何通过FT2232实现烧录升级的问题。首先,我得回忆一下FT2232的基本功能和常见应用场景。FT2232是FTDI公司的一款双通道USB转UART/FIFO芯片,常用于嵌入式系统的调试和编程。它支持多种协议,比如JTAG、SPI、I2C等,所以可能在开发板上用于与目标芯片通信,进行固件烧录或调试。接下来,用户想知道TC3975开发板有哪些升级方式,重点是通过FT2232实现的烧录方法。
2025-05-26 08:42:46
1172
原创 将ft2232外部的EEPROM中的信息读出来的方法,方便写入到下一个eeprom里面去;
读取 FT2232 EEPROM 配置信息的方法步骤:下载并安装 MPROG:从 FTDI 官网 下载并安装 MPROG。连接设备:将 FT2232 设备连接到电脑。读取 EEPROM:打开 MPROG,选择正确的设备(如 FT2232H)。点击 “Read Device” 按钮,读取当前 EEPROM 数据。保存数据:点击 “Save File”,将读取的数据保存为 .bin 或 .hex 文件。写入到另一个设备:将另一个 FT2232 设备连接到电脑。
2025-05-24 17:51:08
510
原创 基于STM32的FT2232 MiniWiggler开发流程
4. 软件工具OpenOCD官网:http://openocd.org/配置示例:搜索“OpenOCD FT2232H”获取社区贡献的配置文件。5. 开源项目GitHub项目搜索STM32 FT2232 MiniWiggler,参考现有项目的硬件设计和固件代码。开发基于STM32的FT2232 MiniWiggler需要结合硬件设计、固件开发和调试工具配置。由于相关资料较少,以下是一个系统化的开发指南,涵盖关键步骤、资源推荐和常见问题解决方案。一、开发流程与关键步骤。三、常见问题与解决方案。
2025-05-21 08:22:53
335
原创 FT2232 MiniWiggler
FT2232 MiniWiggler是一款基于FTDI公司FT2232H芯片的JTAG/SWD调试适配器,主要用于嵌入式系统开发中的芯片调试、编程和通信。
2025-05-21 08:06:58
875
原创 后期:daplink
1、单独复制daplink,和USB hid相关文件(注意:daplink功能的时候,一定是一个hid设备),对比两个工程差异。问题三:未移植daplink的时候,虚拟串口是收发正常,貌似没有映射到具体232串口。问题一:总工程,USB插入能识别到dap,但有个黄色的感叹号!现在连感叹号都没有了。重点跟踪了枚举的几个函数,差异点就是有个工厂描述符没有枚举到。实在不行,可以把有问题的工程,移植到没有问题的工程上。下载后,目标板,没有自动复位。
2025-05-20 21:22:11
179
原创 KEIL Note: source file ‘.XXX.o‘ - object file renamed from ‘XXX.o‘ to ...
将内容复制到txt文件中,保存退出后将.txt后缀更改为.bat即可。将修改好的bat文件放到工程内运行就ok啦。2、在使用keil的时候,有时候会不小心在不同的group文件夹里添加了两个相同的.c文件。2、关闭KEIL工程,并运行keilkill.bat将编译链接文件全部删除。::del *.opt /s ::不允许删除JLINK的设置。1、在keil工程中将App组份内,c文件移动到Dev组分,1、删除重复文件,确保.c文件在工程内不重复。3、打开工程进行编译即可。
2025-05-17 13:53:44
656
原创 几篇stm32的USB做虚拟串口功能较好的文章,重点在详细的代码实现
详细代码实现数据发送(CDC_Transmit_FS)和接收(CDC_Receive_FS回调函数)。接收数据并回显(在CDC_Receive_FS中调用CDC_Transmit_FS返回接收到的数据)。包含波特率动态配置代码(通过CDC_SET_LINE_CODING命令修改波特率)。在usbd_cdc_if.c中实现CDC_Receive_FS回调函数处理接收数据。动态配置波特率(通过CDC_SET_LINE_CODING命令)。提供USB转TTL功能实现(将接收到的USB数据转发到串口3)。
2025-05-16 09:09:57
284
原创 keil 解决 Error: CreateProcess failed, Command: ‘XXX\ARM\ARMCC\bin\fromelf.exe
参考文章链接:自己的:\bin\fromelf.exe --bin -o …/…/firmware_bin/@L.bin ./Object/@L.axf。
2025-05-12 19:02:57
958
1
ALINX黑金AX7010开发板用户手册V1.07.pdf
2020-07-04
ZYNQ-7000 MZ702N 核心板(商业级)硬件使用手册20181120_v1.2.pdf
2020-07-04
AXU3CG开发板用户手册V1.01.pdf
2020-07-04
STM32 HAL 库实现乒乓缓存加空闲中断的串口 DMA 收发机制,轻松跑上 2M 波特率
2023-09-01
zy@S3C2440串口FIFO模式的中断机制和处理策略 - Stephen_yu的专栏 - 优快云博客.pdf
2023-08-10
给PDF添加目录给PDF添加目录
2023-08-02
RS485总线通信系统的设计与实现 毕业论文.doc
2020-07-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅