takashi kadono / Mbed OS Nucleo_446

Dependencies:   ssd1331

Committer:
kadonotakashi
Date:
Wed Oct 10 00:33:53 2018 +0000
Revision:
0:8fdf9a60065b
how to make mbed librry

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kadonotakashi 0:8fdf9a60065b 1 /*
kadonotakashi 0:8fdf9a60065b 2 * Copyright (c) 2018 ARM Limited. All rights reserved.
kadonotakashi 0:8fdf9a60065b 3 * SPDX-License-Identifier: Apache-2.0
kadonotakashi 0:8fdf9a60065b 4 * Licensed under the Apache License, Version 2.0 (the License); you may
kadonotakashi 0:8fdf9a60065b 5 * not use this file except in compliance with the License.
kadonotakashi 0:8fdf9a60065b 6 * You may obtain a copy of the License at
kadonotakashi 0:8fdf9a60065b 7 *
kadonotakashi 0:8fdf9a60065b 8 * http://www.apache.org/licenses/LICENSE-2.0
kadonotakashi 0:8fdf9a60065b 9 *
kadonotakashi 0:8fdf9a60065b 10 * Unless required by applicable law or agreed to in writing, software
kadonotakashi 0:8fdf9a60065b 11 * distributed under the License is distributed on an AS IS BASIS, WITHOUT
kadonotakashi 0:8fdf9a60065b 12 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
kadonotakashi 0:8fdf9a60065b 13 * See the License for the specific language governing permissions and
kadonotakashi 0:8fdf9a60065b 14 * limitations under the License.
kadonotakashi 0:8fdf9a60065b 15 */
kadonotakashi 0:8fdf9a60065b 16 #include <stdio.h>
kadonotakashi 0:8fdf9a60065b 17 #include <stdarg.h>
kadonotakashi 0:8fdf9a60065b 18 #include "mbed.h"
kadonotakashi 0:8fdf9a60065b 19 #include "mbed-client-cli/ns_cmdline.h"
kadonotakashi 0:8fdf9a60065b 20 #include "cmd_ifconfig.h"
kadonotakashi 0:8fdf9a60065b 21 #include "cmd_socket.h"
kadonotakashi 0:8fdf9a60065b 22
kadonotakashi 0:8fdf9a60065b 23 /**
kadonotakashi 0:8fdf9a60065b 24 * Macros for setting console flow control.
kadonotakashi 0:8fdf9a60065b 25 */
kadonotakashi 0:8fdf9a60065b 26 #define CONSOLE_FLOWCONTROL_RTS 1
kadonotakashi 0:8fdf9a60065b 27 #define CONSOLE_FLOWCONTROL_CTS 2
kadonotakashi 0:8fdf9a60065b 28 #define CONSOLE_FLOWCONTROL_RTSCTS 3
kadonotakashi 0:8fdf9a60065b 29 #define mbed_console_concat_(x) CONSOLE_FLOWCONTROL_##x
kadonotakashi 0:8fdf9a60065b 30 #define mbed_console_concat(x) mbed_console_concat_(x)
kadonotakashi 0:8fdf9a60065b 31 #define CONSOLE_FLOWCONTROL mbed_console_concat(MBED_CONF_TARGET_CONSOLE_UART_FLOW_CONTROL)
kadonotakashi 0:8fdf9a60065b 32
kadonotakashi 0:8fdf9a60065b 33 #define SERIAL_CONSOLE_BAUD_RATE 115200
kadonotakashi 0:8fdf9a60065b 34
kadonotakashi 0:8fdf9a60065b 35 void cmd_ready_cb(int retcode)
kadonotakashi 0:8fdf9a60065b 36 {
kadonotakashi 0:8fdf9a60065b 37 cmd_next(retcode);
kadonotakashi 0:8fdf9a60065b 38 }
kadonotakashi 0:8fdf9a60065b 39
kadonotakashi 0:8fdf9a60065b 40 void wrap_printf(const char *f, va_list a)
kadonotakashi 0:8fdf9a60065b 41 {
kadonotakashi 0:8fdf9a60065b 42 vprintf(f, a);
kadonotakashi 0:8fdf9a60065b 43 }
kadonotakashi 0:8fdf9a60065b 44
kadonotakashi 0:8fdf9a60065b 45 int main()
kadonotakashi 0:8fdf9a60065b 46 {
kadonotakashi 0:8fdf9a60065b 47 cmd_init(&wrap_printf);
kadonotakashi 0:8fdf9a60065b 48 cmd_ifconfig_init();
kadonotakashi 0:8fdf9a60065b 49 cmd_socket_init();
kadonotakashi 0:8fdf9a60065b 50
kadonotakashi 0:8fdf9a60065b 51 int c;
kadonotakashi 0:8fdf9a60065b 52 while ((c = getchar()) != EOF) {
kadonotakashi 0:8fdf9a60065b 53 cmd_char_input(c);
kadonotakashi 0:8fdf9a60065b 54 }
kadonotakashi 0:8fdf9a60065b 55 return 0;
kadonotakashi 0:8fdf9a60065b 56 }
kadonotakashi 0:8fdf9a60065b 57
kadonotakashi 0:8fdf9a60065b 58 FileHandle *mbed::mbed_override_console(int)
kadonotakashi 0:8fdf9a60065b 59 {
kadonotakashi 0:8fdf9a60065b 60 static UARTSerial console(STDIO_UART_TX, STDIO_UART_RX, SERIAL_CONSOLE_BAUD_RATE);
kadonotakashi 0:8fdf9a60065b 61 #if CONSOLE_FLOWCONTROL == CONSOLE_FLOWCONTROL_RTS
kadonotakashi 0:8fdf9a60065b 62 console.set_flow_control(SerialBase::RTS, STDIO_UART_RTS, NC);
kadonotakashi 0:8fdf9a60065b 63 #elif CONSOLE_FLOWCONTROL == CONSOLE_FLOWCONTROL_CTS
kadonotakashi 0:8fdf9a60065b 64 console.set_flow_control(SerialBase::CTS, NC, STDIO_UART_CTS);
kadonotakashi 0:8fdf9a60065b 65 #elif CONSOLE_FLOWCONTROL == CONSOLE_FLOWCONTROL_RTSCTS
kadonotakashi 0:8fdf9a60065b 66 console.set_flow_control(SerialBase::RTSCTS, STDIO_UART_RTS, STDIO_UART_CTS);
kadonotakashi 0:8fdf9a60065b 67 #endif
kadonotakashi 0:8fdf9a60065b 68 return &console;
kadonotakashi 0:8fdf9a60065b 69 }