20240105移远的4G模块EC20在Ubuntu 20.04.6 LTS下使用联通5G卡上网的步骤

20240105移远的4G模块EC20在Ubuntu 20.04.6 LTS下使用联通5G卡上网的步骤
2024/1/5 10:11


缘起:需要在Firefly的AIO-3399J开发板上调试移远的4G模块EC20(Android10/11/12),需要现在先测试EC20的好坏!
陶老板告诉我找一个USB2.0转mini PCIE的转接板接上去,这样就可以直接测试了。

https://item.taobao.com/item.htm?_u=5ju3ku33b5&id=580834633704&spm=a1z09.2.0.0.78122e8d0M24m1&skuId=4045144447321
4G模块转接板开发板迷你minipcie转USB移远EC20华为域格SIM/UIM
已售 2000+
¥23

https://detail.tmall.com/item.htm?_u=5ju3kuc8cc&id=45401367506&spm=a1z09.2.0.0.78122e8d0M24m1&skuId=4274333149921
CY辰阳 MINI PCIE转USB 3G 4G模块 测试开发板NGFF 含SIM UIM卡座
已售 400+
¥32

请【严重注意】注意SIM卡的方向!

【需要2G的大卡,也就是卡套外面还有卡套!】
 

昨晚WIN10上通过USB延长线接上去明显需要驱动程序。
今天在Ubuntu20.04.6下的USB3.0接口【蓝色口】插入【装上底板】EC20。

rootroot@rootroot-X99-Turbo:~$ 
rootroot@rootroot-X99-Turbo:~$ cat /etc/issue
Ubuntu 20.04.6 LTS \n \l

rootroot@rootroot-X99-Turbo:~$ 
rootroot@rootroot-X99-Turbo:~$ uname -r
5.15.0-91-generic
rootroot@rootroot-X99-Turbo:~$ uname -a
Linux rootroot-X99-Turbo 5.15.0-91-generic #101~20.04.1-Ubuntu SMP Thu Nov 16 14:22:28 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

rootroot@rootroot-X99-Turbo:~$ 
rootroot@rootroot-X99-Turbo:~$ 
 


通过lsusb命令,很容易发现已经找到了EC20了。

插入EC20之前:

Bus 002 Device 002: ID 8087:8000 Intel Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 173d:0500 QSENN 
Bus 003 Device 003: ID 1c4f:0002 SiGma Micro Keyboard TRACER Gamma Ivory
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 

插入EC20之后:

Bus 002 Device 002: ID 8087:8000 Intel Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 173d:0500 QSENN 
Bus 003 Device 004: ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem
Bus 003 Device 003: ID 1c4f:0002 SiGma Micro Keyboard TRACER Gamma Ivory
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

拔掉EC20之后:

Bus 002 Device 002: ID 8087:8000 Intel Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 173d:0500 QSENN 
Bus 003 Device 003: ID 1c4f:0002 SiGma Micro Keyboard TRACER Gamma Ivory
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 

dmesg内核信息:
插入EC20之前:
[   10.146990] rfkill: input handler disabled
[  319.666131] loop12: detected capacity change from 0 to 82800
[  319.965153] audit: type=1400 audit(1704417854.208:40): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine" pid=2597 comm="apparmor_parser"
[  319.966389] audit: type=1400 audit(1704417854.212:41): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine//mount-namespace-capture-helper" pid=2597 comm="apparmor_parser"
[  320.513136] audit: type=1400 audit(1704417854.756:42): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.snap-store" pid=2599 comm="apparmor_parser"
[  320.537680] audit: type=1400 audit(1704417854.784:43): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.hook.configure" pid=2601 comm="apparmor_parser"
[  320.546954] audit: type=1400 audit(1704417854.792:44): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.snap-store" pid=2602 comm="apparmor_parser"
[  320.547870] audit: type=1400 audit(1704417854.792:45): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.ubuntu-software-local-file" pid=2604 comm="apparmor_parser"
[  320.561320] audit: type=1400 audit(1704417854.804:46): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.ubuntu-software" pid=2603 comm="apparmor_parser"
[  321.844676] loop13: detected capacity change from 0 to 8
[  322.196156] audit: type=1400 audit(1704417856.440:47): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine" pid=2708 comm="apparmor_parser"
[  322.225387] audit: type=1400 audit(1704417856.472:48): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine//mount-namespace-capture-helper" pid=2708 comm="apparmor_parser"
[  322.466790] audit: type=1400 audit(1704417856.712:49): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.snap-store.hook.configure" pid=2711 comm="apparmor_parser"


插入EC20之后:
[   10.146990] rfkill: input handler disabled
[  319.666131] loop12: detected capacity change from 0 to 82800
[  319.965153] audit: type=1400 audit(1704417854.208:40): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine" pid=2597 comm="apparmor_parser"
[  319.966389] audit: type=1400 audit(1704417854.212:41): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine//mount-namespace-capture-helper" pid=2597 comm="apparmor_parser"
[  320.513136] audit: type=1400 audit(1704417854.756:42): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.snap-store" pid=2599 comm="apparmor_parser"
[  320.537680] audit: type=1400 audit(1704417854.784:43): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.hook.configure" pid=2601 comm="apparmor_parser"
[  320.546954] audit: type=1400 audit(1704417854.792:44): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.snap-store" pid=2602 comm="apparmor_parser"
[  320.547870] audit: type=1400 audit(1704417854.792:45): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.ubuntu-software-local-file" pid=2604 comm="apparmor_parser"
[  320.561320] audit: type=1400 audit(1704417854.804:46): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.ubuntu-software" pid=2603 comm="apparmor_parser"
[  321.844676] loop13: detected capacity change from 0 to 8
[  322.196156] audit: type=1400 audit(1704417856.440:47): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine" pid=2708 comm="apparmor_parser"
[  322.225387] audit: type=1400 audit(1704417856.472:48): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine//mount-namespace-capture-helper" pid=2708 comm="apparmor_parser"
[  322.466790] audit: type=1400 audit(1704417856.712:49): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.snap-store.hook.configure" pid=2711 comm="apparmor_parser"

[  490.241995] usb 3-2: new high-speed USB device number 4 using xhci_hcd
[  490.399983] usb 3-2: New USB device found, idVendor=2c7c, idProduct=0125, bcdDevice= 3.18
[  490.399992] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  490.399996] usb 3-2: Product: Android
[  490.399999] usb 3-2: Manufacturer: Android
[  490.441771] usbcore: registered new interface driver usbserial_generic
[  490.441804] usbserial: USB Serial support registered for generic
[  490.444564] usbcore: registered new interface driver cdc_wdm
[  490.447789] usbcore: registered new interface driver option
[  490.447801] usbserial: USB Serial support registered for GSM modem (1-port)
[  490.447909] option 3-2:1.0: GSM modem (1-port) converter detected
[  490.448022] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB0
[  490.448074] option 3-2:1.1: GSM modem (1-port) converter detected
[  490.448166] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB1
[  490.448208] option 3-2:1.2: GSM modem (1-port) converter detected
[  490.448282] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB2
[  490.448315] option 3-2:1.3: GSM modem (1-port) converter detected
[  490.448406] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB3
[  490.448810] qmi_wwan 3-2:1.4: cdc-wdm0: USB WDM device
[  490.449917] qmi_wwan 3-2:1.4 wwan0: register 'qmi_wwan' at usb-0000:00:14.0-2, WWAN/QMI device, d6:49:5d:75:15:67
[  490.449948] usbcore: registered new interface driver qmi_wwan

拔掉EC20之后:
[   10.146990] rfkill: input handler disabled
[  319.666131] loop12: detected capacity change from 0 to 82800
[  319.965153] audit: type=1400 audit(1704417854.208:40): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine" pid=2597 comm="apparmor_parser"
[  319.966389] audit: type=1400 audit(1704417854.212:41): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine//mount-namespace-capture-helper" pid=2597 comm="apparmor_parser"
[  320.513136] audit: type=1400 audit(1704417854.756:42): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap-update-ns.snap-store" pid=2599 comm="apparmor_parser"
[  320.537680] audit: type=1400 audit(1704417854.784:43): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.hook.configure" pid=2601 comm="apparmor_parser"
[  320.546954] audit: type=1400 audit(1704417854.792:44): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.snap-store" pid=2602 comm="apparmor_parser"
[  320.547870] audit: type=1400 audit(1704417854.792:45): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.ubuntu-software-local-file" pid=2604 comm="apparmor_parser"
[  320.561320] audit: type=1400 audit(1704417854.804:46): apparmor="STATUS" operation="profile_replace" info="same as current profile, skipping" profile="unconfined" name="snap.snap-store.ubuntu-software" pid=2603 comm="apparmor_parser"
[  321.844676] loop13: detected capacity change from 0 to 8
[  322.196156] audit: type=1400 audit(1704417856.440:47): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine" pid=2708 comm="apparmor_parser"
[  322.225387] audit: type=1400 audit(1704417856.472:48): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/snap/snapd/20671/usr/lib/snapd/snap-confine//mount-namespace-capture-helper" pid=2708 comm="apparmor_parser"
[  322.466790] audit: type=1400 audit(1704417856.712:49): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="snap.snap-store.hook.configure" pid=2711 comm="apparmor_parser"
[  490.241995] usb 3-2: new high-speed USB device number 4 using xhci_hcd
[  490.399983] usb 3-2: New USB device found, idVendor=2c7c, idProduct=0125, bcdDevice= 3.18
[  490.399992] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  490.399996] usb 3-2: Product: Android
[  490.399999] usb 3-2: Manufacturer: Android
[  490.441771] usbcore: registered new interface driver usbserial_generic
[  490.441804] usbserial: USB Serial support registered for generic
[  490.444564] usbcore: registered new interface driver cdc_wdm
[  490.447789] usbcore: registered new interface driver option
[  490.447801] usbserial: USB Serial support registered for GSM modem (1-port)
[  490.447909] option 3-2:1.0: GSM modem (1-port) converter detected
[  490.448022] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB0
[  490.448074] option 3-2:1.1: GSM modem (1-port) converter detected
[  490.448166] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB1
[  490.448208] option 3-2:1.2: GSM modem (1-port) converter detected
[  490.448282] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB2
[  490.448315] option 3-2:1.3: GSM modem (1-port) converter detected
[  490.448406] usb 3-2: GSM modem (1-port) converter now attached to ttyUSB3
[  490.448810] qmi_wwan 3-2:1.4: cdc-wdm0: USB WDM device
[  490.449917] qmi_wwan 3-2:1.4 wwan0: register 'qmi_wwan' at usb-0000:00:14.0-2, WWAN/QMI device, d6:49:5d:75:15:67
[  490.449948] usbcore: registered new interface driver qmi_wwan

[  588.322914] r8169 0000:07:00.0 enp7s0: Link is Down
[  882.885532] r8169 0000:07:00.0 enp7s0: Link is Up - 1Gbps/Full - flow control rx/tx
[ 1547.093014] r8169 0000:07:00.0 enp7s0: Link is Down
[ 2378.489893] usb 3-2: USB disconnect, device number 4
[ 2378.490192] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
[ 2378.490223] option 3-2:1.0: device disconnected
[ 2378.490445] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
[ 2378.490467] option 3-2:1.1: device disconnected
[ 2378.490760] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
[ 2378.490783] option 3-2:1.2: device disconnected
[ 2378.491122] option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
[ 2378.491145] option 3-2:1.3: device disconnected
[ 2378.491534] qmi_wwan 3-2:1.4 wwan0: unregister 'qmi_wwan' usb-0000:00:14.0-2, WWAN/QMI device

ifconfig1【插入EC20之前】

enp7s0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:e0:1a:5a:05:21  txqueuelen 1000  (Ethernet)
        RX packets 24262  bytes 35225383 (35.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8729  bytes 635358 (635.3 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 210  bytes 19375 (19.3 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 210  bytes 19375 (19.3 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


ifconfig2【插入EC20之后】

enp7s0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:e0:1a:5a:05:21  txqueuelen 1000  (Ethernet)
        RX packets 24859  bytes 35282763 (35.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9148  bytes 684019 (684.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 279  bytes 25188 (25.1 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 279  bytes 25188 (25.1 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wwan0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1500
        inet 10.33.142.10  netmask 255.255.255.252  destination 10.33.142.10
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 14  bytes 1568 (1.5 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 17  bytes 1214 (1.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


ifconfig5【拔掉EC20之后】

enp7s0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 00:e0:1a:5a:05:21  txqueuelen 1000  (Ethernet)
        RX packets 24859  bytes 35282763 (35.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9148  bytes 684019 (684.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 1553  bytes 223810 (223.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1553  bytes 223810 (223.8 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


根据NEXT点击的上网步骤发一下!


Mobile Broadband off

Mobile Broadband off
Connect
Mobile Broadband Settings

settings
Lock
Power off / Log Out

Cancel
Next
carr
otroot@rootroot-X99-Turbo:~$ifconfig > ifconootroot-X99-Turbo:troot@rootroot-X99-Turbo:~S
Set up a Mobile Broadband ConnectionChoose your Provider's Country or RegionChoose your Provider
This assistant helps you easily set up a mobile broadband connection to a cellular(3G) network.
You will need the following information
Your broadband provider's name
Choose your Billing Plan
D
.Your broadband billing plan name(in some cases) Your broadband billing plan APN (Access Point Name
Confirm Mobile Broadband Settings

Cancel
carrie
Choose your Provider's Country or Region
0
Set up a Mobile Broadband ConnectionChoose your Provider's Country or RegionChoose your Provider
otroot@rootroot-X99-Turbo:~$ifconfig > ifconfrootroot-X99-Turbotroot@rootroot-X99-Turbo;~S
Country or region:
Brunei DarussalamBulgariaBurkina FasoBurundi
Choose your Billing Plan
Confirm Mobile Broadband Settings
0
Cambodia
Cameroon
Canada
Chile
0
chin
4
Colombia
Congo, The Democratic Republic of the

Cancel
R
Set up a Mobile Broadband ConnectionChoose your Provider's Country or RegionChoose your Provider
otroot@rootroot-X99-Turbo:~$ifconfig > ifconfrootroot-X99-Turbotroot@rootroot-X99-Turbo;~S
 Select your provider from a list:
China Mobil
Choose your Billing Plan
China Unicom
Confirm Mobile Broadband Settings
0
4
 I can't find my provider and I wish to set up the connection manually:
My provider uses GSM technology (GPRS, EDGE, UMTS, HSPA)

Cancel
Network
Wired
Cable unplugged
Choose your Billing Plan
o
otroot@rootroot-X99-Turbo:~$ifconfig > ifconfrootroot-X99-Turbotroot@rootroot-X99-Turbo;~S
a
Set up a Mobile Broadband ConnectionChoose your Provider's Country or RegionChoose your Provider
Choose your Billing Plan
Confirm Mobile Broadband Settings
Select your plan:
Default
Selected plan APN (Access Point Name):
3gnet
D
Varning selecting an incorrert plan may result in biling issues for yourid account or may preve
4
f you are unsure of your plan please ask your provider for your plan's APN

CancelBack
Confirm Mobile Broadband Settings
Apply
Set up a Mobile Broadband ConnectionChoose your Provider's Country or RegionChoose your ProviderChoose your Billing Plan
Your mobile broadband connection is configured with the following settings:Your Provider:China unicom, China
8
Your Plan:
p
Confirm Mobile Broadband Settings
Default
APN: 3gnet

Authentication required
A password is recoired era t0mect to "china
Password
Cancel
@
Connect

 Network
Bluetoot
Background
国Appearance
Notifications
Search
:::Applications
Privacy
Online Accounts
sharing
 Sound
Power
Displays
Network
Wired
Cable unplugged
Mobile BroadbandGConnected
Network china Unicom Default
IP Address 10.33.142.10Default Route 10.33.142.9
DNS 120.80.80.80 221.5.88.88
VPN
Not set up
Network Proxy
o
@
off口

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/325009.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C 程序员进阶之路常备口袋的 10 个宝藏

虽然 Java 和 Python 等更现代的语言公认容易学习&#xff0c;但 C 基本上都是大学计算机类相关课程的入门语言。为什么&#xff1f;这。。。 C 语言的重要性&#xff0c;有很多理由可以说服你。最重要的还是因为学习 C 是以后学习更高级语言的良好基础&#xff0c;绝大部分现…

excel统计分析——两因素无重复方差分析

参考资料&#xff1a;生物统计学 从严格意义上讲&#xff0c;两因素试验都应当设置重复观测值&#xff0c;以便检验交互作用是否真实存在&#xff0c;对试验误差有更准确的估计&#xff0c;从而提高检验效率。但根据专业知识或先前的试验已经证明两个因素不存在交互作用时&…

万界星空科技MES系统中的设备管理模块

随时工厂数字化建设的大力推进&#xff0c;设备管理的效率得到了很大的提升&#xff0c;特别是作为机加工企业&#xff0c;设备是整个企业非常重要的核心资产。 MES系统主要包含了生产计划、生产过程管理、质量管理、物料管理、设备维护等多个模块&#xff0c;各个模块之间相互…

C++结合OpenCV:图像的基本表示方法

1.二值图像 二值图像是指仅仅包含黑色和白色两种颜色的图像。在计算机中&#xff0c;通过一个栅格状排列的数据集&#xff08;矩阵&#xff09;来表示和处理图像。例如&#xff0c;图1是一个字母A的图像&#xff0c;计算机在处理该图像时&#xff0c;会首先将其划分为一个个的小…

网络名称解读 -入门5

WAN: Wide Area Network(跨区域&#xff09;&#xff0c;LAN&#xff1a; Local Area NetworkWAN MAC&#xff0c; 用来连接上级网络&#xff0c; LAN MAC&#xff0c; 用于内部网路。 LAN & WAN 3.1&#xff0c;LAN表示子网&#xff0c;通过掩码来筛选子网内主机数量&…

JS/JQ实现小程序/H5验证码页面

话不多说&#xff0c;先上效果图 核心代码 1、html/css关键代码 <div class"obtain-verification-code"><div class"obtain-verification-code-input-content"><input id"input-0" class"verification-code-input" m…

Nodejs+express后端学习笔记(1)

1 Node.js安装 1、下载安装包&#xff1a;进入官网&#xff08;https://nodejs.org/en&#xff09;&#xff0c;下载左侧的稳定版。 2、选择安装位置&#xff0c;不用勾选自动安装必要工具。 其他都默认Next。 配置环境&#xff0c;具体参考本文章&#xff1a; https://blo…

Java学习笔记(四)——正则表达式

文章目录 正则表达式基本规则字符类(只匹配一个字符)预定义字符(只匹配一个字符)数量词练习正则表达式插件 爬虫利用正则表达式获取想要的内容爬取网络信息练习有条件的爬取贪婪爬取非贪婪爬取正则表达式在字符串中的使用 分组捕获分组正则表达式外部使用非捕获分组正则表达式忽…

Kodi 开源多媒体播放器

Kodi (原名 XBMC) 是一款经典开源免费、跨平台且极其强大专业的多媒体影音播放器&#xff0c;包含专业的影音内容管理以及解码播放功能于一体&#xff0c;提供适合在手机/电视/投影/大屏幕上显示的全屏界面&#xff0c;无线手机遥控操作方式&#xff0c;以及功能相当丰富的插件…

vue icon 本地正常 线上打包失败变乱码

出现这个原因是因为sass解析的问题 Node版本高的话可以通过升级sass版本 并且配置vue.config规避这个问题 //给sass配置的东西 这个对应的版本是sass 1.39.0 本人node版本v14 升级sass版本后出现报错css: {loaderOptions: {scss: {additionalData: import "/styles/var…

CSS新增文本描边-text-stroke属性

-webkit-text-stroke属性 概念&#xff1a;-webkit-text-stroke属性为文本添加描边效果。所谓的描边效果&#xff0c;指的是给文字添加边框 语法&#xff1a; -webkit-text-stroke:width color;Chrome和Firefox这两个浏览器都只能识别带有-webkit前缀的text-stroke属性 -web…

代码随想录刷题第三十九天| 62.不同路径 ● 63. 不同路径 II

代码随想录刷题第三十九天 不同路径 (LC 62) 题目思路&#xff1a; 代码实现&#xff1a; class Solution:def uniquePaths(self, m: int, n: int) -> int:dp [[0 for _ in range(n1)] for _ in range(m1)]dp[0][1] 1for i in range(1,m1):for j in range(1, n1):dp[i]…