📄 console.c
字号:
#include "Console.h"
//定义串口的波特率,停止位,校验位
#define baudRate UART_BAUDRATE_19K2
#define stop_bit UART_OPT_ONE_STOP_BIT
#define parity UART_OPT_NO_PARITY
#define bits UART_OPT_8_BITS_PER_CHAR
//串口初始化
void ConsoleInit(void)
{
ENABLE_UART1();
INIT_UART1(baudRate,stop_bit,parity,bits);
}
//************************************************
void ConsolePut(BYTE c)
{
#if defined(I_AM_END_DEVICE)
while( !ConsoleIsPutReady() );
UCSR1A &= ~BM(UDRE1);
UDR1 = c;
#endif
}
void ConsolePutString(BYTE *s)
{
BYTE c;
while( (c = *s++) )
ConsolePut(c);
}
#ifdef I_AM_COORDINATOR
void CoordPut(BYTE c)
{
while( !ConsoleIsPutReady() );
UCSR1A &= ~BM(UDRE1);
UDR1 = c;
}
void CoordPutString(BYTE *s)
{
BYTE c;
while( (c = *s++) )
CoordPut(c);
}
#endif
void ConsolePutFlashString(PGM_P string_P){
char *string = malloc(strlen_P(string_P)+1);
if (string == NULL){
ConsolePutString("malloc new char[] failed\n");
return;
}
strcpy_P(string,string_P);
ConsolePutString(string);
free(string);
}
//************************************************
BYTE ConsoleGet(void)
{
BYTE c;
UDR1 = 0;
while( !ConsoleIsGetReady() );
c = UDR1;
return c;
}
BYTE ConsoleGetString(char *buffer, BYTE bufferLen)
{
BYTE v;
BYTE count;
count = 0;
do
{
if ( bufferLen-- == 0 )
break;
UDR1 = 0;
while( !ConsoleIsGetReady() );
v = UDR1;
if ( v == '\r' || v == '\n' )
break;
count++;
*buffer++ = v;
*buffer = '\0';
} while(1);
return count;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -