- 博客(232)
- 资源 (50)
- 问答 (2)
- 收藏
- 关注
原创 可拖入多个文件或文件夹 合并所有内容到一个txt,方便投喂给AI
这是一个Windows批处理脚本,用于将多个文件或文件夹内容合并到一个TXT文件中。主要功能包括:自动识别拖入的文件/文件夹路径,递归处理子目录内容,按文件/文件夹分类输出内容,并在文件名中添加时间戳。使用时只需将文件/文件夹拖拽到脚本上,即可生成合并后的文本文件,方便将代码等内容整合后提供给AI处理。输出文件会保存在脚本所在目录,文件名格式为"合并结果_年月日_时分秒.txt"。
2026-05-13 14:20:54
28
原创 N32H473REL7的FLASH模拟EEPROM实现用户数据的基本读写
本文介绍了一个基于STM32的Flash存储操作实现,包含头文件flash.h和源文件flash.c。主要功能包括Flash页擦除、数据读写、校验和验证等。定义了Flash数据结构体FlashData_t,包含区域ID、音量和校验和字段。实现了FLASH_Erase_Page()、FLASH_Write_N()和FLASH_Read_N()等基础操作函数,支持按8字节单位编程和地址有效性检查。还提供了read_flash()和save_flash()应用层接口,用于读取/保存配置数据,并包含数据校验功能。测
2026-03-04 19:00:00
181
原创 N32H473REL7软件SPI驱动金逸晨2.25寸TFT液晶屏ST7789小屏简单显示字母
本文档提供了ST7789 LCD显示屏的驱动代码,包括硬件接口定义和基本功能实现。头文件(st7789.h)定义了GPIO引脚配置(背光、片选、数据/命令、复位等)、屏幕分辨率设置(支持横竖屏切换)、常用颜色宏以及字符显示功能。实现文件(st7789.c)包含ASCII字符点阵数据和GPIO初始化函数,配置了各控制引脚为推挽输出模式并设置默认电平状态。该驱动支持通过SPI接口进行数据传输,提供基本的屏幕填充和字符显示功能,适配N32H473微控制器平台。
2026-02-28 18:15:00
118
原创 N32H473REL7硬件SPI+DMA驱动金逸晨2.25寸TFT液晶屏ST7789小屏简单显示字母
本文介绍了基于N32H473芯片的SPI和DMA配置方法。硬件引脚定义包括屏幕背光(PB4)、片选(PA15)、数据/命令(PD2)等信号线。SPI1配置为主模式,数据宽度8位,时钟极性高电平,相位第二边沿采样,波特率预分频为8。DMA配置部分详细说明了SPI1_TX(DMA1_CH3)、SPI2_RX(DMA1_CH4)和SPI3_TX(DMA2_CH2)三个通道的参数设置,包括地址配置、数据宽度、传输方向等关键参数。代码片段展示了SPI初始化、DMA初始化的具体实现过程,包括时钟使能、寄存器配置等操作。
2026-02-28 18:15:00
48
原创 N32CUBE 配置N32H473REL7 驱动 74hc595
摘要:本文介绍了74HC595移位寄存器的驱动实现,包含硬件接口定义和软件控制逻辑。硬件部分通过GPIO定义数据(SER)、时钟(RCLK/SRCLK)引脚,软件部分提供初始化配置、数据发送、LED控制等功能。关键函数包括HC595_SendData()实现16位数据串行传输,HC595_SetLed()控制单个LED状态,以及GPIO初始化配置。代码采用标准库操作GPIO,并包含时序延时处理,适用于N32系列MCU控制两片级联的74HC595芯片。(150字)
2026-02-09 19:45:00
56
原创 N32CUBE生成的代码缺少时钟配置,导致I2S不工作解决办法;音频数据是全FF;MCK引脚无法产生4.12MHz方波;等问题记录
摘要:本文介绍了I2S音频接口的初始化配置和DMA中断处理实现。在I2S配置部分,详细说明了主从模式设置、时钟源选择及参数初始化流程,并指出N32CUBE生成代码缺少时钟配置的问题及解决方案。DMA部分包含两个中断处理函数:DMA1_Channel4处理I2S接收数据,DMA2_Channel2处理I2S发送数据,均实现了双缓冲机制,通过队列管理音频数据的收发,确保数据传输的连续性和稳定性。代码展示了完整的I2S音频传输系统实现方案。
2026-02-07 18:45:00
75
原创 N32H473REL7 使用GPIO模拟I2C配置 HTM1650
本文档是HTM1650数码管驱动芯片的头文件定义,主要包含硬件接口配置、通信协议定义和功能函数声明。文件定义了GPIO引脚映射、通信指令集、时间参数阈值等基础配置,并提供了LED显示控制、按键检测等功能的枚举类型和结构体定义。关键内容包括:1) 硬件引脚宏定义;2) TM1650通信协议指令集;3) LED和按键的通用化枚举定义;4) 显示状态和按键事件枚举;5) 按键状态和LED显示数据结构体;6) 初始化、显示设置、按键读取等函数接口声明。该头文件为基于N32H47x/48x系列MCU的TM1650驱动
2026-02-07 18:45:00
55
原创 N32CUBE 配置N32H473REL7的硬件I2C1,及同时配置软件I2C的冲突问题
摘要: 本文介绍了基于N32H47x/H48x系列MCU的I2C1硬件驱动实现,使用外部8MHz无源晶振作为时钟源。主要内容包括:1)硬件I2C初始化配置;2)实现了I2C读写功能,包含ES8311音频芯片的寄存器读写接口;3)提供了总线恢复机制和超时处理功能;4)定义了设备扫描和测试函数。驱动支持100kHz标准模式,采用开漏输出配置,并通过宏定义简化了读写操作。代码包含完善的错误检测和总线状态恢复机制,适用于I2C设备通信场景。
2026-02-07 13:24:26
71
原创 N32CUBE配置N32H473单片机 读取 ADC 值(单次+DMA方式)
本文介绍了两种ADC数据采集方法:1)单次读取ADC3值,通过软件触发转换并计算实际电压,使用8MHz晶振和PB13引脚配置,测试显示电压转换结果;2)DMA方式同时读取ADC2和ADC3电压值,采用双通道轮询转换,计算采样电压后乘以换算系数得到实际电压值。两种方法均包含超时保护机制,并通过日志输出原始数据、采样电压和实际电压值。测试结果表明,ADC3最高可测119.99V,ADC2和ADC3能稳定获取电压数据并正确转换。
2026-01-31 19:52:52
134
原创 N32Cube配置 RTC跑秒级时间戳
本文介绍了基于N32H47x/48x芯片的RTC时钟配置与时间管理实现。主要内容包括:1)使用内部时钟源配置RTC模块;2)实现Unix时间戳与日期时间的相互转换算法,支持1970-2255年的时间范围;3)提供原子操作的时间戳读写接口;4)包含闰年判断、月份天数计算等辅助函数;5)演示了初始时间设置和实时时间打印功能。系统通过维护64位Unix时间戳变量,确保时间信息的精确性和线程安全,并实现了RTC_DateType和RTC_TimeType结构体与时间戳的高效转换。
2026-01-29 22:30:00
54
原创 N32 Cube 生成 N32H473REL7的定时器基本配置-1ms中断
摘要:该代码实现了一个1ms定时器中断处理函数BTIM1_IRQHandler,每1ms触发一次中断,累计计时变量tim16并设置标志位b_1ms。当tim16达到1000的整数倍时,通过串口输出当前计数值。执行结果显示每隔1秒(1000ms)输出一次递增的tim16值(1000、2000、3000等),验证了定时器中断功能正常工作。
2026-01-21 21:00:00
88
原创 N32CUBE生成 N32H473REL7的FDCAN基本配置
本文介绍了基于8MHz无源晶振的FDCAN通信实现过程。首先配置时钟系统,然后进行FDCAN基本参数设置(包括ID类型、帧格式、数据长度等),并配置中断功能。测试代码展示了周期发送64字节数据(1秒间隔)和接收处理功能,通过日志输出验证了通信成功。测试结果显示能够正确收发扩展ID为0x16645334的CAN FD帧,数据内容与发送缓冲区一致,实现了500Kbps传统模式下的稳定通信。
2026-01-21 20:00:00
113
原创 STC32G8K64单片机 FLASH模拟EEPROM
摘要: 本文实现了STC32G单片机的Flash操作功能,主要包括批量擦除、读写操作等功能。新增的EEPROM_BatchSectorErase函数支持批量擦除指定范围内的扇区数据。其他函数包括EEPROM_read_n(读取N字节)、EEPROM_write_n(写入并验证N字节)等,均采用标准IAP操作流程,包含地址设置、命令触发和数据校验机制。所有操作均通过IAP相关寄存器控制,并包含中断保护机制,确保操作可靠性。代码结构清晰,包含必要的错误检查和边界条件处理。
2026-01-17 21:15:00
64
原创 STC32G12K128单片机 串口1~4中断模式+DMA中断模式 基本配置
该代码实现了基于STC32G系列单片机的多串口通信功能,主要包含以下内容: 定义了4个UART通道的配置参数,包括波特率设置、DMA使能选项和缓冲区大小等 提供了UART结构体,包含接收/发送缓冲区、长度计数和状态标志 实现了UART1-UART4的初始化配置函数,支持DMA和非DMA两种模式 包含各UART的中断处理函数,实现数据接收和发送控制 特别处理了UART1的printf重定向功能 定义了串口状态机函数框架,用于处理接收超时等状态 代码结构清晰,通过宏定义灵活配置各串口参数,支持不同波特率和传输模
2026-01-16 19:31:18
155
原创 STC32G8K64单片机CAN控制器进入Bus-Off状态
摘要:本文分析了CAN控制器进入Bus-Off状态的原因及解决方案。当从机重启时,CAN控制器初始化过程会导致状态不稳定,若主机持续发送数据或从机未就绪时尝试响应,可能因仲裁失败或位错误产生大量通信错误,表现为10-30秒的接收延迟。文中提供了中断处理代码,通过清除Reset Mode实现从Bus-Off状态恢复。同时给出了CAN总线配置参数和核心功能函数,包括寄存器读写、数据收发等操作,支持500KHz波特率通信。代码中实现了错误警告中断处理和缓冲区管理机制,确保通信可靠性。
2026-01-03 18:45:00
120
1
原创 PY32F406K1CU6 FLASH模拟EEPROM
摘要:本文介绍了基于STM32 FLASH模拟EEPROM的实现方法。头文件flash.h定义了FLASH页大小(256字节)、用户存储区域(4页)及地址范围,提供了等待周期配置和地址校验宏,声明了EEPROM初始化、读写操作等函数接口。源文件flash.c实现了具体功能:配置FLASH等待周期(144MHz需3WS)、页读写擦除操作,以及EEPROM初始化(解锁-擦除-验证-锁定)和缓冲区读写功能。其中写操作采用"读页→更新→擦除→编程"的流程,确保数据安全写入。该方案适用于需要非易失
2025-12-02 20:30:00
168
原创 PY32F403K1CU6定时器1~6基本配置,1ms中断,每隔1秒打印
本文介绍了一个基于STM32的定时器模块实现,包含头文件tim.h和源文件tim.c。该模块初始化并管理多个定时器(TIM1-TIM4,TIM6),配置为1ms中断周期。主要功能包括:1)统一初始化多个定时器;2)为每个定时器设置不同的中断优先级;3)实现1ms中断回调处理,其中TIM2用于按键扫描、喂狗和LED切换,其他定时器实现1秒打印功能。模块采用HAL库实现,包含完整的初始化和中断处理流程,支持多定时器并行运行。
2025-12-02 19:00:00
190
原创 STC32G8K64+CAN2.0B扩展帧 实现固件升级功能-3.上位机MFC程序V2.0 加APP校验等保护
本文介绍了一个用于读取和处理HEX文件的C++实现。该代码通过两遍扫描HEX文件:第一遍确定地址范围,第二遍读取实际数据。程序支持处理扩展线性地址记录(0x04)和数据记录(0x00),并实现了关键数据交换功能,确保用户程序从指定地址(app_start)开始。此外,代码还提供了删除指定地址前内容的功能,最后将数据分割为指定大小的数据包。该实现包含了完善的错误处理机制,能够检测无效HEX文件格式和处理解析异常。
2025-11-28 22:15:00
75
原创 STC32G8K64+CAN2.0B扩展帧 实现固件升级功能-1.BootLoader程序V2.0 加APP校验等保护
摘要: 该代码实现了基于CAN总线的固件升级功能,主要包括固件协议解析和Flash操作。通过定义Flash分区(8KB Bootloader、52KB程序区、4KB用户数据区),支持固件包接收、校验和写入。关键功能包括:设备搜索广播响应、APP模式切换、固件包信息处理、数据包接收校验以及CRC完整性验证。使用IAP操作擦除和写入Flash,并通过帧号检测确保数据传输可靠性。支持主从设备识别和多种状态码反馈,包含调试输出便于问题排查。整个升级过程通过CAN总线通信完成,最终通过软复位或跳转指令启动新固件。
2025-11-28 22:00:00
69
原创 STM32F7移植codec2语音压缩算法,码本生成
本文介绍了在STM32F767平台上移植Codec2低比特率语音编解码器的完整流程。主要内容包括:1)下载Codec2源码及freedv-gui工具;2)配置码本生成环境,编写批处理脚本自动生成各类码本文件;3)将生成的.c码本文件集成到STM32工程中;4)Keil MDK环境配置,包括预处理器定义、C99模式启用等;5)处理半主机模式相关函数,替换标准库文件操作和内存管理函数;6)实际测试Codec2编解码效果,提供了音频播放模块的代码框架。该方案适用于在嵌入式设备上实现高效语音压缩传输应用。
2025-11-16 07:30:00
188
原创 STC32G8K64+CAN2.0B扩展帧 实现固件升级功能-2.用户程序
【代码】STC32G8K64+CAN2.0B扩展帧 实现固件升级功能-2.用户程序。
2025-11-02 13:42:22
122
原创 STC32G8K64+CAN2.0B扩展帧 实现固件升级功能-1.BootLoader程序
【代码】STC32G8K64+CAN2.0B扩展帧 实现固件升级功能-BootLoader程序。
2025-11-02 13:42:04
81
原创 STC32G8K64+CAN2.0B扩展帧 实现固件升级功能-3.上位机MFC程序
【代码】STC32G8K64+CAN2.0B扩展帧 实现固件升级功能-3.上位机MFC程序。
2025-11-02 13:41:50
76
原创 STC32G12K128 串口1、2、3、定时器0、看门狗 非中断模式基本使用
【代码】STC32G12K128 串口1、2、3、定时器0、看门狗 非中断模式基本使用。
2025-10-30 19:40:02
183
原创 STC32G12K128 串口3中断模式与电脑收发不定长数据-软件超时
本文实现了基于STC32G的UART3串口通信功能,主要包括初始化配置、中断处理和超时接收管理。代码定义波特率为2400,采用8N1格式,使用Timer3作为波特率发生器。通过中断方式实现数据收发,接收缓冲区大小为256字节,包含接收超时处理机制(5倍字符间隔时间+30ms)。功能包括:UART3初始化配置、中断服务程序(处理收发标志位)、接收超时状态机(1ms定时检测)以及字符串发送函数。该实现支持查询模式发送数据,并具备接收数据自动清空和长度统计功能。
2025-10-30 19:19:45
87
原创 连接的串口设备太多,实现自动搜索串口设备功能 找到所需的串口
本文介绍了一个自动搜索串口设备的实现方案。当电脑连接多个串口设备时,通过编写AutoScanDevice()函数自动遍历所有可用串口和波特率组合,具体流程包括:1)搜索所有可用串口;2)定义常用波特率数组;3)依次尝试每个串口和波特率组合;4)成功打开串口后发送搜索协议;5)通过检查设备映射mapDeviceAll判断是否找到设备。该方案可有效解决多串口环境下手动查找的繁琐问题,并提供了取消搜索和结果反馈功能。核心代码展示了串口选择、波特率设置、设备搜索等关键步骤的实现逻辑。
2025-10-30 19:01:44
82
原创 未在计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序”
未在计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序”:连接失败: 未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序。
2025-10-30 08:51:06
187
原创 MFC 在list右键弹出菜单栏功能 ,在list控件自定义绘制按钮控件
ON_NOTIFY(NM_CUSTOMDRAW, IDC_LIST_DebugDev, OnCustomDraw) //list绘制按钮ON_NOTIFY(NM_CLICK, IDC_LIST_DebugDev, &CNetworkToolDlg::OnNMClickList) //list按钮点击事件ON_NOTIFY(NM_RCLICK, IDC_LIST_DebugDev, &CNetworkToolDlg::OnNMRClickListDebugdev) //list按钮右击事件。
2025-10-20 16:39:54
145
原创 c++&MFC 用boost.asio库写的串口功能,包含发送、异步接收、打开、重连、关闭功能;整合成CAN2.0B扩展帧发送
【代码】c++&MFC 用boost.asio库写的串口功能,包含发送、异步接收、打开、重连、关闭功能。
2025-10-02 20:02:21
177
原创 STC32G 用模拟PWM实现LED调光功能
在其它地方调用 Set_LED_Brightness(uint8_t led, uint8_t brightness) 即可设置led亮度。
2025-10-01 18:53:36
81
原创 STC32G单片机 配合定时器1实现按键KEY 消抖、短按、长按、短按释放、长按释放
【代码】STC32G单片机 配合定时器1实现按键KEY 消抖、短按、长按、短按释放、长按释放。
2025-09-21 14:30:00
146
原创 STC32G12K128 RS485用串口4使用DMA中断模式与电脑收发不定长数据-软件超时
【代码】STC32G12K128 串口2使用DMA中断模式与电脑收发不定长数据-软件超时。
2025-09-21 11:45:00
120
自制计数器1.0-原理图+PCB+程序+外壳+资料.zip
2021-06-18
stm32f429+串口激光测距模块+SD卡FatFs系统+RTC+stmflash+tim定时器+spi_flash+硬石的串口屏-2020-9-29
2020-09-29
stm32f429+串口激光测距模块+SD卡FatFs系统+RTC+stmflash+tim定时器+spi_flash+硬石的串口屏-2020-10-12
2020-10-12
温控板2.5-STM32F10x+6路DS18B20+1路DHT11温湿度模块+Timer定时器+stmflash+外部中断按键+LCD12864SPI串口驱动
2020-09-29
2SD1760 60V3A三极管NPN-TO252.pdf
2020-12-24
2SC5609-PNP 50V200mA三极管SOT23.pdf
2020-12-24
PY32F403移植Fatfs文件系统+播放(MAX4466+3W扬声器)+录音(8002D+驻极体)
2025-12-13
TCP服务器 基于MFC C++实现
2023-07-27
MDK531.ZIP MDK531.ZIP
2023-05-21
C#实现FTP上传、下载、删除文件,扫描(正则过滤)指定文件并上传
2022-07-30
C# winform 开机自启动时最小化到托盘 双击显示窗体,右击显示菜单 FTP文件上传下载(解决多网卡问题)
2022-07-16
海康相机SDK二次开发
2022-05-24
计数器 和2路输出Counter1.0.zip
2021-12-13
三菱FX3SA PLC连接威纶通MT6071iE触摸屏+计数器使用+循环执行N次+暂停+触摸屏软件安装包.zip
2021-12-31
对stm32多个不同的gpio同时赋值
2020-05-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅