ubinos
Classes | Macros | Typedefs | Functions
uart.h File Reference

UART device driver API. More...

#include <ubinos_config.h>
#include <ubinos/type.h>

Go to the source code of this file.

Classes

struct  _ubidrv_uart_t
 

Macros

#define UBIDRV_UART_FILE_NAME_MAX   64
 
#define UBIDRV_UART_DATA_BITS_8   0
 
#define UBIDRV_UART_DATA_BITS_9   1
 
#define UBIDRV_UART_STOP_BITS_1   0
 
#define UBIDRV_UART_STOP_BITS_2   1
 
#define UBIDRV_UART_PARITY_TYPE_NONE   0
 
#define UBIDRV_UART_PARITY_TYPE_EVEN   1
 
#define UBIDRV_UART_PARITY_TYPE_ODD   2
 
#define UBIDRV_UART_HW_FLOW_CTRL_NONE   0
 
#define UBIDRV_UART_HW_FLOW_CTRL_RTS   1
 
#define UBIDRV_UART_HW_FLOW_CTRL_CTS   2
 
#define UBIDRV_UART_HW_FLOW_CTRL_RTS_CTS   3
 

Typedefs

typedef struct _ubidrv_uart_t ubidrv_uart_t
 

Functions

ubi_st_t ubidrv_uart_open (ubidrv_uart_t *uart)
 
ubi_st_t ubidrv_uart_close (ubidrv_uart_t *uart)
 
ubi_st_t ubidrv_uart_getc (int fd, char *ch_p)
 
ubi_st_t ubidrv_uart_getc_unblocked (int fd, char *ch_p)
 
ubi_st_t ubidrv_uart_getc_timedms (int fd, char *ch_p, uint32_t timeoutms, uint32_t *remain_timeoutms)
 
ubi_st_t ubidrv_uart_putc (int fd, int ch)
 
ubi_st_t ubidrv_uart_flush (int fd)
 
int ubidrv_uart_putn (int fd, const char *str, int len)
 
int ubidrv_uart_kbhit (int fd)
 
int ubidrv_uart_puts (int fd, const char *str, int max)
 
int ubidrv_uart_gets (int fd, char *str, int max)
 
ubi_st_t ubidrv_uart_setecho (int fd, int echo)
 
int ubidrv_uart_getecho (int fd)
 
ubi_st_t ubidrv_uart_setautocr (int fd, int autocr)
 
int ubidrv_uart_getautocr (int fd)
 

Detailed Description

UART device driver API.

UART IO API.

UART 장치 드라이버 API를 정의합니다.

UART 장치를 사용한 IO API를 정의합니다.

Typedef Documentation

◆ ubidrv_uart_t

typedef struct _ubidrv_uart_t ubidrv_uart_t

UART 장치 정의

Function Documentation

◆ ubidrv_uart_close()

ubi_st_t ubidrv_uart_close ( ubidrv_uart_t uart)

UART 장치를 닫는 함수

Parameters
uart대상 장치
Returns
상태 번호

◆ ubidrv_uart_flush()

ubi_st_t ubidrv_uart_flush ( int  fd)

UART 장치 출력 버퍼에 저장된 내용을 모두 출력하는 함수

Parameters
fd대상 장치 파일 디스크립터
Returns
상태 번호

◆ ubidrv_uart_getautocr()

int ubidrv_uart_getautocr ( int  fd)

UART 장치 자동 캐리지 리턴 설정을 돌려주는 함수

Parameters
fd대상 장치 파일 디스크립터
Returns
0: auto carriage return off
1: auto carriage return on

◆ ubidrv_uart_getc()

ubi_st_t ubidrv_uart_getc ( int  fd,
char *  ch_p 
)

UART 장치에서 문자를 입력받는 함수 (입력이 들어올 때까지 기다림)

Parameters
fd대상 장치 파일 디스크립터
ch_p입력받은 문자를 저장할 변수의 주소
Returns
상태 번호

◆ ubidrv_uart_getc_timedms()

ubi_st_t ubidrv_uart_getc_timedms ( int  fd,
char *  ch_p,
uint32_t  timeoutms,
uint32_t *  remain_timeoutms 
)

UART 장치에서 문자를 입력받는 함수 (입력이 들어올 때까지 최대 주어진 시간 만큼 기다림)

Parameters
fd대상 장치 파일 디스크립터
ch_p입력받은 문자를 저장할 변수의 주소
timeoutms기다릴 최대 시간
remain_timeoutms(기다릴 최대 시간 - 기다린 시간) 값을 돌려줄 변수의 포인터
Returns
상태 번호

◆ ubidrv_uart_getc_unblocked()

ubi_st_t ubidrv_uart_getc_unblocked ( int  fd,
char *  ch_p 
)

UART 장치에서 문자를 입력받는 함수 (입력이 들어올 때까지 기다리지 않음)

Parameters
fd대상 장치 파일 디스크립터
ch_p입력받은 문자를 저장할 변수의 주소
Returns
상태 번호

◆ ubidrv_uart_getecho()

int ubidrv_uart_getecho ( int  fd)

UART 장치 에코 설정을 돌려주는 함수

Parameters
fd대상 장치 파일 디스크립터
Returns
1: echo on
0: echo off

◆ ubidrv_uart_gets()

int ubidrv_uart_gets ( int  fd,
char *  str,
int  max 
)

UART 장치에에서 문자열을 입력받는 함수

"\n", "\r", 또는 "\0" 이 입력되거나 최대 크기보다 작을 때까지 입력받는다. 입력받은 "\n", "\r"은 퍼버에 저장되지 않는다.

Parameters
fd대상 장치 파일 디스크립터
str입력받은 문자열을 저장할 버퍼
max입력받을 문자열의 최대 크기
Returns
상태 번호

◆ ubidrv_uart_kbhit()

int ubidrv_uart_kbhit ( int  fd)

UART 장치 입력 버퍼에 입력받은 문자가 있는지를 검사하는 함수

Parameters
fd대상 장치 파일 디스크립터
Returns
1: 있음
0: 없음

◆ ubidrv_uart_open()

ubi_st_t ubidrv_uart_open ( ubidrv_uart_t uart)

UART 장치를 여는 함수

Parameters
uart대상 장치
Returns
상태 번호

◆ ubidrv_uart_putc()

ubi_st_t ubidrv_uart_putc ( int  fd,
int  ch 
)

UART 장치에서 문자를 출력하는 함수

Parameters
fd대상 장치 파일 디스크립터
ch출력할 문자
Returns
상태 번호

◆ ubidrv_uart_putn()

int ubidrv_uart_putn ( int  fd,
const char *  str,
int  len 
)

UART 장치에 문자열을 출력하는 함수 (NULL도 출력함)

Parameters
fd대상 장치 파일 디스크립터
str출력할 문자열이 저장된 버퍼
len출력할 문자열의 크기
Returns
상태 번호

◆ ubidrv_uart_puts()

int ubidrv_uart_puts ( int  fd,
const char *  str,
int  max 
)

UART 장치에 문자열을 출력하는 함수

"\0" 이전까지 또는 출력할 문자열의 최대 크기까지 출력한다.

Parameters
fd대상 장치 파일 디스크립터
str출력할 문자열이 저장된 버퍼
max출력할 문자열의 최대 크기
Returns
상태 번호

◆ ubidrv_uart_setautocr()

ubi_st_t ubidrv_uart_setautocr ( int  fd,
int  autocr 
)

UART 장치 자동 캐리지 리턴 설정 함수

디버깅 터미널에 "\n" 출력시 그 앞에 "\r"을 자동 출력하는 기능 활성화 여부를 설정한다.

Parameters
fd대상 장치 파일 디스크립터
autocr0: auto carriage return off
1: auto carriage return on
Returns
상태 번호

◆ ubidrv_uart_setecho()

ubi_st_t ubidrv_uart_setecho ( int  fd,
int  echo 
)

UART 장치 에코 설정 함수

Parameters
fd대상 장치 파일 디스크립터
echo0: echo off
1: echo on
Returns
상태 번호