平头哥 TG7100C 试玩。

1.TG7100C 硬件电路基本准备
蓝牙,WIFI,TG-12F VS ESP-12F
安信可的TG12F 是TG7100C的邮票孔模组。与ESP8266 尺寸,引脚分布基本相同。关键是价格差不多,却同时具备蓝牙-WIFI,比起ESP32价格 要更有吸引力。

快速上手的话可以在ESP12F的底板上直接焊接。

最小系统只需要VCC 3.3V(最小500MA),GND ,EN/RST 接10K拉高,IO8 接10K拉低同时接按键通过1K到VCC。

烧写都可以使用UART,与ESP-12F不同的是 TG-12F需要上电时检测IO8脚位高电平才进入烧写模式。进入烧写模式UART 啥提示也没输出,不像ESP-12F 会给出xxxxx(1,x)的 状态提示。

烧写软件与LINUX编程环境配置参见:
安信可博客
编程环境的设置是由于有阿里源的加持速度要比8266系列来的更快,更不容易出错。

按安信可博客的操作烧写成功以后默认的波特率是921600。会看到程序的输出LOG.

二、修改SDK 根目录下的 build.sh 用以下内容全部替换原文件,黏贴复制

#!/bin/bash

##------default config-----------------------------------------------------------------------------------##

default_type="example"
default_app="helloworld"
default_board="tg7100cevb"
default_region=MAINLAND
default_env=ONLINE
default_debug=0
default_args=""

##-------------------------------------------------------------------------------------------------------##

export LC_ALL=en_US.utf-8
export LANG=en_US.utf-8

path_tmp=$PATH
export PATH=$path_tmp:$(pwd)/Living_SDK/build/compiler/gcc-arm-none-eabi/Linux64/bin/
start_time=$(date +%s)

if [ "$(uname)" = "Linux" ]; then
    CUR_OS="Linux"
elif [ "$(uname)" = "Darwin" ]; then
    CUR_OS="OSX"
elif [ "$(uname | grep NT)" != "" ]; then
    CUR_OS="Windows"
else
    echo "error: unkonw OS"
    exit 1
fi

app=$2
if [ xx"$2" == xx ]; then
        app=$default_app
fi

if [[ xx"$1" == xxclean ]]; then
	rm -rf Living_SDK/example/$app
	rm -rf out
	rm -rf Living_SDK/out
	#git checkout Living_SDK/example
	exit 0
fi

if [[ xx"$1" == xx--help ]] || [[ xx"$1" == xxhelp ]] || [[ xx"$1" == xx-h ]] || [[ xx"$1" == xx-help ]]; then
	echo "./build.sh $default_type $default_app $default_board $default_region $default_env $default_debug $default_args "
	exit 0
fi

type=$1
if [ xx"$1" == xx ]; then
	type=$default_type
fi

board=$3
if [ xx"$3" == xx ]; then
	board=$default_board
fi

# REGION=MAINLAND or SINGAPORE
if [[ xx$4 == xx ]]; then 
	echo "REGION SET AS MAINLAND"
	REGION=$default_region
else
	REGION=$4
fi

# ENV=ONLINE
if [[ xx$5 == xx ]]; then 
	echo "ENV SET AS ONLINE"
	ENV=$default_env
else
	ENV=$5
fi

# CONFIG_DEBUG=0
if [[ xx$6 == xx ]]; then 
	echo "CONFIG_DEBUG SET AS 0"
	CONFIG_DEBUG=$default_debug
else
	CONFIG_DEBUG=$6
fi

if [[ xx$7 == xx ]]; then 
	echo "ARGS SET AS NULL"
	ARGS=$default_args
else
	ARGS="$7"
fi

function update_golden_product()
{
	gp_type=$1
	gp_app=$2
	git submodule update --init --remote Products/$gp_type/$gp_app
	if [ $? -ne 0 ]; then
		echo 'code download or update error!'
		exit 1
	fi
}

if [[ "${type}-${app}" == "Smart_outlet-smart_outlet_meter" ]] || [[ "${type}-${app}" == "Smart_lighting-smart_led_strip" ]] || [[ "${type}-${app}" == "Smart_lighting-smart_led_bulb" ]]; then
	echo 'golden sample product--------------------'
	update_golden_product $type $app
fi

if [[ -d Products/$type/$app ]] && [[ ! -f prebuild/lib/board_$board.a ]]; then
	rm -rf Living_SDK/example/$app
	# git checkout Living_SDK/example
fi

echo "----------------------------------------------------------------------------------------------------"
echo "PATH=$PATH"
echo "OS: ${CUR_OS}"
echo "Product type=$type app_name=$app board=$board REGION=$REGION ENV=$ENV CONFIG_DEBUG=$CONFIG_DEBUG ARGS=$ARGS"
echo "----------------------------------------------------------------------------------------------------"
if [[ -d Products/$type/$app ]] && [[ ! -f Products/$type/$app/makefile ]]; then
	./tools/cmd/linux64/awk '{ gsub("'"smart_outlet"'","'"$app"'");  print $0 }' Products/Smart_outlet/smart_outlet/makefile > Products/$type/$app/makefile
fi
function build_end()
{
	end_time=$(date +%s)
	cost_time=$[ $end_time-$start_time ]
	echo "build time is $(($cost_time/60))min $(($cost_time%60))s"
	export PATH=$path_tmp
}

function build_sdk()
{
	rm -rf out/$app@/@${board}/*
	if [[ -d Living_SDK/example ]] && [[ -d Products/$type ]] && [[ -d Products/$type/$app ]]; then
		rm -rf Living_SDK/example/$app
		cp -rf Products/$type/$app Living_SDK/example/$app
		
		./tools/cmd/linux64/awk '{ gsub("'./make.settings'","example/${APP_FULL}/make.settings"); gsub("'"\?= MAINLAND"'","'"?= ${REGION}"'"); gsub("'"\?= ONLINE"'","'"?= ${ENV}"'"); gsub("'"CONFIG_DEBUG\ \?=\ 0"'","'"CONFIG_DEBUG ?= $CONFIG_DEBUG"'");   print $0 }' Products/$type/$app/$app.mk > Living_SDK/example/${app}/$app.mk
		cd Living_SDK
		aos make clean
		echo -e "aos make $app@${board} CONFIG_SERVER_REGION=${REGION} CONFIG_SERVER_ENV=${ENV} CONFIG_DEBUG=${CONFIG_DEBUG} $ARGS"
		aos make $app@${board} CONFIG_SERVER_REGION=${REGION} CONFIG_SERVER_ENV=${ENV} CONFIG_DEBUG=${CONFIG_DEBUG} "$ARGS"
		cd -
		if [[ -f Living_SDK/out/$app@${board}/binary/$app@${board}.bin ]]; then
			cp -rfa Living_SDK/out/$app@${board}/binary/* out/$app@${board}
			build_end
			exit 0
		else
			echo "build failed!"
			exit 1
		fi
	fi
}

mkdir -p out;mkdir -p out/$app@${board}
rm -rf out/$app@${board}/*

if [[ ! -d Products/$type ]] || [[ ! -d Products/$type/$app ]]; then
	echo "path of Products/$type or Products/$type/$app don't exist!"
	if [[ ! -d Living_SDK/example/$app ]]; then
		echo "path of Living_SDK/example  don't exist!"
		exit 1
	else
		cd Living_SDK
		aos make clean
		echo -e "aos make $app@${board} CONFIG_SERVER_REGION=${REGION} CONFIG_SERVER_ENV=${ENV} CONFIG_DEBUG=${CONFIG_DEBUG} $ARGS"
		aos make $app@${board} CONFIG_SERVER_REGION=${REGION} CONFIG_SERVER_ENV=${ENV} CONFIG_DEBUG=${CONFIG_DEBUG} "$ARGS"
		cd -
		if [[ -f Living_SDK/out/$app@${board}/binary/$app@${board}.bin ]]; then
			cp -rfa Living_SDK/out/$app@${board}/binary/* out/$app@${board}
			build_end
			exit 0
		else
			echo "build failed!"
			exit 1
		fi
	fi
fi

##  build app  ##
if [[ "${board}" == "hf-lpb130" ]] || [[ "${board}" == "hf-lpb135" ]] || [[ "${board}" == "hf-lpt230" ]] || [[ "${board}" == "hf-lpt130" ]] || [[ "${board}" == "uno-91h" ]]; then
	./tools/5981a.sh  $type $app ${board} ${REGION} ${ENV} ${CONFIG_DEBUG} "${ARGS}"
elif [[ "${board}" == "mk3060" ]] || [[ "${board}" == "mk3061" ]]; then
	##  moc108  ##
	./tools/mk3060.sh $type $app ${board} ${REGION} ${ENV} ${CONFIG_DEBUG} "${ARGS}"
elif [[ "${board}" == "mk3080" ]] || [[ "${board}" == "mk3092" ]] || [[ "${board}" == "mk5080" ]]; then
	##  rtl8710bn  ##
	./tools/mk3080.sh  $type $app ${board} ${REGION} ${ENV} ${CONFIG_DEBUG} "${ARGS}"
elif [[ "${board}" == "mx1270" ]]; then
	./tools/mx1270.sh  $type $app ${board} ${REGION} ${ENV} ${CONFIG_DEBUG} "${ARGS}"
elif [[ "${board}" == "asr5501" ]]; then
	./tools/asr5501.sh  $type $app ${board} ${REGION} ${ENV} ${CONFIG_DEBUG} "${ARGS}"
elif [[ "${board}" == "bk7231udevkitc" ]]; then
	./tools/bk7231udevkitc.sh  $type $app ${board} ${REGION} ${ENV} ${CONFIG_DEBUG} "${ARGS}"
elif [[ "${board}" == "amebaz_dev" ]]; then
	./tools/amebaz_dev.sh  $type $app ${board} ${REGION} ${ENV} ${CONFIG_DEBUG} "${ARGS}"
elif [[ "${board}" == "tg7100cevb" ]]; then
	./tools/tg7100cevb.sh  $type $app ${board} ${REGION} ${ENV} ${CONFIG_DEBUG} "${ARGS}"
else
	# echo -e "build paras error: you can build board ${board} with follow step: \n cd Living_SDK\n aos make $app@${board} CONFIG_SERVER_REGION=${REGION} CONFIG_SERVER_ENV=${ENV} CONFIG_DEBUG=${CONFIG_DEBUG}"
	# exit 1
	build_sdk
fi

if [[ ! -f out/$app@${board}/$app@${board}.bin ]]; then
	echo "build failed!"
	exit 1
fi

build_end
log=$(ls -al out/$app@${board}/$app@${board}.bin -h|awk '{print $5}')
echo -e "\033[41;36mFirmware $app@${board}.bin Size=${log} \033[0m"
exit 0



三。剪切 Living_SDK/example/helloworld 目录到 Product/example/下
并在helloworld目录添加 makefile,make.settings,helloworld.mk(覆盖此文件内容) 三个文件
**

makefile

**


include helloworld.mk
target = helloworld

CFLAGS += -DALCS_ENABLED

INCLUDE_PATH = -I$(PWD)
INCLUDE      = $(INCLUDE_PATH)/ \
				-I$(PWD)/../../../prebuild/include \
				-I$(PWD)/../../../prebuild/include/exports \
				-I$(PWD)/../../../prebuild/include/imports \
				-I$(PWD)/../../../prebuild/include/kernel/rhino/core/include \
				-I$(PWD)/../../../prebuild/include/framework/netmgr/include \
				-I$(PWD)/../../../prebuild/include/platform/arch/arm/armv7m/gcc/m4 \
				-I$(PWD)/../../../prebuild/include/board/$(BOARD)

app = $(wildcard ./*.c)
obj_app = $(patsubst %.c,%.o,$(app))

CROSS_PREFIX?="arm-none-eabi-" 
DEPENDS="" 
CCLD="" 
LDFLAGS="" 
CC=$(CROSS_PREFIX)gcc
LD=$(CROSS_PREFIX)ld
AR=$(CROSS_PREFIX)ar
STRIP=$(CROSS_PREFIX)strip
OBJCOPY=$(CROSS_PREFIX)objcopy

# CFLAGS += -MD -ggdb -Os -Wall -Wfatal-errors -fsigned-char -ffunction-sections -fdata-sections -fno-common -std=gnu11 -Werror \
# 		  -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w

CFLAGS += -DWITH_LWIP -DCONFIG_AOS_CLI -DLOG_SIMPLE
CFLAGS += ${GLOBAL_CFLAGS}
CFLAGS += ${SDK_DEFINES}

ifeq ("$(BOARD)", "hf-lpt230")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w
	CFLAGS += -DHF_LPT230
else ifeq ("$(BOARD)", "hf-lpt130")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w
	CFLAGS += -DHF_LPT130
else ifeq ("$(BOARD)", "hf-lpb130")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w
	CFLAGS += -DHF_LPB130
else ifeq ("$(BOARD)", "hf-lpb135")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w
	CFLAGS += -DHF_LPB135
else ifeq ("$(BOARD)", "uno-91h")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w
	CFLAGS += -DUNO_91H

else ifeq ("$(BOARD)", "mk1101")
else ifeq ("$(BOARD)", "mk3060")
	CFLAGS +=  -mcpu=arm968e-s -march=armv5te -mthumb -mthumb-interwork -mlittle-endian -w -Os -Wall -Wfatal-errors -fsigned-char -ffunction-sections -fdata-sections -fno-common -std=gnu11 
	CFLAGS += -DMK3060

else ifeq ("$(BOARD)", "mk3061")
	CFLAGS +=  -mcpu=arm968e-s -march=armv5te -mthumb -mthumb-interwork -mlittle-endian -w -Os -Wall -Wfatal-errors -fsigned-char -ffunction-sections -fdata-sections -fno-common -std=gnu11 
	CFLAGS += -DMK3061

else ifeq ("$(BOARD)", "mk3080")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w
	CFLAGS += -DMK3080
else ifeq ("$(BOARD)", "amebaz_dev")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w
	CFLAGS += -DAMEBAZ_DEV
else ifeq ("$(BOARD)", "mk3092")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w
	CFLAGS += -DMK3092

else ifeq ("$(BOARD)", "mk5080")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -march=armv7-m -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -w
	CFLAGS += -DMK5080

else ifeq ("$(BOARD)", "asr5501")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -mfpu=fpv4-sp-d16 -std=gnu11 -w
	CFLAGS += -DASR5501

else ifeq ("$(BOARD)", "mx1270")
	CFLAGS += -Os -Werror -fdata-sections -ffunction-sections -mcpu=cortex-m4 -mfloat-abi=soft -mlittle-endian -mthumb -mthumb-interwork -mfpu=fpv4-sp-d16 -std=gnu11 -w
	CFLAGS += -DMX1270

else ifeq ("$(BOARD)", "bk7231devkitc")
    CFLAGS +=  -mcpu=arm968e-s -march=armv5te -mthumb -mthumb-interwork -mlittle-endian -w -Os -Wall -Wfatal-errors -fsigned-char -ffunction-sections -fdata-sections -fno-common -std=gnu11
    CFLAGS += -DBK7231DEVKITC
else ifeq ("$(BOARD)", "bk7231sdevkitc")
    CFLAGS +=  -mcpu=arm968e-s -march=armv5te -mthumb -mthumb-interwork -mlittle-endian -w -Os -Wall -Wfatal-errors -fsigned-char -ffunction-sections -fdata-sections -fno-common -std=gnu11
    CFLAGS += -DBK7231SDEVKITC
else ifeq ("$(BOARD)", "bk7231udevkitc")
    CFLAGS +=  -mcpu=arm968e-s -march=armv5te -mthumb -mthumb-interwork -mlittle-endian -w -Os -Wall -Wfatal-errors -fsigned-char -ffunction-sections -fdata-sections -fno-common -std=gnu11
    CFLAGS += -DBK7231UDEVKITC
else ifeq ("$(BOARD)", "b_l475e")

else ifeq ("$(BOARD)", "eml3047")
else ifeq ("$(BOARD)", "frdmkl27z")
else ifeq ("$(BOARD)", "lpcxpresso54102")

else ifeq ("$(BOARD)", "pca10056")

##  toolchains['arm-rockchip-linux-gnueabihf']
else ifeq ("$(BOARD)", "rk1108")

##  toolchains['nds32le-elf-newlib-v3']
else ifeq ("$(BOARD)", "sv6266_evb")
else ifeq ("$(BOARD)", "tg7100cevb")
	CFLAGS += -std=gnu99 -Os -g -msmall-data-limit=4 -fno-omit-frame-pointer -ffunction-sections -fdata-sections -fstrict-volatile-bitfields -fshort-enums -fno-strict-aliasing -march=rv32imfc -mabi=ilp32f
endif

ifneq ("$(BOARD)", "")
$(info BOARD=${BOARD} CONFIG_COMPILE_DATE=${CONFIG_COMPILE_DATE})
endif

# Compile date
CONFIG_COMPILE_DATE ?= $(shell date +%Y%m%d.%H%M%S)
all : $(target)

$(target):$(obj_app)
	@mkdir -p obj
	@mv *.o obj
	@$(RM) -rf *.d 
	@$(AR) -rcs $(PWD)/../../../prebuild/lib/$(target).a obj/*.o 2>/dev/null
	@$(RM) -rf obj

%.o:%.c
	@$(CC) -c $(CFLAGS) $(INCLUDE) -o $@ $< 

clean:
	@-$(RM)  obj/*

**

make.settings

因为没有使用AOS 生成,所以不用在意提示
**

#
# Automatically generated file; DO NOT EDIT.
# Main Menu
#

#
# Configure Link Kit SDK for IoT Embedded Devices
#
FEATURE_SRCPATH="."
FEATURE_MQTT_COMM_ENABLED=y
FEATURE_ALCS_ENABLED=y
#
# MQTT Configurations
#
# FEATURE_MQTT_SHADOW is not set
# FEATURE_CLOUD_OFFLINE_RESET is not set
# FEATURE_MQTT_LOGPOST is not set
FEATURE_DEVICE_MODEL_ENABLED=y

FEATURE_MQTT_AUTO_SUBSCRIBE=y

#
# Device Model Configurations
#
# FEATURE_DEVICE_MODEL_GATEWAY is not set
FEATURE_DEV_BIND_ENABLED=y
# FEATURE_DEVICE_MODEL_RAWDATA_SOLO is not set
# FEATURE_COAP_COMM_ENABLED is not set
FEATURE_OTA_ENABLED=y
# FEATURE_HTTP2_COMM_ENABLED is not set
# FEATURE_HTTP_COMM_ENABLED is not set
FEATURE_SUPPORT_TLS=y
# FEATURE_SAL_ENABLED is not set
FEATURE_WIFI_PROVISION_ENABLED=y

#
# AWSS Configurations
#
FEATURE_AWSS_SUPPORT_SMARTCONFIG=y
FEATURE_AWSS_SUPPORT_ZEROCONFIG=y
# FEATURE_AWSS_SUPPORT_PHONEASAP is not set
# FEATURE_AWSS_SUPPORT_ROUTER is not set
FEATURE_AWSS_SUPPORT_DEV_AP=y

**

helloworld.mk

**

NAME := helloworld

# Cloud server region: MAINLAND or SINGAPORE, GERMANY
CONFIG_SERVER_REGION ?= SINGAPORE

# Cloud server env: ON_DAILY, ON_PRE, ONLINE
CONFIG_SERVER_ENV ?= ONLINE
# AWSS MODE: AWSS_ONESHOT_MODE, AWSS_DEV_AP_MODE, AWSS_BT_MODE
CONFIG_AWSS_MODE ?= AWSS_DEV_AP_MODE

CONFIG_FIRMWARE_VERSION = app-1.6.6

# Compile date and time
ifeq ("${DATE}", "")
	DATE=date
endif
CONFIG_COMPILE_DATE ?= $(shell ${DATE} +%Y%m%d.%H%M%S)

# Firmware type: 0 - release, 1 -  debug
CONFIG_DEBUG ?= 0

# Manufacturer self-defined AP auto find, default close
CONFIG_MANUFACT_AP_FIND ?= FALSE

CONFIG_BOARD_NAME = $(shell echo $(PLATFORM) | tr a-z A-Z | tr '-' '_')

$(NAME)_SOURCES := helloworld.c  
                    

#$(NAME)_SOURCES += ota_hal_module1.c \
#	           ota_hal_module2.c

 

 

$(NAME)_COMPONENTS += framework/protocol/linkkit/sdk \
                      framework/protocol/linkkit/hal \
                      framework/netmgr \
                      framework/common \
                      utility/cjson \
                      framework/uOTA

GLOBAL_INCLUDES += ../../../../framework/protocol/linkkit/include \
                    ../../../../framework/protocol/linkkit/include/imports \
                    ../../../../framework/protocol/linkkit/include/exports \

GLOBAL_CFLAGS += -DCONFIG_SDK_THREAD_COST=1
GLOBAL_CFLAGS += -DCONFIG_YWSS \
                 -DBUILD_AOS \
                 -DAWSS_SUPPORT_STATIS \
                 -DDEV_ERRCODE_ENABLE \
                 -DDEV_OFFLINE_OTA_ENABLE \
                 -DALCS_GROUP_COMM_ENABLE \
                 -DDM_UNIFIED_SERVICE_POST \
                 -DAWSS_BATCH_DEVAP_ENABLE

#GLOBAL_CFLAGS += -DDEV_OFFLINE_SECURE_OTA_ENABLE
#GLOBAL_CFLAGS += -DOTA_MULTI_MODULE_DEBUG

ifeq ($(CONFIG_MANUFACT_AP_FIND), ENABLE)
GLOBAL_CFLAGS += -DMANUFACT_AP_FIND_ENABLE
endif

ifeq ($(CONFIG_SUPPORT_MCU_OTA), ENABLE)
GLOBAL_CFLAGS += -DSUPPORT_MCU_OTA
endif

GLOBAL_CFLAGS += -DREGION_${CONFIG_SERVER_REGION}

GLOBAL_CFLAGS += -D${CONFIG_BOARD_NAME}

GLOBAL_CFLAGS += -D${CONFIG_AWSS_MODE}

GLOBAL_CFLAGS += -D${CONFIG_SERVER_ENV}

GLOBAL_CFLAGS += -DAOS_TIMER_SERVICE
GLOBAL_CFLAGS += -DENABLE_COUNTDOWN_LIST
GLOBAL_CFLAGS += -DENABLE_LOCALTIMER
GLOBAL_CFLAGS += -DENABLE_PERIOD_TIMER
GLOBAL_CFLAGS += -DENABLE_RANDOM_TIMER

GLOBAL_CFLAGS += -DREPORT_MULTHREAD

GLOBAL_CFLAGS += -DTSL_FY_SUPPORT

ifeq ($(CONFIG_MANUFACT_AP_FIND), ENABLE)
GLOBAL_CFLAGS += -DMANUFACT_AP_FIND_ENABLE
endif

BRANCH := $(shell git rev-parse --abbrev-ref HEAD)
GLOBAL_CFLAGS += -DGIT_BRANCH=\"${BRANCH}\"
COMMIT_HASH := $(shell git rev-parse HEAD)
GLOBAL_CFLAGS += -DGIT_HASH=\"${COMMIT_HASH}\"
COMPILE_USER := ${USER}
GLOBAL_CFLAGS += -DCOMPILE_HOST=\"${COMPILE_USER}\"
SERVER_CONF_STRING := "${CONFIG_SERVER_REGION}-${CONFIG_SERVER_ENV}"
GLOBAL_CFLAGS += -DREGION_ENV_STRING=\"${SERVER_CONF_STRING}\"
GLOBAL_CFLAGS += -DAPP_NAME=\"${APP}\"
GLOBAL_CFLAGS += -DPLATFORM=\"${PLATFORM}\"
CONFIG_SYSINFO_APP_VERSION = ${CONFIG_FIRMWARE_VERSION}-${CONFIG_COMPILE_DATE}
GLOBAL_CFLAGS += -DSYSINFO_APP_VERSION=\"$(CONFIG_SYSINFO_APP_VERSION)\"

$(info CONFIG_BOARD_NAME : $(CONFIG_BOARD_NAME))
$(info server region: ${CONFIG_SERVER_REGION})
$(info server env: ${CONFIG_SERVER_ENV})
$(info APP: ${APP} Board: ${PLATFORM})
$(info host user: ${COMPILE_USER})
$(info branch: ${BRANCH})
$(info hash: ${COMMIT_HASH})
$(info app_version_new:${CONFIG_SYSINFO_APP_VERSION})

ifeq ($(CONFIG_DEBUG), 1)
GLOBAL_CFLAGS += -DDEFAULT_LOG_LEVEL_DEBUG
GLOBAL_CFLAGS += -DCONFIG_BLDTIME_MUTE_DBGLOG=0
$(info firmware type: DEBUG)
else
GLOBAL_CFLAGS += -DCONFIG_BLDTIME_MUTE_DBGLOG=1
$(info firmware type: RELEASE)
endif

ifeq ($(CONFIG_COMBOAPP), 1)
$(NAME)_COMPONENTS += framework.bluetooth.breeze
GLOBAL_CFLAGS += -DEN_COMBO_NET
GLOBAL_CFLAGS += -DAWSS_DISABLE_REGISTRAR
bz_en_auth := 1
bz_en_awss := 1
bz_long_mtu := 1
ble := 1
endif

ifeq ($(LWIP),1)
$(NAME)_COMPONENTS  += protocols.net
no_with_lwip := 0
endif

ifeq ($(print_heap),1)
GLOBAL_CFLAGS += -DCONFIG_PRINT_HEAP
endif

ifneq ($(HOST_MCU_FAMILY),esp8266)
$(NAME)_COMPONENTS  += cli
GLOBAL_CFLAGS += -DCONFIG_AOS_CLI
else
GLOBAL_CFLAGS += -DESP8266_CHIPSET
endif

ifeq (y,$(pvtest))
GLOBAL_CFLAGS += -DPREVALIDATE_TEST
endif

GLOBAL_INCLUDES += ./

include ./make.settings

SWITCH_VARS := FEATURE_MQTT_COMM_ENABLED FEATURE_ALCS_ENABLED FEATURE_DEVICE_MODEL_ENABLED  \
    FEATURE_DEVICE_MODEL_GATEWAY FEATURE_DEV_BIND_ENABLED FEATURE_MQTT_SHADOW FEATURE_CLOUD_OFFLINE_RESET \
    FEATURE_DEVICE_MODEL_RAWDATA_SOLO  FEATURE_COAP_COMM_ENABLED FEATURE_HTTP2_COMM_ENABLED \
    FEATURE_HTTP_COMM_ENABLED FEATURE_SAL_ENABLED  FEATURE_WIFI_PROVISION_ENABLED FEATURE_AWSS_SUPPORT_SMARTCONFIG\
    FEATURE_AWSS_SUPPORT_ZEROCONFIG FEATURE_AWSS_SUPPORT_SMARTCONFIG FEATURE_AWSS_SUPPORT_ZEROCONFIG FEATURE_AWSS_SUPPORT_PHONEASAP \
    FEATURE_AWSS_SUPPORT_ROUTER FEATURE_AWSS_SUPPORT_DEV_AP FEATURE_OTA_ENABLED FEATURE_MQTT_AUTO_SUBSCRIBE FEATURE_MQTT_PREAUTH_SUPPORT_HTTPS_CDN

$(foreach v, \
    $(SWITCH_VARS), \
    $(if $(filter y,$($(v))), \
        $(eval GLOBAL_CFLAGS += -D$(subst FEATURE_,,$(v)))) \
)

$(foreach v, \
    $(SWITCH_VARS), \
    $(if $(filter y,$($(v))), \
        $(eval SDK_DEFINES += $(subst FEATURE_,-D,$(v)))) \
)

四。在SDK目录下执行
./build.sh clean
./build.sh

此修改基于安信可的SDK,(smart_outlet)例子,基本组件添加在.mk文件中修改。
在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值