test public

Dependencies:   HttpServer_snapshot_mbed-os

Committer:
anhtran
Date:
Fri Oct 18 03:09:43 2019 +0000
Revision:
0:e9fd5575b10e
abc

Who changed what in which revision?

UserRevisionLine numberNew contents of line
anhtran 0:e9fd5575b10e 1 /* Copyright (c) 2017 dkato
anhtran 0:e9fd5575b10e 2 * SPDX-License-Identifier: Apache-2.0
anhtran 0:e9fd5575b10e 3 *
anhtran 0:e9fd5575b10e 4 * Licensed under the Apache License, Version 2.0 (the "License");
anhtran 0:e9fd5575b10e 5 * you may not use this file except in compliance with the License.
anhtran 0:e9fd5575b10e 6 * You may obtain a copy of the License at
anhtran 0:e9fd5575b10e 7 *
anhtran 0:e9fd5575b10e 8 * http://www.apache.org/licenses/LICENSE-2.0
anhtran 0:e9fd5575b10e 9 *
anhtran 0:e9fd5575b10e 10 * Unless required by applicable law or agreed to in writing, software
anhtran 0:e9fd5575b10e 11 * distributed under the License is distributed on an "AS IS" BASIS,
anhtran 0:e9fd5575b10e 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
anhtran 0:e9fd5575b10e 13 * See the License for the specific language governing permissions and
anhtran 0:e9fd5575b10e 14 * limitations under the License.
anhtran 0:e9fd5575b10e 15 */
anhtran 0:e9fd5575b10e 16 #ifndef EASY_ATTACH_CAMERA_AND_LCD_H
anhtran 0:e9fd5575b10e 17 #define EASY_ATTACH_CAMERA_AND_LCD_H
anhtran 0:e9fd5575b10e 18
anhtran 0:e9fd5575b10e 19 #include "DisplayBace.h"
anhtran 0:e9fd5575b10e 20
anhtran 0:e9fd5575b10e 21 // camera
anhtran 0:e9fd5575b10e 22 #if MBED_CONF_APP_CAMERA
anhtran 0:e9fd5575b10e 23 // camera-type
anhtran 0:e9fd5575b10e 24 #define CAMERA_CVBS 0x0001
anhtran 0:e9fd5575b10e 25 #define CAMERA_MT9V111 0x0002
anhtran 0:e9fd5575b10e 26 #define CAMERA_OV7725 0x0003
anhtran 0:e9fd5575b10e 27 #define CAMERA_OV5642 0x0004
anhtran 0:e9fd5575b10e 28 #define CAMERA_WIRELESS_CAMERA 0x0083
anhtran 0:e9fd5575b10e 29 #define CAMERA_RASPBERRY_PI 0x2000
anhtran 0:e9fd5575b10e 30
anhtran 0:e9fd5575b10e 31 // shield-type
anhtran 0:e9fd5575b10e 32 #define SHIELD_AUDIO_CAMERA 1
anhtran 0:e9fd5575b10e 33 #define SHIELD_WIRELESS_CAMERA 2
anhtran 0:e9fd5575b10e 34
anhtran 0:e9fd5575b10e 35 // camera module
anhtran 0:e9fd5575b10e 36 #define MODULE_VDC 0
anhtran 0:e9fd5575b10e 37 #define MODULE_CEU 1
anhtran 0:e9fd5575b10e 38 #define MODULE_MIPI 2
anhtran 0:e9fd5575b10e 39
anhtran 0:e9fd5575b10e 40 #ifndef MBED_CONF_APP_SHIELD_TYPE
anhtran 0:e9fd5575b10e 41 #if defined(TARGET_RZ_A1H)
anhtran 0:e9fd5575b10e 42 #if (MBED_CONF_APP_CAMERA_TYPE == CAMERA_WIRELESS_CAMERA)
anhtran 0:e9fd5575b10e 43 #define MBED_CONF_APP_SHIELD_TYPE SHIELD_WIRELESS_CAMERA
anhtran 0:e9fd5575b10e 44 #undef MBED_CONF_APP_CAMERA_TYPE
anhtran 0:e9fd5575b10e 45 #define MBED_CONF_APP_CAMERA_TYPE CAMERA_OV7725
anhtran 0:e9fd5575b10e 46 #else
anhtran 0:e9fd5575b10e 47 #define MBED_CONF_APP_SHIELD_TYPE SHIELD_AUDIO_CAMERA
anhtran 0:e9fd5575b10e 48 #endif
anhtran 0:e9fd5575b10e 49 #endif
anhtran 0:e9fd5575b10e 50 #endif
anhtran 0:e9fd5575b10e 51
anhtran 0:e9fd5575b10e 52 #ifndef MBED_CONF_APP_CAMERA_TYPE
anhtran 0:e9fd5575b10e 53 #if defined(TARGET_GR_LYCHEE)
anhtran 0:e9fd5575b10e 54 #define MBED_CONF_APP_CAMERA_TYPE CAMERA_OV7725
anhtran 0:e9fd5575b10e 55 #elif defined(TARGET_RZ_A2M_EVB) || defined(TARGET_RZ_A2M_EVB_HF) || defined(TARGET_RZ_A2M_SBEV) || defined(TARGET_SEMB1402)
anhtran 0:e9fd5575b10e 56 #define MBED_CONF_APP_CAMERA_TYPE CAMERA_RASPBERRY_PI
anhtran 0:e9fd5575b10e 57 #else
anhtran 0:e9fd5575b10e 58 #define MBED_CONF_APP_CAMERA_TYPE CAMERA_MT9V111
anhtran 0:e9fd5575b10e 59 #endif
anhtran 0:e9fd5575b10e 60 #endif
anhtran 0:e9fd5575b10e 61
anhtran 0:e9fd5575b10e 62 #if (MBED_CONF_APP_CAMERA_TYPE == CAMERA_CVBS) && defined(TARGET_GR_LYCHEE)
anhtran 0:e9fd5575b10e 63 #error "MBED_CONF_APP_CAMERA_TYPE is not supported in this target."
anhtran 0:e9fd5575b10e 64 #endif
anhtran 0:e9fd5575b10e 65
anhtran 0:e9fd5575b10e 66 #if ((MBED_CONF_APP_CAMERA_TYPE & 0x2000) != 0)
anhtran 0:e9fd5575b10e 67 #define CAMERA_MODULE MODULE_MIPI
anhtran 0:e9fd5575b10e 68 #elif defined(TARGET_RZ_A2M_EVB) || defined(TARGET_RZ_A2M_EVB_HF) || defined(TARGET_RZ_A2M_SBEV) || defined(TARGET_SEMB1402)
anhtran 0:e9fd5575b10e 69 #define CAMERA_MODULE MODULE_CEU
anhtran 0:e9fd5575b10e 70 #else
anhtran 0:e9fd5575b10e 71 #define CAMERA_MODULE MODULE_VDC
anhtran 0:e9fd5575b10e 72 #endif
anhtran 0:e9fd5575b10e 73
anhtran 0:e9fd5575b10e 74 #if MBED_CONF_APP_CAMERA_TYPE == CAMERA_MT9V111
anhtran 0:e9fd5575b10e 75 #include "MT9V111_config.h"
anhtran 0:e9fd5575b10e 76 #elif MBED_CONF_APP_CAMERA_TYPE == CAMERA_OV7725
anhtran 0:e9fd5575b10e 77 #include "OV7725_config.h"
anhtran 0:e9fd5575b10e 78 #elif MBED_CONF_APP_CAMERA_TYPE == CAMERA_OV5642
anhtran 0:e9fd5575b10e 79 #include "OV5642_config.h"
anhtran 0:e9fd5575b10e 80 #elif MBED_CONF_APP_CAMERA_TYPE == CAMERA_RASPBERRY_PI
anhtran 0:e9fd5575b10e 81 #include "RaspberryPi_config.h"
anhtran 0:e9fd5575b10e 82 #endif
anhtran 0:e9fd5575b10e 83 #endif
anhtran 0:e9fd5575b10e 84
anhtran 0:e9fd5575b10e 85 // lcd
anhtran 0:e9fd5575b10e 86 #if MBED_CONF_APP_LCD
anhtran 0:e9fd5575b10e 87 // lcd-type
anhtran 0:e9fd5575b10e 88 #define GR_PEACH_4_3INCH_SHIELD 0x0000
anhtran 0:e9fd5575b10e 89 #define GR_PEACH_7_1INCH_SHIELD 0x0001
anhtran 0:e9fd5575b10e 90 #define GR_PEACH_RSK_TFT 0x0002
anhtran 0:e9fd5575b10e 91 #define GR_PEACH_DISPLAY_SHIELD 0x0100
anhtran 0:e9fd5575b10e 92 #define GR_LYCHEE_TF043HV001A0 0x1000
anhtran 0:e9fd5575b10e 93 #define GR_LYCHEE_ATM0430D25 0x1001
anhtran 0:e9fd5575b10e 94 #define GR_LYCHEE_FG040346DSSWBG03 0x1002
anhtran 0:e9fd5575b10e 95 #define RZ_A2M_LVDS_TO_HDMI 0x2000
anhtran 0:e9fd5575b10e 96 #define RZ_A2M_EVB_RSK_TFT 0x2100
anhtran 0:e9fd5575b10e 97 #define RZ_A2M_DVI_STICK 0x2101
anhtran 0:e9fd5575b10e 98
anhtran 0:e9fd5575b10e 99 #define GR_LYCHEE_LCD GR_LYCHEE_TF043HV001A0
anhtran 0:e9fd5575b10e 100
anhtran 0:e9fd5575b10e 101 #ifndef MBED_CONF_APP_LCD_TYPE
anhtran 0:e9fd5575b10e 102 #if defined(TARGET_RZ_A1H)
anhtran 0:e9fd5575b10e 103 #define MBED_CONF_APP_LCD_TYPE GR_PEACH_4_3INCH_SHIELD
anhtran 0:e9fd5575b10e 104 #elif defined(TARGET_GR_LYCHEE)
anhtran 0:e9fd5575b10e 105 #define MBED_CONF_APP_LCD_TYPE GR_LYCHEE_LCD
anhtran 0:e9fd5575b10e 106 #elif defined(TARGET_RZ_A2M_EVB) || defined(TARGET_RZ_A2M_EVB_HF)
anhtran 0:e9fd5575b10e 107 #define MBED_CONF_APP_LCD_TYPE RZ_A2M_DVI_STICK
anhtran 0:e9fd5575b10e 108 #elif defined(TARGET_RZ_A2M_SBEV) || defined(TARGET_SEMB1402)
anhtran 0:e9fd5575b10e 109 #define MBED_CONF_APP_LCD_TYPE RZ_A2M_LVDS_TO_HDMI
anhtran 0:e9fd5575b10e 110 #endif
anhtran 0:e9fd5575b10e 111 #endif
anhtran 0:e9fd5575b10e 112
anhtran 0:e9fd5575b10e 113 #if defined(TARGET_RZ_A1H) && ((MBED_CONF_APP_LCD_TYPE & 0xF000) != 0x0000)
anhtran 0:e9fd5575b10e 114 #error "MBED_CONF_APP_LCD_TYPE is not supported in this target."
anhtran 0:e9fd5575b10e 115 #endif
anhtran 0:e9fd5575b10e 116 #if defined(TARGET_GR_LYCHEE) && ((MBED_CONF_APP_LCD_TYPE & 0xF000) != 0x1000)
anhtran 0:e9fd5575b10e 117 #error "MBED_CONF_APP_LCD_TYPE is not supported in this target."
anhtran 0:e9fd5575b10e 118 #endif
anhtran 0:e9fd5575b10e 119
anhtran 0:e9fd5575b10e 120 #if MBED_CONF_APP_LCD_TYPE == GR_PEACH_4_3INCH_SHIELD
anhtran 0:e9fd5575b10e 121 #include "LCD_shield_config_4_3inch.h"
anhtran 0:e9fd5575b10e 122 #elif MBED_CONF_APP_LCD_TYPE == GR_PEACH_7_1INCH_SHIELD
anhtran 0:e9fd5575b10e 123 #include "LCD_shield_config_7_1inch.h"
anhtran 0:e9fd5575b10e 124 #elif MBED_CONF_APP_LCD_TYPE == GR_PEACH_RSK_TFT
anhtran 0:e9fd5575b10e 125 #include "LCD_shield_config_RSK_TFT.h"
anhtran 0:e9fd5575b10e 126 #elif MBED_CONF_APP_LCD_TYPE == GR_PEACH_DISPLAY_SHIELD
anhtran 0:e9fd5575b10e 127 #include "Display_shield_config.h"
anhtran 0:e9fd5575b10e 128 #elif MBED_CONF_APP_LCD_TYPE == GR_LYCHEE_TF043HV001A0
anhtran 0:e9fd5575b10e 129 #include "LCD_config_TF043HV001A0.h"
anhtran 0:e9fd5575b10e 130 #elif MBED_CONF_APP_LCD_TYPE == GR_LYCHEE_ATM0430D25
anhtran 0:e9fd5575b10e 131 #include "LCD_config_ATM0430D25.h"
anhtran 0:e9fd5575b10e 132 #elif MBED_CONF_APP_LCD_TYPE == GR_LYCHEE_FG040346DSSWBG03
anhtran 0:e9fd5575b10e 133 #include "LCD_config_FG040346DSSWBG03.h"
anhtran 0:e9fd5575b10e 134 #elif MBED_CONF_APP_LCD_TYPE == RZ_A2M_LVDS_TO_HDMI
anhtran 0:e9fd5575b10e 135 #include "LCD_config_lvds_to_hdmi.h"
anhtran 0:e9fd5575b10e 136 #elif MBED_CONF_APP_LCD_TYPE == RZ_A2M_EVB_RSK_TFT
anhtran 0:e9fd5575b10e 137 #include "LCD_config_RSK_TFT.h"
anhtran 0:e9fd5575b10e 138 #elif MBED_CONF_APP_LCD_TYPE == RZ_A2M_DVI_STICK
anhtran 0:e9fd5575b10e 139 #include "LCD_config_DVI_Stick.h"
anhtran 0:e9fd5575b10e 140 #else
anhtran 0:e9fd5575b10e 141 #error "No lcd chosen. Please add 'config.lcd-type.value' to your mbed_app.json (see README.md for more information)."
anhtran 0:e9fd5575b10e 142 #endif
anhtran 0:e9fd5575b10e 143 #endif
anhtran 0:e9fd5575b10e 144
anhtran 0:e9fd5575b10e 145 extern DisplayBase::graphics_error_t EasyAttach_Init(
anhtran 0:e9fd5575b10e 146 DisplayBase& Display,
anhtran 0:e9fd5575b10e 147 uint16_t cap_width = 0,
anhtran 0:e9fd5575b10e 148 uint16_t cap_height = 0
anhtran 0:e9fd5575b10e 149 );
anhtran 0:e9fd5575b10e 150
anhtran 0:e9fd5575b10e 151 extern DisplayBase::graphics_error_t EasyAttach_CameraStart(
anhtran 0:e9fd5575b10e 152 DisplayBase& Display,
anhtran 0:e9fd5575b10e 153 DisplayBase::video_input_channel_t channel = DisplayBase::VIDEO_INPUT_CHANNEL_0
anhtran 0:e9fd5575b10e 154 );
anhtran 0:e9fd5575b10e 155
anhtran 0:e9fd5575b10e 156 extern void EasyAttach_SetTypicalBacklightVol(float typ_vol);
anhtran 0:e9fd5575b10e 157
anhtran 0:e9fd5575b10e 158 extern void EasyAttach_LcdBacklight(bool type = true);
anhtran 0:e9fd5575b10e 159
anhtran 0:e9fd5575b10e 160 extern void EasyAttach_LcdBacklight(float value);
anhtran 0:e9fd5575b10e 161
anhtran 0:e9fd5575b10e 162 #endif