20240531在飞凌的OK3588-C开发板上跑原厂的Buildroot测试ETH0接口【仅供参考】

20240531在飞凌的OK3588-C开发板上跑原厂的Buildroot测试ETH0接口
2024/5/31 20:28


root@rk3588-buildroot:/# ifconfig eth0 up
root@rk3588-buildroot:/# ifconfig eth1 up
root@rk3588-buildroot:/# ifconfig
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ifconfig eth1 192.168.3.232
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ifconfig
root@rk3588-buildroot:/# ping 192.168.3.85
rootroot@rootroot-ThinkBook-16-G5-IRH:~$ ping 192.168.3.232


由于ETH0/ETH1在莫名其妙的情况下被烧毁了!【都发烫了】
硬件花费了老鼻子劲才将ETH0修好。ETH1不想搞!
直接搬家的IPC的DTS上的gmac0,而不是飞凌原厂的DTS。因此本文仅供参考!
【后果/神奇的是,eth0变成eth1通了,但是摄像头找不到了!^_】

虽然可以PING通,但是只有黄色灯在闪烁,绿色灯没有亮,更不用说常亮了!

Z:\RK3588_IPC_SDK\sysdrv\source\kernel\arch\arm64\boot\dts\rockchip\rk3588-nvr-demo.dtsi
Z:\repo_RK3588_Buildroot20240508\kernel\arch\arm64\boot\dts\rockchip\rk3588-evb7-v11.dtsi
&dsi1_panel {
    power-supply = <&vcc3v3_lcd_n>;

    /*
     * because in hardware, the two screens share the reset pin,
     * so reset-gpios need only in dsi1 enable and dsi0 disabled
     * case.
     */

    //reset-gpios = <&gpio0 RK_PD3 GPIO_ACTIVE_LOW>;
    //pinctrl-names = "default";
    //pinctrl-0 = <&lcd_rst_gpio>;
};

&gmac0 {
    /* Use rgmii-rxid mode to disable rx delay inside Soc */
    phy-mode = "rgmii-rxid";
    clock_in_out = "output";

    snps,reset-gpio = <&gpio4 RK_PB3 GPIO_ACTIVE_LOW>;
    snps,reset-active-low;
    /* Reset time is 20ms, 100ms for rtl8211f */
    snps,reset-delays-us = <0 20000 100000>;

    pinctrl-names = "default";
    pinctrl-0 = <&gmac0_miim
             &gmac0_tx_bus2
             &gmac0_rx_bus2
             &gmac0_rgmii_clk
             &gmac0_rgmii_bus>;

    tx_delay = <0x44>;
    /* rx_delay = <0x4f>; */

    phy-handle = <&rgmii_phy0>;
    status = "okay";
};

&gmac1 {
    /* Use rgmii-rxid mode to disable rx delay inside Soc */
    phy-mode = "rgmii-rxid";
    clock_in_out = "output";

    snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
    snps,reset-active-low;
    /* Reset time is 20ms, 100ms for rtl8211f */
    snps,reset-delays-us = <0 20000 100000>;

    pinctrl-names = "default";
    pinctrl-0 = <&gmac1_miim
             &gmac1_tx_bus2
             &gmac1_rx_bus2
             &gmac1_rgmii_clk
             &gmac1_rgmii_bus>;

    tx_delay = <0x43>;
    /* rx_delay = <0x3f>; */

    phy-handle = <&rgmii_phy>;
    status = "okay";
};


&i2s6_8ch {
    status = "okay";
};

&i2s7_8ch {
    status = "okay";
};

&mdio0 {
    rgmii_phy0: phy@1 {
        compatible = "ethernet-phy-ieee802.3-c22";
        reg = <0x1>;
    };
};

&mdio1 {
    rgmii_phy: phy@1 {
        compatible = "ethernet-phy-ieee802.3-c22";
        reg = <0x1>;
    };
};

&mipi_dcphy0 {
    status = "okay";
};


原始LOG:
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:36 errors:0 dropped:0 overruns:0 frame:0
          TX packets:36 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2608 (2.5 KiB)  TX bytes:2608 (2.5 KiB)

root@rk3588-buildroot:/#         
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 16:B5:8E:1B:42:CB  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:88 

eth1      Link encap:Ethernet  HWaddr 12:B5:8E:1B:42:CB  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:140 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:38 errors:0 dropped:0 overruns:0 frame:0
          TX packets:38 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2728 (2.6 KiB)  TX bytes:2728 (2.6 KiB)

root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ifconfig eth0 up
[   34.783304] rk_gmac-dwmac fe1c0000.ethernet eth0: no phy found
ifconfig: SIOCSIFFLAGS: No such device
[   34.783342] rk_gmac-dwmac fe1c0000.ethernet eth0: stmmac_open: Cannot attach to PHY (error: -19)
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ifconfig eth1 up
[   42.914082] rk_gmac-dwmac fe1b0000.ethernet eth1: PHY [stmmac-0:01] driver [RTL8211F Gigabit Ethernet] (irq=POLL)
[   42.916074] dwmac4: Master AXI performs any burst length
[   42.916102] rk_gmac-dwmac fe1b0000.ethernet eth1: No Safety Features support found
[   42.916120] rk_gmac-dwmac fe1b0000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported
[   42.916287] rk_gmac-dwmac fe1b0000.ethernet eth1: registered PTP clock
[   42.916649] rk_gmac-dwmac fe1b0000.ethernet eth1: configuring for phy/rgmii-rxid link mode
root@rk3588-buildroot:/# [   42.942947] rk_gmac-dwmac fe1b0000.ethernet eth1: Link is Up - 1Gbps/Full - flow control rx/tx
[   42.942978] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready

root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ifconfig
eth1      Link encap:Ethernet  HWaddr 12:B5:8E:1B:42:CB  
          inet6 addr: fe80::10b5:8eff:fe1b:42cb/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:56 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:7871 (7.6 KiB)  TX bytes:586 (586.0 B)
          Interrupt:140 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:50 errors:0 dropped:0 overruns:0 frame:0
          TX packets:50 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:3448 (3.3 KiB)  TX bytes:3448 (3.3 KiB)

root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ifconfig eth1 192.168.3.232
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ifconfig
eth1      Link encap:Ethernet  HWaddr 12:B5:8E:1B:42:CB  
          inet addr:192.168.3.232  Bcast:192.168.3.255  Mask:255.255.255.0
          inet6 addr: fe80::10b5:8eff:fe1b:42cb/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:533 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:79525 (77.6 KiB)  TX bytes:1328 (1.2 KiB)
          Interrupt:140 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:86 errors:0 dropped:0 overruns:0 frame:0
          TX packets:86 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:5608 (5.4 KiB)  TX bytes:5608 (5.4 KiB)

root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# ping 192.168.3.85
PING 192.168.3.85 (192.168.3.85) 56(84) bytes of data.
64 bytes from 192.168.3.85: icmp_seq=1 ttl=64 time=0.514 ms
64 bytes from 192.168.3.85: icmp_seq=2 ttl=64 time=0.457 ms
64 bytes from 192.168.3.85: icmp_seq=3 ttl=64 time=0.451 ms
64 bytes from 192.168.3.85: icmp_seq=4 ttl=64 time=0.450 ms
64 bytes from 192.168.3.85: icmp_seq=5 ttl=64 time=0.423 ms
64 bytes from 192.168.3.85: icmp_seq=6 ttl=64 time=0.411 ms
64 bytes from 192.168.3.85: icmp_seq=7 ttl=64 time=0.451 ms
64 bytes from 192.168.3.85: icmp_seq=8 ttl=64 time=0.413 ms
64 bytes from 192.168.3.85: icmp_seq=9 ttl=64 time=0.541 ms
64 bytes from 192.168.3.85: icmp_seq=10 ttl=64 time=0.430 ms
64 bytes from 192.168.3.85: icmp_seq=11 ttl=64 time=0.412 ms
64 bytes from 192.168.3.85: icmp_seq=12 ttl=64 time=0.436 ms
64 bytes from 192.168.3.85: icmp_seq=13 ttl=64 time=0.415 ms
64 bytes from 192.168.3.85: icmp_seq=14 ttl=64 time=0.426 ms
64 bytes from 192.168.3.85: icmp_seq=15 ttl=64 time=0.455 ms
64 bytes from 192.168.3.85: icmp_seq=16 ttl=64 time=0.458 ms
64 bytes from 192.168.3.85: icmp_seq=17 ttl=64 time=0.429 ms
64 bytes from 192.168.3.85: icmp_seq=18 ttl=64 time=0.429 ms
64 bytes from 192.168.3.85: icmp_seq=19 ttl=64 time=0.542 ms
64 bytes from 192.168.3.85: icmp_seq=20 ttl=64 time=0.453 ms
64 bytes from 192.168.3.85: icmp_seq=21 ttl=64 time=0.460 ms
64 bytes from 192.168.3.85: icmp_seq=22 ttl=64 time=0.474 ms
64 bytes from 192.168.3.85: icmp_seq=23 ttl=64 time=0.469 ms
64 bytes from 192.168.3.85: icmp_seq=24 ttl=64 time=0.459 ms
64 bytes from 192.168.3.85: icmp_seq=25 ttl=64 time=0.460 ms
64 bytes from 192.168.3.85: icmp_seq=26 ttl=64 time=0.445 ms
64 bytes from 192.168.3.85: icmp_seq=27 ttl=64 time=0.456 ms
64 bytes from 192.168.3.85: icmp_seq=28 ttl=64 time=0.451 ms
64 bytes from 192.168.3.85: icmp_seq=29 ttl=64 time=0.444 ms
64 bytes from 192.168.3.85: icmp_seq=30 ttl=64 time=0.539 ms
64 bytes from 192.168.3.85: icmp_seq=31 ttl=64 time=0.452 ms
64 bytes from 192.168.3.85: icmp_seq=32 ttl=64 time=0.504 ms
64 bytes from 192.168.3.85: icmp_seq=33 ttl=64 time=0.461 ms
64 bytes from 192.168.3.85: icmp_seq=34 ttl=64 time=0.533 ms
64 bytes from 192.168.3.85: icmp_seq=35 ttl=64 time=0.417 ms
64 bytes from 192.168.3.85: icmp_seq=36 ttl=64 time=0.521 ms
64 bytes from 192.168.3.85: icmp_seq=37 ttl=64 time=0.455 ms
64 bytes from 192.168.3.85: icmp_seq=38 ttl=64 time=0.241 ms
64 bytes from 192.168.3.85: icmp_seq=39 ttl=64 time=0.427 ms
64 bytes from 192.168.3.85: icmp_seq=40 ttl=64 time=0.540 ms
64 bytes from 192.168.3.85: icmp_seq=41 ttl=64 time=0.530 ms
64 bytes from 192.168.3.85: icmp_seq=42 ttl=64 time=0.542 ms
64 bytes from 192.168.3.85: icmp_seq=43 ttl=64 time=0.441 ms
64 bytes from 192.168.3.85: icmp_seq=44 ttl=64 time=0.468 ms
64 bytes from 192.168.3.85: icmp_seq=45 ttl=64 time=0.413 ms
64 bytes from 192.168.3.85: icmp_seq=46 ttl=64 time=0.443 ms
64 bytes from 192.168.3.85: icmp_seq=47 ttl=64 time=0.557 ms
64 bytes from 192.168.3.85: icmp_seq=48 ttl=64 time=0.425 ms
64 bytes from 192.168.3.85: icmp_seq=49 ttl=64 time=0.435 ms
64 bytes from 192.168.3.85: icmp_seq=50 ttl=64 time=0.425 ms
64 bytes from 192.168.3.85: icmp_seq=51 ttl=64 time=0.423 ms
64 bytes from 192.168.3.85: icmp_seq=52 ttl=64 time=0.427 ms
64 bytes from 192.168.3.85: icmp_seq=53 ttl=64 time=0.423 ms
64 bytes from 192.168.3.85: icmp_seq=54 ttl=64 time=0.430 ms
64 bytes from 192.168.3.85: icmp_seq=55 ttl=64 time=0.430 ms
64 bytes from 192.168.3.85: icmp_seq=56 ttl=64 time=0.449 ms
64 bytes from 192.168.3.85: icmp_seq=57 ttl=64 time=0.429 ms
64 bytes from 192.168.3.85: icmp_seq=58 ttl=64 time=0.444 ms
64 bytes from 192.168.3.85: icmp_seq=59 ttl=64 time=0.428 ms
64 bytes from 192.168.3.85: icmp_seq=60 ttl=64 time=0.440 ms
64 bytes from 192.168.3.85: icmp_seq=61 ttl=64 time=0.535 ms
64 bytes from 192.168.3.85: icmp_seq=62 ttl=64 time=0.412 ms
64 bytes from 192.168.3.85: icmp_seq=63 ttl=64 time=0.440 ms
64 bytes from 192.168.3.85: icmp_seq=64 ttl=64 time=0.540 ms
64 bytes from 192.168.3.85: icmp_seq=65 ttl=64 time=0.450 ms
64 bytes from 192.168.3.85: icmp_seq=66 ttl=64 time=0.532 ms
64 bytes from 192.168.3.85: icmp_seq=67 ttl=64 time=0.414 ms
64 bytes from 192.168.3.85: icmp_seq=68 ttl=64 time=0.519 ms
64 bytes from 192.168.3.85: icmp_seq=69 ttl=64 time=0.434 ms
64 bytes from 192.168.3.85: icmp_seq=70 ttl=64 time=0.531 ms
64 bytes from 192.168.3.85: icmp_seq=71 ttl=64 time=0.427 ms
64 bytes from 192.168.3.85: icmp_seq=72 ttl=64 time=0.414 ms
64 bytes from 192.168.3.85: icmp_seq=73 ttl=64 time=0.521 ms
64 bytes from 192.168.3.85: icmp_seq=74 ttl=64 time=0.436 ms
64 bytes from 192.168.3.85: icmp_seq=75 ttl=64 time=0.535 ms
64 bytes from 192.168.3.85: icmp_seq=76 ttl=64 time=0.530 ms
64 bytes from 192.168.3.85: icmp_seq=77 ttl=64 time=0.393 ms
64 bytes from 192.168.3.85: icmp_seq=78 ttl=64 time=0.408 ms
64 bytes from 192.168.3.85: icmp_seq=79 ttl=64 time=0.404 ms
64 bytes from 192.168.3.85: icmp_seq=80 ttl=64 time=0.425 ms
64 bytes from 192.168.3.85: icmp_seq=81 ttl=64 time=0.404 ms
64 bytes from 192.168.3.85: icmp_seq=82 ttl=64 time=0.437 ms
64 bytes from 192.168.3.85: icmp_seq=83 ttl=64 time=0.413 ms
64 bytes from 192.168.3.85: icmp_seq=84 ttl=64 time=0.426 ms
64 bytes from 192.168.3.85: icmp_seq=85 ttl=64 time=0.426 ms
64 bytes from 192.168.3.85: icmp_seq=86 ttl=64 time=0.436 ms
64 bytes from 192.168.3.85: icmp_seq=87 ttl=64 time=0.442 ms
64 bytes from 192.168.3.85: icmp_seq=88 ttl=64 time=0.409 ms
64 bytes from 192.168.3.85: icmp_seq=89 ttl=64 time=0.427 ms
64 bytes from 192.168.3.85: icmp_seq=90 ttl=64 time=0.456 ms
64 bytes from 192.168.3.85: icmp_seq=91 ttl=64 time=0.458 ms
64 bytes from 192.168.3.85: icmp_seq=92 ttl=64 time=0.436 ms
64 bytes from 192.168.3.85: icmp_seq=93 ttl=64 time=0.434 ms
^C
--- 192.168.3.85 ping statistics ---
93 packets transmitted, 93 received, 0% packet loss, time 93222ms
rtt min/avg/max/mdev = 0.241/0.452/0.557/0.047 ms
root@rk3588-buildroot:/# 
root@rk3588-buildroot:/# 


viewpro@viewpro-ThinkBook-16-G5-IRH:~$ 
viewpro@viewpro-ThinkBook-16-G5-IRH:~$ ping 192.168.3.232
PING 192.168.3.232 (192.168.3.232) 56(84) bytes of data.
64 bytes from 192.168.3.232: icmp_seq=1 ttl=64 time=0.421 ms
64 bytes from 192.168.3.232: icmp_seq=2 ttl=64 time=0.400 ms
64 bytes from 192.168.3.232: icmp_seq=3 ttl=64 time=0.407 ms
64 bytes from 192.168.3.232: icmp_seq=4 ttl=64 time=0.411 ms
64 bytes from 192.168.3.232: icmp_seq=5 ttl=64 time=0.424 ms
64 bytes from 192.168.3.232: icmp_seq=6 ttl=64 time=0.409 ms
64 bytes from 192.168.3.232: icmp_seq=7 ttl=64 time=0.489 ms
64 bytes from 192.168.3.232: icmp_seq=8 ttl=64 time=0.418 ms
64 bytes from 192.168.3.232: icmp_seq=9 ttl=64 time=0.409 ms
64 bytes from 192.168.3.232: icmp_seq=10 ttl=64 time=0.408 ms
64 bytes from 192.168.3.232: icmp_seq=11 ttl=64 time=0.408 ms
64 bytes from 192.168.3.232: icmp_seq=12 ttl=64 time=0.408 ms
64 bytes from 192.168.3.232: icmp_seq=13 ttl=64 time=0.418 ms
64 bytes from 192.168.3.232: icmp_seq=14 ttl=64 time=0.405 ms
64 bytes from 192.168.3.232: icmp_seq=15 ttl=64 time=0.410 ms
64 bytes from 192.168.3.232: icmp_seq=16 ttl=64 time=0.407 ms
64 bytes from 192.168.3.232: icmp_seq=17 ttl=64 time=0.409 ms
64 bytes from 192.168.3.232: icmp_seq=18 ttl=64 time=0.411 ms
64 bytes from 192.168.3.232: icmp_seq=19 ttl=64 time=0.490 ms
64 bytes from 192.168.3.232: icmp_seq=20 ttl=64 time=0.413 ms
64 bytes from 192.168.3.232: icmp_seq=21 ttl=64 time=0.408 ms
64 bytes from 192.168.3.232: icmp_seq=22 ttl=64 time=0.421 ms
64 bytes from 192.168.3.232: icmp_seq=23 ttl=64 time=0.414 ms
64 bytes from 192.168.3.232: icmp_seq=24 ttl=64 time=0.405 ms
64 bytes from 192.168.3.232: icmp_seq=25 ttl=64 time=0.398 ms
64 bytes from 192.168.3.232: icmp_seq=26 ttl=64 time=0.410 ms
64 bytes from 192.168.3.232: icmp_seq=27 ttl=64 time=0.400 ms
64 bytes from 192.168.3.232: icmp_seq=28 ttl=64 time=0.424 ms
64 bytes from 192.168.3.232: icmp_seq=29 ttl=64 time=0.408 ms
64 bytes from 192.168.3.232: icmp_seq=30 ttl=64 time=0.413 ms
64 bytes from 192.168.3.232: icmp_seq=31 ttl=64 time=0.421 ms
64 bytes from 192.168.3.232: icmp_seq=32 ttl=64 time=0.410 ms
64 bytes from 192.168.3.232: icmp_seq=33 ttl=64 time=0.498 ms
64 bytes from 192.168.3.232: icmp_seq=34 ttl=64 time=0.420 ms
64 bytes from 192.168.3.232: icmp_seq=35 ttl=64 time=0.505 ms
64 bytes from 192.168.3.232: icmp_seq=36 ttl=64 time=0.452 ms
64 bytes from 192.168.3.232: icmp_seq=37 ttl=64 time=0.435 ms
64 bytes from 192.168.3.232: icmp_seq=38 ttl=64 time=0.408 ms
64 bytes from 192.168.3.232: icmp_seq=39 ttl=64 time=0.393 ms
64 bytes from 192.168.3.232: icmp_seq=40 ttl=64 time=0.391 ms
64 bytes from 192.168.3.232: icmp_seq=41 ttl=64 time=0.403 ms
64 bytes from 192.168.3.232: icmp_seq=42 ttl=64 time=0.409 ms
64 bytes from 192.168.3.232: icmp_seq=43 ttl=64 time=0.413 ms
64 bytes from 192.168.3.232: icmp_seq=44 ttl=64 time=0.401 ms
64 bytes from 192.168.3.232: icmp_seq=45 ttl=64 time=0.412 ms
64 bytes from 192.168.3.232: icmp_seq=46 ttl=64 time=0.441 ms
64 bytes from 192.168.3.232: icmp_seq=47 ttl=64 time=0.410 ms
64 bytes from 192.168.3.232: icmp_seq=48 ttl=64 time=0.400 ms
^C
--- 192.168.3.232 ping statistics ---
48 packets transmitted, 48 received, 0% packet loss, time 48139ms
rtt min/avg/max/mdev = 0.391/0.418/0.505/0.025 ms
viewpro@viewpro-ThinkBook-16-G5-IRH:~$ 

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

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

相关文章

化妆品企业如何借助CRM客户管理应用,实现业绩飞跃?

在当今数字化时代&#xff0c;化妆品企业面临着前所未有的挑战与机遇。随着消费者需求的日益多样化和市场竞争的加剧&#xff0c;如何高效地管理客户信息、优化客户服务流程、提升客户满意度&#xff0c;成为了化妆品企业亟需解决的问题。而在这个背景下&#xff0c;低代码平台…

C#中的实体属性详解与示例

文章目录 实体属性的定义实体属性的访问实体属性的示例总结 在C#中&#xff0c;实体属性是面向对象编程的重要组成部分。实体属性允许我们定义对象的特征和行为&#xff0c;并提供了一种方式来访问和管理这些特征。通过实体属性&#xff0c;我们可以封装对象的状态&#xff0c;…

WiFi串口服务器与工业路由器:局域网应用的协同之力

在工业物联网&#xff08;IIoT&#xff09;迅猛发展的当下&#xff0c;局域网&#xff08;LAN&#xff09;作为连接工业设备与数据中心的桥梁&#xff0c;其重要性日益凸显。WiFi串口服务器与工业路由器作为局域网中的关键组件&#xff0c;以其独特的性能和功能&#xff0c;为传…

64位和32位对C++ 对long类型的使用造成程序崩溃、内存泄漏问题。

系列文章目录 1、理解32位和64位下long类型和int类型不同 2、理解release和debug版本编译的可执行程序的区别 3、谨慎在64位下对long类型与int类型去赋值和相互转换 文章目录 系列文章目录前言一、int、long类型二、使用步骤1.示例代码 前言 编译环境&#xff1a;qt -c、linu…

cURL error 60: SSL certificate problem: unable to get local issuer certifica

本地小程序把接口换到本地的服务器接口&#xff0c;然后就报错了&#xff1a; cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) 经查询查到&#xff1a;此问题的出现是由于没有配…

Nginx企业级负载均衡:技术详解系列(14)—— 账户认证功能

你好&#xff0c;我是赵兴晨&#xff0c;97年文科程序员。 你有没有听说过Nginx的账户认证功能&#xff1f;这可不只是一个技术问题&#xff0c;它关系到我们上网时的安全和便利。就像家里需要一把钥匙才能进们一样&#xff0c;Nginx的账户认证功能就是确保有只有授权的人才能…

Android Studio启动第一个项目的报错——笔记

零基础第一次使用Android Studio开发遇到的问题 1 新建项目下载gradle慢的问题 直接叉掉打开gradle官网手动下载自己想要的版本 gradle官网 然后在刚刚建好的项目里找到gradle-wrapper.properties&#xff0c;修改distributionUrl&#xff0c;并把自己从官网下载的包放到和gr…

Scroll 上的明星项目Pencils Protocol ,缘何被严重低估?

近日&#xff0c;完成品牌升级的 Pencils Prtocol 结束了 Season 2 并无缝开启了 Season 3&#xff0c;在 Season 3 中&#xff0c;用户可以通过质押系列资产包括 $ETH、$USDT、$USDC、$STONE 、$wrsETH、$pufETH 等来获得可观收益&#xff0c;并获得包括 Scroll Marks、 Penci…

【运维项目经历|023】Docker自动化部署与监控项目

目录 项目名称 项目背景 项目目标 项目成果 我的角色与职责 我主要完成的工作内容 本次项目涉及的技术 本次项目遇到的问题与解决方法 本次项目中可能被面试官问到的问题 问题1&#xff1a;项目周期是多久&#xff1f; 问题2&#xff1a;服务器部署架构方式及数量配置…

【Nacos源码分析01-服务注册与集群间数据是同步】

文章目录 了解CAPBASE理论Nacos支持CP还是AP集群数据同步实现集群数据一致性源码 了解CAP CAP理论的核心观点是&#xff0c;一个分布式系统无法同时完全满足一致性、可用性和分区容错性这三个特性。具体而言&#xff0c;当发生网络分区时&#xff0c;系统必须在一致性和可用性之…

计算机视觉与模式识别实验1-2 图像的形态学操作

文章目录 &#x1f9e1;&#x1f9e1;实验流程&#x1f9e1;&#x1f9e1;1.图像膨胀2.图像腐蚀3.膨胀与腐蚀的综合使用4.对下面二值图像的目标提取骨架&#xff0c;并分析骨架结构。 &#x1f9e1;&#x1f9e1;全部代码&#x1f9e1;&#x1f9e1; &#x1f9e1;&#x1f9e1…

tomcat中管理环境变量之setenv.sh

tomcat配置spring profiles springboot打包war部署到外部tomcat的时候指定profile启动 windows 在%tomcat%/bin下创建setenv.bat文件 linux 在%tomcat%/bin下创建setenv.sh文件 使用JVM参数: windows set "JAVA_OPTS%JAVA_OPTS% -Dspring.profiles.activedev"in…

Python自动化办公2.0 即将发布

第一节课&#xff1a;数据整理与清洗 第二节课&#xff1a;数据筛选、过滤与排序 第三节课&#xff1a;高级数据处理技巧 第四节课&#xff1a;数据可视化与实践案例 第五节课&#xff1a;统计分析与报表 第六节&#xff1a;常见的Excel报表 与下方的课程形成知识体系&…

vue3学习(六)

前言 接上一篇学习笔记&#xff0c;今天主要是抽空学习了vue的状态管理&#xff0c;这里学习的是vuex&#xff0c;版本4.1。学习还没有学习完&#xff0c;里面有大坑&#xff0c;难怪现在官网出的状态管理用Pinia。 一、vuex状态管理知识点 上面的方式没有写全&#xff0c;还有…

如何在Windows 10上更改默认系统字体,这里有详细步骤

Windows 10的默认系统字体Segoe UI看起来相当不错。但是,如果你有更好的替代品,你可以更改Windows 10 PC上的默认系统字体。我们将向你展示如何执行此操作。 如何使用注册表编辑器更改默认系统字体 在撰写本文时,“设置”和“控制面板”都没有更改默认系统字体的选项。这意…

官网:管它日薄西山or蒸蒸日上,气质这块,必须拿捏死死的。

在日薄西山的时候&#xff0c;网站建设面临着许多困难和挑战。市场竞争激烈&#xff0c;用户需求多样化&#xff0c;技术更新迅速&#xff0c;这些都要求我们在网站建设中拥有高尚的气质。 而在蒸蒸日上的时刻&#xff0c;网站建设同样需要我们拿捏好气质。只有坚持下去&#…

软件和系统集成项目确认测试报告的费用需要多少?

确认测试报告 软件和系统集成项目确认测试报告的费用因多种因素而异&#xff0c;包括项目的规模、复杂度、测试范围、测试周期等。第三方软件测试机构价格区间一般是几千到几万不等&#xff0c;还有些会根据建设费用的2-5%进行收费。 一般来说&#xff0c;软件和系统集成项目…

element ui el-calendar日历组件完整代码

el-calendar日历组件完整代码 1. 说在前面2. 日历整体代码3. 编辑与新增 1. 说在前面 最近一直忙于上班&#xff0c;没咋看博客&#xff0c;发现很多小伙伴都要日历组件的代码&#xff0c;于是今天抽空给大家整理一下&#xff0c;为爱发电&#xff01;日历组件的原文在这里&am…

计算机视觉与模式识别实验1-1 图像的直方图平衡

文章目录 &#x1f9e1;&#x1f9e1;实验流程&#x1f9e1;&#x1f9e1;1.读入图像‘rice.png’&#xff0c;在一个窗口中显示灰度级n64&#xff0c;128和256的图像直方图。2.调解图像灰度范围&#xff0c;观察变换后的图像及其直方图的变化。3.分别对图像‘pout.tif’和‘ti…

③单细胞学习-pbmc的Seurat 流程

目录 1&#xff0c;数据读取 2&#xff0c;线粒体基因查看 3&#xff0c;数据标准化 4&#xff0c;识别高变基因 5&#xff0c;进行数据归一化 6&#xff0c;进行线性降维 7&#xff0c;确定细胞簇 8&#xff0c;UMAP/tSNE降维&#xff08;保存pbmc_tutorial.rds&#…