회원가입 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
번호 분류 제목 글쓴이 조회 수 날짜
149 PADS HOT사용문의요~~ 오렌지 1039 2011.11.11
148 PADS HOT2005 버전 라이브러리 컨버터 있으신분..1 종나섹쉬 1087 2011.11.04
147 PADS HOTPADS 9.3 파일 공유 부탁드려요 naughty boy 1325 2011.11.04
146 PADS HOTPADS 9.3설치문의 다리미 1372 2011.11.01
145 PADS HOTReturn path 마모루 884 2011.10.25
144 PADS HOT사용문의~2 오렌지 1270 2011.10.12
143 PADS HOTpads 9.3 깔았는데..,null 폴더 계속 생겼요./! 시무스 2079 2011.10.07
142 PADS HOTorcad pads 설치 실행시 발생오류..1 후니다잉용 2413 2011.10.06
141 PADS HOT4층 LAYOUT호 Gerber파일을 생성하는 순서나 자료있나요?3 정상까지 가보자! 2986 2011.10.03
140 PADS HOT확장자 gb는 뭘로 열어야 하나요!?1 마모루 2030 2011.09.19
139 PADS HOTGerber data를 PCB Layout파일로 바꿀수 있나요?1 소주가이 1938 2011.09.06
138 PADS HOT패즈 라이센스 오류에 관해서 질문드립니다. 챠리스만 2019 2011.09.02
137 PADS HOTpads9.3 updata 파일이나 pads9.3.1 파일 정상까지 가보자! 3429 2011.08.31
136 PADS HOTPADS 9.3 Pin Wizards 관련 질문입니다.3 인서아빠 2350 2011.08.27
135 PADS HOT질문입니다~2 qweasd 1412 2011.08.26
134 PADS HOTPads 2007로 회로도를 완성하였습니다만..3 깡생깡사 1922 2011.08.22
133 PADS HOTPCB 파일에서 logic 으로 cirtcuit를 거꾸로 동기화 가능한지 알고 싶습니다. hihihohaha 1809 2011.08.21
132 PADS HOT작업폴더 지정하는 법?1 세빛 1728 2011.08.20
131 PADS HOTPADS 9.3.1자료가지고계신분 ?4 정상에서 2593 2011.08.18
130 PADS HOTpads 9.0.2 설치에 관해 문의 드려요 급합니다ㅠ.ㅠ 빡상후니 2251 2011.08.16
Prev 1 2 3 4 5 6 7 8 9 10 11 ... 14 Next
  • 사악은 언제나 미덕보다 더 쉽다. 왜냐하면 사악은 모든 일에 지름길을 택하기 때문이다.
    - 존슨
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.