int main(int argc, char * argv[]) { uint32_t feature_set; fprintf(stdout,"Initialising librpip...\n"); feature_set = librpipInit(LIBRPIP_BOARD_PI2_B, LIBRPIP_FLAG_DEBUG_ON, 0 ); fprintf(stdout,"\n"); if(feature_set == 0) { fprintf(stdout,"librpip failed to initialise!\n"); } else { setup_transaction(); if(feature_set & LIBRPIP_FEATURE_UART0) { fprintf(stdout,"Testing UART0\n"); uart_ascii(0); uart_binary(0); uart_transaction(0); } if(feature_set & LIBRPIP_FEATURE_UART1) { fprintf(stdout,"Testing UART1\n"); uart_ascii(1); uart_binary(1); uart_transaction(1); } librpipTransactionDestroy(t); } librpipClose(); return 0; }
void uart_write(volatile struct uart * UART, size_t len, uint8_t * buffer){ uint8_t dummyBuff[len]; uart_transaction(UART, len, buffer, dummyBuff); //if(!len) return; /* poll transmit data register empty flag */ //while(!(UART->S1 >> 7)); //for(unsigned int i = 0; i < len; ++i){ //UART->D = buffer[i]; //} }
void uart_read(volatile struct uart * UART, size_t len, uint8_t * buffer){ uint8_t dummyBuff[len]; uart_transaction(UART, len, dummyBuff, buffer); //if(!len) return; /* poll the receive data register full flag */ /* it will be 0 when empty */ //while(!(UART->S1 >> 5)); /* receive bytes */ //for(size_t i = 0; i < len; ++i){ //buffer[i] = UART->D; //} }