회원가입 ID/PW 찾기

마이크로프로세서 HOTstm32 uart 질문

멍멍군2011.08.24 17:3608.24조회 수 3695댓글 1이 게시물을

AA

uart2로 받아서 uart1으로 찍으려고 하는데 세팅을 하여도 찍히자가 않네요...

 

소스 좀 확인 부탁 드립니다.

 

일단 세팅한 부분입니다.

 

void SerialPutChar(u8 c)
 {
   USART_SendData(USART1, c);
   while (USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);
 }

void Serial_PutString(u8 *s)
 {
   while (*s != '\0')
   {
     SerialPutChar(*s);
     s ++;
   }
 }

//Uart Setting

void RCC_Configuration(void)
{

 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA , ENABLE);
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB , ENABLE);
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC , ENABLE);
 
 RCC_APB1PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);
 RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2, ENABLE);
}

void GPIO_Configuration(void)
{
 GPIO_InitTypeDef GPIO_InitStructure;

 

//UART1 GPIO
 GPIO_PinRemapConfig(GPIO_Remap_USART1, ENABLE);

   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; //UART1 Tx pin
   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
   GPIO_Init(GPIOA, &GPIO_InitStructure); 
  
   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;//UART1 Rx pin
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
   GPIO_Init(GPIOA, &GPIO_InitStructure);


// UART2 GPIO
 GPIO_PinRemapConfig(GPIO_Remap_USART2, ENABLE);

   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; //UART2 Tx pin
   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
   GPIO_Init(GPIOA, &GPIO_InitStructure); 
  
   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;//UART2 Rx pin
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
   GPIO_Init(GPIOA, &GPIO_InitStructure);
 

// LED GPIO
   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15 |GPIO_Pin_13;
   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
   GPIO_Init(GPIOB, &GPIO_InitStructure); 
  
     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14 | GPIO_Pin_15;
   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
   GPIO_Init(GPIOC, &GPIO_InitStructure); 
  
}

void NVIC_Configuration(void)
{
  NVIC_InitTypeDef   NVIC_InitStructure;

 NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQChannel;
 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
 NVIC_Init(&NVIC_InitStructure);

 NVIC_InitStructure.NVIC_IRQChannel = USART2_IRQChannel;
 NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority =0;
 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
 NVIC_Init(&NVIC_InitStructure);
}

void USART1_Init(void)
 {
  USART_InitTypeDef USART_InitStructure;

  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);
 
 USART_ITConfig(USART1, USART_IT_TC, ENABLE);
 USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
 

 }

void USART2_Init(void)
 {
 USART_InitTypeDef USART_InitStructure;
 
  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(USART2, &USART_InitStructure);
  USART_Cmd(USART2, ENABLE);
 
 USART_ITConfig(USART2, USART_IT_TC, ENABLE);
 USART_ITConfig(USART2, USART_IT_RXNE, ENABLE);
 
 }

여기는 메인 부분입니다.

 

if(USART_ReceiveData(USART2))
 {
 Mouse_Data = USART_ReceiveData(USART2);
   Serial_PutString(&Mouse_Data);
 }

 

확인 좀 부탁 드릴께요...

 

댓글 1

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
314 PADS HOT질문입니다~2 qweasd 1412 2011.08.26
313 PADS HOTPads 2007로 회로도를 완성하였습니다만..3 깡생깡사 1922 2011.08.22
312 PADS HOTPCB 파일에서 logic 으로 cirtcuit를 거꾸로 동기화 가능한지 알고 싶습니다. hihihohaha 1809 2011.08.21
311 PADS HOT작업폴더 지정하는 법?1 세빛 1728 2011.08.20
310 PADS HOTPADS 9.3.1자료가지고계신분 ?4 정상에서 2593 2011.08.18
309 PADS HOTpads 9.0.2 설치에 관해 문의 드려요 급합니다ㅠ.ㅠ 빡상후니 2251 2011.08.16
308 PADS HOT알려주세요1 킁킁 1350 2011.08.11
307 Allegro & OrCAD HOTOrcad 16.3 설치 파일 구할수 있나요?3 cjhwa11 2819 2011.08.09
306 PADS HOTpads 9.3버젼 설치파일 구할수 있나요?1 정화 1843 2011.08.09
305 PADS HOTPADS9.3 윈도우xp 에서도 사용가능한가여?7 쉼터 2966 2011.08.07
304 PADS HOTwin7 에 pads9.3 사용하시는 고수님들 도와주세요1 행복한 인생 2542 2011.08.04
303 PADS HOTpads 9.3 라이브러리 관련 질문~1 고국천왕 2124 2011.08.01
302 PADS HOTpads 9.2버젼 Crack파일 있으신분1 파도^^; 3229 2011.07.27
301 PADS HOT초보자입니다. 하늘사랑73 2239 2011.07.26
300 Allegro & OrCAD HOT고수님들의 도움좀 바랍니다.1 하늘사랑73 1693 2011.07.25
299 PADS HOTPADS 공유 해 주실분 혹시 없나요 ? 킁킁 1507 2011.07.25
298 PADS HOT9.3작업중 마우스가 약간 느려서 불편하던데1 파도^^; 1703 2011.07.22
297 PADS HOT이 에러가 왜 나는건가요 ??? 킁킁 1329 2011.07.22
296 PADS HOTpads9.0 설치방법 킁킁 2948 2011.07.22
295 PADS HOTPads 2007 Patch 있으신분 파도^^; 2060 2011.07.21
Prev 1 ... 12 13 14 15 16 17 18 19 20 21 ... 32 Next
  • 만물은 유전한다.
    - 헤라클레이토스
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.