[W7500x] GPIO 포트에 대해서 질문이있습니다.


#1

기본에 사용하던 회로에서도 호환 될수 있게 하라고 하셔서 기존 회로와 동일 한 보드를 만들어 FREERTOS를 올려서 테스트 하고 있습니다.

그런데 PA_11, PA_12 포트가 계속 high 상태를 유지하고 있는 문제가 발생했습니다.

사용하고 있는건 UART 1과, GPIO입니다.

혹시 도움 주실 수 있으신가요? 코드가 필요하시면 이메일로 발송하겠습니다.


#2

안녕하세요

해당핀은 GPIO, UART0, SPI1로 사용할 수있는데 사용중이 아니신것 아닌가요?
high로 유지하고 있으면 문제가 발생하는 부분이 무엇인가요?
해당 핀은 GPIO로 control이 가능합니다.
감사합니다


#3

안녕하세요. UART0, SPI1를 사용하고 있지는 않고 GPIO로 활용하려고 합니다.

GPIO로 초기화 후에 쓰려고 하는데 초기화도 안되고 제어도 되지 않고 high 상태를 유지하고 있어서 문제입니다.


#4

해당 핀은 GPIO로 제어가 가능합니다
main기능이 uart로 설정되어있으므로 AFConfig를 통해 GPIO로 바꾸신후 제어해보시기 바랍니다
GPIO 제어하는 부분 코드 올려주시면 확인해드리겠습니다


#5
	GPIO_InitTypeDef GPIO_InitDef;

	GPIO_InitDef.GPIO_Pin = GPIO_Pin_11;
	GPIO_InitDef.GPIO_Mode = GPIO_Mode_OUT;
	GPIO_Init(GPIOA, &GPIO_InitDef);
	PAD_AFConfig(PAD_PC,GPIO_Pin_11, PAD_AF1);

	GPIO_InitDef.GPIO_Pin = GPIO_Pin_12;
	GPIO_InitDef.GPIO_Mode = GPIO_Mode_OUT;
	GPIO_Init(GPIOA, &GPIO_InitDef);
	PAD_AFConfig(PAD_PC,GPIO_Pin_12, PAD_AF1);

	GPIO_SetBits(GPIOA,GPIO_Pin11);
	GPIO_SetBits(GPIOA,GPIO_Pin12);

	delay(2000);

	GPIO_ResetBits(GPIOA,GPIO_Pin11);
	GPIO_ResetBits(GPIOA,GPIO_Pin12);

이런식으로 작성을 했습니다만 계속 하이상태만을 유지하고 있습니다.


#6

안녕하세요

PAD_AFConfig()함수에서 PAD_PC로 되어있네요.
PAD_PA로 수정 바랍니다.


#7

아 제가 옮겨 적다가 잘못 적은 것 같습니다… PC도 사용하고 PA도 사용합니다…

이제야 발견했네요 감사합니다.