회원가입 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
번호 분류 제목 글쓴이 조회 수 날짜
808 마이크로프로세서 HOTIAR 버전에 따라 컴파일러가 바뀌나요? 윤군임다 1219 2011.09.28
807 마이크로프로세서 HOT8051를 이용한 도트매트릭스 회로도 구해여 이치 2054 2011.09.28
806 마이크로프로세서 HOT마이크로마우스 제어1 Wintersleep 1551 2011.09.26
805 마이크로프로세서 HOT모터 속도 조절을 위한 자료 입니다 많은 확인좀 부탁드립니다.1 기싹 2008 2011.09.21
804 마이크로프로세서 HOT안녕하세요.. 수준이 궁금합니다..1 arlquein 1362 2011.09.21
803 마이크로프로세서 HOTPWM 출력이 일정한 주기로 끊어집니다1 만내 1605 2011.09.21
802 마이크로프로세서 HOTATmega128 I/O 레지스터 관련..4 Ssari 1786 2011.09.11
801 마이크로프로세서 HOT"AT24C04.h"에서 에러가 발생하는데1 pianoman 1068 2011.09.07
800 마이크로프로세서 HOTL298N 모터드라이브에 대한 질문입니다.2 루도군 2145 2011.08.28
799 마이크로프로세서 HOTPIC 전원 OFF했는데도 TX가 High로 뜹니다.1 단추스프 1618 2011.08.26
798 마이크로프로세서 HOTADC관련 해서 질문이요~1 프로파일 2005 2011.08.25
마이크로프로세서 HOTstm32 uart 질문1 멍멍군 3695 2011.08.24
796 마이크로프로세서 HOT어제 질문한 3대 이상의 AVR 연결 다시 질문드려요 .3 sis0623 2188 2011.08.18
795 마이크로프로세서 HOTavr을 이용하여 아기의 울음소리를 입력받고 싶습니다.1 Floatin 1912 2011.08.18
794 마이크로프로세서 HOTCAN 통신에서 3개 이상의 AVR의 통신2 sis0623 2587 2011.08.17
793 마이크로프로세서 HOTdtmf 관련질문입니다.1 innercase 2238 2011.08.16
792 마이크로프로세서 HOTavr의 속도에 관한 질문.1 왕바리 2137 2011.08.16
791 마이크로프로세서 HOT외부 메모리 사용 컴맹9506 2055 2011.08.12
790 마이크로프로세서 HOTSD Card관련.2 HwangRoy 3235 2011.08.08
789 마이크로프로세서 HOTAT90CAN128 서로 CAN통신 하드웨어 연결 (완전초보)2 sis0623 4056 2011.08.05
Prev 1 ... 5 6 7 8 9 10 11 12 13 14 ... 50 Next
  • 잔잔한 바다에서는 좋은 뱃사공이 만들어지지 않는다.
    - 영국속담
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.