Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
mbed-os/TEST_APPS/device/socket_app/main.cpp@0:8fdf9a60065b, 2018-10-10 (annotated)
- 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?
User | Revision | Line number | New 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 | } |