【2025年2月28日稳定版】小米路由器4C刷机Immortalwrt 23.05.4系统搭载mentohust 0.3.1插件全记录
小米路由器4C刷机Immortalwrt系统搭载mentohust插件全记录
首先将路由器按住后面的reset,用一个针插进去然后等待5s左右,松开,即可重置路由器。
然后要用物理网线物理连接路由器Lan口和电脑,并将路由器WAN口连接至网口。确保电脑通过路由器,在经过WAN口连上网。可以通过ping看下是否有网。打开cmd,然后:
ping 8.8.8.8

当有回复说明有网络。之后进入小米路由器的后台:192.168.31.1

之后进入马上体验进入后台。


这样就基本的配置完成了,之后我们开始刷机
1.1、首先运行R3GV2 patches
在R3GV2 patches中运行0.start_main.bat文件
输入小米路由器的路由器管理员密码,每个人根据自己设置的密码登录即可,之后会弹出
start uploading config file...
run telnet+ftpd...
Done
Press any key to continue . . .
之后重新打开CMD运行:
telnet 192.168.31.1
如果报错说明没安装telnet客户端,请先=>win10安装开启telnet服务及使用
安装成功后,在CMD输入telnet弹出下面说明安装成功!
欢迎使用 Microsoft Telnet Client
Escape 字符为 'CTRL+]'
Microsoft Telnet>
之后再打开CMD运行
telnet 192.168.31.1
则可弹出
XiaoQiang login:
则说明权限开启,然后输入root,弹出下面:

现在最重要的是把文件传上去
在这里下载适用于小米路由器4C的Openwrt固件,根据上一次的教程可知,支持小米4C的固件并且能够使用mentohust校园网锐捷认证插件的固件为:Immortalwrt 23.5.4版本固件
因此这里直接下载Immortalwrt 23.5.4版本固件

KERNEL是核心版本,SYSUPGRADE是完全版本,下载SYSUPGRADE完全版本。
在CMD继续输入cd /tmp,再输入ls

之后打开文件资源管理器,在路径中输入:
ftp://192.168.31.1/

在tmp文件夹下粘贴下载的23.05.4Immortalwrt固件

再回到CMD输入ls回车之后,可看到存在Immartalwrt的固件文件。

1.2、快速刷入Immortalwrt教程
根据之前的教程:记录小米路由器4C刷Immortalwrt/openwrt认证锐捷校园网全过程,2025年2月28日尝试将Immortalwrt 23.5.4版本固件进行刷机发现可行!可以直接刷immortalwrt,因为后面安装mentohust插件方便很多!
参考:https://openwrt.org/toh/xiaomi/xiaomi_mi_router_4c
执行如下命令:
mtd -r write /tmp/immortalwrt-23.05.4-ramips-mt76x8-xiaomi_mi-router-4c-squashfs-sysupgrade.bin OS1
.bin前面immortalwrt-23.05.4-ramips-mt76x8-xiaomi_mi-router-4c-squashfs-sysupgrade.bin是文件名,如果不一样需要替换。后面一定要是OS1,是数字1哈!
刷完之后就会新出现一个Immortalwrt名称的wifi信号!
按照上述的方案如果不想刷不死breed不想回原系统的话,可直接跳转至 1.6在Immortalwrt的软件包直接安装mentohust插件配置mentohust插件。
1.3、备份路由器相关文件防止变砖
在终端中分别输入命令
dd if=/dev/mtd0 of=/tmp/all.bin
dd if=/dev/mtd2 of=/tmp/bootloader.bin
dd if=/dev/mtd3 of=/tmp/eeprom.bin
all.bin文件的大小分别为:all.bin是16MB,bootloader.bin为128kb, eeprom.bin 为64kb。
分别将 all.bin bootloader.bin eeprom.bin 备份在 /tmp 下。于系统资源管理器访问 ftp://192.168.31.1,进入 /tmp 路径,依次复制 刚刚三个文件到自己的电脑中(一块儿复制可能会出问题)。 其中 eeprom.bin 在后续步骤中会用到,all.bin 是刷机失败后刷回原固件的必要文件(大小应该超过 10Mb),本文不再赘述。 注意:eeprom.bin 的大小应在 64kb (65532bytes) 左右,如果大小不正确要重新进行备份!
R4CM小米路由器4C原机Bootloader.bin+eeprom.bin文件
1.4、刷入不死Breed
breed文件为:breed-mt7688-reset38.bin
通过 ftp 上传到 /tmp文件夹下

mtd write /tmp/breed-mt7688-reset38.bin Bootloader

完成后先给路由器断电,然后在按住复位键的同时打开电源,若蓝灯橙灯同时闪烁(我这里就是网🌐的那块显示蓝色一直闪),则成功进入 breed 模式。输入192.168.1.1进入Breed后台

首先在固件备份将eeprom.bin文件下载备份,大小注意是64kb

这样我们就刷完了不死breed。
1.5、刷入Immortalwrt固件
1.5.1、没有刷Breed的情况下直接刷Immortalwrt固件(速度最快,直接成功)
如果没有刷入breed则按照下面方式更新
关键步骤如下(重要刷机步骤!!!)
参考:https://openwrt.org/toh/xiaomi/xiaomi_mi_router_4c
mtd -r write /tmp/immortalwrt-23.05.4-ramips-mt76x8-xiaomi_mi-router-4c-squashfs-sysupgrade.bin
.bin前面immortalwrt-23.05.4-ramips-mt76x8-xiaomi_mi-router-4c-squashfs-sysupgrade是文件名,如果不一样需要替换。后面一定要是OS1!
之后写完就会Rebooting,然后弹出下面
遗失对主机的连接。
之后将路由器的Lan口连接至路由器,然后浏览器网址输入
192.168.1.1
1.5.2、刷入不死Breed之后,再用Breed的flash刷immortalwrt
如果刷入了breed则按照下面操作
方法一、直接在breed的固件更新界面刷bin(可能不可行,不过可以试一下)
在固件更新中选择刚备份的 eeprom.bin 文件上传后,再选择 immortalwrt 固件上传(选中自动重启)。(注意:一定要先刷入eeprom.bin再刷入ImmortalWrt固件)

点击更新即可,之后后路由器会闪烁橙灯并进行固件更新,当橙灯不在闪烁则更新完成。

方法二、使用breed擦除和写入flash的方式(这个一定要注意文件的大小)
首先我们要打开http,我们在放置immortal/openwrt固件的文件夹的路径中输入cmd,进入该路径下的cmd:

然后,在弹出的cmd输入:
py -m http.server
回车会显示:Serving HTTP on :: port 8000 (http://[::]:8000/) …

这个cmd界面不要关闭保留在这里,等后面刷完再关闭!
然后我们打开浏览器输入:192.168.1.2:8000

然后右键复制文件链接
http://192.168.1.2:8000/immortalwrt-ramips-mt76x8-xiaomi_mi-router-4c-squashfs-sysupgrade.bin
再次打开cmd输入:
telnet 192.168.1.1
回车进入Breed cmd界面

在该界面下输入wget 然后粘贴刚刚复制的immortalwrt/openwrt固件的链接
wget http://192.168.1.2:8000/immortalwrt-ramips-mt76x8-xiaomi_mi-router-4c-squashfs-sysupgrade.bin

然后记住两个东西:0x80000000和0xec0319,尤其是0xec0319,如果选择不一样的固件,这个可能是不一样的大小,因为这个就是刷入的bin文件的大小,所以一定把这个看清楚不然直接变砖。
比如我换一个文件,文件大小就变成了0x7b0347:

我选择breed烧写文件小一点的0x7b0347,因为小米4C的内存比较小。
看清楚之后,我们开始操作,首先是擦除之前的分区
flash erase 0x160000 0xea0000

执行完上面的之后,再flash write 0x160000 文件内存地址 文件大小,刷入固件bin文件。文件内存地址 为0x80000000,再次强调文件大小因人而异,我的是0x7b0347
flash write 0x160000 0x80000000 0x7b0347

执行完之后,重新进入breed图形页面,打开环境变量设置,选择在breed内部

然后再次进入图形页面,添加环境变量autoboot.command(注意是.不是空格),值为boot flash 0x160000

设置之后,重启。

到这里用breed刷入immortalwrt/openwrt的方法也就完成了!
再次在浏览器中输入192.168.1.1,不再弹出Breed,而是直接进入Immortalwrt的后台:

刚刷固件没有设置管理员密码,直接登录即可。然后可以配置一个路由器密码(后台密码)

可以发现刷入Immortalwrt 7M版本的内存就用了71%了,所以不要用太大的bin固件文件。

参考文献:
[1]:https://cloudflare.luhawxem.com/2021/09/10/Mi-Router-4C-flash-openwrt-detail/
[2]:https://cloudflare.luhawxem.com/2021/05/19/Mi-Router-4C-flash-openwrt/
1.6 在Immortalwrt的软件包直接安装mentohust插件
之后我们在系统选项的菜单中选择的软件包选项,更新软件包列表,点击更新列表…即可。(如果更新失败,请确定下路由器有没有连上网)

之后我们在过滤器搜索框中搜索mentohust插件可以发现能够查找到三个插件:

将三个插件分别点击安装即可。


可以发现都安装成功了!!

我们再重新刷新进入该页面,可以发现选项卡多了一个服务的选项:

点击MentoHUST即可进入插件的配置!至此我们安装插件就终于大功告成了!!!
1.7 MentoHUST插件配置指南
1.7.1 常规设置
进入MentoHUST插件界面后,在常规设置中首先点击启用,用户名和密码就是校园网登录时的账号和密码。

接口选项我们需要查询路由器的网卡,通过ifconfig查询
root@Router:~# ifconfig
br-lan Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XXinet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0inet6 addr: xxxx:xxxx:xxxx::1/60 Scope:Globalinet6 addr: fe80::xxxx:xxxx:xxxx:xxxx/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:32078 errors:0 dropped:0 overruns:0 frame:0TX packets:30315 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:8047859 (7.6 MiB) TX bytes:34581585 (32.9 MiB)eth0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XXinet6 addr: fe80::xxxx:xxxx:xxxx:xxxx/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:56354 errors:0 dropped:5 overruns:0 frame:0TX packets:65880 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:19525224 (18.6 MiB) TX bytes:43399138 (41.3 MiB)Interrupt:5eth0.1 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XXUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:32049 errors:0 dropped:1 overruns:0 frame:0TX packets:39875 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:8045391 (7.6 MiB) TX bytes:35211594 (33.5 MiB)eth0.2 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XYinet addr:xxx.xxx.xxx.xxx Bcast:xxx.xxx.xxx.255 Mask:255.255.254.0inet6 addr: xxxx:xxxx:xxxx:xxxx:ffff:ffff:fffc:xxxx/128 Scope:Globalinet6 addr: fe80::xxxx:xxxx:xxxx:xxxx/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:23170 errors:0 dropped:51 overruns:0 frame:0TX packets:25998 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:10401915 (9.9 MiB) TX bytes:7923226 (7.5 MiB)lo Link encap:Local Loopbackinet addr:127.0.0.1 Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING MTU:65536 Metric:1RX packets:684 errors:0 dropped:0 overruns:0 frame:0TX packets:684 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:62740 (61.2 KiB) TX bytes:62740 (61.2 KiB)phy0-ap0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XYinet6 addr: fe80::xxxx:xxxx:xxxx:xxxx/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:37 errors:0 dropped:0 overruns:0 frame:0TX packets:353 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:4656 (4.5 KiB) TX bytes:111597 (108.9 KiB)
简单来说说明了以下内容:
- 网络接口信息
- 显示了系统中存在br-lan、eth0、eth0.1、eth0.2、lo、phy0-ap0等网络接口。
- 硬件地址
- 每个接口都有对应的硬件地址(HWaddr),如XX:XX:XX:XX:XX:XX等。
- IP地址
- 各接口配置了IPv4和IPv6地址,如br-lan的IPv4地址为192.168.1.1,eth0.2有公网IPv4地址xxx.xxx.xxx.xxx及相应IPv6地址等。
- 网络状态
- 显示接口状态为UP表示已启用,还有广播、运行、多播等状态标识,以及MTU(最大传输单元)和Metric(度量值)等参数。
- 数据包统计
- 记录了每个接口接收(RX)和发送(TX)的数据包数量、错误数、丢弃数等,还有接收和发送的字节数,可用于监控网络流量和诊断问题。
eth0.2 是广域网(WAN)口的物理子接口,因此设为eth0.2
Ping主机设置为:腾讯云公共DNS119.29.29.29或者谷歌公共DNS8.8.8.8
1.7.2 高级设置
IP地址设置为:0.0.0.0
子网掩码可以随便设置:255.255.252.0
网关根据校园网的网关设定
DNS服务器根据适配器选项的信息进行填写即可
验证超时设置为8
Echo包间隔设置为30
验证失败等待时间设置为15
组播地址类型设置重要一些,需要根据校园网认证客户端设置,一般都是锐捷,选择锐捷即可。
DHCP设置选项设置选择二次认证
通知级别默认是5不用改
客户端版本号根据需要修改,一般不用改,如果未开启客户端校验但对版本号有要求,可以在此指定,形如3.30
数据文件选项不用动,为/etc/mentohust/
DHCP的脚本不用动,为udhcpc -i
最后点击保存并应用,可以看到最上方的状态显示MentoHUST运行中,网络状态能访问互联网了!

大功告成,这样就可以多个设备连接路由器,并且不用多次登录网页认证了!
1.7.3 远程访问的IP端口配置问题
电脑连入宿舍的无线路由器,且可以共享一个账号,也就是共享一个校园网ip,那么分别访问电脑可以使用通过端口转发的方式。
先在路由器设置页中确定路由器ip:可以看出这里的ip地址是校园网分配的ip,在网络菜单下的接口页面可查看WAN口的IPv4地址。假设为218.223.1.23

再在路由器设置中给电脑绑定路由器下局域网的ip:

导航至网络 -> 防火墙–> “端口转发”选项卡。

然后我们需要到状态菜单下的概览页面找到自己电脑或者笔记本分配的Ipv4地址,并记录下来,假设为192.145.1.XX


在刚刚的端口转发页面点击添加,填入下面的信息

外部端口是从外部访问电脑远程桌面时使用的端口,自定义即可,内部端口对于Windows的远程一般为3389,3389是远程控制的默认端口,也可以查看电脑设置确定一下。内部IP地址就是刚刚找的内部分配给电脑对应的IP地址。

最终在控制端app上将控制名字写成路由器ip:外部端口,比如:
218.2XX.1.23:104即可远程访问电脑了!
相关文章:
【2025年2月28日稳定版】小米路由器4C刷机Immortalwrt 23.05.4系统搭载mentohust 0.3.1插件全记录
小米路由器4C刷机Immortalwrt系统搭载mentohust插件全记录 首先将路由器按住后面的reset,用一个针插进去然后等待5s左右,松开,即可重置路由器。 然后要用物理网线物理连接路由器Lan口和电脑,并将路由器WAN口连接至网口。确保电脑…...
【SpringBoot+Vue】博客项目开发二:用户登录注册模块
后端用户模块开发 制定参数交互约束 当前,我们使用MybatisX工具快速生成的代码中,包含了一个实体类,这个类中包含我们数据表中的所有字段。 但因为有些字段,是不应该返回到前端的,比如用户密码,或者前端传…...
idea + Docker + 阿里镜像服务打包部署
一、下载docker desktop软件 官网下载docker desktop,需要结合wsl使用 启动成功的画面(如果不是这个画面例如一直处理start或者是stop需要重新启动,不行就重启电脑) 打包成功的镜像在这里,如果频繁打包会导致磁盘空间被占满,需…...
从入门到精通:Linux 权限管理(rwx/chmod/chown)
目录 1. 引言:为什么需要文件权限? 2. 基础概念:理解 rwx 权限 (1)权限的三种角色 (2)权限的三种类型 (3)权限的两种表示法 (4) 目录的 rwx…...
虚拟机如何设置ip
在虚拟机中设置IP地址的具体步骤会因虚拟机软件(如VMware、VirtualBox等)和操作系统(如Windows、Linux等)的不同而有所差异。以下是几种常见虚拟机软件和操作系统的IP设置方法。 --- 一、VMware中的IP设置 1.Windows虚拟机 1. 打…...
自然语言处理:稀疏向量表示
介绍 大家好,我是博主。今天又来和大家分享自然语言处理领域的知识了。原本我计划这次分享NLP中文本表示的相关内容,不过在整理分享计划的过程中,发现这部分知识里包含一些涉及复杂数学原理和抽象概念的内容。对于刚接触NLP的小伙伴们来说&a…...
ubuntu 20.04 安装labelmg
1. 下载安装包 下载链接:下载链接 2. 安装启动 # 创建labelImg的环境 conda create -n labelImg# 激活labelImg环境 source activate labelImg安装依赖 pip install pyqt5-dev-tools -i https://pypi.tuna.tsinghua.edu.cn/simple/cd requirements/pip install -…...
Redis版本的EOL策略与升级路径(刷到别划走)
各位看官,刷到就点进来,大数据已经抓到你喽~😊 前言 在软件行业做服务端开发的我们,多多少少都会接触到Redis,用它来缓存数据、实现分布式锁等,相关八股文烂熟于心,但是往往会忽略具…...
ExpMoveFreeHandles函数分析和备用空闲表的关系
第一部分:ExpMoveFreeHandles和备用空闲表的关系 ULONG ExpMoveFreeHandles ( IN PHANDLE_TABLE HandleTable ) { ULONG OldValue, NewValue; ULONG Index, OldIndex, NewIndex, FreeSize; PHANDLE_TABLE_ENTRY Entry, FirstEntry; EXHAND…...
[预订酒店]
预订酒店 真题目录: 点击去查看 E 卷 100分题型 题目描述 放暑假了,小明决定到某旅游景点游玩,他在网上搜索到了各种价位的酒店(长度为n的数组A),他的心理价位是x元,请帮他筛选出k个最接近x元的酒店(n>=k>0),并由低到高打印酒店的价格。 输入描述 第一行:n,…...
java项目之基于ssm的学籍管理系统(源码+文档)
项目简介 基于ssm的学籍管理系统实现了以下功能: 学生信息管理: 学生信息新增 学生信息修改 学籍异动管理: 学籍异动添加 学籍异动删除 学籍异动修改 学生学业管理: 学生学业添加 学生学业修改 学生学业删除 学院信息管理&am…...
SpringBoot+Redis+Mybatis-plus黑马点评
短信登录 基于Session实现登录 流程: 发送短信验证码-->短信验证码注册登录-->校验登录状态(保存用户到ThreadLocal,方便后续使用) 不能每次请求服务都要进行登录状态校验,解决办法:拦截器 在Sp…...
算法-二叉树篇23-二叉搜索树中的插入操作
二叉搜索树中的插入操作 力扣题目链接 题目描述 给定二叉搜索树(BST)的根节点 root 和要插入树中的值 value ,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。 输入数据 保证 ,新值和原始二叉搜索树中的任意节点值都不同…...
[STM32]从零开始的STM32 BSRR、BRR、ODR寄存器讲解
一、前言 学习STM32一阵子以后,相信大家对STM32 GPIO的控制也有一定的了解了。之前在STM32 LED的教程中也教了大家如何使用寄存器以及库函数控制STM32的引脚从而点亮一个LED,之前的寄存器只是作为一个引入,并没有深层次的讲解,在教…...
DeepSeek-V3关键技术之一:DeepSeekMoE
DeepSeekMoE 是一种创新的大规模语言模型架构,旨在通过高效的计算流程和优化设计,在保持高性能的同时显著降低计算成本。 1. 架构设计 DeepSeekMoE 基于 Transformer 架构,融合了以下核心技术: 专家混合系统(Mixture…...
MySQL--DQL、DML、DDL、DCL概念与区别
在SQL中,根据功能和操作对象的不同,通常将语文分为四大类:DQL(数据查询语言)、DML(数据操作语言)、DDL(数据定义语言)、DCL(数据控制语言) 一、D…...
Android Activity启动流程详解
目录 Activity 启动流程详细解析 1. 应用层发起启动请求 1.1 调用 startActivity() 1.2 通过 Instrumentation 转发请求 2. 系统服务处理(AMS 阶段) 2.1 Binder IPC 通信 2.2 AMS 处理流程 2.3 跨进程回调 ApplicationThread 3. 目标进程初始化…...
夜天之书 #106 Apache 软件基金会如何投票选举?
近期若干开源组织进行换届选举。在此期间,拥有投票权的成员往往会热烈讨论,提名新成员候选人和治理团队的候选人。虽然讨论是容易进行的,但是实际的投票流程和运作方式,在一个成员众多的组织中,可能会有不少成员并不清…...
保姆级教程:用Chart.js实现柱状图与折线图联动
保姆级教程:用Chart.js实现柱状图与折线图联动 ▲ 最终实现的交互式组合图表效果 一、技术原理剖析 1.1 Chart.js渲染机制 Chart.js基于HTML5 Canvas实现图表绘制,其核心原理包括: 数据绑定:将数据对象映射为图形元素分层渲染:通过order属性控制图层叠加顺序坐标系计算:…...
初阶MySQL(两万字全面解析)
文章目录 1.初识MySQL1.1数据库1.2查看数据库1.3创建数据库1.4字符集编码和排序规则1.5修改数据库1.6删除数据库 2.MySQL常用数据类型和表的操作2.(一)常用数据类型1.数值类2.字符串类型3.二进制类型4.日期类型 2.(二)表的操作1查看指定库中所有表2.创建表 3.查看表结构和查看表…...
大模型应用:多轮对话(prompt工程)
概述 在与大型语言模型(如ChatGPT)交互的过程中,我们常常体验到与智能助手进行连贯多轮对话的便利性。那么,当我们开启一个新的聊天时,系统是如何管理聊天上下文的呢? 一、初始上下文的建立 1. 创建新会…...
4.3MISC流量分析练习-wireshark-https
流量分析题目的例题 1.了解wireshark的过滤方式 2.了解tls跟ssl协议基本还原 3.了解xor基本变换方式,获取flag 附件是一个流量包,打开之后有各种流量,但是分析无果,然后丢到kali中使用binwalk进行分析,发现有一个r…...
【AGI】DeepSeek开源周:The whale is making waves!
DeepSeek开源周:The whale is making waves! 思维火花引言一、DeepSeek模型体系的技术演进1. 通用语言模型:DeepSeek-V3系列2. 推理优化模型:DeepSeek-R1系列3. 多模态模型:Janus系列 二、开源周三大工具库的技术解析1…...
CSS Selectors
当然,理解纯CSS选择器(CSS Selectors)对于进行UI自动化测试非常重要。CSS选择器允许您通过元素的属性、层级关系、类名、ID等来精准定位页面上的元素。下面我将详细讲解CSS选择器的常见用法,并结合您的需求提供具体的示例。 1. 基…...
Java Junit框架
JUnit 是一个广泛使用的 Java 单元测试框架,用于编写和运行可重复的测试。它是 xUnit 家族的一部分,专门为 Java 语言设计。JUnit 的主要目标是帮助开发者编写可维护的测试代码,确保代码的正确性和稳定性。 JUnit 的主要特点 注解驱动&…...
3-3 WPS JS宏 遍历文件名获取函数(遍历指定文件夹下的所有工作)学习笔记
************************************************************************************************************** 点击进入 -我要自学网-国内领先的专业视频教程学习网站 *******************************************************************************************…...
STM32CubeMx DRV8833驱动
一、DRV8833驱动原理 STBY口接单片机的IO口,STBY置0电机全部停止,置1才能工作。STBY置1后通过AIN1、AIN2、BIN1、BIN2 来控制正反转。 AIN1AIN2电机状态00停止1speed反转speed1正转11停止 其中A端(AIN1与AIN2)只能控制AO1与…...
用Python之requests库调用大型语言模型(LLM)API的流式输出与非流式输出比较
文章目录 1. 非流式输出与流式输出概述2. 非流式输出2.1 代码实例12.2 代码实例2 3. 流式输出3.1 流式输出的定义和作用3.2 流式输出适用的场景3.3 流式输出的实现方式与实现技术3.4 代码实例33.5 代码实例4 4. 小结 1. 非流式输出与流式输出概述 大模型收到输入后并不是一次性…...
【Qt】ffmpeg照片提取、视频播放▲
目录 一、图像的成像原理: RGB成像原理: YUV成像原理: 二、多线程 三、ffmpeg解码(照片提取) 1.准备工作 (1)在工程文件夹里面新建三个文件夹 (2)在main函数中加…...
Vue+Elementui 全局配置el-table表格列宽可拖拽
1、需求分析 如何让表格列宽可以拖动 elementui的el-table如果想要列宽可以拖动的话 有一个属性叫 border 在模板里添加这个属性即可实现 但是系统里面的表格我不可能一个一个去添加border太麻烦 如果能够全局配置岂不是非常省时间吗 我们在main.js里面通过全局混入的方式来…...

