uart/usart/main.cpp

102 lines
2.8 KiB
C++
Raw Normal View History

2016-05-19 21:43:10 +02:00
/*
* Copyright (c) by BlackMark 2015-2016
* Date 05/01/2016
* Version 1.4
*/
#include <stdio.h>
2016-05-20 15:51:01 +02:00
#include "clock.h"
2016-05-20 15:32:42 +02:00
#include "usart.h"
2016-05-19 21:43:10 +02:00
int main()
{
USART0 cUSART;
cUSART.init();
2016-05-19 21:43:10 +02:00
uint32_t ui32Counter = 0;
constexpr size_t sizeBufferSize = 64;
char szBuffer[sizeBufferSize];
2016-05-20 15:51:01 +02:00
cUSART.transmitString( "\r\nSizes: \r\n" );
sprintf( szBuffer, "%d\r\n", sizeof( char ) );
cUSART.transmitString( "sizeof( char ) = " );
cUSART.transmitString( szBuffer );
sprintf( szBuffer, "%d\r\n", sizeof( unsigned char ) );
cUSART.transmitString( "sizeof( unsigned char ) = " );
cUSART.transmitString( szBuffer );
sprintf( szBuffer, "%d\r\n", sizeof( short int ) );
cUSART.transmitString( "sizeof( short int ) = " );
cUSART.transmitString( szBuffer );
sprintf( szBuffer, "%d\r\n", sizeof( unsigned short int ) );
cUSART.transmitString( "sizeof( unsigned short int ) = " );
cUSART.transmitString( szBuffer );
sprintf( szBuffer, "%d\r\n", sizeof( int ) );
cUSART.transmitString( "sizeof( int ) = " );
cUSART.transmitString( szBuffer );
2016-05-19 21:43:10 +02:00
sprintf( szBuffer, "%d\r\n", sizeof( unsigned int ) );
cUSART.transmitString( "sizeof( unsigned int ) = " );
cUSART.transmitString( szBuffer );
2016-05-19 21:43:10 +02:00
sprintf( szBuffer, "%d\r\n", sizeof( long int ) );
cUSART.transmitString( "sizeof( long int ) = " );
cUSART.transmitString( szBuffer );
2016-05-20 15:51:01 +02:00
sprintf( szBuffer, "%d\r\n", sizeof( unsigned long int ) );
cUSART.transmitString( "sizeof( unsigned long int ) = " );
cUSART.transmitString( szBuffer );
2016-05-19 21:43:10 +02:00
sprintf( szBuffer, "%d\r\n", sizeof( long long int ) );
cUSART.transmitString( "sizeof( long long int ) = " );
cUSART.transmitString( szBuffer );
2016-05-19 21:43:10 +02:00
sprintf( szBuffer, "%d\r\n", sizeof( unsigned long long int ) );
cUSART.transmitString( "sizeof( unsigned long long int ) = " );
cUSART.transmitString( szBuffer );
2016-05-19 21:43:10 +02:00
sprintf( szBuffer, "%d\r\n", sizeof( float ) );
cUSART.transmitString( "sizeof( float ) = " );
cUSART.transmitString( szBuffer );
sprintf( szBuffer, "%d\r\n", sizeof( double ) );
cUSART.transmitString( "sizeof( double ) = " );
cUSART.transmitString( szBuffer );
sprintf( szBuffer, "%d\r\n", sizeof( long double ) );
cUSART.transmitString( "sizeof( long double ) = " );
cUSART.transmitString( szBuffer );
sprintf( szBuffer, "%d\r\n\r\n", sizeof( void* ) );
cUSART.transmitString( "sizeof( void* ) = " );
cUSART.transmitString( szBuffer );
while( true )
{
sprintf( szBuffer, "%lu", ui32Counter++ );
cUSART.transmitString( "This has been running for \"" );
cUSART.transmitString( szBuffer );
cUSART.transmitString( "\" seconds!\r\n" );
if( !cUSART.receiveLine( szBuffer, sizeBufferSize, "\r" ) )
{
cUSART.transmitString( "Receive error: " );
}
else
{
cUSART.transmitString( "Echo: " );
}
cUSART.transmitString( szBuffer );
cUSART.transmitString( "\r\n" );
2016-05-20 15:51:01 +02:00
2016-05-19 21:43:10 +02:00
_delay_ms( 1000 );
}
2016-05-20 15:51:01 +02:00
2016-05-19 21:43:10 +02:00
return 0;
}