- 博客(45)
- 资源 (2)
- 收藏
- 关注
原创 C++实现10大经典算法代码讲解(干货分享~~!)
以上算法覆盖了排序、搜索、图论、动态规划等核心领域,代码示例均使用C++标准库实现,注重可读性与效率。理解这些算法原理对编程能力提升至关重要。
2025-03-25 07:08:33
770
原创 C语言实现10大经典算法代码讲解(干货分享)
时间复杂度平均O(n log n),最差O(n²)。printf("最大价值: %d", knapSack(W, wt, val, n));时间复杂度稳定O(n log n)。printf("模式出现在索引 %d\n", i-j);printf("第10项斐波那契数: %d", fib(10));printf("元素在索引 %d 处", result);时间复杂度O(V+E)。:在有序数组中每次比较中间元素,时间复杂度O(log n)。:利用最长前缀后缀数组避免回溯,时间复杂度O(n+m)。
2025-03-25 07:03:21
883
原创 Proteus使用教程与经验技巧总结(干货分享~~!)
Proteus 是一款功能强大的电子设计自动化(EDA)工具,广泛用于电路仿真、PCB 设计和嵌入式系统开发。:从官网下载安装包,选择适合的版本(如 Proteus 8/9/10),注意安装时勾选所有组件(ISIS 电路设计、ARES PCB 设计、VSM 单片机仿真)。→ 搜索元件(如电阻输入“RES”、LED 输入“LED-RED”、单片机输入“AT89C51”)。(虚拟系统建模):支持单片机(如 Arduino、51、STM32)的代码调试与交互仿真。按钮启动仿真,观察电压、电流波形或逻辑状态。
2025-03-24 07:06:59
726
原创 嵌入式与单片机开发常用软件介绍
嵌入式软件开发和单片机软件开发涉及多个工具链和软件,涵盖开发环境、编译器、调试工具、仿真器、实时操作系统(RTOS)等。:Linux 基金会维护的开源 RTOS,支持多种架构(ARM、RISC-V、Xtensa 等),适合物联网设备。:跨平台(VS Code 插件),开源免费,支持多框架(Arduino、CMSIS 等),依赖库管理方便。:开源调试工具,支持多种调试硬件(如 J-Link、ST-Link),常用于 Linux 环境。:国产开源 RTOS,支持多任务、文件系统、网络协议栈(如 LwIP)。
2025-03-24 06:56:58
613
原创 Eclipse IDE使用教程与技巧总结(干货分享~~!)
Eclipse是一款开源、跨平台的集成开发环境(IDE),支持多种编程语言(Java、C/C++、Python、PHP等),尤其以Java开发著称。其核心优势包括插件扩展机制、强大的调试能力和丰富的社区资源。
2025-03-24 06:46:08
491
原创 Linux开发常用工具介绍
在Linux开发中,开发者通常会使用一系列工具来提高效率,涵盖代码编写、调试、构建、版本控制、性能优化等环节。微软开源的现代化编辑器,支持跨平台,内置Git集成、调试工具,通过插件(如C/C++、Python、Rust扩展)覆盖多种语言。插件生态丰富(如代码补全、语法高亮)。更现代化的C/C++编译器,错误提示更友好,常用于大型项目(如Linux内核部分模块)。GNU C/C++编译器,Linux开发的核心工具。更快的构建系统组合,适合现代项目(如GNOME)。谷歌开源的构建工具,支持多语言和分布式构建。
2025-03-24 06:42:21
630
原创 Git Windows版安装与使用教程(干货分享~~!)
git remote add origin https://github.com/用户名/仓库名.git。git remote set-url origin git@github.com:用户名/仓库名.git。git clone https://github.com/用户名/仓库名.git。git config --global user.name "你的用户名"git config --global user.email "你的邮箱"ssh-keygen -t ed25519 -C "你的邮箱"
2025-03-23 20:59:20
1024
原创 Keil5软件与硬件仿真调试指南(纯干货分享~~!)
需连接开发板(如 STM32)和调试器(如 ST-Link、J-Link)。将调试器(如 ST-Link)通过 SWD/JTAG 接口连接到开发板。安装调试器驱动(如 ST-Link USB Driver)。> 选择外设(如 GPIO、UART),查看寄存器配置。选择硬件调试器(如 ST-Link Debugger)。:选择目标芯片型号(如 STM32F103C8T6)。确认 SWD 接线正确(CLK、DIO、GND)。软件仿真无法模拟所有外设(如 ADC、USB)。,添加信号(如 GPIO 引脚)。
2025-03-23 11:35:30
452
原创 大白话讲解:RISC-V:开源指令集架构简介
RISC-V就像芯片界的Android——开源、自由、低成本,可能颠覆传统巨头的游戏规则。虽然现在生态还不完善,但绝对是未来趋势!(再补个梗图脑补:ARM和x86在收过路费,RISC-V开着敞篷车喊:“兄弟们,上高速!免费!”)🚗。
2025-03-23 11:18:38
281
原创 嵌入式工程师技术成长与避坑指南(20年一线开发调试经验分享~~!)
作为一名在嵌入式领域深耕20余年的工程师,我的技术成长轨迹可以用"螺旋上升"来形容。
2025-03-23 10:55:45
648
原创 ##20年嵌入式软件开发老鸟含泪分享开发经历&闭坑指南@@
但正因为这样,每次搞定一个坑,那种"老子又活下来了"的爽感,比什么狗屁KPI都带劲!:嵌入式系统能用定点数绝不用浮点!电源用隔离DC-DC,信号用磁耦或容耦隔离,地线给老子加共模电感!:自己写的SPI屏驱动没注释,三年后新人接手改参数,把60fps改成75fps直接花屏,整个项目延期一个月。:PID控制用float计算,不同编译器优化后精度不一致,导致工业烤箱温度震荡±15℃,烤出一炉子废品。:用bsdiff算法做差分升级,没考虑flash擦除粒度,升级后数据错位,3000台智能锁集体变砖。
2025-03-23 10:51:16
552
原创 RS232、RS422、RS485通信接口详解(干货分享~~!)
RS232:适合短距离、简单点对点通信,逐渐被 USB 取代。RS422:用于长距离、高可靠性点对点或单向广播场景。RS485:工业领域主流标准,支持复杂多节点网络,兼顾距离、速率和抗干扰能力。根据具体需求选择接口:短距离调试可选 RS232,长距离单向传输用 RS422,而工业多设备网络优选 RS485。
2025-03-23 10:28:39
267
原创 I2C、SPI、UART、USART通信原理及差异详解(纯干货分享~!)
同步、全双工、主从架构的串行通信协议,通过四根线(MOSI、MISO、SCLK、CS)实现点对点或单主多从通信。起始位(START)→ 设备地址(含读/写位)→ 数据帧 → 确认位(ACK/NACK)→ 停止位(STOP)采用同步、半双工、主从架构的串行通信协议,通过两根线(SDA数据线 + SCL时钟线)实现多设备通信。速率:标准模式(100kbps)、快速模式(400kbps)、高速模式(3.4Mbps)起始位(低电平)→ 数据位(5-9位)→ 可选的奇偶校验位 → 停止位(高电平)
2025-03-23 10:25:40
418
原创 uClinux嵌入式操作系统学习研究入门教程及经验技巧总结
uClinux专为无MMU(内存管理单元)的微处理器(如ARM7TDMI、Coldfire)设计,采用实存储器管理(real memory management),所有地址均为物理地址,进程共享同一地址空间,需手动管理内存分配和连续性问题18。:安装交叉编译器(如arm-uclinuxeabi)、调试工具(GDB)、版本控制(Git)179。从简单项目入手,如LED控制、串口通信,逐步扩展到复杂功能(如网络通信、GUI开发)29。《嵌入式Linux应用开发完全手册》:涵盖系统移植、驱动开发实战9。
2025-03-23 10:13:31
545
原创 RT-Thread嵌入式操作系统学习指南
明确学习目标结合职业需求(如跳槽加分或项目开发)或兴趣驱动,制定具体学习计划4。分阶段学习阶段1:掌握基础概念(线程、内存、中断),通过Demo理解运行流程47。阶段2:深入源码,研究内核调度、组件实现原理310。阶段3:参与开源项目,实践复杂应用(如物联网网关、智能家居)10。抽象思维与总结输出用思维导图梳理知识框架,避免陷入代码细节4。通过技术博客或文档输出学习心得,巩固知识并获取反馈412。
2025-03-23 10:11:10
737
原创 嵌入式轻量型OS操作系统介绍(包括各自的优劣及使用场景等差异)
内核极小(4-9KB ROM),RAM占用低(2-3KB),适合资源受限的MCU(如STM32、ESP32)148。:仅提供内核级功能(任务管理、队列、信号量等),需依赖第三方组件扩展(如GUI、文件系统)411。:集成文件系统、网络协议栈(如MQTT)、GUI等中间件,适合复杂物联网应用711。:抢占式调度,中断响应快,适用于硬实时场景(如医疗设备、工业自动化)19。:内核仅6KB ROM,适合超低功耗设备(如NB-IoT模块)511。:适合软实时场景,但对硬实时需求(如航空控制)支持有限59。
2025-03-23 10:09:19
846
原创 Proteus硬件设计软件的使用教程和经验技巧总结
若需自定义电压,放置“POWER”并修改属性(如+3.3V)89。打开软件后选择“File”→“New Project”,设置工程名称和保存路径,默认模板为A4图纸,用户可自定义尺寸或使用模板26。:通过“Template”→“Set Design Defaults”调整图纸颜色(推荐白色背景),修改元件颜色增强可读性29。:点击左上角“P”按钮,输入关键字(如“RES”为电阻,“LED-RED”为红色LED)快速查找元件26。:参考“51单片机点灯”和“电源稳压模块仿真”示例,掌握基础到进阶设计29。
2025-03-23 10:01:26
846
原创 FreeRTOS嵌入式系统使用总结与经验分享~~!
FreeRTOS 凭借其轻量级和灵活性,成为嵌入式实时系统开发的优选方案。核心在于合理设计任务、通信机制及资源管理。对于复杂系统,需结合硬件特性调试优化,确保实时性和稳定性。学习曲线较陡,但掌握后能显著提升嵌入式开发效率。
2025-03-23 10:00:00
925
原创 嵌入式操作系统UCOS-III使用总结
uC/OS-III凭借其高实时性、灵活的任务管理和丰富的同步机制,适用于复杂嵌入式场景。中断服务程序(ISR)应尽量简短,仅标记事件并由高优先级任务处理,避免长时间占用中断29。uC/OS-III始终执行最高优先级的就绪任务,支持任务抢占,适用于硬实时系统23。所有内核对象(任务、信号量、消息队列等)均在运行时动态分配,避免编译时资源浪费25。任务状态包括休眠、就绪、运行、等待和中断态,支持嵌套挂起(最多250层)59。:允许任务或ISR直接发送消息,支持超时等待机制,避免死锁25。
2025-03-23 09:54:16
605
原创 嵌入式操作系统UCOS-II使用总结与干货分享~~!
μC/OS-II凭借其轻量级、高实时性和可移植性,广泛应用于嵌入式领域。开发者需深入理解其任务调度、中断处理及内存管理机制,并结合实际需求优化配置。在复杂系统中,合理设计任务优先级与资源管理策略是确保稳定性的关键。更多细节可参考Jean Labrosse的《μC/OS-II源码解析》及官方移植指南。
2025-03-23 09:52:27
659
原创 对比&评价Altium designer、PADS和cadence是三款电路设计软件的优劣与差异总结(纯干货分享~~!)
集成原理图设计、PCB布局、仿真和3D模型于一体,界面直观友好,适合中小型项目;:稳定性高,对电脑配置要求低;:行业标杆,支持高速数字信号、高密度多层板设计,仿真和规则管理功能强大,适合大型团队协作359。:功能相对基础,处理复杂高速或多层板时效率低,资源占用高,更新频繁3711。:界面专业但复杂,需自定义快捷键,学习曲线陡峭,适合有经验的设计师359。:学习成本极高,操作复杂,需独立设置快捷键,对电脑配置要求高3711。:界面现代化,中文支持完善,快捷键设计合理,新手友好3712。
2025-03-23 09:49:17
245
原创 Cadence电路设计教程与技巧总结(纯干货分享~~!)
利用波形工具(Waveform Viewer)进行信号测量(周期、频率)、数学运算(FFT)及数据导出(CSV格式)8。原理图与版图设计:在新建的单元中选择“Schematic”或“Layout”视图,开始电路图或版图编辑110。配置仿真类型(如瞬态分析、交流分析),使用Cadence自带的仿真工具或集成HSPICE17。创建库文件,关联工艺库(如TSMC 35nm)并建立子项目单元(Cell View)19。:基于强化学习的芯片优化工具,可降低功耗5-6%,提升PPA(性能、功耗、面积)11。
2025-03-23 09:41:33
813
原创 PADS电路设计软件使用教程与技巧(干货分享~~!)
PADS是一款功能强大但学习曲线较陡的EDA工具,建议通过实际项目练习逐步掌握。重点熟悉规则驱动设计、模块复用和高速信号处理技巧。对于复杂设计,合理使用仿真工具(HyperLynx)能显著提升可靠性。
2025-03-23 09:39:39
834
原创 Altium Designer电路设计教程与技巧(干货分享~~!)
使用“Place→Line”绘制物理边框,并通过“Design→Board Shape→Define from Selected Objects”裁剪板形56。打开软件后,选择“文件→新建→项目”,设置项目名称和存储路径,并添加原理图(SchDoc)和PCB文件(PcbDoc)27。:用于时钟信号阻抗匹配,按“Shift+A”切换蛇形模式,设置振幅(Max Amplitude)与间隔(Gap)11。:在“Design→Rules”中定义线宽、间距、过孔参数等,适应不同信号需求310。
2025-03-23 09:38:19
519
原创 STM32 Cube MX 软件使用教程和技巧(纯干货分享~~!)
ST官方推出的图形化配置工具,用于生成STM32微控制器的初始化代码(基于HAL库/LL库),支持引脚分配、时钟树配置、外设初始化等。:减少底层代码编写时间,避免手动配置寄存器,兼容多种IDE(Keil、IAR、STM32CubeIDE等)。中配置低功耗模式(Stop/Standby模式),设置唤醒源(如RTC、外部中断)。:在引脚配置界面为GPIO引脚添加自定义标签(如LED1、KEY0),方便代码阅读。选择时钟源(HSE/HSI/LSE等),外部晶振需手动输入频率(如8MHz)。
2025-03-23 09:18:40
1195
原创 MATLAB仿真软件使用教程和技巧分享(纯干货分享~~!)
命令窗口(Command Window)、工作区(Workspace)、当前文件夹(Current Folder)、编辑器(Editor)和 Simulink 入口。% 传递函数 1/(s² + 2s + 1)save('result.mat', 't', 'y');通过以上方法和技巧,你可以快速上手 MATLAB 仿真,并提升代码效率和仿真精度。
2025-03-23 09:14:29
1216
原创 CorelDRAW 使用教程与技巧(干货分享~~!)
通过以上技巧与教程,用户可快速掌握 CorelDRAW 的核心功能,并结合实例练习提升设计效率。CorelDRAW 界面包括标题栏、菜单栏、工具栏、属性栏、工具箱、绘图窗口、状态栏、标尺等。:通过「立体化工具」为文字或图形添加3D效果,结合光源调整提升立体感5。:通过属性栏调整边数和锐度,星形默认镂空,多边星形填充中间111。选中多个方形,使用「镜像工具」垂直翻转,调整位置形成标志结构11。:使用「形状工具」调整路径节点,双击曲线可添加/删除节点111。:使用「排列→对齐与分布」精准对齐多个对象5。
2025-03-22 14:59:18
494
原创 Photoshop绘图软件使用技巧教程(干货分享~~!)
通过字母键快速切换工具,如选框(M)、移动(V)、画笔(B)等。按住Shift键使用油漆桶工具点击画布边缘,可快速更换画布颜色(默认恢复为25%灰度)17。:在首选项中勾选“启用绘画对称”,可绘制垂直、水平或径向对称图形,无需手动复制8。:按住空格键转换为手形工具(移动视图),按住Ctrl键临时切换为移动工具26。:将图片图层置于文字上方,按住Alt键点击图层间分隔线,快速创建剪切蒙版2。使用形状工具构建框架,结合混合模式和图层样式添加细节,最后添加文字4。:启用画笔工具的“平滑”功能,减少手抖影响8。
2025-03-22 14:57:01
296
原创 PPT使用技巧与经验分享总结(纯干货分享~~!)
推荐工具:Flourish(动态图表生成)、Think-Cell(专业图表插件)。使用「开始」→「排列」→「对齐工具」自动对齐元素,或开启「参考线」手动对齐。推荐:淡入、浮入、平滑切换,用「平滑」动画(PPT 2019+)提升流畅感。利用「替换字体」功能(设计→替换字体),或使用「格式刷」快速统一风格。推荐资源:Freepik(免费矢量素材)、Undraw(插画库)。裁剪为形状(圆形、六边形等),或使用「删除背景」工具抠图。:推荐无衬线字体(如微软雅黑、思源黑体),显现代感。
2025-03-22 14:50:46
235
原创 Excel使用技巧与经验分享(干货分享~~!)
设置常用序列(如部门名称、月份):「文件」→「选项」→「高级」→「编辑自定义列表」,输入后可通过填充柄快速填充。处理百万级数据,建立数据模型和复杂关系(需在「文件」→「选项」→「加载项」中启用)。选中数据区域 →「插入」→「数据透视表」,快速汇总、分类统计和分析数据。拖动字段到「行」、「列」、「值」区域,支持分组、排序、筛选和计算字段。:右键单元格 →「设置单元格格式」→「数字」→「自定义」,输入。选中数据区域 →「数据」→「删除重复值」,按指定列去重。,自动根据规律填充数据(如拆分姓名、合并信息等)。
2025-03-22 14:42:23
659
原创 Word使用技巧与高效操作指南(纯干货分享~~!)
在需要引用图表或标题的位置,点击「引用 → 交叉引用」,选择目标内容(如“图1”),实现动态更新。正确使用标题样式(如“标题1”“标题2”)后,点击「引用 → 目录 → 自动目录」一键生成。通过「开始」选项卡中的「样式」功能统一标题、正文格式,便于后续生成目录或批量修改。插入图片或表格时,右键选择「环绕文字 → 嵌入型」或「固定位置」,防止排版混乱。右键常用功能(如“格式刷”),选择「添加到快速访问工具栏」,方便一键调用。使用「通配符」:在「查找和替换」中勾选「使用通配符」,可用。即可快速应用相同颜色。
2025-03-22 14:39:55
319
原创 Linux Vim常用快捷键使用方法介绍(纯干货分享~~!)
Vim 是一款高效且功能强大的文本编辑器,但学习曲线较陡。建议先掌握基础操作,再逐步学习高级功能。掌握这些快捷键后,编辑效率会显著提升!:默认模式,用于执行命令。:从其他模式返回普通模式。:创建折叠(需先选择文本)自定义设置(如显示行号。:执行保存、退出等操作。:跳转到下一个匹配 /命令打开内置教程练习。:跳到下一个单词开头。:跳到上一个单词开头。:强制退出(不保存):保存所有文件并退出。
2025-03-22 14:09:05
809
原创 Git 使用教程与经验技巧分享(纯干货~~!)
存储在本地的代码版本库(.git目录)。:托管在服务器(如 GitHub、GitLab)的代码库。(Working Directory):本地修改的代码文件。(Staging Area):通过git add暂存待提交的修改。:通过git commit提交到本地版本库。:通过git push同步到服务器。
2025-03-22 14:06:54
892
原创 SVN代码版本管理软件---使用教程及经验技巧分享(纯干货~!)
所有代码历史存储在中央服务器,用户通过客户端与服务器交互。:中央代码库,存储所有版本数据。:本地从仓库检出的代码副本。:将本地修改上传到仓库。:将仓库最新代码同步到本地。
2025-03-22 14:01:47
767
原创 VMware Workstation Pro 虚拟机安装配置使用技巧(纯干货分享~~!)
检查系统要求:64位操作系统(Windows 10/11 或 Linux)、至少4GB内存(推荐8GB+)、开启CPU虚拟化支持(需在BIOS中启用Intel VT-x/AMD-V)。打开VMware,点击“创建新的虚拟机” > 选择“典型”或“自定义”(高级用户)。:新建虚拟磁盘(推荐SCSI类型),容量建议40GB+(动态分配更省空间)。:默认NAT模式(虚拟机共享主机IP),可选桥接模式(直接使用局域网IP)。:至少2GB(Windows建议4GB+,Linux 2GB+)。
2025-03-22 13:43:55
786
原创 100 个最常用的 Linux 命令及其使用场景、技巧和注意事项(纯干货~~!)
以易读格式显示文件大小(如 KB/MB)。命令深入学习每个工具的详细用法(如。(权限设置为 rwxr-xr-x)。:减少输入错误,快速补全命令或路径。(执行历史记录中第100条命令)。(快速查找文件,需先更新数据库。(重新执行上一条命令并提权)。保持进程运行(退出终端不终止)创建空文件或更新文件时间戳。分页查看文件(支持上下翻页,(查找大于10MB的文件)。实时显示系统进程状态(按。(磁盘拷贝,如制作启动盘)(将输入转换为命令行参数)(执行脚本并保留环境变量)(返回上一次所在目录)。
2025-03-22 13:29:02
775
原创 Ubuntu 20.04 LTS(Focal Fossa)的详细安装步骤与教程
通过以上步骤,你应该能顺利完成 Ubuntu 20.04 的安装与基础配置。如需双系统,建议提前在 Windows 中压缩出未分配空间(推荐 ≥30GB)。选择 U 盘,点击“开始”制作(注意:U 盘数据会被清空)。建议连接 Wi-Fi 或有线网络,方便安装更新和第三方软件。检查是否安装了无线网卡驱动,或通过有线网络安装驱动。检查 U 盘启动盘制作是否正确,尝试重新制作。(标准安装,包含办公软件、浏览器等)。(安全启动),并设置从 U 盘启动。插入 U 盘(容量 ≥4GB)。(安装第三方驱动和编解码器)。
2025-03-22 13:24:53
1024
原创 GCC 开发环境的使用经验与技巧总结(纯干货分享~!)
gcc -c file1.c file2.c # 生成 file1.o 和 file2.o。-DDEBUG # 定义宏 DEBUG(等价于代码中 #define DEBUG)-O0/-O1/-O2/-O3 # 优化等级(调试用 O0,发布用 O2/O3)-lname # 链接库文件(如 -lm 链接数学库)-g # 生成调试符号(配合 GDB 使用)-Wextra # 额外警告(如未使用的参数)
2025-03-22 13:18:10
489
原创 Code Composer Studio (CCS) v10.0 的使用经验和技巧总结(纯干货!)
安装时根据目标芯片型号(如C2000/C6000)勾选对应的编译器、芯片支持库(Chip Support Library, CSL)和驱动程序,避免安装冗余组件。// 设置GPIO12为输出。- 集成Git/SVN时,忽略生成文件(如`.out`、`.map`)和临时文件(`Debug/Release` 目录)。- 增大堆栈空间(`-heap` 和 `-stack` 参数),防止大型项目编译时内存溢出。- 优化等级过高导致符号被移除,降低优化等级(-O0)或添加 `volatile` 关键字。
2025-03-22 13:04:20
388
原创 IAR Embedded Workbench 的实用经验总结(纯干货分享~!)
设置堆栈大小:在链接文件(`.icf`)中调整 `define symbol __STACK_SIZE` 和 `__HEAP_SIZE`,防止溢出。- 启用 `C-STAT` 分析潜在问题(`Project > Options > C-STAT`),检查内存泄漏、数组越界等。- 发布阶段:选择 `High` 或 `Balanced` 优化,同时开启 `Size` 或 `Speed` 优化模式。- 使用 `SWO` 引脚输出调试信息(替代串口),通过 `Terminal I/O` 窗口查看。
2025-03-22 12:46:01
435
嵌入式STM32实现高效可靠的Modbus RTU协议用于工业数据采集
2025-03-22
嵌入式系统中单片机IO口模拟SPI主从机通讯的C语言代码实现及应用
2025-03-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人