Ignore:
Timestamp:
Feb 1, 2019, 9:57:09 PM (5 years ago)
Author:
coas-nagasima
Message:

TINETとSocket APIなどを更新

Location:
asp3_tinet_ecnl_rx/trunk/app3_human_detec
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • asp3_tinet_ecnl_rx/trunk/app3_human_detec/.cproject

    r345 r364  
    2222                        <storageModule moduleId="com.renesas.cdt.managedbuild.core.toolchainInfo">
    2323                                <option id="toolchain.id" value="RENESAS_GCC_RX"/>
    24                                 <option id="toolchain.version" value="4.8.4.201703"/>
     24                                <option id="toolchain.version" value="4.8.4.201803"/>
    2525                        </storageModule>
    2626                        <storageModule moduleId="cdtBuildSystem" version="4.0.0">
     
    3737                                                        <option id="com.renesas.cdt.managedbuild.gcc.core.option.debug.warnStackSize.662973646" name="Warn if stack size exceeds the limit (-Wstack-usage) (H')" superClass="com.renesas.cdt.managedbuild.gcc.core.option.debug.warnStackSize" useByScannerDiscovery="false" value="100" valueType="string"/>
    3838                                                        <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.renesas.cdt.managedbuild.gcc.core.targetPlatform.2124219093" isAbstract="false" osList="all" superClass="com.renesas.cdt.managedbuild.gcc.core.targetPlatform"/>
    39                                                         <builder buildPath="${workspace_loc:/app3_human_detec}/Debug" id="com.renesas.cdt.managedbuild.gcc.core.builder.1092580250" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="GCC for Renesas Builder" parallelBuildOn="false" superClass="com.renesas.cdt.managedbuild.gcc.core.builder"/>
     39                                                        <builder buildPath="${workspace_loc:/app3_human_detec}/Debug" id="com.renesas.cdt.managedbuild.gcc.core.builder.1092580250" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="GCC for Renesas Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.renesas.cdt.managedbuild.gcc.core.builder"/>
    4040                                                        <tool id="com.renesas.cdt.managedbuild.gcc.rx.tool.libgen.1251407918" name="Library Generator" superClass="com.renesas.cdt.managedbuild.gcc.rx.tool.libgen">
    4141                                                                <option id="com.renesas.cdt.managedbuild.gcc.rx.option.selectlibrary.2042319788" name="Select Library" superClass="com.renesas.cdt.managedbuild.gcc.rx.option.selectlibrary" useByScannerDiscovery="true" value="com.renesas.cdt.managedbuild.gcc.core.option.librarygenerator.settings.selectLibrary.newLib" valueType="enumerated"/>
     
    9191                        <storageModule moduleId="com.renesas.cdt.managedbuild.core.toolchainInfo">
    9292                                <option id="toolchain.id" value="RENESAS_GCC_RX"/>
    93                                 <option id="toolchain.version" value="4.8.4.201703"/>
     93                                <option id="toolchain.version" value="4.8.4.201803"/>
    9494                        </storageModule>
    9595                        <storageModule moduleId="cdtBuildSystem" version="4.0.0">
     
    106106                                                        <option id="com.renesas.cdt.managedbuild.gcc.core.option.debug.warnStackSize.1786209800" name="Warn if stack size exceeds the limit (-Wstack-usage) (H')" superClass="com.renesas.cdt.managedbuild.gcc.core.option.debug.warnStackSize" useByScannerDiscovery="false" value="100" valueType="string"/>
    107107                                                        <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.renesas.cdt.managedbuild.gcc.core.targetPlatform.1889588517" isAbstract="false" osList="all" superClass="com.renesas.cdt.managedbuild.gcc.core.targetPlatform"/>
    108                                                         <builder buildPath="${workspace_loc:/app3_human_detec}/DebugCitrus" id="com.renesas.cdt.managedbuild.gcc.core.builder.343570643" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="GCC for Renesas Builder" parallelBuildOn="false" superClass="com.renesas.cdt.managedbuild.gcc.core.builder"/>
     108                                                        <builder buildPath="${workspace_loc:/app3_human_detec}/DebugCitrus" id="com.renesas.cdt.managedbuild.gcc.core.builder.343570643" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="GCC for Renesas Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.renesas.cdt.managedbuild.gcc.core.builder"/>
    109109                                                        <tool id="com.renesas.cdt.managedbuild.gcc.rx.tool.libgen.40641547" name="Library Generator" superClass="com.renesas.cdt.managedbuild.gcc.rx.tool.libgen">
    110110                                                                <option id="com.renesas.cdt.managedbuild.gcc.rx.option.selectlibrary.339929456" name="Select Library" superClass="com.renesas.cdt.managedbuild.gcc.rx.option.selectlibrary" useByScannerDiscovery="true" value="com.renesas.cdt.managedbuild.gcc.core.option.librarygenerator.settings.selectLibrary.newLib" valueType="enumerated"/>
     
    160160                        <storageModule moduleId="com.renesas.cdt.managedbuild.core.toolchainInfo">
    161161                                <option id="toolchain.id" value="RENESAS_GCC_RX"/>
    162                                 <option id="toolchain.version" value="4.8.4.201703"/>
     162                                <option id="toolchain.version" value="4.8.4.201803"/>
    163163                        </storageModule>
    164164                        <storageModule moduleId="cdtBuildSystem" version="4.0.0">
     
    175175                                                        <option id="com.renesas.cdt.managedbuild.gcc.core.option.debug.warnStackSize.1389820086" name="Warn if stack size exceeds the limit (-Wstack-usage) (H')" superClass="com.renesas.cdt.managedbuild.gcc.core.option.debug.warnStackSize" useByScannerDiscovery="false" value="100" valueType="string"/>
    176176                                                        <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="com.renesas.cdt.managedbuild.gcc.core.targetPlatform.2042065519" isAbstract="false" osList="all" superClass="com.renesas.cdt.managedbuild.gcc.core.targetPlatform"/>
    177                                                         <builder buildPath="${workspace_loc:/app3_human_detec}/DebugEther" id="com.renesas.cdt.managedbuild.gcc.core.builder.153011758" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="GCC for Renesas Builder" parallelBuildOn="false" superClass="com.renesas.cdt.managedbuild.gcc.core.builder"/>
     177                                                        <builder buildPath="${workspace_loc:/app3_human_detec}/DebugEther" id="com.renesas.cdt.managedbuild.gcc.core.builder.153011758" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="GCC for Renesas Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.renesas.cdt.managedbuild.gcc.core.builder"/>
    178178                                                        <tool id="com.renesas.cdt.managedbuild.gcc.rx.tool.libgen.1795526657" name="Library Generator" superClass="com.renesas.cdt.managedbuild.gcc.rx.tool.libgen">
    179179                                                                <option id="com.renesas.cdt.managedbuild.gcc.rx.option.selectlibrary.247280969" name="Select Library" superClass="com.renesas.cdt.managedbuild.gcc.rx.option.selectlibrary" useByScannerDiscovery="true" value="com.renesas.cdt.managedbuild.gcc.core.option.librarygenerator.settings.selectLibrary.newLib" valueType="enumerated"/>
     
    224224        <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
    225225        <storageModule moduleId="refreshScope" versionNumber="2">
     226                <configuration configurationName="DebugEther"/>
     227                <configuration configurationName="DebugCitrus"/>
    226228                <configuration configurationName="Debug">
    227229                        <resource resourceType="PROJECT" workspacePath="/app3_human_detec"/>
  • asp3_tinet_ecnl_rx/trunk/app3_human_detec/Debug/Makefile

    r342 r364  
    167167        CDEFS := -DTOPPERS_OMIT_TECS $(CDEFS)
    168168endif
    169 CDEFS := $(CDEFS) -DDHCP4_CLI_CFG -DUSE_PING -DUSE_RESOLVER -DUSE_NETAPP_SUBR -DECHONET_USE_MALLOC -DRamDisk=binary_______ntshell_src_rom_fs_bin_start
     169CDEFS := $(CDEFS) -DDHCP4_CLI_CFG -DUSE_PING -DUSE_RESOLVER -DUSE_NETAPP_SUBR -DNOUSE_MPF_NET_BUF -DECHONET_USE_MALLOC -DRamDisk=binary_______ntshell_src_rom_fs_bin_start
    170170INCLUDES := -I. -I$(SRCDIR)/include -I$(SRCDIR) \
    171171        -I$(SRCDIR)/../btstack/include \
     
    175175        -I$(SRCDIR)/../usbhost/src \
    176176        $(INCLUDES)
    177 LDFLAGS := $(LDFLAGS) -Wl,-Map=$(OBJNAME).map,--cref -L.
     177LDFLAGS := $(LDFLAGS) -L.
    178178LIBS := $(LIBS) $(CXXLIBS)
    179179CFLAGS = $(COPTS) $(CDEFS) $(INCLUDES)
     
    209209endif
    210210
    211 
    212 #
    213 #  ネットワークサービスの定義
    214 #
    215 NO_USE_TINET_LIBRARY = true
    216 
    217 #  ネットワークインタフェースの選択、何れか一つ選択する。
    218 NET_IF = ether
    219 
    220 #  イーサネット・ディバイスドライバの選択
    221 NET_DEV = if_btusb
    222 
    223 #  ネットワーク層の選択
    224 #SUPPORT_INET6 = true
    225 SUPPORT_INET4 = true
    226 
    227 #  API に組込む機能の選択
    228 #API_CFG_IP4MAPPED_ADDR = true
    229 
    230 #  トランスポート層の選択
    231 SUPPORT_TCP = true
    232 SUPPORT_UDP = true
    233 
    234 # IGMPを有効に設定
    235 SUPPORT_IGMP = true
    236 
    237 #
    238 #  ネットワークサービスの Makefile のインクルード
    239 #
    240 include $(SRCDIR)/$(TINETDIR)/Makefile.tinet
     211ifdef TINETDIR
     212        #
     213        #  ネットワークサービスの定義
     214        #
     215        NO_USE_TINET_LIBRARY = true
     216
     217        #  ネットワークインタフェースの選択、何れか一つ選択する。
     218        NET_IF = ether
     219
     220        #  イーサネット・ディバイスドライバの選択
     221        NET_DEV = if_btusb
     222
     223        #  ネットワーク層の選択
     224        #SUPPORT_INET6 = true
     225        SUPPORT_INET4 = true
     226
     227        #  API に組込む機能の選択
     228        #API_CFG_IP4MAPPED_ADDR = true
     229
     230        #  トランスポート層の選択
     231        SUPPORT_TCP = true
     232        SUPPORT_UDP = true
     233
     234        # IGMPを有効に設定
     235        SUPPORT_IGMP = true
     236
     237        #
     238        #  ネットワークサービスの Makefile のインクルード
     239        #
     240        include $(SRCDIR)/$(TINETDIR)/Makefile.tinet
     241endif
    241242
    242243#
     
    258259all: tecs | $(DEPDIR)
    259260#       @$(MAKE) check
    260         @$(MAKE) check $(OBJNAME).bin
     261#       @$(MAKE) check $(OBJNAME).bin
    261262#       @$(MAKE) check $(OBJNAME).srec
     263        @$(MAKE) check $(OBJNAME).mot
    262264else
    263265#all: check
    264 all: check $(OBJNAME).bin
     266#all: check $(OBJNAME).bin
    265267#all: check $(OBJNAME).srec
     268all: check $(OBJNAME).mot
    266269endif
    267270
     
    271274#  コンフィギュレータに関する定義
    272275#
    273 CFG_TRB := -T $(TINET_ROOT)/tinet.trb:tcpip -T ../../ntshell/echonet/echonet.trb:echonet -T $(TARGETDIR)/target_kernel.trb:kernel
    274 CFG_TABS := --api-table $(TINET_ROOT)/tcpip_api.def:tcpip \
     276ifndef TINETDIR
     277  CFG_TRB := -T $(TARGETDIR)/target_kernel.trb
     278  CFG_TABS := --api-table $(SRCDIR)/kernel/kernel_api.def \
     279                        --symval-table $(SRCDIR)/kernel/kernel_sym.def $(CFG_TABS)
     280else
     281  CFG_TRB := -T $(TINET_ROOT)/tinet.trb:tcpip -T ../../ntshell/echonet/echonet.trb:echonet -T $(TARGETDIR)/target_kernel.trb:kernel
     282  CFG_TABS := --api-table $(TINET_ROOT)/tcpip_api.def:tcpip \
    275283                        --api-table ../../ntshell/echonet/echonet_api.def:echonet \
    276284                        --api-table $(SRCDIR)/kernel/kernel_api.def:kernel \
     
    278286                        --symval-table ../../ntshell/echonet/echonet_sym.def \
    279287                        --symval-table $(SRCDIR)/kernel/kernel_sym.def $(CFG_TABS)
     288endif
    280289CFG_ASMOBJS := $(CFG_ASMOBJS)
    281290CFG_COBJS := kernel_cfg.o echonet_cfg.o $(CFG_COBJS)
     
    423432
    424433#
     434#  並列makeのための依存関係の定義
     435#
     436$(APPL_OBJS) $(SYSSVC_OBJS): | kernel_cfg.timestamp
     437$(APPL_ASMOBJS) $(SYSSVC_ASMOBJS) $(KERNEL_ASMOBJS) $(CFG_ASMOBJS): \
     438                                                                                                                | offset.timestamp
     439
     440#
    425441#  特別な依存関係の定義
    426442#
     
    431447#
    432448$(OBJFILE): $(ALL_OBJS) $(LIBS_DEP)
    433         $(LINK) $(CFLAGS) $(LDFLAGS) $(OBJ_LDFLAGS) -o $(OBJFILE) \
     449        $(LINK) $(CFLAGS) $(LDFLAGS) $(OBJ_LDFLAGS) -o $(OBJFILE) -Wl,-Map=$(OBJNAME).map,--cref \
    434450                        $(START_OBJS) $(APPL_OBJS) $(SYSSVC_OBJS) $(CFG_OBJS) \
    435451                        -Wl,--start-group $(ALL_LIBS) -Wl,--end-group $(END_OBJS)
     
    460476$(OBJNAME).srec: $(OBJFILE)
    461477        $(OBJCOPY) -O srec -S $(OBJFILE) $(OBJNAME).srec
     478
     479$(OBJNAME).mot: $(OBJFILE)
     480        $(OBJCOPY) -O srec -S $(OBJFILE) $(OBJNAME).mot
    462481
    463482#
  • asp3_tinet_ecnl_rx/trunk/app3_human_detec/DebugCitrus/Makefile

    r342 r364  
    167167        CDEFS := -DTOPPERS_OMIT_TECS $(CDEFS)
    168168endif
    169 CDEFS := $(CDEFS) -DDHCP4_CLI_CFG -DUSE_PING -DUSE_RESOLVER -DUSE_NETAPP_SUBR -DECHONET_USE_MALLOC -DRamDisk=binary_______ntshell_src_rom_fs_bin_start
     169CDEFS := $(CDEFS) -DDHCP4_CLI_CFG -DUSE_PING -DUSE_RESOLVER -DUSE_NETAPP_SUBR -DNOUSE_MPF_NET_BUF -DECHONET_USE_MALLOC -DRamDisk=binary_______ntshell_src_rom_fs_bin_start
    170170INCLUDES := -I. -I$(SRCDIR)/include -I$(SRCDIR) \
    171171        -I$(SRCDIR)/../btstack/include \
     
    175175        -I$(SRCDIR)/../usbhost/src \
    176176        $(INCLUDES)
    177 LDFLAGS := $(LDFLAGS) -Wl,-Map=$(OBJNAME).map,--cref -L.
     177LDFLAGS := $(LDFLAGS) -L.
    178178LIBS := $(LIBS) $(CXXLIBS)
    179179CFLAGS = $(COPTS) $(CDEFS) $(INCLUDES)
     
    209209endif
    210210
    211 
    212 #
    213 #  ネットワークサービスの定義
    214 #
    215 NO_USE_TINET_LIBRARY = true
    216 
    217 #  ネットワークインタフェースの選択、何れか一つ選択する。
    218 NET_IF = ether
    219 
    220 #  イーサネット・ディバイスドライバの選択
    221 NET_DEV = if_btusb
    222 
    223 #  ネットワーク層の選択
    224 #SUPPORT_INET6 = true
    225 SUPPORT_INET4 = true
    226 
    227 #  API に組込む機能の選択
    228 #API_CFG_IP4MAPPED_ADDR = true
    229 
    230 #  トランスポート層の選択
    231 SUPPORT_TCP = true
    232 SUPPORT_UDP = true
    233 
    234 # IGMPを有効に設定
    235 SUPPORT_IGMP = true
    236 
    237 #
    238 #  ネットワークサービスの Makefile のインクルード
    239 #
    240 include $(SRCDIR)/$(TINETDIR)/Makefile.tinet
     211ifdef TINETDIR
     212        #
     213        #  ネットワークサービスの定義
     214        #
     215        NO_USE_TINET_LIBRARY = true
     216
     217        #  ネットワークインタフェースの選択、何れか一つ選択する。
     218        NET_IF = ether
     219
     220        #  イーサネット・ディバイスドライバの選択
     221        NET_DEV = if_btusb
     222
     223        #  ネットワーク層の選択
     224        #SUPPORT_INET6 = true
     225        SUPPORT_INET4 = true
     226
     227        #  API に組込む機能の選択
     228        #API_CFG_IP4MAPPED_ADDR = true
     229
     230        #  トランスポート層の選択
     231        SUPPORT_TCP = true
     232        SUPPORT_UDP = true
     233
     234        # IGMPを有効に設定
     235        SUPPORT_IGMP = true
     236
     237        #
     238        #  ネットワークサービスの Makefile のインクルード
     239        #
     240        include $(SRCDIR)/$(TINETDIR)/Makefile.tinet
     241endif
    241242
    242243#
     
    258259all: tecs | $(DEPDIR)
    259260#       @$(MAKE) check
    260         @$(MAKE) check $(OBJNAME).bin
     261#       @$(MAKE) check $(OBJNAME).bin
    261262#       @$(MAKE) check $(OBJNAME).srec
     263        @$(MAKE) check $(OBJNAME).mot
    262264else
    263265#all: check
    264 all: check $(OBJNAME).bin
     266#all: check $(OBJNAME).bin
    265267#all: check $(OBJNAME).srec
     268all: check $(OBJNAME).mot
    266269endif
    267270
     
    271274#  コンフィギュレータに関する定義
    272275#
    273 CFG_TRB := -T $(TINET_ROOT)/tinet.trb:tcpip -T ../../ntshell/echonet/echonet.trb:echonet -T $(TARGETDIR)/target_kernel.trb:kernel
    274 CFG_TABS := --api-table $(TINET_ROOT)/tcpip_api.def:tcpip \
     276ifndef TINETDIR
     277  CFG_TRB := -T $(TARGETDIR)/target_kernel.trb
     278  CFG_TABS := --api-table $(SRCDIR)/kernel/kernel_api.def \
     279                        --symval-table $(SRCDIR)/kernel/kernel_sym.def $(CFG_TABS)
     280else
     281  CFG_TRB := -T $(TINET_ROOT)/tinet.trb:tcpip -T ../../ntshell/echonet/echonet.trb:echonet -T $(TARGETDIR)/target_kernel.trb:kernel
     282  CFG_TABS := --api-table $(TINET_ROOT)/tcpip_api.def:tcpip \
    275283                        --api-table ../../ntshell/echonet/echonet_api.def:echonet \
    276284                        --api-table $(SRCDIR)/kernel/kernel_api.def:kernel \
     
    278286                        --symval-table ../../ntshell/echonet/echonet_sym.def \
    279287                        --symval-table $(SRCDIR)/kernel/kernel_sym.def $(CFG_TABS)
     288endif
    280289CFG_ASMOBJS := $(CFG_ASMOBJS)
    281290CFG_COBJS := kernel_cfg.o echonet_cfg.o $(CFG_COBJS)
     
    423432
    424433#
     434#  並列makeのための依存関係の定義
     435#
     436$(APPL_OBJS) $(SYSSVC_OBJS): | kernel_cfg.timestamp
     437$(APPL_ASMOBJS) $(SYSSVC_ASMOBJS) $(KERNEL_ASMOBJS) $(CFG_ASMOBJS): \
     438                                                                                                                | offset.timestamp
     439
     440#
    425441#  特別な依存関係の定義
    426442#
     
    431447#
    432448$(OBJFILE): $(ALL_OBJS) $(LIBS_DEP)
    433         $(LINK) $(CFLAGS) $(LDFLAGS) $(OBJ_LDFLAGS) -o $(OBJFILE) \
     449        $(LINK) $(CFLAGS) $(LDFLAGS) $(OBJ_LDFLAGS) -o $(OBJFILE) -Wl,-Map=$(OBJNAME).map,--cref \
    434450                        $(START_OBJS) $(APPL_OBJS) $(SYSSVC_OBJS) $(CFG_OBJS) \
    435451                        -Wl,--start-group $(ALL_LIBS) -Wl,--end-group $(END_OBJS)
     
    460476$(OBJNAME).srec: $(OBJFILE)
    461477        $(OBJCOPY) -O srec -S $(OBJFILE) $(OBJNAME).srec
     478
     479$(OBJNAME).mot: $(OBJFILE)
     480        $(OBJCOPY) -O srec -S $(OBJFILE) $(OBJNAME).mot
    462481
    463482#
  • asp3_tinet_ecnl_rx/trunk/app3_human_detec/DebugEther/Makefile

    r342 r364  
    165165        CDEFS := -DTOPPERS_OMIT_TECS $(CDEFS)
    166166endif
    167 CDEFS := $(CDEFS) -DDHCP4_CLI_CFG -DUSE_PING -DUSE_RESOLVER -DUSE_NETAPP_SUBR -DECHONET_USE_MALLOC -DRamDisk=binary_______ntshell_src_rom_fs_bin_start
     167CDEFS := $(CDEFS) -DDHCP4_CLI_CFG -DUSE_PING -DUSE_RESOLVER -DUSE_NETAPP_SUBR -DNOUSE_MPF_NET_BUF -DECHONET_USE_MALLOC -DRamDisk=binary_______ntshell_src_rom_fs_bin_start
    168168INCLUDES := -I. -I$(SRCDIR)/include -I$(SRCDIR) \
    169169        -I$(SRCDIR)/../btstack/include \
     
    173173        -I$(SRCDIR)/../usbhost/src \
    174174        $(INCLUDES)
    175 LDFLAGS := $(LDFLAGS) -Wl,-Map=$(OBJNAME).map,--cref -L.
     175LDFLAGS := $(LDFLAGS) -L.
    176176LIBS := $(LIBS) $(CXXLIBS)
    177177CFLAGS = $(COPTS) $(CDEFS) $(INCLUDES)
     
    207207endif
    208208
    209 
    210 #
    211 #  ネットワークサービスの定義
    212 #
    213 NO_USE_TINET_LIBRARY = true
    214 
    215 #  ネットワークインタフェースの選択、何れか一つ選択する。
    216 NET_IF = ether
    217 
    218 #  イーサネット・ディバイスドライバの選択
     209ifdef TINETDIR
     210        #
     211        #  ネットワークサービスの定義
     212        #
     213        NO_USE_TINET_LIBRARY = true
     214
     215        #  ネットワークインタフェースの選択、何れか一つ選択する。
     216        NET_IF = ether
     217
     218        #  イーサネット・ディバイスドライバの選択
    219219        NET_DEV = if_rx62n
    220220
    221 #  ネットワーク層の選択
    222 #SUPPORT_INET6 = true
    223 SUPPORT_INET4 = true
    224 
    225 #  API に組込む機能の選択
    226 #API_CFG_IP4MAPPED_ADDR = true
    227 
    228 #  トランスポート層の選択
    229 SUPPORT_TCP = true
    230 SUPPORT_UDP = true
    231 
    232 # IGMPを有効に設定
    233 SUPPORT_IGMP = true
    234 
    235 #
    236 #  ネットワークサービスの Makefile のインクルード
    237 #
    238 include $(SRCDIR)/$(TINETDIR)/Makefile.tinet
     221        #  ネットワーク層の選択
     222        #SUPPORT_INET6 = true
     223        SUPPORT_INET4 = true
     224
     225        #  API に組込む機能の選択
     226        #API_CFG_IP4MAPPED_ADDR = true
     227
     228        #  トランスポート層の選択
     229        SUPPORT_TCP = true
     230        SUPPORT_UDP = true
     231
     232        # IGMPを有効に設定
     233        SUPPORT_IGMP = true
     234
     235        #
     236        #  ネットワークサービスの Makefile のインクルード
     237        #
     238        include $(SRCDIR)/$(TINETDIR)/Makefile.tinet
     239endif
    239240
    240241#
     
    256257all: tecs | $(DEPDIR)
    257258#       @$(MAKE) check
    258         @$(MAKE) check $(OBJNAME).bin
     259#       @$(MAKE) check $(OBJNAME).bin
    259260#       @$(MAKE) check $(OBJNAME).srec
     261        @$(MAKE) check $(OBJNAME).mot
    260262else
    261263#all: check
    262 all: check $(OBJNAME).bin
     264#all: check $(OBJNAME).bin
    263265#all: check $(OBJNAME).srec
     266all: check $(OBJNAME).mot
    264267endif
    265268
     
    269272#  コンフィギュレータに関する定義
    270273#
    271 CFG_TRB := -T $(TINET_ROOT)/tinet.trb:tcpip -T ../../ntshell/echonet/echonet.trb:echonet -T $(TARGETDIR)/target_kernel.trb:kernel
    272 CFG_TABS := --api-table $(TINET_ROOT)/tcpip_api.def:tcpip \
     274ifndef TINETDIR
     275  CFG_TRB := -T $(TARGETDIR)/target_kernel.trb
     276  CFG_TABS := --api-table $(SRCDIR)/kernel/kernel_api.def \
     277                        --symval-table $(SRCDIR)/kernel/kernel_sym.def $(CFG_TABS)
     278else
     279  CFG_TRB := -T $(TINET_ROOT)/tinet.trb:tcpip -T ../../ntshell/echonet/echonet.trb:echonet -T $(TARGETDIR)/target_kernel.trb:kernel
     280  CFG_TABS := --api-table $(TINET_ROOT)/tcpip_api.def:tcpip \
    273281                        --api-table ../../ntshell/echonet/echonet_api.def:echonet \
    274282                        --api-table $(SRCDIR)/kernel/kernel_api.def:kernel \
     
    276284                        --symval-table ../../ntshell/echonet/echonet_sym.def \
    277285                        --symval-table $(SRCDIR)/kernel/kernel_sym.def $(CFG_TABS)
     286endif
    278287CFG_ASMOBJS := $(CFG_ASMOBJS)
    279288CFG_COBJS := kernel_cfg.o echonet_cfg.o $(CFG_COBJS)
     
    421430
    422431#
     432#  並列makeのための依存関係の定義
     433#
     434$(APPL_OBJS) $(SYSSVC_OBJS): | kernel_cfg.timestamp
     435$(APPL_ASMOBJS) $(SYSSVC_ASMOBJS) $(KERNEL_ASMOBJS) $(CFG_ASMOBJS): \
     436                                                                                                                | offset.timestamp
     437
     438#
    423439#  特別な依存関係の定義
    424440#
     
    429445#
    430446$(OBJFILE): $(ALL_OBJS) $(LIBS_DEP)
    431         $(LINK) $(CFLAGS) $(LDFLAGS) $(OBJ_LDFLAGS) -o $(OBJFILE) \
     447        $(LINK) $(CFLAGS) $(LDFLAGS) $(OBJ_LDFLAGS) -o $(OBJFILE) -Wl,-Map=$(OBJNAME).map,--cref \
    432448                        $(START_OBJS) $(APPL_OBJS) $(SYSSVC_OBJS) $(CFG_OBJS) \
    433449                        -Wl,--start-group $(ALL_LIBS) -Wl,--end-group $(END_OBJS)
     
    458474$(OBJNAME).srec: $(OBJFILE)
    459475        $(OBJCOPY) -O srec -S $(OBJFILE) $(OBJNAME).srec
     476
     477$(OBJNAME).mot: $(OBJFILE)
     478        $(OBJCOPY) -O srec -S $(OBJFILE) $(OBJNAME).mot
    460479
    461480#
  • asp3_tinet_ecnl_rx/trunk/app3_human_detec/src/echonet_main.c

    r351 r364  
    11/*
    22 *  TOPPERS ECHONET Lite Communication Middleware
    3  * 
     3 *
    44 *  Copyright (C) 2014-2018 Cores Co., Ltd. Japan
    5  * 
     5 *
    66 *  上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ
    77 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     
    2626 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
    2727 *      免責すること.
    28  * 
     28 *
    2929 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
    3030 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     
    3232 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
    3333 *  の責任を負わない.
    34  * 
     34 *
    3535 *  @(#) $Id$
    3636 */
    3737
    38 /* 
     38/*
    3939 *  サンプルプログラム(1)の本体
    4040 */
     
    8585{
    8686        /* サイズが1以外は受け付けない */
    87         if(size != 1)
     87        if (size != 1)
    8888                return 0;
    8989
    9090        *anno = *((uint8_t *)item->exinf) != *((uint8_t *)src);
    9191
    92         switch(*(uint8_t *)src){
     92        switch (*(uint8_t *)src) {
    9393        /* ONの場合 */
    9494        case 0x30:
     
    117117{
    118118        /* サイズが1以外は受け付けない */
    119         if(size != 1)
     119        if (size != 1)
    120120                return 0;
    121121
    122122        *anno = *((uint8_t *)item->exinf) != *((uint8_t *)src);
    123123
    124         switch(*(uint8_t *)src){
     124        switch (*(uint8_t *)src) {
    125125        /* 異常発生ありの場合 */
    126126        case 0x41:
     
    143143{
    144144        /* サイズが1以外は受け付けない */
    145         if(size != 1)
    146                 return 0;
    147 
    148         if((*(uint8_t *)src >= 0x31) && (*(uint8_t *)src <= 0x38)){
     145        if (size != 1)
     146                return 0;
     147
     148        if ((*(uint8_t *)src >= 0x31) && (*(uint8_t *)src <= 0x38)) {
    149149                *((uint8_t *)item->exinf) = *((uint8_t *)src);
    150150        }
    151151        /* 上記以外は受け付けない */
    152         else{
     152        else {
    153153                return 0;
    154154        }
     
    171171
    172172        /* サイズが1以外は受け付けない */
    173         if(size != 1)
     173        if (size != 1)
    174174                return 0;
    175175
    176176        *anno = false;
    177177
    178         if((*(uint8_t *)src >= 0x31) && (*(uint8_t *)src <= 0x38)){
     178        if ((*(uint8_t *)src >= 0x31) && (*(uint8_t *)src <= 0x38)) {
    179179                /* 以前の検知レベルを保存 */
    180180                prev_state = eobj->state;
     
    185185
    186186                /* 人体検知状態に変化があった場合 */
    187                 if((prev_state < eobj->threshold) != (eobj->state < eobj->threshold))
    188                 {
     187                if ((prev_state < eobj->threshold) != (eobj->state < eobj->threshold)) {
    189188                        /* プロパティ通知 */
    190189                        *anno = true;
     
    192191        }
    193192        /* 上記以外は受け付けない */
    194         else{
     193        else {
    195194                return 0;
    196195        }
     
    199198}
    200199
    201 /* 
     200/*
    202201 * 人体検知状態取得関数
    203202 */
     
    207206
    208207        /* 閾値より検知レベルが低い場合 */
    209         if(eobj->state < eobj->threshold){
     208        if (eobj->state < eobj->threshold) {
    210209                /* 人体検知なし */
    211210                ((uint8_t *)dst)[0] = 0x42;
    212211        }
    213212        /* 閾値より検知レベルが高い場合 */
    214         else{
     213        else {
    215214                /* 人体検知あり */
    216215                ((uint8_t *)dst)[0] = 0x41;
     
    243242
    244243        ret2 = get_tim(&now);
    245         if (ret2 != E_OK){
     244        if (ret2 != E_OK) {
    246245                syslog(LOG_ERROR, "get_tim");
    247246                return;
    248247        }
    249248
    250         for(;;){
     249        for (;;) {
    251250                prev = now;
    252251
     
    256255                /* 応答電文待ち */
    257256                ret = ecn_trcv_esv(&esv, timer);
    258                 if ((ret != E_OK) && (ret != E_BRK) && (ret != E_TMOUT)){
     257                if ((ret != E_OK) && (ret != E_BRK) && (ret != E_TMOUT)) {
    259258                        syslog(LOG_ERROR, "ecn_trcv_esv");
    260259                        break;
     
    262261
    263262                ret2 = get_tim(&now);
    264                 if (ret2 != E_OK){
     263                if (ret2 != E_OK) {
    265264                        syslog(LOG_ERROR, "get_tim");
    266265                        break;
     
    277276                        /* 領域解放 */
    278277                        ret = ecn_rel_esv(esv);
    279                         if (ret != E_OK){
     278                        if (ret != E_OK) {
    280279                                syslog(LOG_ERROR, "ecn_rel_esv");
    281280                                break;
     
    286285                        /* 応答電文待ちの割り込みデータ取得 */
    287286                        ret = ecn_get_brk_dat(esv, brkdat, sizeof(brkdat), &len);
    288                         if (ret != E_OK){
     287                        if (ret != E_OK) {
    289288                                syslog(LOG_ERROR, "ecn_get_brk_dat");
    290289                                break;
     
    296295                        /* 領域解放 */
    297296                        ret = ecn_rel_esv(esv);
    298                         if (ret != E_OK){
     297                        if (ret != E_OK) {
    299298                                syslog(LOG_ERROR, "ecn_rel_esv");
    300299                                break;
     
    307306}
    308307
    309 bool_t started = false;
    310 
    311308void echonet_change_netif_link(uint8_t link_up, uint8_t up)
    312309{
     
    316313                return;
    317314
    318         if (up && !started) {
    319                 started = true;
    320 
    321                 /* ECHONETミドルウェアを起動 */
    322                 ret = ecn_sta_svc();
    323                 if (ret != E_OK)
    324                         return;
    325 
    326                 /* ECHONETミドルウェアを起動するのを待つ */
    327                 dly_tsk(100);
     315        if (up) {
     316                /* インスタンスリスト通知の送信 */
     317                ret = ecn_ntf_inl();
     318                if (ret != E_OK) {
     319                        syslog(LOG_ERROR, "ecn_ntf_inl");
     320                }
    328321        }
    329322
     
    339332}
    340333
    341 enum main_state_t{
     334enum main_state_t {
     335        main_state_start,
    342336        main_state_idle,
    343337};
    344338
    345339int main_timer = TMO_FEVR;
    346 enum main_state_t main_state = main_state_idle;
     340enum main_state_t main_state = main_state_start;
    347341bool_t main_btn1_state;
    348342int main_btn1_count = 0;
     
    368362        sil_wrb_mem((uint8_t *)0x0008C02A, 0x00);
    369363
    370         /* 10ms後にボタン状態を確認 */
    371         main_timer = 10 * 1000;
     364        /* ECHONETミドルウェアを起動するのを待つ */
     365        main_state = main_state_start;
     366        main_timer = 1000 * 1000;
    372367
    373368        /* 12bitADC初期化 */
     
    382377        main_btn2_state = (btn2 & 0x80) != 0;
    383378
     379        /* メインタスクを起動 */
    384380        ER ret = act_tsk(MAIN_TASK);
    385381        if (ret != E_OK) {
     
    401397static void main_progress(int interval)
    402398{
    403         if(main_timer == TMO_FEVR)
     399        if (main_timer == TMO_FEVR)
    404400                return;
    405401
    406402        main_timer -= interval;
    407         if(main_timer < 0){
     403        if (main_timer < 0) {
    408404                main_timer = 0;
    409405        }
     
    422418
    423419        ret = ecn_itr_ini(&enm, esv);
    424         if(ret != E_OK){
     420        if (ret != E_OK) {
    425421                syslog(LOG_ERROR, "ecn_itr_ini");
    426422                return;
    427423        }
    428424
    429         for(;;) {
    430                 while((ret = ecn_itr_nxt(&enm, &epc, &pdc, p_edt)) == E_OK) {
     425        for (;;) {
     426                while ((ret = ecn_itr_nxt(&enm, &epc, &pdc, p_edt)) == E_OK) {
    431427                        switch (epc) {
    432428                        case 0x80:
     
    436432                        }
    437433                }
    438                 if(ret != E_BOVR){
     434                if (ret != E_BOVR) {
    439435                        syslog(LOG_ERROR, "ecn_itr_nxt");
    440436                        break;
    441437                }
    442                 if(enm.is_eof)
     438                if (enm.is_eof)
    443439                        break;
    444440        }
     
    450446static void main_break_wait(uint8_t *brkdat, int32_t len)
    451447{
    452         switch(main_state){
     448        switch (main_state) {
    453449        case main_state_idle:
    454450                break;
     
    472468static void main_timeout()
    473469{
     470        ER ret;
    474471        uint8_t btn1, btn2;
    475472        uint16_t ad_value;
    476473        uint8_t ad_level;
    477474
    478         if(main_timer != 0)
    479                 return;
    480 
    481         switch(main_state){
     475        if (main_timer != 0)
     476                return;
     477
     478        switch (main_state) {
     479        case main_state_start:
     480                /* ECHONETミドルウェアを起動 */
     481                ret = ecn_sta_svc();
     482                if (ret != E_OK) {
     483                        syslog(LOG_ERROR, "ecn_sta_svc");
     484                }
     485
     486                /* 10ms後にボタン状態を確認 */
     487                main_state = main_state_idle;
     488                main_timer = 10 * 1000;
     489                break;
    482490        case main_state_idle:
    483491                /* 10ms後にボタン状態を確認 */
     
    485493
    486494                /* ADCの変換結果取得 */
    487                 if((sil_reb_mem((uint8_t *)S12AD_ADCSR_ADDR) & S12AD_ADCSR_ADST_BIT) == 0){
     495                if ((sil_reb_mem((uint8_t *)S12AD_ADCSR_ADDR) & S12AD_ADCSR_ADST_BIT) == 0) {
    488496                        main_ad_avelage -= main_ad_table[main_ad_pos];
    489497                        ad_value = sil_reh_mem((uint16_t *)S12AD_ADDR0_ADDR);
     
    492500
    493501                        main_ad_pos++;
    494                         if(main_ad_pos >= main_ad_table_count){
     502                        if (main_ad_pos >= main_ad_table_count) {
    495503                                main_ad_pos = 0;
    496504                        }
    497505
    498506                        ad_level = (((main_ad_avelage / main_ad_table_count) >> 9) & 0x7) + 1;
    499                         if(main_ad_level != ad_level){
     507                        if (main_ad_level != ad_level) {
    500508                                /* 1秒変化が続いたら */
    501                                 if(main_count < 100){
     509                                if (main_count < 100) {
    502510                                        main_count++;
    503511                                }
    504                                 else{
     512                                else {
    505513                                        main_ad_level = ad_level;
    506514
     
    509517                                }
    510518                        }
    511                         else{
     519                        else {
    512520                                main_count = 0;
    513521                        }
     
    518526
    519527                /* ボタン状態読み込み */
    520                 btn1 = sil_reb_mem((uint8_t *) 0x0008C04A);
    521                 btn2 = sil_reb_mem((uint8_t *) 0x0008C040);
     528                btn1 = sil_reb_mem((uint8_t *)0x0008C04A);
     529                btn2 = sil_reb_mem((uint8_t *)0x0008C040);
    522530
    523531                /* ボタン1の処理 */
    524                 if(((btn1 & 0x80) != 0) && !main_btn1_state){
     532                if (((btn1 & 0x80) != 0) && !main_btn1_state) {
    525533                        main_btn1_count++;
    526                         if(main_btn1_count > 10){
     534                        if (main_btn1_count > 10) {
    527535                                main_btn1_count = 0;
    528536                                main_btn1_state = true;
     
    531539                        }
    532540                }
    533                 else if(((btn1 & 0x80) == 0) && main_btn1_state){
     541                else if (((btn1 & 0x80) == 0) && main_btn1_state) {
    534542                        main_btn1_count++;
    535                         if(main_btn1_count > 10){
     543                        if (main_btn1_count > 10) {
    536544                                main_btn1_count = 0;
    537545                                main_btn1_state = false;
     
    542550
    543551                /* ボタン2の処理 */
    544                 if(((btn2 & 0x80) != 0) && !main_btn2_state){
     552                if (((btn2 & 0x80) != 0) && !main_btn2_state) {
    545553                        main_btn2_count++;
    546                         if(main_btn2_count > 10){
     554                        if (main_btn2_count > 10) {
    547555                                main_btn2_count = 0;
    548556                                main_btn2_state = true;
     
    551559                        }
    552560                }
    553                 else if(((btn2 & 0x80) == 0) && main_btn2_state){
     561                else if (((btn2 & 0x80) == 0) && main_btn2_state) {
    554562                        main_btn2_count++;
    555                         if(main_btn2_count > 10){
     563                        if (main_btn2_count > 10) {
    556564                                main_btn2_count = 0;
    557565                                main_btn2_state = false;
     
    577585        /* プロパティ設定電文作成 */
    578586        ret = ecn_esv_setc(&esv, HUMAN_DETECTION_SENSOR_EOBJ, 0xB1, 1, p_edt);
    579         if(ret != E_OK){
     587        if (ret != E_OK) {
    580588                syslog(LOG_ERROR, "ecn_esv_setc");
    581589                return;
     
    599607
    600608        /* 押されて戻った時に処理する */
    601         if(push)
     609        if (push)
    602610                return;
    603611
    604612        /* 人体検知状態 */
    605         if(!main_rev){
     613        if (!main_rev) {
    606614                main_level--;
    607                 if(main_level < 1){
     615                if (main_level < 1) {
    608616                        main_level = 1;
    609617                        main_rev = true;
    610618                }
    611619        }
    612         else{
     620        else {
    613621                main_level++;
    614                 if(main_level > 8){
     622                if (main_level > 8) {
    615623                        main_level = 8;
    616624                        main_rev = false;
     
    622630        /* プロパティ設定電文作成 */
    623631        ret = ecn_esv_setc(&esv, HUMAN_DETECTION_SENSOR_EOBJ, 0xB1, 1, p_edt);
    624         if(ret != E_OK){
     632        if (ret != E_OK) {
    625633                syslog(LOG_ERROR, "ecn_esv_setc");
    626634                return;
     
    641649
    642650        /* 押されて戻った時に処理する */
    643         if(push)
     651        if (push)
    644652                return;
    645653
    646654        /* 人体検知状態 */
    647         if(!main_rev){
     655        if (!main_rev) {
    648656                main_level++;
    649                 if(main_level > 8){
     657                if (main_level > 8) {
    650658                        main_level = 8;
    651659                        main_rev = false;
    652660                }
    653661        }
    654         else{
     662        else {
    655663                main_level--;
    656                 if(main_level < 1){
     664                if (main_level < 1) {
    657665                        main_level = 1;
    658666                        main_rev = true;
     
    664672        /* プロパティ設定電文作成 */
    665673        ret = ecn_esv_setc(&esv, HUMAN_DETECTION_SENSOR_EOBJ, 0xB1, 1, p_edt);
    666         if(ret != E_OK){
     674        if (ret != E_OK) {
    667675                syslog(LOG_ERROR, "ecn_esv_setc");
    668676                return;
  • asp3_tinet_ecnl_rx/trunk/app3_human_detec/src/main.c

    r359 r364  
    7979
    8080ID ws_api_mailboxid = MAIN_DATAQUEUE;
     81#ifndef NOUSE_MPF_NET_BUF
    8182ID ws_mempoolid = MPF_NET_BUF_256;
     83#endif
    8284
    8385#ifdef IF_ETHER_BTUSB
     
    111113static void main_timeout();
    112114
     115extern int ntshell_exit;
     116
    113117int uart_read(char *buf, int cnt, void *extobj)
    114118{
    115         return serial_rea_dat(SIO_PORTID, (char *)buf, cnt);
     119        struct main_t *obj = (struct main_t *)extobj;
     120        int result;
     121        ER ret;
     122        int timer;
     123
     124        obj->prev = obj->now;
     125
     126        /* タイマー取得 */
     127        timer = main_get_timer();
     128
     129        /* 待ち */
     130        ret = serial_trea_dat(SIO_PORTID, buf, cnt, timer);
     131        if ((ret < 0) && (ret != E_OK) && (ret != E_TMOUT)) {
     132                syslog(LOG_NOTICE, "tslp_tsk ret: %s %d", itron_strerror(ret), timer);
     133                ntshell_exit = 1;
     134                return -1;
     135        }
     136        result = (int)ret;
     137
     138        ret = get_tim(&obj->now);
     139        if (ret != E_OK) {
     140                syslog(LOG_NOTICE, "get_tim ret: %s", itron_strerror(ret));
     141                ntshell_exit = 1;
     142                return -1;
     143        }
     144
     145                        /* 時間経過 */
     146        int elapse = obj->now - obj->prev;
     147        main_progress(elapse);
     148
     149        /* タイムアウト処理 */
     150        main_timeout();
     151
     152        return result;
    116153}
    117154
     
    119156{
    120157        return serial_wri_dat(SIO_PORTID, buf, cnt);
    121 }
    122 
    123 unsigned char ntstdio_xi(struct ntstdio_t *handle)
    124 {
    125         char buf[1];
    126         if(serial_rea_dat(SIO_PORTID, buf, 1) != 1)
    127                 return -EIO;
    128         return buf[0];
    129 }
    130 
    131 void ntstdio_xo(struct ntstdio_t *handle, unsigned char c)
    132 {
    133         char buf[1];
    134         buf[0] = c;
    135         serial_wri_dat(SIO_PORTID, buf, 1);
    136158}
    137159
     
    150172        main_initialize();
    151173
    152         ntshell_init(&ntshell, uart_read, uart_write, cmd_execute, NULL);
     174        ntshell_init(&ntshell, uart_read, uart_write, cmd_execute, &main_obj);
    153175        ntshell_set_prompt(&ntshell, "NTShell>");
    154176        ntshell_execute(&ntshell);
     
    168190        ER ret;
    169191
    170         ntshell_task_init();
     192#ifdef TOPPERS_OMIT_TECS
     193        serial_opn_por(SIO_PORTID);
     194#endif
     195        serial_ctl_por(SIO_PORTID, IOCTL_FCSND | IOCTL_FCRCV);
     196
     197        ntshell_task_init(uart_read, uart_write, &main_obj);
    171198
    172199        main_obj.timer = TMO_FEVR;
  • asp3_tinet_ecnl_rx/trunk/app3_human_detec/src/main.cfg

    r342 r364  
    5454INCLUDE("tinet/tinet_asp.cfg");
    5555INCLUDE("tinet_main.cfg");
    56 INCLUDE("netinet/ip_igmp.cfg");
    5756
    5857/* DHCP クライアント */
     
    7776INCLUDE("ffarch.cfg");
    7877
     78/* mbed */
     79INCLUDE("mbed_api.cfg");
     80
    7981#ifdef IF_ETHER_BTUSB
    8082INCLUDE("usb_hbth.cfg");
Note: See TracChangeset for help on using the changeset viewer.