cmdbuild.c

来自「c51串口编程的例子」· C语言 代码 · 共 49 行

C
49
字号
#include<stdlib.h>
#include<ctype.h>

#include "tdp.h"

xdata char cmdbuf [1 + MAX_CMD_LEN];
xdata unsigned char cmdndx;

/* init */
void cmdb_init(void){
	cmdndx=0;
	cmdbuf[0] = '\0';
}

/*Prompt "COMMAND" */
void cmdb_prompt(void){
	com_puts("COMMAND: ");
	com_puts(cmdbuf);
}

/* Scan the input command */
const char *cmdb_scan(void){
	int c;
	while(1) {
		if((c = com_getchar()) == -1)
			break;
		if(c == '\r') {
			com_puts("\r\n");
			return(cmdbuf);
		}
		if((c =='\b') && (cmdndx != 0)) {
			com_puts("\b \b");
			cmdbuf[--cmdndx] = '\0';
			continue;
		}
		if(!isprint(c)) {
			BEEPCHAR: com_putchar('\x7');
			continue;
		}
		if(cmdndx >= MAX_CMD_LEN)
			goto BEEPCHAR;
		com_putchar(c);
		cmdbuf[cmdndx++] = (unsigned char) c;
		cmdbuf[cmdndx] = '\0';
	}
	return(NULL);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?