---
title: "PHYStatus_Check 함수 동작 설명 부탁드립니다."
url: "https://maker.wiznet.io/forum/15440"
markdown_url: "https://maker.wiznet.io/forum/15440/md"
type: "Forum topic"
category: "IO Modules"
author: "yoonsunkkim"
created: "2024-12-25T14:05:29+09:00"
last_activity: "2024-12-25T14:05:29+09:00"
language: "en"
views: 0
replies: 0
source: "WIZnet Makers forum (https://maker.wiznet.io/forum/)"
---

# PHYStatus_Check 함수 동작 설명 부탁드립니다.

## Question

Asked by yoonsunkkim on 2024-12-25 in IO Modules.

w5500evb 데모 코드에서 PHYStatus_Check() 함수가 있는데요.

do - while 문으로 되어 있는데, tmp가 PHY_LINK_OFF가 될 때까지 계속 loop를 도는 이유를 알 수 있을까요? PHY_LINK_ON 상태이면 while문 안에서 계속 멈춰있게 되는 건데 이해가 안되네요.

===========================

static void PHYStatus_Check(void)
{
uint8_t tmp;
static bool LED_status_backup;

LED_status_backup = RGBLED_enable;

do
{
ctlwizchip(CW_GET_PHYLINK, (void*) &tmp);

// Error indicator: LED Green ON when no PHY link detected
if(tmp == PHY_LINK_OFF)
{
RGBLED_enable = false;
Board_LED_Set(2, true);
}
}while(tmp == PHY_LINK_OFF);

RGBLED_enable = LED_status_backup;
}

---

Source: https://maker.wiznet.io/forum/15440
