USART의 RS 스텟을 본다.
#define USART_FLAG_RXNE ((uint16_t)0x0020)
:Read data register not empty
multi-buffer 통신 등의 상황에서 사용
1은 데이터가 수신되어 읽을 수 있는 상태가 되었다는 것을 의미
0은 데이터가 아직 수신되지 않았다는 의미
RDR shift register 1가 데이터를 수신하고 이것을 USART_DR register로 옮기게 된다. 모두 옮겨졌을 경우 이 비트가 1이 된다.
rc_w0:read & c_w0
c_w0 : 0을 write함으로써 이 비트는 0으로 clear 된다는 것을 의미
c_w1 : 1을 write함으로써 비트가 0으로 clear 된다.
uint16_t USART_ReceiveData(USART_TypeDef* USARTx)
{
/* Receive Data */
return (uint16_t)(USARTx->DR & (uint16_t)0x01FF);
}
USART_DR레지스터에서 값을 읽어온다.
USART_DR레지스터의 아홉비트만이 의미가 있다.
- 어디있냐? [본문으로]
'중도연재종료 > CORTEX M3' 카테고리의 다른 글
RCC_GetClockFreq (0) | 2013.06.23 |
---|---|
Clock Control (0) | 2013.06.23 |
당분간 정지 (0) | 2013.06.14 |
UART_ Hello_Wolrd 찍기_2 (0) | 2013.06.08 |
UART_ Hello World 찍기_1 (0) | 2013.06.08 |