H3C华三模拟器HCL安装与下载(HCL_v2.1.2版本)

HCL安装(HCL_v2.1.2版本)

准备工具:
WinPcap _4_1_3
Wireshark_v3.4.6
VirtualBox-5.2.44-139111

HCL_V2.1.2安装软件,[点此下载HCL模拟器]


需要先安装VirtualBox,
win7版本的话可用VirtualBox-5.1.24-117012
win10系统的话可用VirtualBox-5.2.44-139111(对于最新win10系统安装HCL_V3.0.1的话,需要使用VirtualBox_6.0.14_133895才行)。
安装步骤可参考华为ensp安装时的步骤,ensp和组件安装步骤
此处只介绍HCL_V2.1.2的安装过程

===========================================================
打开软件安装包,看到有两个安装文件,先安装HCL_v2.1.2-Setup,双击打开
在这里插入图片描述
点击OK,进行下一步在这里插入图片描述
直接下一步在这里插入图片描述
选择接受许可,然后下一步在这里插入图片描述
选择安装目录,下一步继续在这里插入图片描述
根据向导提示,点击完成。在这里插入图片描述


然后再安装另个软件HCL_Device_B59_v2.1.2_Setup,双击打开安装
在这里插入图片描述

直接下一步
在这里插入图片描述
接受协议,并直接下一步在这里插入图片描述
选择安装目录,然后下拉下一步
在这里插入图片描述
安装完成后,直接点击“完成”退出即可
在这里插入图片描述

直接双击桌面图标后即可进入模拟器,然后进行操作实验了
----------------------------------------------------------------------------

可直接点击图标选择线缆类型进行设备间连线,也可在设备上直接右键选择连线
在这里插入图片描述
在这里插入图片描述

支持同台PC上虚拟设备之间组网、通过远端虚拟网络代理Remote实现跨PC组网、通过本地主机Host实现虚拟设备与宿主机之间组网
在这里插入图片描述
可根据具体需要组建需要的拓扑进行实验
在这里插入图片描述

H3C模拟器HCL末行只显示半行字的问题

### STM32驱动YT8521芯片的方法 对于STM32单片机而言,要实现对YT8521以太网物理层(PHY)设备的支持,通常涉及几个关键方面:硬件连接、初始化设置以及数据传输处理。基于现有资源[^1],可以构建一个适用于STM32H743型号的非操作系统轮询模式下的DHCP客户端实例来说明如何操作。 #### 硬件接口配置 为了使能STM32与YT8521之间的通信,需确保两者通过MII/RMII接口正确相连。具体来说: - RMII_REF_CLK (来自PHY) - RMII_MDIO - RMII_MDC - RXD0, RXD1 (接收端口) - TX_EN, TXD0, TXD1 (发送端口) 这些信号线应当按照官方文档中的指导进行布板设计并焊接至相应管脚上。 #### 初始化过程 在软件层面,启动阶段应完成如下工作: ```c // 假设已经定义好了必要的外设句柄 `heth` 和 PHY 地址常量 `ETH_PHY_ADDRESS` /* Step 1: Enable clocks and reset the Ethernet MAC */ __HAL_RCC_ETH_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); /* For ETH pins */ /* Step 2: Configure GPIOs as alternate function push-pull */ static void MX_GPIO_Init(void){ // ...省略其他GPIO配置... } /* Step 3: Initialize HAL Library*/ HAL_Init(); /* Step 4: Configure the system clock to achieve higher performance */ SystemClock_Config(); /* Step 5: Initialize the Ethernet peripheral with default parameters */ if(HAL_ETH_Init(&heth)!= HAL_OK){ Error_Handler(); } else{ uint32_t phyregvalue=0; /* Read PHY ID register twice according to datasheet recommendation */ if((HAL_ETH_ReadPHYRegister(&heth, ETH_PHY_ADDRESS, PHY_IDR_LOW,&phyregvalue)==HAL_OK)&&\ ((phyregvalue & YT8521_ID_MASK)==YT8521_ID_VALUE)){ // 成功识别到YT8521 /* Perform additional configuration steps specific to this PHY chip here... */ /* Start Auto Negotiation process */ if(HAL_ETH_StartAutonegotiation(&heth)!= HAL_OK){ Error_Handler(); } while(__HAL_ETH_IS_FLAG_SET(&heth, ETH_FLAG_AUTONEGO_SUCCESS)== RESET); /* Get link status after negotiation completes successfully */ if(!__HAL_ETH_GET_LINK_STATUS(&heth)){ Error_Handler(); } else { printf("Link UP\n"); /* Now ready for data transmission/reception operations */ } } else { Error_Handler(); } } ``` 上述代码片段展示了从时钟使能到最后确认链路状态的一系列动作。值得注意的是,在实际应用中可能还需要针对特定需求调整某些寄存器位或参数值。 #### 数据收发流程 一旦完成了前面提到的基础准备工作之后,就可以利用标准库函数来进行网络包的发送和接收了。例如: ```c uint8_t buffer[64]; // 缓冲区大小取决于最大帧长度 struct eth_frame *frame=(void*)buffer; while(1){ /* Wait until a complete frame has been received into DMA SRAM buffers */ if (__HAL_ETH_DMA_RX_NOT_EMPTY (&heth)) { size_t length=__HAL_ETH_GetReceivedFrameSize(&heth); /* Copy incoming packet from internal memory to user space */ memcpy(frame,__HAL_ETH_GetRxBufferPointer(&heth),length); /* Process the received message here...*/ __HAL_ETH_DiscardCurrentPacket(&heth); // 清理当前已读取的数据包以便下次接收 } /* Prepare outgoing packets similarly using Tx descriptors etc.*/ } ``` 这段伪代码描述了一个简单的循环用于持续监听是否有新的消息到达,并对其进行适当解析;同时也提到了准备待发出的信息的方式。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

年华学习日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值