自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(239)
  • 资源 (4)
  • 收藏
  • 关注

原创 Bazel构建工具入门

本篇介绍了Bazel构建工具的基础知识,并在Ubuntu中进行环境配置,使用一个最基础的hello word程序进行编译运行测试。

2026-10-19 22:13:52 188

原创 如何在Ubuntu安装Docker

Docker提供轻量级容器化解决方案,实现应用跨环境一致运行。本文详述Ubuntu下Docker安装流程:更新系统、添加阿里云GPG密钥与镜像源,安装Docker Engine及组件,配置用户权限。针对hello-world拉取失败问题,通过配置国内镜像加速并重启服务解决。最终验证成功,实现快速部署与环境一致性保障。

2026-10-19 22:13:00 195

原创 车载ADAS功能简介

本文系统介绍ADAS核心功能:ACC(自适应巡航)、FCW(前方碰撞预警)、AEB(自动紧急制动)、RCT(后方横穿预警/制动)及ELK(紧急车道保持),均基于“感知→融合→预测→决策→控制”链路,实现纵向与横向安全辅助。各功能依优先级协同工作,仅辅助干预,不替代驾驶员。其中,ACC为纵向巡航基础,FCW/AEB构成主动安全兜底,RCT保障倒车安全,ELK应对无意识越线风险,共同构建L2级辅助驾驶核心能力。

2026-10-19 22:12:01 112

原创 QNX内存分析-vmstat探究

本文解析了QNX系统中进程/proc/<pid>/vmstat文件各字段含义,结合pmap数据验证其统计逻辑。通过对比十六进制与十进制页数、内存大小换算,发现map_size、map_phys、map_shared等字段普遍比实际pmap统计多3页,vm_region多1页,而map_private与anon_rsv等于pmap的预留页数之和,rlimit_data对应堆段大小。结果表明,部分字段存在固定偏移(+1/+3),整体与pmap映射信息高度一致,为进程内存分析提供可靠依据。

2026-10-19 22:08:07 212

原创 QNX内存分析-mappings探究

mappings数据以页为单位(4K)详细展示虚拟内存映射,每行对应一页,新增物理地址(mi_paddr)等页级信息,与pmap相比更精细。其字段分为ri_(段级)和mi_(页级),其中mi_paddr提供物理地址,是pmap缺失的关键信息。通过对比可见,mappings在页粒度上扩展了保护、标志、硬件属性等细节,适用于深入分析内存布局与访问权限。

2026-10-19 22:07:14 196

原创 QNX内存分析-pmap探究

本文延续上篇对QNX进程内存分析,对比使用pidin -p <pid> mem与cat /proc/<pid>/pmap获取的内存信息。通过分析proc/boot/slogger2(PID 16387)的内存布局,发现两者数据一致:pidin mem汇总显示代码、数据、堆栈等,而pmap提供详细虚拟地址映射,包括共享内存、ELF段及权限信息,二者互补,共同助力精准定位内存使用情况。

2026-09-22 21:48:28 228

原创 QNX内存分析-pidin mem探究

本文探究QNX系统中pidin mem指令的内存信息显示机制。通过分析ELF格式的.text、.data与.bss段,揭示code(.text+.rodata)、data(.data)及**zero ELF**(.bss)的内存映射逻辑。以procnto-smp-instr进程为例,解析其多线程栈使用情况,验证总栈空间164K的分配合理性,并说明READY、INTR等状态与内存占用的关系,深入理解QNX进程内存视图的构成原理。

2026-09-22 21:47:42 133

原创 什么是QNX系统,如何在VirtualBox中安装QNX系统

QNX是黑莓旗下的硬实时微内核操作系统,以高可靠性、确定性实时和安全隔离著称,广泛应用于汽车电子、医疗设备、航空轨道交通等领域。其微内核设计将文件系统、驱动等运行于用户态独立进程,实现故障隔离,单组件崩溃不致系统宕机。相比Linux宏内核,QNX具备更强实时性与功能安全性,但需商业授权。通过QNX SDP开发套件可在Windows上构建QNX镜像,并借助mkqnximage工具在VirtualBox中快速部署运行,支持图形界面与网络配置,适用于嵌入式系统开发与测试。

2026-09-13 17:02:12 197

原创 CAN协议基础-CAN协议种类与CAN数据帧

本文系统介绍CAN协议,涵盖其发展历程、多主通信、差分信号传输等核心特性。按速率与功能分为经典CAN(低速/高速)、CAN FD(最高8Mbps,64字节)及CAN XL(20Mbps,2048字节),满足汽车与工业领域对高可靠、高速通信的需求。详细解析物理层结构、帧类型(数据帧、遥控帧等)及标准/扩展帧格式,重点阐述帧起始、仲裁、数据、CRC、ACK等关键段作用,全面展现CAN协议在现代智能系统中的基础地位。

2026-09-13 17:01:13 131

原创 ROS2订阅话题C++编程示例

本文介绍了ROS2中话题订阅的C++实现方法,通过create_subscription创建订阅器,接收发布者发布的PersonInfo消息。重点讲解了QoS参数(队列深度、可靠性、持久性)及其对通信的影响,并对比了绑定成员函数与Lambda表达式两种回调写法。强调发布与订阅双方需匹配话题名和QoS策略,确保消息正常传输。结合上一篇发布器示例,完整实现了数据的发布与订阅流程。

2026-09-13 17:00:13 187

原创 ROS2发布自定义数据C++编程示例

本文介绍了在ROS2中实现自定义消息发布功能的详细步骤,主要内容包括: 创建自定义消息包test_msg 定义PersonInfo.msg消息结构体 配置package.xml和CMakeLists.txt实现消息生成 创建发布节点包test_02_publish 编写发布者节点代码,实现周期性发布PersonInfo消息 添加对rclcpp和test_msg的依赖 编译与测试 使用colcon编译两个功能包 运行发布节点并通过ros2 topic echo验证消息接收 文章详细说明了ROS2中自定义消息的

2026-08-20 23:06:15 216

原创 ClaudeCode搭配DeepSeek在Windows和Linux中的安装教程

本文介绍了AI辅助编程工具Claude Code的安装配置方法,支持Windows和Linux双平台。在Windows系统中可通过npm安装Node.js和Claude Code,配置DeepSeek模型API实现功能;Linux服务器端同样基于npm安装,需额外处理权限问题。两种环境均支持与VSCode插件集成,通过自然语言交互辅助代码分析和修改。文章提供了完整的安装步骤、配置文件示例及问题解决方案,帮助开发者快速搭建AI编程辅助环境,提升开发效率。

2026-08-20 23:05:23 347

原创 Ubuntu20安装ROS2-FoxyFitzroy与C++基础测试

本文介绍了在Ubuntu 20.04系统上安装ROS 2 Foxy Fitzroy版本的详细步骤,包括配置语言环境、添加软件源、安装桌面完整版等。安装完成后,通过运行小乌龟例程和C++功能包测试验证安装是否成功。主要内容包括:1)系统环境配置与依赖安装;2)ROS 2核心组件安装;3)创建工作空间并创建C++功能包;4)编写简单节点程序验证rclcpp功能。文章提供了完整的命令流程和关键步骤的截图说明。

2026-08-16 13:38:59 261

原创 汽车诊断-UDS协议的26个服务基础介绍

本文介绍了汽车电子领域中广泛应用的统一诊断服务协议UDS(Unified Diagnostic Services)。UDS是ISO 14229定义的应用层协议,用于车辆诊断,支持CAN和以太网传输。协议包含26个诊断服务,分为六大功能单元:诊断会话管理、故障码传输、数据读写、输入输出控制、例行程序管理、以及文件上传下载。其中10/11/19/22/2E等常用服务分别用于会话控制、ECU复位、读取故障码、读写数据等操作。文章还解释了ECU、DTC等专业术语,并指出UDS为汽车诊断提供了标准化框架,主机厂可根据

2026-08-10 21:51:10 216

原创 VSCode的Markdown插件哪个好用

摘要:本文介绍了4款VSCode插件作为Typora替代方案,用于Markdown文档编辑与预览: Markdown All in One:支持左右分屏同步显示源码和渲染效果 Office Viewer:提供类Word的格式化工具栏,可通过快捷键切换源码/预览视图 Markdown42:通过标签页切换视图,但预览区存在内容重叠问题 TabFlip:最接近Typora的单视图切换体验,但可能存在图片显示兼容性问题 各插件在视图布局(分屏/单屏切换)、功能集成度和操作便捷性上各有特点,用户可根据习惯选择。建议使

2026-08-06 22:28:17 540

原创 从最简单的内存池入手,了解内存池原理

本文介绍了一个简单的内存池实现方案,通过预先分配固定大小的内存块并用链表管理,避免频繁向系统申请和释放内存。内存池包含MemPool类,管理空闲内存块链表(freeList)和内存池起始地址(memory)。内存块使用联合体结构,在空闲时记录next指针,使用时存储用户数据。测试中通过User类从内存池申请内存,验证了内存池分配和回收机制的正确性。该实现能有效减少内存碎片,提高内存管理效率,适用于需要频繁申请释放固定大小内存块的场景。

2026-08-06 22:23:37 159

原创 Linux进程内存监测与内存泄漏示例

本文介绍了嵌入式Linux开发中内存泄漏的检测方法。首先讲解了两种查看进程内存使用情况的方式:通过/proc/pid/status中的VmRSS获取物理内存占用,以及通过/proc/pid/smaps中的Private_Clean和Private_Dirty之和计算USS(进程独占内存)。文章提供了自动化脚本实现这两种指标的提取。 第二部分通过cJSON解析示例演示了内存泄漏场景:因使用一级指针而非二级指针导致JSON树内存未能释放。错误代码中,函数内部的指针修改无法传递到外部,造成内存泄漏。最后给出了正确

2026-06-15 23:49:31 208

原创 如何使用Google的breakpad工具排查程序崩溃问题

接口定义public:// 构造1:传入目录路径// 构造2:传入已打开的文件fd// 启用 microdump 极简崩溃日志// 获取接口path(string):minidump 文件写入的目录路径fd(int):直接写入到一个已打开的文件描述符(如 socket、管道、文件)本篇介绍了google的breakpad的使用,包括breakpad的安装、API介绍、示例代码、生成dmp文件并解析崩溃位置,转为core文件并使用gdb调试。

2026-05-10 20:05:18 412

原创 用cJson的例子,来理解二级指针

本文介绍了二级指针在C语言中的使用场景,重点通过解析JSON文件的示例进行说明。首先回顾了一级指针的用法,指出当需要通过函数参数传递指针类型数据时,需要使用二级指针。文章提供了两个具体示例:第一个示例展示了直接在main函数中读取和解析JSON文件;第二个示例将JSON解析封装成函数,通过二级指针参数返回解析结果。最后提出进一步封装的需求,即通过比较两个JSON文件的版本号,返回版本更高的JSON树结构。文章通过内存地址打印和图示,清晰地展示了二级指针在函数参数传递中的工作原理。

2026-04-27 23:13:43 448

原创 用简单的例子,来理解C指针

本文介绍了C/C++中指针的基本概念及其使用场景。指针本质是一个存储内存地址的变量,通过指针可以实现直接内存访问、高效数据传递等功能。文章通过两数相加的例子,对比了使用返回值传递结果和通过指针参数传递结果的差异,详细分析了形参/实参的内存关系,并演示了指针传参的正确用法。同时指出了常见的空指针解引用错误,通过内存示意图直观展示了变量地址关系,帮助理解指针在函数参数传递中的工作原理。

2026-04-20 23:44:24 432

原创 使用cJosn读写配置文件

本文介绍了使用C语言读写JSON配置文件的方法,重点演示了如何解析和修改配置数据。通过cJSON库实现文件读取、数据解析和类型判断,支持整数、浮点数、字符串和数组等常见数据类型的处理。文章详细展示了配置文件的定义、加载解析流程、数据打印以及基于类型的字段修改功能,为嵌入式系统等场景下的配置文件管理提供了实用解决方案。

2026-03-30 23:23:14 443

原创 CRC校验基础介绍与C代码示例

摘要 CRC(循环冗余校验)是一种基于二进制模2除法的数据校验算法,通过生成固定长度的校验码来验证数据完整性。一套CRC算法由5个参数决定:位宽、多项式、初始值、输入反转和输出反转/异或。文中提供了常见CRC算法的参数对照表,并展示了CRC-16(MODBUS)的C语言实现示例,包括查表法计算和结构体数据校验应用。示例代码演示了如何对设备配置结构体进行CRC校验,确保数据在传输或存储过程中的正确性。

2026-03-28 09:57:13 339

原创 curl使用读回调来分块上报文件

本文介绍了使用cURL库实现文件分段上传的方法。通过自定义读回调函数file_read_cb和UploadInfo_t结构体记录上传进度,每次回调时从指定偏移量读取指定长度的文件内容。示例代码演示了如何使用fopen和fseeko实现分段读取,并实时显示上传进度百分比。该方法适用于大文件上传场景,相比直接上传整个文件更灵活可靠。

2026-01-19 23:20:13 532

原创 C语言结构体对齐是怎么计算

摘要:本文探讨了C/C++中结构体对齐问题,通过实例分析结构体成员大小累加与整体大小的差异。介绍了sizeof和offsetof的使用方法,并通过代码实测展示了结构体内存对齐现象。结果显示,由于字节对齐机制,结构体成员大小累加和与整体大小不一致,验证了结构体对齐对内存占用的影响。文章还提供了打印结构体成员地址的方法,帮助理解内存对齐的具体表现。

2026-01-12 22:58:11 1261

原创 嵌入式Linux利用core-dump文件和gdb工具分析程序崩溃问题

本文介绍了通过core-dump文件定位程序崩溃问题的方法。首先说明了开启core-dump文件生成的条件,包括临时和永久配置方案,以及自定义core文件名称和目录的方法。接着在Ubuntu虚拟机和嵌入式Linux板子上进行了测试,演示了编译调试代码、生成core文件并使用gdb分析的过程。重点解决了嵌入式Linux中永久配置core-dump的问题,包括修改limits.conf、sysctl.conf等系统文件,并添加开机启动脚本。最后针对交叉编译环境下的调试问题,建议使用静态链接编译程序以确保gdb能

2025-12-29 23:05:50 1389

原创 curl编程实例-上传文件

本文介绍了使用C语言的curl库实现文件上传功能,详细讲解了HTTP的PUT和POST上传方法及其幂等性差异。文章提供了完整的C代码示例,支持PUT/POST两种上传模式,包含进度显示和文件名传递功能。同时介绍了如何用Python搭建简易文件服务器用于测试,并给出了关键代码实现。通过这篇文章,读者可以掌握使用curl进行文件上传编程的完整流程,包括客户端和服务端的实现。

2025-12-22 22:54:18 1066

原创 使用wpa工具配网、udhcpc分配IP的过程分析

本文介绍了在嵌入式Linux开发板中使用wpa_supplicant进行Wi-Fi配网和udhcp工具分配IP的方法。主要内容包括: wpa_supplicant的基础配置,包括创建配置文件、核心参数说明(如ctrl_interface、ssid、psk等) 详细解析了全局配置项和network块配置项,涵盖连接管理、认证方式、日志级别等关键参数 通过示例展示了如何配置Wi-Fi连接信息,包括SSID、密码以及认证方式等 摘要重点突出了wpa_supplicant的核心功能和配置要点,适用于嵌入式Linux

2025-12-08 23:10:31 1700 1

原创 pyQt实现控件的展示与隐藏

本文介绍了使用PyQt5实现通过勾选框控制组件显示/隐藏的功能。通过QCheckBox作为控制开关,当勾选状态变化时触发信号,调用槽函数控制包含目标组件的QWidget容器的可见性。关键点包括:使用QWidget包装布局组件以支持setVisible方法,通过stateChanged信号绑定控制逻辑,并采用QVBoxLayout和QHBoxLayout进行界面布局。完整代码实现了包含复选框控制区域和文本输入区域的界面,演示了勾选框选中时显示三个项目标签,取消勾选时隐藏项目并自动调整布局的效果。

2025-11-28 19:31:21 787

原创 使用cJosn将数据读写文件

本文介绍了使用cJSON库操作JSON数据的方法。cJSON是一个轻量级C语言JSON解析库,支持创建、解析、修改和序列化JSON数据。主要内容包括:1)JSON对象和数组的创建API;2)添加元素的API;3)JSON字符串解析方法;4)读取JSON字段值的接口;5)修改JSON元素值的函数;6)将JSON对象转换为字符串的序列化方法。文章还提供了各种API的功能说明表格,方便开发者快速查找和使用cJSON库的功能。

2025-10-31 22:56:57 986

原创 AES加密C代码实现

本文通过C语言代码实现AES加密过程,先使用纯C代码定义密钥位数、轮数、S-box表等常量,并实现密钥扩展算法。密钥扩展过程分为两类:对4的倍数列进行旋转字节、S-box代换和轮常量异或操作,非4倍数列则直接与前4列异或。代码通过打印调试信息展示扩展过程,确保正确性。后续将对比OpenSSL库和第三方网站结果验证实现。全文重点在于从理论到实践的转换,通过代码示例帮助理解AES加密的具体步骤。

2025-10-26 20:11:39 1073

原创 图解AES密钥扩展与加密过程

本文详细介绍了AES-128对称加密算法的原理与实现过程。AES是一种分组加密算法,采用128位密钥和10轮加密流程。文章首先阐述了AES的核心特性,包括对称加密、分组处理和矩阵变换机制。然后通过具体示例,逐步解析了密钥扩展过程(从种子密钥生成11个子密钥)和完整的加密流程(初始变换、9轮循环运算和最终轮),详细说明了字节代换、行移位、列混淆和轮密钥加等关键步骤的运算规则。最后展示了一个16字节字符串的完整加密过程,帮助读者理解AES加密算法的底层实现机制。

2025-10-15 22:38:16 1683

原创 pyQt实现一种按钮切换关联变化的勾选框的逻辑

本文介绍了使用Python和PyQt实现产品型号与功能关联切换的界面设计方法。主要内容包括:通过QRadioButton和QGroupBox实现型号单选按钮组,使用QCheckBox展示功能选项;采用字典存储型号与功能的映射关系;通过清除布局组件并重新添加的方式实现动态切换功能展示。关键点在于使用QVBoxLayout和QHBoxLayout进行界面布局,以及利用槽函数处理型号切换事件。该方案提供了清晰的代码结构,实现了产品型号与功能的动态关联展示。

2025-10-04 17:28:27 1493

原创 C语言实现一个简易数据库

本文介绍了一种简易数据库的实现方法,适用于嵌入式系统等资源受限环境。该数据库采用key-value存储模式,支持整型、浮点型和字符串三种数据类型。数据库以二进制文件形式存储数据,每条记录包含键名、值类型、值长度和值数据。文章详细讲解了数据库的数据结构设计,包括ValueType枚举、Value联合体和KVNode键值对结构,并提供了完整的C语言实现代码,包含打开/关闭数据库、插入/更新、查询、删除和遍历等基本操作接口。这种简易数据库方案在数据量不大时能有效管理数据,避免了引入专业数据库的复杂性。

2025-10-04 17:23:11 1792

原创 文件检查与拷贝-简化版

本文介绍了一个优化的Shell脚本,用于智能同步两个目录。脚本通过遍历源目录下的所有文件,使用cmp命令高效比较文件差异,仅复制不一致的文件。关键功能包括:自动创建目标子目录、实时显示处理进度、统计实际拷贝数量。相比使用MD5校验的方式,该方法显著提高了比较效率。脚本通过路径处理、条件判断和进度显示等功能,实现了可靠的文件同步操作,适用于需要增量备份或目录同步的场景。

2025-09-12 22:39:22 1659

原创 shell脚本练习:文件检查与拷贝

本文介绍了一个实现文件拷贝的Shell脚本,主要功能包括: 检查源目录和目标目录路径有效性 统计源目录文件/子目录数量 通过MD5校验文件差异(使用find遍历文件,md5sum计算哈希值) 记录需要拷贝的文件和创建的目录 支持用户确认后再执行拷贝 关键点: 使用find命令递归查找文件 通过md5sum比较文件内容差异 利用临时文件存储处理信息 提供详细的执行确认提示 该脚本实现了安全可靠的文件同步功能,适用于需要校验文件完整性的备份场景。

2025-09-12 22:37:41 1577

原创 如何使用curl编程来下载文件

本文介绍了libcurl库的基础使用,重点讲解如何通过C语言实现文件下载功能。文章首先概述了libcurl作为一个跨平台网络传输库的特性,详细解析其核心数据结构:CURL句柄(具有独立性、可复用性和状态存储特性)和CURLcode返回值(包含80多种错误代码枚举)。通过具体代码示例,展示了如何利用libcurl进行文件下载操作,包括初始化、配置选项和错误处理等关键步骤。内容涵盖了从基础概念到实际应用的完整流程,为开发者提供了一份清晰的libcurl入门指南。

2025-08-11 22:50:40 1415

原创 C语言如何安全的进行字符串拷贝

本文探讨了C语言中字符串拷贝的安全性问题,重点分析了strcpy和strncpy函数的使用方法及潜在风险。strcpy函数存在缓冲区溢出风险,当目标空间不足时会导致越界拷贝,可能破坏相邻内存数据。strncpy作为安全版本允许指定拷贝长度,但需注意手动添加字符串终止符'\0'的问题。文章通过具体代码示例展示了两种函数的正确用法,并对比了拷贝越界时的情况。最后建议在不确定字符串长度时优先使用strncpy,同时确保目标缓冲区足够大并正确处理字符串终止符,以提高程序安全性。

2025-08-11 22:49:52 1639

原创 内存问题排查工具ASan初探

文章摘要 本文介绍了ASan(AddressSanitizer)内存错误检测工具及其在C/C++程序中的应用。ASan由Google开发,通过编译时插桩技术检测内存使用错误,如未分配/释放内存访问、堆栈溢出等,并提供详细错误报告。文章详细说明了ASan的编译选项(-fsanitize=address)和常见参数(如leak、thread等),并通过三个实例展示了其检测能力:内存泄漏(24字节泄漏)、堆缓冲区溢出(memcpy越界12字节)和栈缓冲区溢出(固定数组越界)。ASan能精准定位错误位置和内存分配信

2025-08-11 22:48:54 1802

原创 如何使用backtrace定位Linux程序的崩溃位置

摘要:利用backtrace定位嵌入式Linux程序崩溃问题 在嵌入式Linux开发中,多人协作时定位代码崩溃点往往困难。本文介绍使用backtrace工具快速定位崩溃位置的方法。当程序崩溃触发SIGSEGV等信号时,通过signal捕获信号并在handler中调用backtrace获取调用栈信息,配合addr2line工具将地址转换为可读的函数名和行号。关键步骤包括:编译时添加-g调试选项,使用backtrace获取堆栈地址,backtrace_symbols转换地址为字符串,addr2line解析具体代

2025-07-05 23:25:08 1701

原创 如何给printf打印增加颜色、时间戳、文件名、行号、函数名

本文介绍了在嵌入式Linux开发中优化日志打印的方法,通过添加颜色、等级标识等额外信息提高调试效率。首先解释了终端颜色控制原理(如"\033[31m"表示红色),并给出了基础颜色打印示例。然后展示了通过宏定义封装不同颜色等级的打印函数(如ERROR用红色,WARNING用黄色)。文中还详细说明了可变参数宏##__VA_ARGS__的作用,以及如何避免空参数导致的语法错误。最后提出了一个综合封装方案,将颜色代码、等级标识(INFO/WARN/ERRO)整合到统一打印宏中,使日志输出更结构化

2025-06-16 22:46:24 1744

GD32各系列官方源码例程.rar #资源达人分享计划#

GD32各系列官方例程源码,包括:103系列,105系列,107系列,130系列,150系列,170系列,190系列,205系列,207系列,303系列,305系列,307系列,330系列,350系列,403系列,407系列,450系列

2021-08-04

MPU6050资料(内含测试源码)

MPU6050资料,包含数据手册及51 Arduino STM32的测试程序。

2015-07-23

GD32F4xx数据手册.rar #资源达人分享计划#

GD32F4xx数据手册,包括: GD32F4xx_User_Manual_CN_Rev2.3.pdf、 GD32F4xx_User_Manual_EN_V2.2-2.pdf、 GD32F450xx_Datasheet_Rev1.1.pdf、 GD32450I-EVAL__User Manual.pdf、 使用说明_GD-Link Programmer_v4.0.pdf、 GD32F4xx.pdf、 GD32_USBFS_USBHS_gujiankuyonghuzhinan_Rev1.0.pdf

2021-08-04

FreeRTOS+STM32F407+Keil工程模板

压缩包内有3个文件夹: 1. Template_lib:建立工程需要的库文件,包括STM32库文件(v1.4.0)和FreeRTOS库文件(v9.0.0) 2. Template_noOS:基于Keil5.15的STM32F407工程模板(未使用FreeRTOS) 3. Template_FreeRTOS:基于Keil5.15的STM32F407+FreeRTOS工程模板

2020-05-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除