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口

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

书生浦语大模型训练营第一课笔记:全链路开源体系

AI 的研究方向&#xff0c;从专业模型转变为通用模型。 上海人工智能实验室的开源历程 覆盖了轻量级、中量级、重量级的模型&#xff1b; 7B 20B 都是免费开源的&#xff0c;可商用。 从模型到应用 开源了全链路工具。 ![

Linux第20步_在虚拟机上安装“Visual Studio Code”

1、双击windows系统桌面上的“FileZilla Client.exe”&#xff0c;打开FTP客户端&#xff0c;点击03软件下的Visual Studio Code&#xff0c;发现code_1.50.1-1602600906_amd64。 2、点击“文件”&#xff0c;然后点击“站点管理器”&#xff0c;见下图操作&#xff1a; 3、点…

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

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

【Turtle库】圣诞树

在寒冷的冬季&#xff0c;没有什么比一棵亮丽的圣诞树更能带给我们温暖和快乐。而现在&#xff0c;我们将使用Python编程语言来绘制这样一棵美丽的圣诞树。 首先&#xff0c;我们需要导入Python的turtle模块&#xff0c;它可以帮助我们绘制图形。然后&#xff0c;我们可以定义一…

高性价比的高速吹风机/高速风筒解决方案,基于普冉单片机开发

高速吹风机是近些年非常火的一款产品&#xff0c;快速崛起并颠覆了传统吹风机&#xff0c;高速吹风机也成为了传统吹风机替代的一个大趋势。高速吹风机是利用高转速产生的大风量来快速吹干头发&#xff0c;由于其精巧的外观设计、超低的噪声、出色的干发效果&#xff0c;高速吹…

苹果Mac图像修图软件Photomator和Pixelmator Pro 有什么区别?

同为一个团队设计的Mac修图软件Photomator和Pixelmator Pro有哪些区别呢&#xff1f;有哪些不一样的功能&#xff1f; Photomator和Pixelmator Pro区别如下&#xff1a; 1、用途不同 Photomator 和 Pixelmator Pro 是两个功能强大的应用程序&#xff0c;具有两个不同的用途。…

【docker】一文讲完docker搭建私有仓库

一、docker搭建私有仓库方法总结 搭建Docker私有仓库主要有以下几种方式&#xff1a; 使用Docker官方提供的Registry镜像&#xff1a;Docker官方提供了一个用于构建私有镜像仓库的Registry镜像&#xff0c;只需将镜像下载并运行容器&#xff0c;然后暴露5000端口即可使用。可以…

呼叫 Mac 用户 | Navicat Premium 原生支持在搭载 Apple Silicon 芯片的电脑上使用

作为桌面端数据库管理开发软件&#xff0c;Navicat Premium 与 Navicat for MongoDB 16.3 (或更高版本) 已原生支持搭载 Apple Silicon 芯片的 Mac 电脑上使用。这是一次重要的技术改进&#xff0c;通过原生技术将大幅提升 Mac 用户在使用 Navicat 过程中的响应速度、流畅性以及…

LeetCode(39)组合总和⭐⭐

给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target &#xff0c;找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 &#xff0c;并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制重复被选取 。如…

2个nodejs进程利用redis 实现订阅发布

1.新建文件 redis_db.js use strict;const redis require(redis); const options {host: "127.0.0.1",port: 6379,password: "123456", // CONFIG SET requirepass "123456" }var array [] for(var i0; i<3; i){const client redis.crea…

bat批处理文件_命令汇总(2)

文章目录 1、换行2、返回上一级目录cd..3、隐藏指令回显echo off4、开启指令回显echo on5、用关闭echo off指令本身的回显6、echo提示信息 1、换行 cd.. echo. echo. echo. pause2、返回上一级目录cd… 3、隐藏指令回显echo off echo off echo hello1 echo hello2 pause4、开…

手机上连网络转接app,电脑连接手机,共用网络转接app的办法

方法一&#xff0c;&#xff08;不推荐&#xff09; 因为太简单了所以写一下 电脑安装MuMu模拟器&#xff0c;之后安装网络转接app&#xff0c;这个模拟器设置了从电脑上安装app和&#xff0c;安卓与电脑同步文件夹功能&#xff0c;实现文件共享。所以直接用就可以了。 方法二…

磁盘损坏0x80070570

要修复的文件在E盘&#xff0c;那就输入&#xff1a;chkdsk e&#xff1a; /f 原文&#xff1a;https://www.haozhuangji.com/xtjc/111213592.html

得物商品状态体系介绍

一、得物的商品体系 目前得物的商品分为三种类型&#xff0c;分别是&#xff1a;新品、商品、草稿。但是只有商品是可售卖的&#xff0c;新品和草稿都不是可售卖的。 新品有很多种创建的渠道&#xff0c;商品可以由新品选品通过后由系统自动生成&#xff0c;也可以由运营直接…

十、HTML 样式- CSS

CSS (Cascading Style Sheets) 用于渲染HTML元素标签的样式。 一、实例 1、HTML使用样式 本例演示如何使用添加到 <head> 部分的样式信息对 HTML 进行格式化。 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>HTM…

Docker overlay2文件busy,容器不能删除问题解决

文章目录 在删除docker容器的时候报错,说设备正忙通过 docker ps -a 查看有两个状态的dead的容器解决方法&#xff1a;1.查看所有挂载的设备2.截取设备的进程id3.清理进程(kill掉即可) 在删除docker容器的时候报错,说设备正忙 Error response from daemon: Driver overlay2 fai…

GNSS位移监测站对尾矿库坝体表面位移进行自动化监测

表面位移监测&#xff1a;通过GNSS位移监测站对尾矿库坝体表面位移进行自动化监测&#xff0c;掌握尾矿坝整体表面位置的变化及其变化速率&#xff08;包括平面位移和垂直沉降&#xff09;&#xff0c;确定尾矿坝坝体整体位移变形的情况&#xff0c;是确定尾矿库安全性的重要指…

<HarmonyOS主题课>1~3课后习题汇总

&#xff1c;HarmonyOS第一课&#xff1e;1~10课后习题汇总 1使用DevEco Studio高效开发 单选题 用哪一种装饰器修饰的组件可作为页面入口组件&#xff1f;&#xff08;B&#xff09; A. ComponentB. EntryC. PreviewD. Builder ArkTS Stage模型支持API Version 9&#xf…

药品销售管理系统

一、系统总体设计 该系统是针对医药销售行业所设计&#xff0c;主要用来管理销售药品所产生的额大量信息。该系统可帮助从医人员便捷管理药品销售信息&#xff0c;极大的提高工作效率&#xff0c;降低人工操作的失误率&#xff0c;为药品的销售者和购买者提供便利。根据对需求的…

Qt qDebug基本的使用方法详解

目录 qDebug基本用法输出字符串输出变量值1输出变量值2支持流式输出输出十六进制去除双引号和空格调试输出级别 自定义类型输出自定义日志信息的输出格式示例占位符设置环境变量 关闭QDebug输出Qt工程VS工程 在VS工程中如何查看qDebug输出 DebugView下载 qDebug基本用法 qDebug…