CubeMX配置的艺术:用HAL库构建模块化太阳能监测系统

STM32+Lora+WiFi+GPS多模通信环境监测系统设计与实现 物联网系统设计中,多模通信融合是提升系统可靠性与适应性的关键技术。其核心原理在于整合不同通信协议的优势,例如WiFi的高带宽与互联网接入能力,以及LoRa的远距离、低功耗特性,通过智能切换策略确保数据在不同网络环境下都能可靠传输。这种技术方案的价值在于解决了单一通信方式在复杂场景(如偏远地区、移动环境)下的局限性,极大地扩展了物联网设备的部署范围。在环境监测、智慧农业、资产追踪等应用场景中,多模通信系统能够确保关键数据的连续上报。本文聚焦于STM32单片机平台,详细阐述了如何驱动Lora模块、WiFi模块和 阅读详情

CubeMX配置的艺术:用HAL库构建模块化太阳能监测系统

在嵌入式系统开发中,模块化设计不仅提升了代码的可维护性和复用性,还为系统的扩展和调试带来了极大便利。对于能源监测这类多传感器、多任务的应用场景,如何通过STM32CubeMX和HAL库快速构建一个结构清晰、低耦合的嵌入式系统,是许多开发者关心的核心问题。本文将聚焦于太阳能监测系统的实际开发,从CubeMX的工程配置出发,逐步深入到软件架构设计、数据采集优化和用户交互实现,为初学者和有一定经验的开发者提供一套可复用的开发模式。

无论是太阳能、风能还是电池堆监测,其核心问题都可以归结为多通道数据采集、实时处理和人机交互的有机结合。而STM32CubeMX作为ST官方推出的图形化配置工具,能够极大简化外设初始化的复杂度,让开发者更专注于业务逻辑的实现。接下来,我们将从工程配置开始,逐步构建一个完整的模块化监测系统。

1. 工程创建与外设配置

使用STM32CubeMX创建新工程时,首先需要选择正确的MCU型号。以STM32F103C8T6为例,这款芯片具备足够的ADC通道和GPIO数量,非常适合多传感器采集场景。在Pinout视图中,我们需要配置以下关键外设:

  • ADC多通道配置:将PB0、PB1、PB2分别配置为ADC1的IN8、IN9、IN10通道,用于太阳能电池电压采集。在Configuration标签页中,设置ADC为连续转换模式,DMA传输使能,以保证数据采集的高效性。
  • GPIO输出配置:将PA4和PA5配置为输出模式,用于OLED显示屏的片选信号。这种硬件片选机制可以支持多个显示设备的分时复用。
  • GPIO输入配置:配置一组GPIO为输入模式,并启用内部上拉电阻,用于按键检测。通常选择PA0-PA3作为按键输入引脚,硬件去抖动可以通过合适的电容实现。

下表总结了关键引脚的功能配置:

引脚功能配置参数
PB0ADC1_IN8连续转换模式,DMA使能
PB1ADC1_IN9连续转换模式,DMA使能
PB2ADC1_IN10连续转换模式,DMA使能
PA4GPIO Output推挽输出,高速模式
PA5GPIO Output推挽输出,高速模式
PA0GPIO Input上拉输入,外部中断使能

在Clock Configuration中,将系统时钟设置为72MHz,ADC时钟分频至14MHz以内(保证采样精度)。生成代码时,选择MDK-ARM或STM32CubeIDE工具链,并勾选“生成外设初始化代码”选项。

提示:在配置ADC时,建议将采样时间设置为239.5 cycles,这是精度和速度的最佳平衡点,尤其适合太阳能电池这种变化相对缓慢的信号。

2. 软件架构设计与模块划分

一个良好的软件架构是系统可维护性的基础。对于太阳能监测系统,我们采用分层设计,将硬件驱动、业务逻辑和用户界面分离,每层只关注自身的职责。

硬件抽象层(HAL层):这一层直接基于CubeMX生成的代码,包含ADC驱动、GPIO驱动和OLED显示驱动。为了避免硬件变更带来的大规模修改,我们将所有硬件操作封装成统一的接口:

// adc.h
typedef struct {
  uint32_t channel;
  float voltage;
} ADC_Channel_t;

void ADC_Init(void);
float ADC_ReadVoltage(uint32_t channel);

业务逻辑层:负责数据采集、转换和计算。这一层完全独立于硬件,可以方便地移植到其他平台。例如,太阳能电池电压的计算公式可以封装为:

// solar_calc.h
float ConvertToPower(float voltage, float current);
float CalculateEfficiency(float inputPower, float outputPower);

应用层:实现用户交互、数据显示和系统控制。通过状态机管理界面切换,确保系统的响应性。

这种分层架构的优势在于:

  • 硬件更换只需修改硬件抽象层,不影响上层逻辑
  • 业务逻辑可以单独测试,无需硬件参与
  • 功能模块高内聚,模块间低耦合,便于团队协作开发

3. ADC数据采集与处理优化

太阳能监测系统对数据采集的准确性和实时性要求较高,传统的轮询方式很难满足多通道采集的需求。我们采用DMA+ADC的方案实现高效数据采集。

首先在CubeMX中配置ADC的DMA请求:选择循环模式,数据宽度为半字(16bit),外设和内存地址都递增。这样配置后,ADC转换结果会自动存储到指定数组中,无需CPU干预。

// adc.c
#define ADC_BUFFER_SIZE 256
volatile uint16_t adcBuffer[ADC_BUFFER_SIZE];

void ADC_StartDMA(void) {
  HAL_ADC_Start_DMA(&hadc1, (uint32_t*)adcBuffer, ADC_BUFFER_SIZE);
}

对于采集到的原始数据,需要进行滤波处理以提高测量精度。移动平均滤波简单有效,适合嵌入式系统:

#define FILTER_WINDOW 10
float MovingAverageFilter(float newValue) {
  static float buffer[FILTER_WINDOW];
  static uint8_t index = 0;
  static float sum = 0;
  
  sum -= buffer[index];
  buffer[index] = newValue;
  sum += newValue;
  index = (index + 1) % FILTER_WINDOW;
  
  return sum / FILTER_WINDOW;
}

电压值的转换需要考虑ADC的特性和分压电阻的精度。实际校准中发现,分压电阻的误差会导致测量值偏差,因此需要引入校准系数:

float ConvertToVoltage(uint16_t adcValue) {
  const float referenceVoltage = 3.3f;
  const float calibrationFactor = 1.02f;  // 实测校准系数
  return (adcValue * referenceVoltage / 4096.0f) * calibrationFactor;
}

注意:ADC参考电压的稳定性直接影响测量精度。对于电池供电系统,建议使用外部基准电压源,或者定期测量实际参考电压进行软件补偿。

4. 显示模块与用户交互实现

OLED显示屏是系统与用户交互的主要界面,需要显示太阳能电池电压、发电功率、系统状态等信息。我们采用模块化设计显示功能,支持多页面切换。

首先封装OLED驱动层,提供统一的绘制接口:

// oled.h
void OLED_Init(void);
void OLED_Clear(void);
void OLED_ShowString(uint8_t x, uint8_t y, char* str);
void OLED_Refresh(void);

应用层通过状态机管理显示内容,每个界面对应一个绘制函数:

typedef enum {
  DISPLAY_MAIN,
  DISPLAY_DETAIL,
  DISPLAY_HISTORY,
  DISPLAY_SETTINGS
} DisplayState_t;

void Display_MainPage(float voltage1, float voltage2, float power) {
  char buffer[20];
  OLED_Clear();
  
  sprintf(buffer, "V1: %.2fV", voltage1);
  OLED_ShowString(0, 0, buffer);
  
  sprintf(buffer, "V2: %.2fV", voltage2);
  OLED_ShowString(0, 2, buffer);
  
  sprintf(buffer, "Power: %.1fW", power);
  OLED_ShowString(0, 4, buffer);
  
  OLED_Refresh();
}

按键处理采用中断方式,避免轮询带来的CPU资源浪费。在CubeMX中配置GPIO中断,并设置合适的触发边沿:

// key.c
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) {
  static uint32_t lastPressTime = 0;
  if (HAL_GetTick() - lastPressTime < 50) return; // 软件去抖动
  
  lastPressTime = HAL_GetTick();
  
  switch (GPIO_Pin) {
    case GPIO_PIN_0:
      // 处理按键1
      break;
    case GPIO_PIN_1:
      // 处理按键2
      break;
  }
}

通过旋转编码器或多个按键的组合,可以实现丰富的交互功能,如参数设置、历史数据查询等。这种设计使得系统不仅能够实时显示数据,还提供了良好的人机交互体验。

5. 系统集成与性能优化

将各个模块集成到一个完整的系统中,需要考虑任务调度、资源管理和性能优化等问题。基于FreeRTOS的多任务架构能够很好地满足这些需求。

在CubeMX中启用FreeRTOS,并创建三个主要任务:数据采集任务、显示更新任务和用户交互任务。每个任务具有不同的优先级和执行频率:

// tasks.c
void StartDefaultTask(void const * argument) {
  // 创建系统任务
  xTaskCreate(DataAcquisitionTask, "ADC", 128, NULL, 3, NULL);
  xTaskCreate(DisplayUpdateTask, "OLED", 128, NULL, 2, NULL);
  xTaskCreate(UserInterfaceTask, "UI", 128, NULL, 1, NULL);
  
  // 启动任务调度器
  vTaskStartScheduler();
}

数据采集任务负责读取ADC值并进行处理,执行频率最高(100Hz);显示更新任务负责刷新OLED显示,频率较低(2Hz);用户交互任务响应按键事件,实时性要求高但执行时间短。

电源管理是太阳能监测系统的重要考虑因素。通过STM32的低功耗模式,可以显著降低系统能耗:

void EnterLowPowerMode(void) {
  // 关闭不必要的外设
  HAL_ADC_Stop_DMA(&hadc1);
  OLED_PowerOff();
  
  // 进入停止模式
  HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);
  
  // 唤醒后重新初始化
  SystemClock_Config();
  ADC_StartDMA();
  OLED_PowerOn();
}

系统在无操作一段时间后自动进入低功耗模式,当有按键事件或定时时间到达时唤醒。这种设计使得系统在保持功能完整性的同时,最大限度地降低了功耗。

在实际部署中,我们发现模块化设计带来的另一个好处是易于扩展。例如,需要增加温度监测功能时,只需添加温度传感器驱动和相应的数据处理模块,无需修改现有架构。这种设计理念使得系统能够适应从太阳能到风能、电池堆等多种能源监测场景。

通过CubeMX的图形化配置和HAL库的硬件抽象,我们快速构建了一个结构清晰的嵌入式系统;而通过软件架构的精心设计,我们确保了系统的可维护性和可扩展性。这种开发模式不仅适用于能源监测领域,也为其他类型的嵌入式系统开发提供了有价值的参考。

【Linux】Linux网络故障排查与解决指南 在Linux系统中,网络问题可能会时常出现,而快速而准确地定位和解决这些问题是至关重要的。本指南将介绍一些常用的方法和工具,帮助您快速诊断并解决Linux系统中的网络故障。无论是简单的连接问题还是复杂的路由故障,通过本指南,您将学会如何利用各种命令和工具有效地分析和解决Linux网络问题,确保系统的网络连接稳定可靠。网络故障可能会给Linux系统带来许多麻烦,但随着您掌握了本指南介绍的方法和工具,您将能够更加轻松地应对各种网络挑战。 阅读详情

相关推荐

linux 网络诊断常用命令.pdf

1. 查看网卡统计信息(来自网卡驱动) # ethtool -S eth0 (不同的网卡和驱动的输出可能不一样) NIC statistics:      rx_packets: 60      tx_packets: 32      rx_bytes: 7371      tx_bytes: 3061      rx_broadcast: 0      tx_broadcast: 0      rx_multicast: 0      tx_multicast: 0      rx_errors: 0      tx_errors: 0      tx_dropped: 0      multicast: 0      collisions: 0      rx_length_errors: 0      rx_over_errors: 0      rx_crc_errors: 0      rx_frame_errors: 0      rx_no_buffer_count: 0      rx_missed_errors: 0      tx_aborted_errors: 0      tx_carrier_errors: 0      tx_fifo_errors: 0      tx_heartbeat_errors: 0      tx_window_errors: 0      tx_abort_late_coll: 0      tx_deferred_ok: 0      tx_single_coll_ok: 0      tx_multi_coll_ok: 0      tx_timeout_count: 0      tx_restart_queue: 0      rx_long_length_errors: 0      rx_short_length_errors: 0      rx_align_errors: 0      tx_tcp_seg_good: 0      tx_tcp_seg_failed: 0      rx_flow_control_xon: 0      rx_flow_control_xoff: 0      tx_flow_control_xon: 0      tx_flow_control_xoff: 0      rx_long_byte_count: 7371      rx_csum_offload_good: 52      rx_csum_offload_errors: 0      alloc_rx_buff_failed: 0      tx_smbus: 0      rx_smbus: 0      dropped_smbus: 0

Linux网络诊断工具mtr命令详解

MTR是一个强大的网络诊断工具, MTR(My Traceroute)是一个结合了traceroute和ping功能的网络诊断工具,它能够提供路径探测和网络诊断服务。MTR通过发送ICMP或者UDP数据包来测试网络连接,并实时显示数据包所经过的路由器及其响应时间。工具对网络工程师和系统管理员来说很有用,可以帮助他们识别网络延迟和丢包等问题;帮助他们详细地了解网络连接的质量和性能。通过实时显示路径上的网络状况,MTR在诊断和解决网络问题方面非常有用。命令可以指定数据包大小、跳数、端口等参数。

weixin_70208651的博客 8684

linux网络配置、测试及故障诊断方法和工具

linux网络配置、测试及故障诊断方法和工具.我在做驱动的时候发现自己还有知识点不明白,所以找到了这篇文章,感觉不错的,与大家分享.

Linux网络故障诊断

这里对文章进行总结以上就是今天要讲的内容,本文仅仅简单介绍了当网络出现故障时,Linux系统中可能出现的一些网络问题,如诊断网卡故障,网卡驱动程序,诊断网络层问题,诊断传输层和应用层问题。......

Candy5204的博客 541

用Matlab搞定Delta并联机器人运动学:从建模到正逆解完整流程(附代码)

本文详细介绍了如何使用Matlab实现Delta并联机器人的运动学分析,包括几何建模、正逆解求解及可视化验证。通过符号计算和数值迭代法,解决非线性方程组问题,并提供完整代码示例,帮助读者快速掌握Delta机器人的运动学计算与应用。

weixin_30955617的博客 178

WPF 解决listview值更改时页面没有刷新

WPF 解决listview值更改时页面没有刷新。

weixin_52475977的博客 1386

linux网络连接问题诊断

ethtool ethtool是linux的网络驱动程序的诊断和调整工具,可获取网络设备的相关信息,包括连接状态、驱动版本、PCI 总线定位等等。ethtool 是用于查询及设置网卡参数的命令。 使用方式: ethtool ethx //查询ethx网口基本设置,其中 x 是对应网卡的编号,如eth0、eth1等等 ethtool –h //显示ethtool的命令帮助(help) ethtool –i ethX //查询ethX网口的相关信息 ethtool –d et

xinming_365的博客 3460

创客学院嵌入式驱动开发——学习资料汇总

1.创客学院知识巩固-01C语言回顾_C/C++_Set_Mode的博客-优快云博客https://blog.youkuaiyun.com/Set_Mode/article/details/94431050 2.创客学院知识巩固-02数据结构_Set_Mode的博客-优快云博客https://blog.youkuaiyun.com/Set_Mode/article/details/94431087 3.创客学院知...

snaking616 5118

linux常用网络诊断命令,linux网络常用诊断工具

ping命令是检测网络通讯链路状况工具之一,主要用于查看网络上另一个主机系统的网络连接是否正常。参数:-c 设置完成要求回应的次数。-f 极限检测。-i 指定收发信息的间隔时间。-l 设置在送出ICMP包前,先行发出的数据包。-n 只输出数值。-p 设置填满数据包的范本样式。-q 不显示指令执行过程。-R 记录路由过程。-s 设置数据包的大小。-t 设置存活...

weixin_28727943的博客 912

ICLR 2022)ODConv:即插即用的动态卷积 (附代码)

一定程度上讲,ODConv可以视作CondConv的延续,将CondConv中一个维度上的动态特性进行了扩展,同时了考虑了空域、输入通道、输出通道等维度上的动态性,故称之为全维度动态卷积。ODConv是一种动态卷积算法,它的原理是在卷积过程中,根据输入数据的特征动态地调整卷积核的形状和大小,以适应不同的输入数据。具体来说,ODConv通过引入一个可学习的形变模块,根据输入数据的特征动态地调整卷积核的形状和大小,从而提高了卷积神经网络的性能。此外,相比常规卷积,动态卷积的卷积核参数往往是其n倍。

PLANTTHESON的博客 2万+

工业异常检测评价指标(I-AUROC、PRO等)

模型评价指标:TPR、FPR、Recall、ROC、AUC、AUROC、IoU、PRO、AUPRO等

qq_1532145264的博客 7444

【Linux】网络诊断工具traceroute命令详解

在Linux系统中,traceroute是一个常用的网络诊断命令,用于追踪数据包从源主机到目标主机所经过路由节点(每一跳)的路径。通过分析每一跳(Hop)的延迟和丢包情况,可以精准诊断网络连接问题(如延迟高、路由环路、防火墙拦截等)。

weixin_43892251的博客 1050

工业以太网通讯Profinet协议详解

Profinet是通过西门子控制系统被广泛使用的工业通信协议,是一种较新的,基于以太网的工业通讯协议。

mydatai的专栏 8855

CubeMX配置的艺术:构建模块化太阳能监测系统的HAL库设计哲学

本文探讨了如何利用STM32CubeMX工具配置HAL库,构建模块化的太阳能监测系统。通过ADC多通道采样、DMA传输和硬件抽象层设计,实现高效的数据采集与处理,提升系统可靠性和可维护性,为嵌入式开发提供实践参考。

mars5的博客 658

解锁RK3588 HDMI输出:分辨率与EDID的深度探索

本文详细探讨了瑞芯微RK3588处理器的HDMI输出分辨率配置与EDID解析技术。文章首先介绍了RK3588处理器的性能特点及其HDMI功能在多媒体和工业领域的应用价值,随后分别阐述了HDMI输出分辨率的硬件连接要求和软件配置方法,包括4K/8K等不同分辨率的配置实例。在EDID部分,深入解析了EDID的数据结构、交互机制,以及数据获取与修改的具体方法。最后总结了配置过程中常见问题的解决方案,并展望了RK3588在高分辨率显示领域的发展前景。全文为开发者提供了RK3588 HDMI显示配置的完整技术指南。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 594

【RAG文档解析优化】复杂Excel表格处理

—从识别表格边界,到恢复内部结构,再到生成RAG友好的表示——我们可以系统性地将这些“带刺的玫瑰”驯服。虽然代码实现可能充满细节和挑战,但其带来的回报是巨大的:一个更干净、更可靠的知识库,以及一个能真正理解和利用表格数据、从而提供精准答案的RAG系统。为了人类阅读的便利性,制作者常常会使用合并单元格来创建标题、使用多层表头来组织复杂的列、在同一个Sheet页中放置多个相关的表格,并添加大量的注释说明。它们就像一朵朵“带刺的玫瑰”,虽然蕴含着宝贵的数据,但如果直接用传统的方法(如。

kakaZhui的博客 853

从零到一:手把手教你用STM32搭建智能温室大棚的硬件架构

本文详细介绍了基于STM32的智能温室大棚硬件架构设计,涵盖主控芯片选型、传感器电路集成、通信模块配置和执行器控制策略。通过实战案例和代码示例,手把手教你完成从元器件选型到系统联调的全过程,助力实现高效稳定的农业物联网解决方案。

r7s8t的博客 231

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

linux 网络诊断 & Troubleshooting

如果给电脑安装完 ubuntu 系统,但是不能上网,你可以尝试如下方式诊断一下,每一步都有很丰富的信息,发现任何异常再 google 之。1 . 查看网络配置,是否配置了静态ip如果配置了静态ip, 需要查看路由器是否开启了 DHCP,尝试关闭 DHCP 试一下。 或者开启路由器的 DHCP 服务,并限制 ip 地址范围为 192.168.0.100-192.168.0.110,然后设置静态 ip

all for one,one for all 5827

贝叶斯统计 [韦来生编]

贝叶斯(Bayes)统计是近几十年来迅速发展起来的数理统计的一个重要分支。贝叶斯方法与经典统计方法的主要不同之处是进行统计推断时除了利用样本信息外,还要利用参数的先验信息,因此可以提高统计推断或统计决策的效果。它在经济、金融、生物、医学、自然科学和社会科学等许多领域具有广泛的应用。贝叶斯方法的研究已渗透到了统计学的几乎所有领域。作者在给中国科学技术大学概率论与数理统计专业本科生开设的“数理统计”课程中有一章专门讲授“贝叶斯方法和统计决策理论”,近十年来也给中国科学技术大学概率统计专业研究生开设过几次“贝叶斯分析”课。本书是在对过去讲稿的内容作了适当的增减和调整的基础上完成的。  本书共分六章。第1章是绪论,介绍了贝叶斯统计的若干基本概念,同时对必要的数理统计的基础知识有重点地作了回顾。第二章介绍了确定先验分布的若干可供选择的方法。第三章介绍了几类常见统计模型参数的后验分布的主要结果和计算方法。第四章和第五章分别介绍了“贝叶斯统计推断”和“贝叶斯统计决策”的内容。第六章介绍了贝叶斯统计计算的若干方法,包括蒙特卡洛方法和马尔可夫链蒙特卡洛(MCMC)方法以及相关统计软件的简介。本书的每一章附右大量的例题和习题,书末附有常用的几个表格和部分习题解答供读者查用。  大约可在54学时内讲授本书的第1章至第六章的主要内容,教师可根据学时需要选讲本书第1章至第六章的部分内容。书中标“*”号的章节可略去不讲,留给读者作为阅读材料。第六章例题中的R代码和部分例题的数据文件等可从作者个人主页下载。  作者在编写本书的过程中参考了J.O.Berger教授的《统计决策论及贝叶斯分析》和茆诗松教授编写的《贝叶斯统计》等书中的一些内容,以及《贝叶斯分析》一书中由张伟平博士编写的有关贝叶斯统计计算的一些内容。在此表示衷心感谢。  本书编写准备过程中,中国科学技术大学统计与金融系的几个研究生帮助完成了本书部分中文的录入和排版,作者对他们的辛勤工作表示真诚的感谢。高等教育出版社为本书的出版给予了大力支持。在此一并致谢。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

【工作必备知识】Linux系统网络诊断与netstat命令

TCP采用三次握手,是为了防止已失效的连接请求报文段突然又传送到了TCP服务器端进程,导致资源的浪费和错误。

持续分享,个人的运维经验,包含:云计算、Linux、Windows、容器、K8s、CICD、Python、运维开发、公有云等;以及个人经历相关内容,包含:实习、面试经验等。 1086

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

【Linux】网络诊断 ping命令详解

ping 命令用于测试与目标主机之间的连接。它向目标主机发送一个ICMP(Internet Control Message Protocol)Internet控制报文协议回显请求,并等待它的回应。如果目标主机正常工作并且连接畅通,则会收到一个回显响应。如果没有收到响应,则说明有问题,需要进一步排除故障。ping可以用来测试本机与目标主机是否联通、联通速度如何、稳定性如何。

康师傅没有眼泪 2万+

【Linux】Linux网络问题诊断常用命令

汇总的详细介绍了Linux系统上出现网络问题时常用的排查工具。如ping,ifconfig,telnet, route, traceroute, mtr, tcpdump, netstat, ss等。

Transient_的博客 3680

基于STM32 HAL库的太阳能发电系统ADC采样与OLED实时监测方案

本文详细介绍了基于STM32 HAL库的太阳能发电系统监测方案,通过ADC多通道采样实时采集太阳能板电压数据,并利用OLED屏幕直观显示发电状态与电池信息。方案采用低功耗设计,硬件成本低廉,适合小型离网太阳能应用,如户外照明与监控电源。

devops8pract的博客 208

Linux中检查网络问题最常用的命令

在日常的网络管理和故障排查中,Linux提供了一系列强大的命令行工具,帮助我们诊断和解决网络问题。本文将详细介绍这些工具的用途和使用案例,让你能够快速定位并解决网络相关的问题。

广阔天地,大有作为 1002

网络配置命令

执行ifconfig 命令。ifconfig 网络接口(例: ifconfig ens33)常用格式ifconfig 网卡名:up 启动网卡ifconfig 网卡名:down 关闭网卡ifconfig 网卡名:ip地址/子网掩码 临时设置IP地址ifconfig 网卡名:0 ip地址/子网掩码 设置虚拟网卡 临时测试使用。“en" 是“EtherNet”的缩写,表示网卡 类型为以太网。“s” 表示热插拔插槽上的设备 (hot-plug slot)数字。“33” 表示插槽编号。

xylwxx的博客 1757

Linux网络设置

linux网络设置

小小byg 1362

Linux 网络诊断命令

谁吃薄荷糖 1410
上一篇: 【ESP32】TensorFlow Lite 正弦模型部署与误差分析实战
下一篇: USB协议栈的隐形革命:CH339在边缘计算中的跨界融合实践
linux6sysadmin
博客等级 码龄4年 59粉丝 1615原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值