Skip to content

Commit

Permalink
add readline() function in uart.c/uart.h
Browse files Browse the repository at this point in the history
  • Loading branch information
shohei committed Aug 16, 2018
1 parent 996aa63 commit d14d5b5
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 0 deletions.
12 changes: 12 additions & 0 deletions boards/sw_repo/pynqmb/src/uart.c
Expand Up @@ -106,6 +106,18 @@ void uart_read(uart dev_id, char* read_data, unsigned int length){
XUartLite_Recv(&xuart[dev_id], read_data, length);
}

void uart_readline(uart dev_id, char* read_data){
// XUartLite_Recv(&xuart[dev_id], read_data, length);
unsigned int ReceivedCount = 0;
while (1) {
ReceivedCount += XUartLite_Recv(&xuart[dev_id],
read_data + ReceivedCount,
1);
if (read_data[ReceivedCount - 1] == '\n') {
break;
}
}
}

void uart_write(uart dev_id, char* write_data, unsigned int length){
XUartLite_Send(&xuart[dev_id], write_data, length);
Expand Down
1 change: 1 addition & 0 deletions boards/sw_repo/pynqmb/src/uart.h
Expand Up @@ -63,6 +63,7 @@ typedef int uart;
uart uart_open_device(unsigned int device);
uart uart_open(unsigned int tx, unsigned int rx);
void uart_read(uart dev_id, char* read_data, unsigned int length);
void uart_readline(uart dev_id, char* read_data);
void uart_write(uart dev_id, char* write_data, unsigned int length);
void uart_close(uart dev_id);
unsigned int uart_get_num_devices(void);
Expand Down

0 comments on commit d14d5b5

Please sign in to comment.