shell: add sample application

[QEMU] CPU: qemu32
shell> ping
pong
shell> ticks
ticks: 481
shell> highticks
highticks: 750736288
shell> help
Available commands:
help
ping
ticks
highticks

Change-Id: Ie8e9d27d83bf944a8b8800f7391c6246be769875
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit is contained in:
Anas Nashif 2015-11-04 22:45:09 -05:00
commit a297b2f61c
4 changed files with 57 additions and 0 deletions

View file

@ -0,0 +1,5 @@
KERNEL_TYPE = nano
PLATFORM_CONFIG = basic_atom
CONF_FILE = prj.conf
include $(ZEPHYR_BASE)/Makefile.inc

View file

@ -0,0 +1,3 @@
CONFIG_CONSOLE_HANDLER=y
CONFIG_CONSOLE_HANDLER_SHELL=y
CONFIG_PRINTK=y

View file

@ -0,0 +1 @@
obj-y += main.o

View file

@ -0,0 +1,48 @@
/*
* Copyright (c) 2015 Intel Corporation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <zephyr.h>
#include <misc/printk.h>
#include <misc/shell.h>
#define DEVICE_NAME "test shell"
static void shell_cmd_ping(int argc, char *argv[])
{
printk("pong\n");
}
static void shell_cmd_ticks(int argc, char *argv[])
{
printk("ticks: %d\n", sys_tick_get_32());
}
static void shell_cmd_highticks(int argc, char *argv[])
{
printk("highticks: %d\n", sys_cycle_get_32());
}
struct shell_cmd commands[] = {
{ "ping", shell_cmd_ping },
{ "ticks", shell_cmd_ticks },
{ "highticks", shell_cmd_highticks },
{ NULL, NULL }
};
void main(void)
{
shell_init("shell> ", commands);
}