自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(145)
  • 收藏
  • 关注

原创 CISC 与 RISC 架构全面解析:从原理到应用

简单理解:RISC 就像一位“专注高效的工匠”,指令少而精,但需要软件帮它组合完成复杂任务。简单理解:CISC 就像一位“全能管家”,指令多、功能强,但处理复杂、速度不一定快。为此,CISC 指令集通常包含数百条甚至上千条指令,指令长度不固定,寻址方式丰富。:CISC 是“硬件承担复杂”,RISC 是“软件承担复杂,硬件高效执行”。软件复杂度高,编译器需生成多条指令完成复杂操作,程序长度较长。指令长度固定,执行时间稳定,大多数指令可在一个周期内完成。,CPU 内部完成寄存器读取、乘法、结果写回的全过程。

2025-08-15 14:21:15 662

原创 MPU-6050 超实用入门

MPU-6050 是 InvenSense(后被 TDK 收购)公司推出的一款集成三轴加速度计和三轴陀螺仪的 MEMS 传感器,支持 I2C 通信,体积小、价格低、应用广泛。所需工具:Arduino UNO / ESP32 / STM32、杜邦线、USB线、Arduino IDE、MPU6050库(如 Jeff Rowberg 的 I2Cdevlib)通过加速度与陀螺仪的数据融合,可获得 Pitch(俯仰)、Roll(侧倾)、Yaw(偏航)等姿态角,进一步实现方向判断和姿态控制。

2025-08-09 17:32:56 337

原创 ESP32 ADC 应用实战:读取光敏传感器实现光线强度检测

ESP32 中的 ADC(Analog to Digital Converter,模数转换器)用于将模拟信号转换为数字值。比如我们通过一个光敏电阻模块输出的模拟电压,经过 ADC 就可以变成 MCU 能处理的数值,从而感知环境光强变化。ESP32 内部集成有两个 ADC 控制器(ADC1 和 ADC2),共支持18 路模拟输入通道,最高 12 位分辨率。大白话解释:光敏传感器输出是“模拟电压”,ESP32不会“直接听懂”,ADC 就像“翻译器”,把电压翻译成数值,2^12=4096 也就是说,

2025-08-03 13:39:50 258

原创 ESP32 外设控制基础:GPIO 应用详解与输入输出案例

GPIO(General Purpose Input Output)意为“通用输入输出端口”,是一种可以通过软件灵活配置为输入或输出的引脚。它在嵌入式开发中的典型应用包括:控制 LED 灯、继电器、蜂鸣器等输出设备检测按键、拨码开关等输入设备与传感器或其他模块进行高低电平交互还有模拟I2C SPI I2S等通讯协议本文介绍了 ESP32 GPIO 的使用基础,涵盖:GPIO 的功能与结构体配置常用控制函数控制 LED 的输出示例读取按键的输入检测示例使用中断方式监听按键的进阶示例。

2025-08-02 22:33:27 452

原创 数字人正在爆发:一个AI时代的新“虚拟劳动力”风口

AI数字人,又叫“虚拟数字人”或“虚拟人”,是通过AI建模、语音合成、动作捕捉、NLP语义理解等多项技术,打造出的可以与人类进行自然互动的拟人化数字角色。它可以替代真人完成表演、直播、客服、导览、主持等任务,是“AI+内容生产+交互体验”的融合体。一句话总结:看起来像真人,听起来像真人,却永远不会迟到、不累、不辞职。AI数字人,不是替代人类,而是人类更高效的“数字助手”。真正敏锐的公司,已经开始用它提升效率、打开新场景,而不是观望或抵抗。

2025-07-31 16:36:21 1737

原创 Ubuntu 系统中配置 SSH 服务教程

SSH(Secure Shell)是一种加密的网络协议,用于在不安全的网络中安全地进行远程登录、远程命令执行和文件传输。它是 Telnet、FTP 等传统协议的安全替代品。

2025-07-27 00:09:36 513

原创 urllib.parse.urlencode 的使用详解

是一个函数,作用是将字典对象编码为 URL 查询字符串格式,用于拼接到 GET 请求的 URL 后。最常用的就是第一个参数query字典(dict)优点说明✅ 简洁将字典快速转换为 URL 查询字符串✅ 安全自动进行 URL 编码(避免中文或特殊符号出错)✅ 通用可用于 GET 请求、网页参数拼接、接口调用等多种场景。

2025-07-20 19:34:46 447

原创 ESP32:全网最火的 Wi‑Fi + 蓝牙双模微控制器

ESP32 是中国厂商 Espressif(乐鑫科技)推出的一系列集成了Wi‑Fi、蓝牙双模(Bluetooth 4.2/BLE)的 32 位微控制器芯片。它基于内核,具有强大的网络连接能力和外设扩展性,自 2016 年发布以来,在物联网、智能家居、可穿戴、工业控制等领域大受欢迎。ESP32 以低成本、强无线、全接口、成熟生态的组合拳,赢得了从大厂到 DIY 爱好者的广泛青睐。想做联网、智能、交互类硬件,ESP32 几乎是现成的最优解。

2025-07-18 12:52:53 326

原创 用 urllib 开启爬虫之门:从零掌握网页数据抓取

urllib是 Python 内置的标准库,不需要额外安装。它可以帮助我们完成如下工作:发送 HTTP 请求(如 GET、POST)解析网页 URL模拟浏览器访问网站提交表单数据下载网页或文件相当于一套爬虫工具箱,轻量、易学、直接,适合入门者使用。urllib是 Python 网络爬虫的入门首选。它虽然不像requests那样灵活优雅,但胜在“标准、轻量、易懂”。对刚接触爬虫的社会工作者、老师、学生来说,完全够用。你只需掌握基本结构,便能自主从网页中抓取你需要的资源数据。

2025-07-16 13:35:06 1097

原创 理解 Robots 协议:爬虫该遵守的“游戏规则”

Robots 协议,全称是,中文叫**“爬虫排除协议”**,简称为robots.txt文件。它是网站用于告诉爬虫哪些页面可以爬、哪些不能爬的一个声明性文件。这个文件就是站点管理员写给所有网络爬虫看的。项目说明robots.txt 是啥告诉爬虫“哪些能抓,哪些不能抓”的网站说明书是法律吗不是!是“行业自律规范”哪些爬虫会遵守Google、百度等正规搜索引擎你写的爬虫要不要遵守建议遵守,尤其是商业项目、公共平台上robots 能保护隐私吗不能,敏感内容必须用权限控制。

2025-07-13 19:59:55 1450

原创 学爬虫到底图啥?一文看懂Python爬虫到底干嘛的!

在这个信息爆炸的年代,打开网页就能看到满屏的新闻、商品、评论……你有没有想过,。你可能会想:“爬虫是黑客吗?“为什么那么多人都在学?“我一个普通人,学这个有啥用?别急,今天就给你讲明白这个事。我们从这四个方面来聊聊爬虫到底是啥东西:能干嘛(应用场景)是啥(基本概念)有哪些种类(分类)怎么干活的(流程)

2025-07-13 19:23:19 1026

原创 什么是 Bootloader?怎么把它移植到 STM32 上?

想象一下你的 MCU(比如 STM32)是一个小机器人,上电之后第一件事,它不会立马开始“干正事”(运行你的主程序),而是先去运行一个“开场引导程序”——这就是 Bootloader。也就是说,Bootloader 占前面 16KB 的空间(你可以设更多),主程序从后面接着跑。通俗讲,它就像是**“程序界的门房”**,开门、分发信件(固件)、开灯、安排进屋(跳转),全由它负责。这样你就得去你的 App 工程里修改启动地址,不然你主程序会被烧到 Bootloader 区,冲突了。打印,出问题好排查。

2025-07-12 23:27:15 1762 3

原创 Linux 文件 I/O 与标准 I/O 缓冲机制详解

标准 I/O 是 C 标准库为我们提供的一套高级文件操作接口,核心基于结构体FILEfopen()fclose()fread()fwrite()fprintf()fscanf()fflush()fseek()ftell()在用户空间加一层缓冲区机制,减少频繁的系统调用,提高 I/O 效率。名称值(常见)定义位置用途BUFSIZ8192 字节<stdio.h>标准I/O默认缓冲区大小BUFSIZ是用于标准IO缓冲(如fopen),而不是read()等系统调用(后者不涉及标准IO缓冲机制)。

2025-06-24 23:23:05 570

原创 Linux I/O 文件操作详解:从系统调用到实际工程应用

在 Linux 或任何类 Unix 操作系统中,文件是一切的核心 —— 无论是硬盘上的文本文件,还是串口设备、GPIO寄存器、甚至网络接口,几乎都被抽象为“文件”。理解 Linux 下的 I/O 文件操作机制,不仅是嵌入式开发的基础,也是进行系统编程与底层控制的关键。

2025-06-23 22:23:50 439

原创 Linux 文件 I/O 与标准 I/O 缓冲机制详解

/ 当前文件位置(用于 ftell、fseek) // 还有更多复杂字段... } FILE;📌 注意:BUFSIZ 是用于标准IO缓冲(如 fopen),而不是 read() 等系统调用(后者不涉及标准IO缓冲机制)。标准 I/O 相比 read()/write() 的一个显著特点是:内部使用了缓冲区机制(缓解频繁的系统调用)。其背后的设计理念是:在用户空间加一层缓冲区机制,减少频繁的系统调用,提高 I/O 效率。标准I/O函数(如 fopen/fread/fwrite)使用内部缓冲区,提高读写效率。

2025-06-22 17:55:41 741

原创 Linux 系统结构划分详解:用户区与内核区的设计逻辑

Linux 系统将内核区与用户区进行明确划分,是操作系统设计中的核心原则之一。它通过:CPU 特权级控制;虚拟内存寻址保护;系统调用中断机制;来实现用户程序对系统资源的“受控访问”,保障了系统的安全性、稳定性与多用户环境下的可靠运行。

2025-06-21 13:31:21 448

原创 GDB 简介与使用示例:程序调试从这里开始!

在我们写程序的过程中,不可避免地会遇到这些情况。尤其对于的朋友或来说,一段程序“运行错了但不知道哪里错”的时候,简直令人抓狂!这时候,就是你的“放大镜”和“侦探工具”!。

2025-06-19 18:48:05 412

原创 为什么会出现 make 工程管理器?它到底能做什么?

make 帮你把编译这件事做“自动化”,你只管写代码,编译交给它。我们先来定义一下:名称说明举例目标(Target)要生成的文件main.omyapp依赖(Dependency)生成目标所依赖的源文件或头文件main.cmain.h在 Makefile 中,最常见的格式是:main.o 是目标文件,依赖于 main.c 和 main.h。只要 main.c 或 main.h 有改动,就要重新生成 main.o。

2025-06-19 00:09:19 460

原创 深入理解GCC工具链:嵌入式开发的基石与进阶指南

交叉编译(Cross Compilation)指的是在主机平台(如 x86)上构建可运行于目标平台(如 ARM Cortex-M)上的程序。(如提供目标平台头文件与库文件的根目录用于内存布局与段配置。

2025-06-17 00:38:34 826

原创 AI巨头竞逐新纪元:Meta超级实验室、苹果本地化与谷歌边缘计算的战略博弈

当前全球AI产业正经历一场深刻变革,三大科技巨头Meta、苹果和谷歌分别以不同战略路径加速布局,重塑行业竞争格局。Meta以149亿美元天价收购Scale AI部分股权并成立"超级智能实验室",彰显其在AI竞赛中扳回一城的决心;苹果在WWDC 2025上终于展示了其AI本地化能力的实质性进展,试图以隐私优势弥补创新滞后;而谷歌则通过AI Edge Gallery等工具持续推进边缘计算战略,巩固其在移动生态的AI领导地位。

2025-06-15 22:01:52 949

原创 基于 STM32 七段数码管显示模块详解

函数名作用初始化数码管用的 GPIO(A0~A7)显示指定数字(0~9)

2025-06-13 17:30:39 762

原创 从代码到进程:深入解析Linux程序的内存生命之旅

存储类型.c→ 编译 →.o(目标文件)链接.o.a.so→ 可执行文件(ELF)ELF 结构Section:磁盘布局,包含代码、数据、符号、重定位、调试信息等:加载时映射,将需要的段映射到内存对应区域内存映像代码段、只读数据、已初始化/未初始化数据、堆、栈、共享库区,各司其职理解 Linux 的内存映像与存储类型,不仅是打磨调试技巧的基础,更是系统性能优化、安全加固和嵌入式裁剪的前提。在日常开发中,常用readelfobjdumpsizeldd等工具进行查看与分析,助你成为系统级专家。

2025-06-12 16:12:26 760

原创 欧洲AI的崛起:Mistral推出首款逻辑推理模型Magistral,挑战美中AI霸主地位

Magistral 系列模型代表着欧洲首次在AI推理领域拥有技术与产品的发言权,其“开源引流 + 企业变现”双轮驱动策略与欧盟强力背书,使得 Mistral 有望成为未来欧洲AI产业的重要支点。然而,未来能否真正站稳脚跟,还取决于:社区生态是否能对抗 Meta LLaMA、DeepSeek 等其他开源玩家;政策扶持是否能顺利转化为市场竞争力与技术护城河。🎯 预测:推理模型将成为“AI 2.0时代”的核心壁垒,预计到2026年全球市场规模将突破 200 亿美元。📌你怎么看?

2025-06-11 16:04:18 1298

原创 基于 STM32 智能小车红外避障模块化控制程序

这里用到了两个红外避障模块,分别充当左右两边眼睛,我们结合上一章节内容,来做一个红外避障模块化的扩展上一章节内容HS,公众号:平凡灵感码头以上述文章的初始化好了 PWM 按键 还有智能小车的运动程序,结合上述内容进行补充这节会初始化一个红外模块的函数,简单很定义两个函数,用来判断左右是否遇到障碍物主函数讲解程序解释:初始化小车硬件,如电机、PWM输出等。Key_Init():初始化按键,用于手动启动系统。:初始化红外避障模块,包括传感器的IO配置。

2025-06-10 17:23:13 367

原创 Keil5项目创建指南:寄存器版与标准库版详解—— 彻底搞懂文件夹结构设计,告别混乱开发!

很多刚学 STM32 的朋友常常被一堆文件夹和代码吓到,不知道哪里写逻辑、哪里初始化外设,甚至不知道项目跑起来靠的是什么。希望这篇文章能帮你理清项目结构的来龙去脉。掌握结构,才有自由发挥的空间。理解机制,才有灵活应对的能力。我们将这个给它搞懂后,那么不管是HAL库,还是像FreeRTOS这些中间件,只需要建立一个新的文件夹,很清晰,方便。

2025-06-10 16:09:49 1200

原创 走进离线语音:安信可 VC‑01 智能模块全面拆解与 MCU 实战

VC-01 是安可信(Acontech)推出的一款。

2025-06-09 23:38:43 979

原创 这篇文章让你彻底搞懂串口通信详解:从基础原理到嵌入式实战

串口通信(Serial Communication)是一种。

2025-06-09 19:19:16 1860

原创 单片机 传感器知识讲解 (一)红外避障模块,声控模块,人体红外模块

红外避障模块具有一对红外线发射与接收管,发射管发射出一定频率的红外线,当检测方向遇到障碍物(反 射面)时,红外线反射回来被接收管接收,经过比较器电路处理之后,绿色指示灯会亮起,同时信号输出接口输 出数字信号(一个低电平信号),可通过电位器旋钮调节检测距离,有效距离范围 2~30cm,工作电压为3.3V 5V。是一种基于热释电红外传感器的人体感应模块,能够感应人或动物在其监控区域内的移动行为,并输出高电平信号。今天我们掌握学习的四个传感器模块的解析,这四个传感器分别是红外避障模块,声控模块,人体红外模块。

2025-06-08 17:42:24 786

原创 基于 STM32 的四路 PWM 控制智能小车运动的模块化控制程序

作用:配置好 TIM4 输出四路 PWM,控制机器人四个电机的速度。

2025-06-07 17:00:29 1021

原创 OpenAI 即将推出 GPT-5:开启多模态、持续记忆对话新时代

提前学习多模态 AI 的接口设计与调用构建与 AI 协作的开发流程,如 Prompt Engineering + 工具链集成探索 AI 与硬件系统的联动,如边缘端 AI 控制与云协同GPT-5 不是一个模型,而是一种时代的信号。在这个 AI 正悄然重塑世界的时刻,我们既是使用者,也将成为协作者。

2025-06-05 23:34:27 2135

原创 STM32 智能小车项目 两路红外循迹模块原理与实战应用详解

两路”意味着模块上集成了两组红外对管,每组包含一个红外发射管和一个红外接收管。原理:红外发射管不断发出一定波长的红外线;当检测面是白色或反光物体时,红外线被反射回来,红外接收管接收到强烈反射信号;当检测面是黑线或非反光表面时,红外线被吸收,接收管接收不到信号;模块根据接收管的接收强度输出高低电平。黑白线循迹边界检测简易障碍检测。

2025-06-05 19:07:21 922

原创 搞懂单片机烧录原理:ST-Link 与串口下载全解析

SWD(串行线调试)是 ARM 专为 Cortex-M 核心设计的一种简化调试协议,替代传统 JTAG。JTAG是一个标准的硬件调试协议,原设计用于 PCB 边界测试,后被广泛用于 MCU、FPGA、DSP 等芯片的调试。STM32 芯片出厂时,在一个专用的存储区域(System Memory)里固化了一个小程序,称为Bootloader,也叫“系统引导程序”。它的作用就是:检测是否有外部设备要烧录程序;接收数据;将接收到的程序写入 Flash;验证后完成烧录。

2025-06-04 22:40:58 1524

原创 STM32 智能小车项目 L298N 电机驱动模块

L298N 是一款双 H 桥电机驱动芯片,内部集成了两个全桥驱动器,能同时控制两个直流电机或一个步进电机。由于其稳定性好、价格低、接线方便,成为 Arduino、STM32、51 单片机等平台中最常见的电机驱动解决方案之一。二.模块引脚与结构详解L298N 电机驱动模块是嵌入式开发中最经典的驱动方案之一,尤其适用于智能小车、遥控车、迷你机械臂等项目。虽然存在一定局限,但其稳定性、易用性和教学价值依旧使它成为初学者和高校课程中的首选模块。

2025-06-02 23:25:18 2379

原创 掌握 FreeRTOS:打造高效嵌入式系统的第一步

RTOS:基于优先级分时系统:基于时间片任务管理、时间管理、信号量、消息队列、内存管理、定时器、协程等可用于资源受限的 MCU。

2025-06-02 01:05:40 977

原创 代码之外,更大的设计:谈架构思想

—不仅适用于软件,也适用于嵌入式系统在程序员的成长路上,有一个非常重要的转折点:从“能写代码”到“能设计系统”,从“功能能跑”到“系统可演进”。这个转折点,不只是“技术进阶”,更是。它就是——。很多嵌入式开发者、单片机工程师会误认为“架构”是搞云平台、Java后端、互联网系统的人才用得上的东西。其实这是误解。

2025-06-01 12:15:37 524

原创 Python 全面技术指南:从语言本质到工程实践

Python 是现代编程语言中最具生命力和通用性的语言之一。它将语法简洁性、功能丰富性与生态系统成熟度完美融合,适用于从快速脚本开发到大规模系统构建的各类场景。

2025-05-31 11:56:10 284

原创 STM32 单片机启动过程全解析:从上电到主函数的旅程

STM32 的启动过程虽然隐藏在 HAL 库和 IDE 的自动生成之下,但正是这一套流程,支撑了嵌入式程序的稳定运行。掌握它,不仅有助于开发排错、理解底层逻辑,更是从“会用”到“精通” STM32 的必经之路。

2025-05-29 21:00:39 1649

原创 STM32 启动文件详解:理解单片机启动的“引导者”

简单说,启动文件就是 STM32 单片机上电后执行的第一段代码。它通常是汇编写的.s文件,作用如下:✅ 设置栈顶(给程序运行分配临时空间)✅ 初始化中断向量表(告诉 CPU 各类中断的处理函数地址)✅ 处理全局变量的初始化(.data 和 .bss 段)✅ 最终跳转到你的main()函数,开始运行主程序!📌大白话解释:STM32 上电后就像“刚醒的电脑”,启动文件就是它的 BIOS,负责开机、加载环境、把控制权交给你写的代码。.word _estack // 栈顶地址。

2025-05-29 20:59:24 1053

原创 深入理解信号量:原理、场景与 FreeRTOS 实践

信号量在实际开发中常常被用于以及。我们先来看一个非常常见的例子:某个停车场有 100 个停车位,这些停车位是所有车辆可以共用的资源。在这种情况下,这 100 个车位就构成了一个共享资源池。当你要把车停进这个停车场时,首先要确认当前停车数量是否已满。停车场当前的就可以用一个**计数型信号量(Counting Semaphore)**来表示。每当有一辆车停进去,信号量加一;每当有一辆车驶出,信号量减一;当信号量的值达到 100,就表示车位已满,新的车辆必须等待;

2025-05-27 06:30:00 590

原创 FreeRTOS 事件标志组详解:原理、用法与实战技巧

事件标志组是一个由多个二进制位(bit)组成的集合,每一位可以被设置(set)或清除(clear),用来表示一个事件是否发生。每一个 bit 是一个“标志”;多个任务可以等待一个或多个标志;标志可以由其他任务或中断服务程序(ISR)设置。

2025-05-26 11:32:11 810

本地部署Ollama与ChatBox-面向初学者的AI工具配置指南

内容概要:本文档详细阐述了Ollama及ChatBox两个工具在不同操作平台(Windows、macOS以及Linux)上的一键部署流程,尤其聚焦于DeepSeek R1模型。Ollama主要功能在于支持Llama、Mistral、DeepSeek等多个大语言模型(LLMs),并允许利用GPU加速模型性能。而ChatBox则提供了一个图形化的用户界面来增强人机交互体验,使得非专业用户也能方便地享受高质量的对话AI系统带来的便利。此外还涉及了对于自定义模型的支持以及更进一步的应用方法如REST API接口调用或者集成到VSCode中作为插件使用。 适合人群:对人工智能感兴趣但缺乏实际操作经验的新手开发者。 使用场景及目标:帮助用户在自己的设备上搭建完整的基于LLMs的应用环境,实现从简单测试到高级定制化使用的全面覆盖。 其他说明:提供了详细的故障排除指引,确保即使遇到困难也可以顺利解决问题继续前进。针对网络条件不佳情况下的解决方案也被考虑到了文中。 公众号"平凡灵感码头"

2025-03-04

本地部署deepseek

本地私有化 deepseek

2025-03-08

空空如也

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

TA关注的人

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