[WizFi250심화과정 3] Uart Test Example 구동

1
1410

Uart Example Project Import

프로젝트 다운로드 경로 : EX1_USART_Test

  • View Raw 클릭하면 EX1_USART_Test.zip 파일을 다운로드 할 수 있음.

다운로드 한 프로젝트 파일을 Workspace에 복사

  • Project Explorer에서 마우스 오른쪽 버튼 클릭 -> [Import]-[General]-[Existing Projects into Workspace]
  • 기존 프로젝트 경로를 선택

20150316_111445

20150316_111459 20150316_111520

위 과정을 완료 한 후, Project Build(Ctrl + B)를 실행하면 아래 그림과 같이 컴파일이 되고 바이너리가 생성되는 것을 확인 할 수 있다.

20150316_111742

STM32 Flash loader demonstrator

W5200E01-M3 보드에 펌웨어를 다운로드 하기 위해서는 STM32 Flash loader 프로그램이 필요하다. 아래 주소에서 다운로드 후 PC에 설치 한다.

다운로드 : STM32 Flash loader

Upload Binary to W5200E01-M3

  • W5200E01-M3 Board를 아래 그림과 같이 PROG Mode로 전환 한다.

W5200E01-BootMode

  • 앞에서 설치한 Flash loader 프로그램을 실행 한다.

20150323_154409 20150323_154428

20150323_154435 20150323_154454

20150323_154502 20150323_154519

  • 프로그램 업로드 후, W5200E01-M3 보드의 SW2를 RUN Mode로 전환 한다.
  • PC의 Serial 프로그램을 실행 한 후, W5200E01-M3 보드를 Reset 한다.
  • 아래 그림과 같은 메시지가 출력되면, 컴파일 환경이 정상적으로 설정 된 것이다.

20150323_154702

Code 설명

[code language=”cpp”]
int main()
{
USART_InitTypeDef USART_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure;

RCC_Configuration();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);
GPIO_Configuration();

RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; // USART1_TX_PIN
GPIO_Init(GPIOA, &GPIO_InitStructure);

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; // USART1_RX_PIN
GPIO_Init(GPIOA, &GPIO_InitStructure);

USART_Cmd(USART1, DISABLE);
USART_InitStructure.USART_BaudRate = 115200;
USART_InitStructure.USART_WordLength = USART_WordLength_8b;
USART_InitStructure.USART_StopBits = USART_StopBits_1;
USART_InitStructure.USART_Parity = USART_Parity_No;
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;

USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
USART_Init(USART1, &USART_InitStructure);
USART_Cmd(USART1, ENABLE);

UartPuts ((uint8_t*)"\r\nTest Example 1\r\n");
}
[/code]