Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
mongoose
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
esp
mongoose
Commits
376d2666
Commit
376d2666
authored
Sep 30, 2016
by
Alexander Alashkin
Committed by
Cesanta Bot
Sep 30, 2016
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add PIC32MX/CC3100 mqtt_client example
PUBLISHED_FROM=cda885a9dc5d1203b7b59b13ea7fd7934b31260a
parent
d9062263
Changes
49
Show whitespace changes
Inline
Side-by-side
Showing
49 changed files
with
9980 additions
and
1 deletion
+9980
-1
Makefile
examples/Makefile
+1
-1
Makefile
examples/PIC32/mqtt_client/firmware/mqtt_client.X/Makefile
+113
-0
Makefile-genesis.properties
...mware/mqtt_client.X/nbproject/Makefile-genesis.properties
+9
-0
Makefile-impl.mk
..._client/firmware/mqtt_client.X/nbproject/Makefile-impl.mk
+69
-0
Makefile-local-mx795_CC3100_e16.mk
...qtt_client.X/nbproject/Makefile-local-mx795_CC3100_e16.mk
+36
-0
Makefile-mx795_CC3100_e16.mk
...ware/mqtt_client.X/nbproject/Makefile-mx795_CC3100_e16.mk
+529
-0
Makefile-variables.mk
...nt/firmware/mqtt_client.X/nbproject/Makefile-variables.mk
+13
-0
Package-mx795_CC3100_e16.bash
...are/mqtt_client.X/nbproject/Package-mx795_CC3100_e16.bash
+73
-0
configurations.xml
...lient/firmware/mqtt_client.X/nbproject/configurations.xml
+489
-0
SuppressibleMessageMemo.properties
...nt.X/nbproject/private/SuppressibleMessageMemo.properties
+3
-0
configurations.xml
...rmware/mqtt_client.X/nbproject/private/configurations.xml
+25
-0
private.xml
...ient/firmware/mqtt_client.X/nbproject/private/private.xml
+13
-0
project.properties
...lient/firmware/mqtt_client.X/nbproject/project.properties
+0
-0
project.xml
.../mqtt_client/firmware/mqtt_client.X/nbproject/project.xml
+18
-0
mqtt_client.hconfig
examples/PIC32/mqtt_client/firmware/mqtt_client.hconfig
+60
-0
app.c
examples/PIC32/mqtt_client/firmware/src/app.c
+183
-0
app.h
examples/PIC32/mqtt_client/firmware/src/app.h
+126
-0
cc3100_port.c
examples/PIC32/mqtt_client/firmware/src/cc3100_port.c
+67
-0
main.c
examples/PIC32/mqtt_client/firmware/src/main.c
+22
-0
configuration.xml
...ware/src/system_config/mx795_CC3100_e16/configuration.xml
+328
-0
drv_rtcc_static.h
.../mx795_CC3100_e16/framework/driver/rtcc/drv_rtcc_static.h
+77
-0
drv_rtcc_static.c
...95_CC3100_e16/framework/driver/rtcc/src/drv_rtcc_static.c
+101
-0
drv_spi_static.h
...5_CC3100_e16/framework/driver/spi/static/drv_spi_static.h
+137
-0
drv_spi_mapping.c
...100_e16/framework/driver/spi/static/src/drv_spi_mapping.c
+347
-0
drv_spi_static.c
...3100_e16/framework/driver/spi/static/src/drv_spi_static.c
+453
-0
drv_spi_static_local.h
...16/framework/driver/spi/static/src/drv_spi_static_local.h
+207
-0
drv_spi_static_rm_tasks.c
...framework/driver/spi/static/src/drv_spi_static_rm_tasks.c
+124
-0
drv_spi_static_sys_queue.c
...ramework/driver/spi/static/src/drv_spi_static_sys_queue.c
+726
-0
drv_spi_static_sys_queue.h
...ramework/driver/spi/static/src/drv_spi_static_sys_queue.h
+203
-0
drv_spi_static_tasks.c
...16/framework/driver/spi/static/src/drv_spi_static_tasks.c
+150
-0
drv_usart_static.h
...x795_CC3100_e16/framework/driver/usart/drv_usart_static.h
+123
-0
drv_usart_mapping.c
...CC3100_e16/framework/driver/usart/src/drv_usart_mapping.c
+439
-0
drv_usart_static.c
..._CC3100_e16/framework/driver/usart/src/drv_usart_static.c
+337
-0
drv_usart_static_byte_model.c
.../framework/driver/usart/src/drv_usart_static_byte_model.c
+113
-0
drv_usart_static_local.h
...0_e16/framework/driver/usart/src/drv_usart_static_local.h
+114
-0
sys_clk_static.c
...x795_CC3100_e16/framework/system/clk/src/sys_clk_static.c
+294
-0
sys_clk_static.h
...ig/mx795_CC3100_e16/framework/system/clk/sys_clk_static.h
+82
-0
sys_console_static.c
...100_e16/framework/system/console/src/sys_console_static.c
+387
-0
sys_ports_static.c
..._CC3100_e16/framework/system/ports/src/sys_ports_static.c
+872
-0
mx795.mhc
...ent/firmware/src/system_config/mx795_CC3100_e16/mx795.mhc
+507
-0
system_config.h
...rmware/src/system_config/mx795_CC3100_e16/system_config.h
+175
-0
system_definitions.h
...e/src/system_config/mx795_CC3100_e16/system_definitions.h
+134
-0
system_exceptions.c
...re/src/system_config/mx795_CC3100_e16/system_exceptions.c
+144
-0
system_init.c
...firmware/src/system_config/mx795_CC3100_e16/system_init.c
+220
-0
system_interrupt.c
...are/src/system_config/mx795_CC3100_e16/system_interrupt.c
+113
-0
system_tasks.c
...irmware/src/system_config/mx795_CC3100_e16/system_tasks.c
+91
-0
user.h
examples/PIC32/mqtt_client/firmware/src/user.h
+1109
-0
user_params.h
examples/PIC32/mqtt_client/firmware/src/user_params.h
+23
-0
mongoose.h
mongoose.h
+1
-0
No files found.
examples/Makefile
View file @
376d2666
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
# `wildcard ./*/` works in both linux and linux/wine, while `wildcard */` enumerates nothing under wine
# `wildcard ./*/` works in both linux and linux/wine, while `wildcard */` enumerates nothing under wine
SUBDIRS
=
$
(
sort
$
(
dir
$
(
wildcard ./
*
/
)))
SUBDIRS
=
$
(
sort
$
(
dir
$
(
wildcard ./
*
/
)))
SUBDIRS
:=
$
(
filter-out ./ ./CC3200/ ./ESP8266_RTOS/ ./MSP432/ ./STM32F4_CC3100/,
$(SUBDIRS)
)
SUBDIRS
:=
$
(
filter-out ./ ./CC3200/ ./ESP8266_RTOS/ ./MSP432/ ./
PIC32/ ./
STM32F4_CC3100/,
$(SUBDIRS)
)
ifeq
($(OS),
Windows_NT)
ifeq
($(OS),
Windows_NT)
SUBDIRS
:=
$
(
filter-out ./load_balancer/ ./netcat/ ./raspberry_pi_mjpeg_led/ ./captive_dns_server/,
$(SUBDIRS)
)
SUBDIRS
:=
$
(
filter-out ./load_balancer/ ./netcat/ ./raspberry_pi_mjpeg_led/ ./captive_dns_server/,
$(SUBDIRS)
)
...
...
examples/PIC32/mqtt_client/firmware/mqtt_client.X/Makefile
0 → 100644
View file @
376d2666
#
# There exist several targets which are by default empty and which can be
# used for execution of your targets. These targets are usually executed
# before and after some main targets. They are:
#
# .build-pre: called before 'build' target
# .build-post: called after 'build' target
# .clean-pre: called before 'clean' target
# .clean-post: called after 'clean' target
# .clobber-pre: called before 'clobber' target
# .clobber-post: called after 'clobber' target
# .all-pre: called before 'all' target
# .all-post: called after 'all' target
# .help-pre: called before 'help' target
# .help-post: called after 'help' target
#
# Targets beginning with '.' are not intended to be called on their own.
#
# Main targets can be executed directly, and they are:
#
# build build a specific configuration
# clean remove built files from a configuration
# clobber remove all built files
# all build all configurations
# help print help mesage
#
# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and
# .help-impl are implemented in nbproject/makefile-impl.mk.
#
# Available make variables:
#
# CND_BASEDIR base directory for relative paths
# CND_DISTDIR default top distribution directory (build artifacts)
# CND_BUILDDIR default top build directory (object files, ...)
# CONF name of current configuration
# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration)
# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration)
# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration)
# CND_PACKAGE_DIR_${CONF} directory of package (current configuration)
# CND_PACKAGE_NAME_${CONF} name of package (current configuration)
# CND_PACKAGE_PATH_${CONF} path to package (current configuration)
#
# NOCDDL
# Environment
MKDIR
=
mkdir
CP
=
cp
CCADMIN
=
CCadmin
RANLIB
=
ranlib
# build
build
:
.build-post
.build-pre
:
# Add your pre 'build' code here...
.build-post
:
.build-impl
# Add your post 'build' code here...
# clean
clean
:
.clean-post
.clean-pre
:
# Add your pre 'clean' code here...
# WARNING: the IDE does not call this target since it takes a long time to
# simply run make. Instead, the IDE removes the configuration directories
# under build and dist directly without calling make.
# This target is left here so people can do a clean when running a clean
# outside the IDE.
.clean-post
:
.clean-impl
# Add your post 'clean' code here...
# clobber
clobber
:
.clobber-post
.clobber-pre
:
# Add your pre 'clobber' code here...
.clobber-post
:
.clobber-impl
# Add your post 'clobber' code here...
# all
all
:
.all-post
.all-pre
:
# Add your pre 'all' code here...
.all-post
:
.all-impl
# Add your post 'all' code here...
# help
help
:
.help-post
.help-pre
:
# Add your pre 'help' code here...
.help-post
:
.help-impl
# Add your post 'help' code here...
# include project implementation makefile
include
nbproject/Makefile-impl.mk
# include project make variables
include
nbproject/Makefile-variables.mk
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/Makefile-genesis.properties
0 → 100644
View file @
376d2666
#
#Fri Sep 30 14:33:25 EEST 2016
mx795_CC3100_e16.com-microchip-mplab-nbide-toolchainXC32-XC32LanguageToolchain.md5
=
7787462309de955deefcc6f5508f88a9
mx795_CC3100_e16.languagetoolchain.version
=
1.42
configurations-xml
=
57b90aa5c34b820a6cb86bde88422e21
com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5
=
02b44c60b7ea0aab28d65f169487b894
host.platform
=
linux
conf.ids
=
mx795_CC3100_e16
mx795_CC3100_e16.languagetoolchain.dir
=
/opt/microchip/xc32/v1.42/bin
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/Makefile-impl.mk
0 → 100644
View file @
376d2666
#
# Generated Makefile - do not edit!
#
# Edit the Makefile in the project folder instead (../Makefile). Each target
# has a pre- and a post- target defined where you can add customization code.
#
# This makefile implements macros and targets common to all configurations.
#
# NOCDDL
# Building and Cleaning subprojects are done by default, but can be controlled with the SUB
# macro. If SUB=no, subprojects will not be built or cleaned. The following macro
# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf
# and .clean-reqprojects-conf unless SUB has the value 'no'
SUB_no=NO
SUBPROJECTS=${SUB_${SUB}}
BUILD_SUBPROJECTS_=.build-subprojects
BUILD_SUBPROJECTS_NO=
BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}}
CLEAN_SUBPROJECTS_=.clean-subprojects
CLEAN_SUBPROJECTS_NO=
CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}}
# Project Name
PROJECTNAME=mqtt_client.X
# Active Configuration
DEFAULTCONF=mx795_CC3100_e16
CONF=${DEFAULTCONF}
# All Configurations
ALLCONFS=mx795_CC3100_e16
# build
.build-impl: .build-pre
${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf
# clean
.clean-impl: .clean-pre
${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf
# clobber
.clobber-impl: .clobber-pre .depcheck-impl
${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=mx795_CC3100_e16 clean
# all
.all-impl: .all-pre .depcheck-impl
${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=mx795_CC3100_e16 build
# dependency checking support
.depcheck-impl:
# @echo "# This code depends on make tool being used" >.dep.inc
# @if [ -n "${MAKE_VERSION}" ]; then \
# echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \
# echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \
# echo "include \$${DEPFILES}" >>.dep.inc; \
# echo "endif" >>.dep.inc; \
# else \
# echo ".KEEP_STATE:" >>.dep.inc; \
# echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \
# fi
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/Makefile-local-mx795_CC3100_e16.mk
0 → 100644
View file @
376d2666
#
# Generated Makefile - do not edit!
#
#
# This file contains information about the location of compilers and other tools.
# If you commmit this file into your revision control server, you will be able to
# to checkout the project and build it from the command line with make. However,
# if more than one person works on the same project, then this file might show
# conflicts since different users are bound to have compilers in different places.
# In that case you might choose to not commit this file and let MPLAB X recreate this file
# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at
# least once so the file gets created and the project can be built. Finally, you can also
# avoid using this file at all if you are only building from the command line with make.
# You can invoke make with the values of the macros:
# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ...
#
PATH_TO_IDE_BIN=/opt/microchip/mplabx/v3.40/mplab_ide/platform/../mplab_ide/modules/../../bin/
# Adding MPLAB X bin directory to path.
PATH:=/opt/microchip/mplabx/v3.40/mplab_ide/platform/../mplab_ide/modules/../../bin/:$(PATH)
# Path to java used to run MPLAB X when this makefile was created
MP_JAVA_PATH="/opt/microchip/mplabx/v3.40/sys/java/jre1.8.0_91/bin/"
OS_CURRENT="$(shell uname -s)"
MP_CC="/opt/microchip/xc32/v1.42/bin/xc32-gcc"
MP_CPPC="/opt/microchip/xc32/v1.42/bin/xc32-g++"
# MP_BC is not defined
MP_AS="/opt/microchip/xc32/v1.42/bin/xc32-as"
MP_LD="/opt/microchip/xc32/v1.42/bin/xc32-ld"
MP_AR="/opt/microchip/xc32/v1.42/bin/xc32-ar"
DEP_GEN=${MP_JAVA_PATH}java -jar "/opt/microchip/mplabx/v3.40/mplab_ide/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar"
MP_CC_DIR="/opt/microchip/xc32/v1.42/bin"
MP_CPPC_DIR="/opt/microchip/xc32/v1.42/bin"
# MP_BC_DIR is not defined
MP_AS_DIR="/opt/microchip/xc32/v1.42/bin"
MP_LD_DIR="/opt/microchip/xc32/v1.42/bin"
MP_AR_DIR="/opt/microchip/xc32/v1.42/bin"
# MP_BC_DIR is not defined
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/Makefile-mx795_CC3100_e16.mk
0 → 100644
View file @
376d2666
#
# Generated Makefile - do not edit!
#
# Edit the Makefile in the project folder instead (../Makefile). Each target
# has a -pre and a -post target defined where you can add customized code.
#
# This makefile implements configuration specific macros and targets.
# Include project Makefile
ifeq "${IGNORE_LOCAL}" "TRUE"
# do not include local makefile. User is passing all local related variables already
else
include Makefile
# Include makefile containing local settings
ifeq "$(wildcard nbproject/Makefile-local-mx795_CC3100_e16.mk)" "nbproject/Makefile-local-mx795_CC3100_e16.mk"
include nbproject/Makefile-local-mx795_CC3100_e16.mk
endif
endif
# Environment
MKDIR=mkdir -p
RM=rm -f
MV=mv
CP=cp
# Macros
CND_CONF=mx795_CC3100_e16
ifeq ($(TYPE_IMAGE), DEBUG_RUN)
IMAGE_TYPE=debug
OUTPUT_SUFFIX=elf
DEBUGGABLE_SUFFIX=elf
FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/mqtt_client.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
else
IMAGE_TYPE=production
OUTPUT_SUFFIX=hex
DEBUGGABLE_SUFFIX=elf
FINAL_IMAGE=dist/${CND_CONF}/${IMAGE_TYPE}/mqtt_client.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
endif
ifeq ($(COMPARE_BUILD), true)
COMPARISON_BUILD=-mafrlcsj
else
COMPARISON_BUILD=
endif
# Object Directory
OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE}
# Distribution Directory
DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE}
# Source Files Quoted if spaced
SOURCEFILES_QUOTED_IF_SPACED=../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netcfg.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/device.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/driver.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/fs.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/wlan.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/socket.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netapp.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/nonos.c ../src/system_config/mx795_CC3100_e16/framework/driver/rtcc/src/drv_rtcc_static.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_mapping.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_tasks.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_rm_tasks.c ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_mapping.c ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static.c ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_byte_model.c ../src/system_config/mx795_CC3100_e16/framework/system/clk/src/sys_clk_static.c ../src/system_config/mx795_CC3100_e16/framework/system/console/src/sys_console_static.c ../src/system_config/mx795_CC3100_e16/framework/system/ports/src/sys_ports_static.c ../src/system_config/mx795_CC3100_e16/system_init.c ../src/system_config/mx795_CC3100_e16/system_interrupt.c ../src/system_config/mx795_CC3100_e16/system_exceptions.c ../src/system_config/mx795_CC3100_e16/system_tasks.c ../src/app.c ../src/main.c ../src/cc3100_port.c ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/debug/src/sys_debug.c ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon.c ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon_pic32mx.c ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/src/sys_int_pic32.c ../../../../../mongoose.c
# Object Files Quoted if spaced
OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/_ext/1831220292/netcfg.o ${OBJECTDIR}/_ext/1831220292/device.o ${OBJECTDIR}/_ext/1831220292/driver.o ${OBJECTDIR}/_ext/1831220292/fs.o ${OBJECTDIR}/_ext/1831220292/wlan.o ${OBJECTDIR}/_ext/1831220292/socket.o ${OBJECTDIR}/_ext/1831220292/netapp.o ${OBJECTDIR}/_ext/1831220292/nonos.o ${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o ${OBJECTDIR}/_ext/1474605348/drv_spi_static.o ${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o ${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o ${OBJECTDIR}/_ext/453830916/drv_usart_static.o ${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o ${OBJECTDIR}/_ext/1456866848/sys_clk_static.o ${OBJECTDIR}/_ext/1510159531/sys_console_static.o ${OBJECTDIR}/_ext/1602879792/sys_ports_static.o ${OBJECTDIR}/_ext/1396533431/system_init.o ${OBJECTDIR}/_ext/1396533431/system_interrupt.o ${OBJECTDIR}/_ext/1396533431/system_exceptions.o ${OBJECTDIR}/_ext/1396533431/system_tasks.o ${OBJECTDIR}/_ext/1360937237/app.o ${OBJECTDIR}/_ext/1360937237/main.o ${OBJECTDIR}/_ext/1360937237/cc3100_port.o ${OBJECTDIR}/_ext/1952159421/sys_debug.o ${OBJECTDIR}/_ext/1921105363/sys_devcon.o ${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o ${OBJECTDIR}/_ext/993332121/sys_int_pic32.o ${OBJECTDIR}/_ext/948168960/mongoose.o
POSSIBLE_DEPFILES=${OBJECTDIR}/_ext/1831220292/netcfg.o.d ${OBJECTDIR}/_ext/1831220292/device.o.d ${OBJECTDIR}/_ext/1831220292/driver.o.d ${OBJECTDIR}/_ext/1831220292/fs.o.d ${OBJECTDIR}/_ext/1831220292/wlan.o.d ${OBJECTDIR}/_ext/1831220292/socket.o.d ${OBJECTDIR}/_ext/1831220292/netapp.o.d ${OBJECTDIR}/_ext/1831220292/nonos.o.d ${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o.d ${OBJECTDIR}/_ext/1474605348/drv_spi_static.o.d ${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o.d ${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o.d ${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o.d ${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o.d ${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o.d ${OBJECTDIR}/_ext/453830916/drv_usart_static.o.d ${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o.d ${OBJECTDIR}/_ext/1456866848/sys_clk_static.o.d ${OBJECTDIR}/_ext/1510159531/sys_console_static.o.d ${OBJECTDIR}/_ext/1602879792/sys_ports_static.o.d ${OBJECTDIR}/_ext/1396533431/system_init.o.d ${OBJECTDIR}/_ext/1396533431/system_interrupt.o.d ${OBJECTDIR}/_ext/1396533431/system_exceptions.o.d ${OBJECTDIR}/_ext/1396533431/system_tasks.o.d ${OBJECTDIR}/_ext/1360937237/app.o.d ${OBJECTDIR}/_ext/1360937237/main.o.d ${OBJECTDIR}/_ext/1360937237/cc3100_port.o.d ${OBJECTDIR}/_ext/1952159421/sys_debug.o.d ${OBJECTDIR}/_ext/1921105363/sys_devcon.o.d ${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o.d ${OBJECTDIR}/_ext/993332121/sys_int_pic32.o.d ${OBJECTDIR}/_ext/948168960/mongoose.o.d
# Object Files
OBJECTFILES=${OBJECTDIR}/_ext/1831220292/netcfg.o ${OBJECTDIR}/_ext/1831220292/device.o ${OBJECTDIR}/_ext/1831220292/driver.o ${OBJECTDIR}/_ext/1831220292/fs.o ${OBJECTDIR}/_ext/1831220292/wlan.o ${OBJECTDIR}/_ext/1831220292/socket.o ${OBJECTDIR}/_ext/1831220292/netapp.o ${OBJECTDIR}/_ext/1831220292/nonos.o ${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o ${OBJECTDIR}/_ext/1474605348/drv_spi_static.o ${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o ${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o ${OBJECTDIR}/_ext/453830916/drv_usart_static.o ${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o ${OBJECTDIR}/_ext/1456866848/sys_clk_static.o ${OBJECTDIR}/_ext/1510159531/sys_console_static.o ${OBJECTDIR}/_ext/1602879792/sys_ports_static.o ${OBJECTDIR}/_ext/1396533431/system_init.o ${OBJECTDIR}/_ext/1396533431/system_interrupt.o ${OBJECTDIR}/_ext/1396533431/system_exceptions.o ${OBJECTDIR}/_ext/1396533431/system_tasks.o ${OBJECTDIR}/_ext/1360937237/app.o ${OBJECTDIR}/_ext/1360937237/main.o ${OBJECTDIR}/_ext/1360937237/cc3100_port.o ${OBJECTDIR}/_ext/1952159421/sys_debug.o ${OBJECTDIR}/_ext/1921105363/sys_devcon.o ${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o ${OBJECTDIR}/_ext/993332121/sys_int_pic32.o ${OBJECTDIR}/_ext/948168960/mongoose.o
# Source Files
SOURCEFILES=../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netcfg.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/device.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/driver.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/fs.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/wlan.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/socket.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netapp.c ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/nonos.c ../src/system_config/mx795_CC3100_e16/framework/driver/rtcc/src/drv_rtcc_static.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_mapping.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_tasks.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.c ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_rm_tasks.c ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_mapping.c ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static.c ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_byte_model.c ../src/system_config/mx795_CC3100_e16/framework/system/clk/src/sys_clk_static.c ../src/system_config/mx795_CC3100_e16/framework/system/console/src/sys_console_static.c ../src/system_config/mx795_CC3100_e16/framework/system/ports/src/sys_ports_static.c ../src/system_config/mx795_CC3100_e16/system_init.c ../src/system_config/mx795_CC3100_e16/system_interrupt.c ../src/system_config/mx795_CC3100_e16/system_exceptions.c ../src/system_config/mx795_CC3100_e16/system_tasks.c ../src/app.c ../src/main.c ../src/cc3100_port.c ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/debug/src/sys_debug.c ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon.c ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon_pic32mx.c ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/src/sys_int_pic32.c ../../../../../mongoose.c
CFLAGS=
ASFLAGS=
LDLIBSOPTIONS=
############# Tool locations ##########################################
# If you copy a project from one host to another, the path where the #
# compiler is installed may be different. #
# If you open this project with MPLAB X in the new host, this #
# makefile will be regenerated and the paths will be corrected. #
#######################################################################
# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build
FIXDEPS=fixDeps
.build-conf: ${BUILD_SUBPROJECTS}
ifneq ($(INFORMATION_MESSAGE), )
@echo $(INFORMATION_MESSAGE)
endif
${MAKE} -f nbproject/Makefile-mx795_CC3100_e16.mk dist/${CND_CONF}/${IMAGE_TYPE}/mqtt_client.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
MP_PROCESSOR_OPTION=32MX795F512L
MP_LINKER_FILE_OPTION=
# ------------------------------------------------------------------------------------
# Rules for buildStep: assemble
ifeq ($(TYPE_IMAGE), DEBUG_RUN)
else
endif
# ------------------------------------------------------------------------------------
# Rules for buildStep: assembleWithPreprocess
ifeq ($(TYPE_IMAGE), DEBUG_RUN)
else
endif
# ------------------------------------------------------------------------------------
# Rules for buildStep: compile
ifeq ($(TYPE_IMAGE), DEBUG_RUN)
${OBJECTDIR}/_ext/1831220292/netcfg.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netcfg.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/netcfg.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/netcfg.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/netcfg.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/netcfg.o.d" -o ${OBJECTDIR}/_ext/1831220292/netcfg.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netcfg.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/device.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/device.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/device.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/device.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/device.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/device.o.d" -o ${OBJECTDIR}/_ext/1831220292/device.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/device.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/driver.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/driver.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/driver.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/driver.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/driver.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/driver.o.d" -o ${OBJECTDIR}/_ext/1831220292/driver.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/driver.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/fs.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/fs.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/fs.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/fs.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/fs.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/fs.o.d" -o ${OBJECTDIR}/_ext/1831220292/fs.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/fs.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/wlan.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/wlan.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/wlan.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/wlan.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/wlan.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/wlan.o.d" -o ${OBJECTDIR}/_ext/1831220292/wlan.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/wlan.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/socket.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/socket.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/socket.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/socket.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/socket.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/socket.o.d" -o ${OBJECTDIR}/_ext/1831220292/socket.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/socket.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/netapp.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netapp.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/netapp.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/netapp.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/netapp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/netapp.o.d" -o ${OBJECTDIR}/_ext/1831220292/netapp.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netapp.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/nonos.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/nonos.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/nonos.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/nonos.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/nonos.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/nonos.o.d" -o ${OBJECTDIR}/_ext/1831220292/nonos.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/nonos.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o: ../src/system_config/mx795_CC3100_e16/framework/driver/rtcc/src/drv_rtcc_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1227741461"
@${RM} ${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o.d
@${RM} ${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o.d" -o ${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o ../src/system_config/mx795_CC3100_e16/framework/driver/rtcc/src/drv_rtcc_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_static.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_static.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_static.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_mapping.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_mapping.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_tasks.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_tasks.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_rm_tasks.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_rm_tasks.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o: ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_mapping.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/453830916"
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o.d
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o
@${FIXDEPS} "${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o.d" -o ${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_mapping.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/453830916/drv_usart_static.o: ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/453830916"
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_static.o.d
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/453830916/drv_usart_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/453830916/drv_usart_static.o.d" -o ${OBJECTDIR}/_ext/453830916/drv_usart_static.o ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o: ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_byte_model.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/453830916"
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o.d
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o
@${FIXDEPS} "${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o.d" -o ${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_byte_model.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1456866848/sys_clk_static.o: ../src/system_config/mx795_CC3100_e16/framework/system/clk/src/sys_clk_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1456866848"
@${RM} ${OBJECTDIR}/_ext/1456866848/sys_clk_static.o.d
@${RM} ${OBJECTDIR}/_ext/1456866848/sys_clk_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1456866848/sys_clk_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1456866848/sys_clk_static.o.d" -o ${OBJECTDIR}/_ext/1456866848/sys_clk_static.o ../src/system_config/mx795_CC3100_e16/framework/system/clk/src/sys_clk_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1510159531/sys_console_static.o: ../src/system_config/mx795_CC3100_e16/framework/system/console/src/sys_console_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1510159531"
@${RM} ${OBJECTDIR}/_ext/1510159531/sys_console_static.o.d
@${RM} ${OBJECTDIR}/_ext/1510159531/sys_console_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1510159531/sys_console_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1510159531/sys_console_static.o.d" -o ${OBJECTDIR}/_ext/1510159531/sys_console_static.o ../src/system_config/mx795_CC3100_e16/framework/system/console/src/sys_console_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1602879792/sys_ports_static.o: ../src/system_config/mx795_CC3100_e16/framework/system/ports/src/sys_ports_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1602879792"
@${RM} ${OBJECTDIR}/_ext/1602879792/sys_ports_static.o.d
@${RM} ${OBJECTDIR}/_ext/1602879792/sys_ports_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1602879792/sys_ports_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1602879792/sys_ports_static.o.d" -o ${OBJECTDIR}/_ext/1602879792/sys_ports_static.o ../src/system_config/mx795_CC3100_e16/framework/system/ports/src/sys_ports_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1396533431/system_init.o: ../src/system_config/mx795_CC3100_e16/system_init.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1396533431"
@${RM} ${OBJECTDIR}/_ext/1396533431/system_init.o.d
@${RM} ${OBJECTDIR}/_ext/1396533431/system_init.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1396533431/system_init.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1396533431/system_init.o.d" -o ${OBJECTDIR}/_ext/1396533431/system_init.o ../src/system_config/mx795_CC3100_e16/system_init.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1396533431/system_interrupt.o: ../src/system_config/mx795_CC3100_e16/system_interrupt.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1396533431"
@${RM} ${OBJECTDIR}/_ext/1396533431/system_interrupt.o.d
@${RM} ${OBJECTDIR}/_ext/1396533431/system_interrupt.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1396533431/system_interrupt.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1396533431/system_interrupt.o.d" -o ${OBJECTDIR}/_ext/1396533431/system_interrupt.o ../src/system_config/mx795_CC3100_e16/system_interrupt.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1396533431/system_exceptions.o: ../src/system_config/mx795_CC3100_e16/system_exceptions.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1396533431"
@${RM} ${OBJECTDIR}/_ext/1396533431/system_exceptions.o.d
@${RM} ${OBJECTDIR}/_ext/1396533431/system_exceptions.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1396533431/system_exceptions.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1396533431/system_exceptions.o.d" -o ${OBJECTDIR}/_ext/1396533431/system_exceptions.o ../src/system_config/mx795_CC3100_e16/system_exceptions.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1396533431/system_tasks.o: ../src/system_config/mx795_CC3100_e16/system_tasks.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1396533431"
@${RM} ${OBJECTDIR}/_ext/1396533431/system_tasks.o.d
@${RM} ${OBJECTDIR}/_ext/1396533431/system_tasks.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1396533431/system_tasks.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1396533431/system_tasks.o.d" -o ${OBJECTDIR}/_ext/1396533431/system_tasks.o ../src/system_config/mx795_CC3100_e16/system_tasks.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1360937237/app.o: ../src/app.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1360937237"
@${RM} ${OBJECTDIR}/_ext/1360937237/app.o.d
@${RM} ${OBJECTDIR}/_ext/1360937237/app.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1360937237/app.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1360937237/app.o.d" -o ${OBJECTDIR}/_ext/1360937237/app.o ../src/app.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1360937237/main.o: ../src/main.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1360937237"
@${RM} ${OBJECTDIR}/_ext/1360937237/main.o.d
@${RM} ${OBJECTDIR}/_ext/1360937237/main.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1360937237/main.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1360937237/main.o.d" -o ${OBJECTDIR}/_ext/1360937237/main.o ../src/main.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1360937237/cc3100_port.o: ../src/cc3100_port.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1360937237"
@${RM} ${OBJECTDIR}/_ext/1360937237/cc3100_port.o.d
@${RM} ${OBJECTDIR}/_ext/1360937237/cc3100_port.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1360937237/cc3100_port.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1360937237/cc3100_port.o.d" -o ${OBJECTDIR}/_ext/1360937237/cc3100_port.o ../src/cc3100_port.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1952159421/sys_debug.o: ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/debug/src/sys_debug.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1952159421"
@${RM} ${OBJECTDIR}/_ext/1952159421/sys_debug.o.d
@${RM} ${OBJECTDIR}/_ext/1952159421/sys_debug.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1952159421/sys_debug.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1952159421/sys_debug.o.d" -o ${OBJECTDIR}/_ext/1952159421/sys_debug.o ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/debug/src/sys_debug.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1921105363/sys_devcon.o: ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1921105363"
@${RM} ${OBJECTDIR}/_ext/1921105363/sys_devcon.o.d
@${RM} ${OBJECTDIR}/_ext/1921105363/sys_devcon.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1921105363/sys_devcon.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1921105363/sys_devcon.o.d" -o ${OBJECTDIR}/_ext/1921105363/sys_devcon.o ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o: ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon_pic32mx.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1921105363"
@${RM} ${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o.d
@${RM} ${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o.d" -o ${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon_pic32mx.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/993332121/sys_int_pic32.o: ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/src/sys_int_pic32.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/993332121"
@${RM} ${OBJECTDIR}/_ext/993332121/sys_int_pic32.o.d
@${RM} ${OBJECTDIR}/_ext/993332121/sys_int_pic32.o
@${FIXDEPS} "${OBJECTDIR}/_ext/993332121/sys_int_pic32.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/993332121/sys_int_pic32.o.d" -o ${OBJECTDIR}/_ext/993332121/sys_int_pic32.o ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/src/sys_int_pic32.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/948168960/mongoose.o: ../../../../../mongoose.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/948168960"
@${RM} ${OBJECTDIR}/_ext/948168960/mongoose.o.d
@${RM} ${OBJECTDIR}/_ext/948168960/mongoose.o
@${FIXDEPS} "${OBJECTDIR}/_ext/948168960/mongoose.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -D__DEBUG -D__MPLAB_DEBUGGER_PK3=1 -fframe-base-loclist -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/948168960/mongoose.o.d" -o ${OBJECTDIR}/_ext/948168960/mongoose.o ../../../../../mongoose.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
else
${OBJECTDIR}/_ext/1831220292/netcfg.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netcfg.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/netcfg.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/netcfg.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/netcfg.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/netcfg.o.d" -o ${OBJECTDIR}/_ext/1831220292/netcfg.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netcfg.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/device.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/device.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/device.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/device.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/device.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/device.o.d" -o ${OBJECTDIR}/_ext/1831220292/device.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/device.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/driver.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/driver.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/driver.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/driver.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/driver.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/driver.o.d" -o ${OBJECTDIR}/_ext/1831220292/driver.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/driver.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/fs.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/fs.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/fs.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/fs.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/fs.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/fs.o.d" -o ${OBJECTDIR}/_ext/1831220292/fs.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/fs.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/wlan.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/wlan.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/wlan.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/wlan.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/wlan.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/wlan.o.d" -o ${OBJECTDIR}/_ext/1831220292/wlan.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/wlan.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/socket.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/socket.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/socket.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/socket.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/socket.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/socket.o.d" -o ${OBJECTDIR}/_ext/1831220292/socket.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/socket.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/netapp.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netapp.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/netapp.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/netapp.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/netapp.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/netapp.o.d" -o ${OBJECTDIR}/_ext/1831220292/netapp.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netapp.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1831220292/nonos.o: ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/nonos.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1831220292"
@${RM} ${OBJECTDIR}/_ext/1831220292/nonos.o.d
@${RM} ${OBJECTDIR}/_ext/1831220292/nonos.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1831220292/nonos.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1831220292/nonos.o.d" -o ${OBJECTDIR}/_ext/1831220292/nonos.o ../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/nonos.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o: ../src/system_config/mx795_CC3100_e16/framework/driver/rtcc/src/drv_rtcc_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1227741461"
@${RM} ${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o.d
@${RM} ${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o.d" -o ${OBJECTDIR}/_ext/1227741461/drv_rtcc_static.o ../src/system_config/mx795_CC3100_e16/framework/driver/rtcc/src/drv_rtcc_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_static.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_static.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_static.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_mapping.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_mapping.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_mapping.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_tasks.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_tasks.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_tasks.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_sys_queue.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o: ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_rm_tasks.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1474605348"
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o.d
@${RM} ${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o.d" -o ${OBJECTDIR}/_ext/1474605348/drv_spi_static_rm_tasks.o ../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_rm_tasks.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o: ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_mapping.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/453830916"
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o.d
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o
@${FIXDEPS} "${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o.d" -o ${OBJECTDIR}/_ext/453830916/drv_usart_mapping.o ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_mapping.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/453830916/drv_usart_static.o: ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/453830916"
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_static.o.d
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/453830916/drv_usart_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/453830916/drv_usart_static.o.d" -o ${OBJECTDIR}/_ext/453830916/drv_usart_static.o ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o: ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_byte_model.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/453830916"
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o.d
@${RM} ${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o
@${FIXDEPS} "${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o.d" -o ${OBJECTDIR}/_ext/453830916/drv_usart_static_byte_model.o ../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_byte_model.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1456866848/sys_clk_static.o: ../src/system_config/mx795_CC3100_e16/framework/system/clk/src/sys_clk_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1456866848"
@${RM} ${OBJECTDIR}/_ext/1456866848/sys_clk_static.o.d
@${RM} ${OBJECTDIR}/_ext/1456866848/sys_clk_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1456866848/sys_clk_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1456866848/sys_clk_static.o.d" -o ${OBJECTDIR}/_ext/1456866848/sys_clk_static.o ../src/system_config/mx795_CC3100_e16/framework/system/clk/src/sys_clk_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1510159531/sys_console_static.o: ../src/system_config/mx795_CC3100_e16/framework/system/console/src/sys_console_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1510159531"
@${RM} ${OBJECTDIR}/_ext/1510159531/sys_console_static.o.d
@${RM} ${OBJECTDIR}/_ext/1510159531/sys_console_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1510159531/sys_console_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1510159531/sys_console_static.o.d" -o ${OBJECTDIR}/_ext/1510159531/sys_console_static.o ../src/system_config/mx795_CC3100_e16/framework/system/console/src/sys_console_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1602879792/sys_ports_static.o: ../src/system_config/mx795_CC3100_e16/framework/system/ports/src/sys_ports_static.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1602879792"
@${RM} ${OBJECTDIR}/_ext/1602879792/sys_ports_static.o.d
@${RM} ${OBJECTDIR}/_ext/1602879792/sys_ports_static.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1602879792/sys_ports_static.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1602879792/sys_ports_static.o.d" -o ${OBJECTDIR}/_ext/1602879792/sys_ports_static.o ../src/system_config/mx795_CC3100_e16/framework/system/ports/src/sys_ports_static.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1396533431/system_init.o: ../src/system_config/mx795_CC3100_e16/system_init.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1396533431"
@${RM} ${OBJECTDIR}/_ext/1396533431/system_init.o.d
@${RM} ${OBJECTDIR}/_ext/1396533431/system_init.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1396533431/system_init.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1396533431/system_init.o.d" -o ${OBJECTDIR}/_ext/1396533431/system_init.o ../src/system_config/mx795_CC3100_e16/system_init.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1396533431/system_interrupt.o: ../src/system_config/mx795_CC3100_e16/system_interrupt.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1396533431"
@${RM} ${OBJECTDIR}/_ext/1396533431/system_interrupt.o.d
@${RM} ${OBJECTDIR}/_ext/1396533431/system_interrupt.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1396533431/system_interrupt.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1396533431/system_interrupt.o.d" -o ${OBJECTDIR}/_ext/1396533431/system_interrupt.o ../src/system_config/mx795_CC3100_e16/system_interrupt.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1396533431/system_exceptions.o: ../src/system_config/mx795_CC3100_e16/system_exceptions.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1396533431"
@${RM} ${OBJECTDIR}/_ext/1396533431/system_exceptions.o.d
@${RM} ${OBJECTDIR}/_ext/1396533431/system_exceptions.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1396533431/system_exceptions.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1396533431/system_exceptions.o.d" -o ${OBJECTDIR}/_ext/1396533431/system_exceptions.o ../src/system_config/mx795_CC3100_e16/system_exceptions.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1396533431/system_tasks.o: ../src/system_config/mx795_CC3100_e16/system_tasks.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1396533431"
@${RM} ${OBJECTDIR}/_ext/1396533431/system_tasks.o.d
@${RM} ${OBJECTDIR}/_ext/1396533431/system_tasks.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1396533431/system_tasks.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1396533431/system_tasks.o.d" -o ${OBJECTDIR}/_ext/1396533431/system_tasks.o ../src/system_config/mx795_CC3100_e16/system_tasks.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1360937237/app.o: ../src/app.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1360937237"
@${RM} ${OBJECTDIR}/_ext/1360937237/app.o.d
@${RM} ${OBJECTDIR}/_ext/1360937237/app.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1360937237/app.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1360937237/app.o.d" -o ${OBJECTDIR}/_ext/1360937237/app.o ../src/app.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1360937237/main.o: ../src/main.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1360937237"
@${RM} ${OBJECTDIR}/_ext/1360937237/main.o.d
@${RM} ${OBJECTDIR}/_ext/1360937237/main.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1360937237/main.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1360937237/main.o.d" -o ${OBJECTDIR}/_ext/1360937237/main.o ../src/main.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1360937237/cc3100_port.o: ../src/cc3100_port.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1360937237"
@${RM} ${OBJECTDIR}/_ext/1360937237/cc3100_port.o.d
@${RM} ${OBJECTDIR}/_ext/1360937237/cc3100_port.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1360937237/cc3100_port.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1360937237/cc3100_port.o.d" -o ${OBJECTDIR}/_ext/1360937237/cc3100_port.o ../src/cc3100_port.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1952159421/sys_debug.o: ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/debug/src/sys_debug.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1952159421"
@${RM} ${OBJECTDIR}/_ext/1952159421/sys_debug.o.d
@${RM} ${OBJECTDIR}/_ext/1952159421/sys_debug.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1952159421/sys_debug.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1952159421/sys_debug.o.d" -o ${OBJECTDIR}/_ext/1952159421/sys_debug.o ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/debug/src/sys_debug.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1921105363/sys_devcon.o: ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1921105363"
@${RM} ${OBJECTDIR}/_ext/1921105363/sys_devcon.o.d
@${RM} ${OBJECTDIR}/_ext/1921105363/sys_devcon.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1921105363/sys_devcon.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1921105363/sys_devcon.o.d" -o ${OBJECTDIR}/_ext/1921105363/sys_devcon.o ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o: ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon_pic32mx.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/1921105363"
@${RM} ${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o.d
@${RM} ${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o
@${FIXDEPS} "${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o.d" -o ${OBJECTDIR}/_ext/1921105363/sys_devcon_pic32mx.o ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon_pic32mx.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/993332121/sys_int_pic32.o: ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/src/sys_int_pic32.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/993332121"
@${RM} ${OBJECTDIR}/_ext/993332121/sys_int_pic32.o.d
@${RM} ${OBJECTDIR}/_ext/993332121/sys_int_pic32.o
@${FIXDEPS} "${OBJECTDIR}/_ext/993332121/sys_int_pic32.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/993332121/sys_int_pic32.o.d" -o ${OBJECTDIR}/_ext/993332121/sys_int_pic32.o ../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/src/sys_int_pic32.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
${OBJECTDIR}/_ext/948168960/mongoose.o: ../../../../../mongoose.c nbproject/Makefile-${CND_CONF}.mk
@${MKDIR} "${OBJECTDIR}/_ext/948168960"
@${RM} ${OBJECTDIR}/_ext/948168960/mongoose.o.d
@${RM} ${OBJECTDIR}/_ext/948168960/mongoose.o
@${FIXDEPS} "${OBJECTDIR}/_ext/948168960/mongoose.o.d" $(SILENT) -rsi ${MP_CC_DIR}../ -c ${MP_CC} $(MP_EXTRA_CC_PRE) -g -x c -c -mprocessor=$(MP_PROCESSOR_OPTION) -I"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include" -ffunction-sections -O1 -I"../src" -I"../src/system_config/mx795_CC3100_e16" -I"../src/mx795_CC3100_e16" -I"../../../../framework" -I"../src/system_config/mx795_CC3100_e16/framework" -I"../../../../../../../../../microchip/harmony/v1_08_01/framework" -MMD -MF "${OBJECTDIR}/_ext/948168960/mongoose.o.d" -o ${OBJECTDIR}/_ext/948168960/mongoose.o ../../../../../mongoose.c -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc $(COMPARISON_BUILD) -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI
endif
# ------------------------------------------------------------------------------------
# Rules for buildStep: compileCPP
ifeq ($(TYPE_IMAGE), DEBUG_RUN)
else
endif
# ------------------------------------------------------------------------------------
# Rules for buildStep: link
ifeq ($(TYPE_IMAGE), DEBUG_RUN)
dist/${CND_CONF}/${IMAGE_TYPE}/mqtt_client.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../../../../../../../../../microchip/harmony/v1_08_01/bin/framework/peripheral/PIC32MX795F512L_peripherals.a ../../../../../../../../../microchip/harmony/v1_08_01/framework/tcpip/src/crypto/aes_pic32mx.a
@${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
${MP_CC} $(MP_EXTRA_LD_PRE) -mdebugger -D__MPLAB_DEBUGGER_PK3=1 -mprocessor=$(MP_PROCESSOR_OPTION) -o dist/${CND_CONF}/${IMAGE_TYPE}/mqtt_client.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ../../../../../../../../../microchip/harmony/v1_08_01/bin/framework/peripheral/PIC32MX795F512L_peripherals.a ../../../../../../../../../microchip/harmony/v1_08_01/framework/tcpip/src/crypto/aes_pic32mx.a -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI $(COMPARISON_BUILD) -mreserve=boot@0x1FC02000:0x1FC02FEF -mreserve=boot@0x1FC02000:0x1FC024FF -Wl,--defsym=__MPLAB_BUILD=1$(MP_EXTRA_LD_POST)$(MP_LINKER_FILE_OPTION),--defsym=__MPLAB_DEBUG=1,--defsym=__DEBUG=1,--defsym=__MPLAB_DEBUGGER_PK3=1,--defsym=_min_heap_size=2048,--gc-sections,--no-code-in-dinit,--no-dinit-in-serial-mem,-Map="${DISTDIR}/${PROJECTNAME}.${IMAGE_TYPE}.map",--memorysummary,dist/${CND_CONF}/${IMAGE_TYPE}/memoryfile.xml
else
dist/${CND_CONF}/${IMAGE_TYPE}/mqtt_client.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES} nbproject/Makefile-${CND_CONF}.mk ../../../../../../../../../microchip/harmony/v1_08_01/bin/framework/peripheral/PIC32MX795F512L_peripherals.a ../../../../../../../../../microchip/harmony/v1_08_01/framework/tcpip/src/crypto/aes_pic32mx.a
@${MKDIR} dist/${CND_CONF}/${IMAGE_TYPE}
${MP_CC} $(MP_EXTRA_LD_PRE) -mprocessor=$(MP_PROCESSOR_OPTION) -o dist/${CND_CONF}/${IMAGE_TYPE}/mqtt_client.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX} ${OBJECTFILES_QUOTED_IF_SPACED} ../../../../../../../../../microchip/harmony/v1_08_01/bin/framework/peripheral/PIC32MX795F512L_peripherals.a ../../../../../../../../../microchip/harmony/v1_08_01/framework/tcpip/src/crypto/aes_pic32mx.a -DXPRJ_mx795_CC3100_e16=$(CND_CONF) -no-legacy-libc -DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI $(COMPARISON_BUILD) -Wl,--defsym=__MPLAB_BUILD=1$(MP_EXTRA_LD_POST)$(MP_LINKER_FILE_OPTION),--defsym=_min_heap_size=2048,--gc-sections,--no-code-in-dinit,--no-dinit-in-serial-mem,-Map="${DISTDIR}/${PROJECTNAME}.${IMAGE_TYPE}.map",--memorysummary,dist/${CND_CONF}/${IMAGE_TYPE}/memoryfile.xml
${MP_CC_DIR}/xc32-bin2hex dist/${CND_CONF}/${IMAGE_TYPE}/mqtt_client.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX}
endif
# Subprojects
.build-subprojects:
# Subprojects
.clean-subprojects:
# Clean Targets
.clean-conf: ${CLEAN_SUBPROJECTS}
${RM} -r build/mx795_CC3100_e16
${RM} -r dist/mx795_CC3100_e16
# Enable dependency checking
.dep.inc: .depcheck-impl
DEPFILES=$(shell "${PATH_TO_IDE_BIN}"mplabwildcard ${POSSIBLE_DEPFILES})
ifneq (${DEPFILES},)
include ${DEPFILES}
endif
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/Makefile-variables.mk
0 → 100644
View file @
376d2666
#
# Generated - do not edit!
#
# NOCDDL
#
CND_BASEDIR=`pwd`
# mx795_CC3100_e16 configuration
CND_ARTIFACT_DIR_mx795_CC3100_e16=dist/mx795_CC3100_e16/production
CND_ARTIFACT_NAME_mx795_CC3100_e16=mqtt_client.X.production.hex
CND_ARTIFACT_PATH_mx795_CC3100_e16=dist/mx795_CC3100_e16/production/mqtt_client.X.production.hex
CND_PACKAGE_DIR_mx795_CC3100_e16=${CND_DISTDIR}/mx795_CC3100_e16/package
CND_PACKAGE_NAME_mx795_CC3100_e16=mqttclient.x.tar
CND_PACKAGE_PATH_mx795_CC3100_e16=${CND_DISTDIR}/mx795_CC3100_e16/package/mqttclient.x.tar
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/Package-mx795_CC3100_e16.bash
0 → 100644
View file @
376d2666
#!/bin/bash -x
#
# Generated - do not edit!
#
# Macros
TOP
=
`
pwd
`
CND_CONF
=
mx795_CC3100_e16
CND_DISTDIR
=
dist
TMPDIR
=
build/
${
CND_CONF
}
/
${
IMAGE_TYPE
}
/tmp-packaging
TMPDIRNAME
=
tmp-packaging
OUTPUT_PATH
=
dist/
${
CND_CONF
}
/
${
IMAGE_TYPE
}
/mqtt_client.X.
${
IMAGE_TYPE
}
.
${
OUTPUT_SUFFIX
}
OUTPUT_BASENAME
=
mqtt_client.X.
${
IMAGE_TYPE
}
.
${
OUTPUT_SUFFIX
}
PACKAGE_TOP_DIR
=
mqttclient.x/
# Functions
function
checkReturnCode
{
rc
=
$?
if
[
$rc
!=
0
]
then
exit
$rc
fi
}
function
makeDirectory
# $1 directory path
# $2 permission (optional)
{
mkdir
-p
"
$1
"
checkReturnCode
if
[
"
$2
"
!=
""
]
then
chmod
$2
"
$1
"
checkReturnCode
fi
}
function
copyFileToTmpDir
# $1 from-file path
# $2 to-file path
# $3 permission
{
cp
"
$1
"
"
$2
"
checkReturnCode
if
[
"
$3
"
!=
""
]
then
chmod
$3
"
$2
"
checkReturnCode
fi
}
# Setup
cd
"
${
TOP
}
"
mkdir
-p
${
CND_DISTDIR
}
/
${
CND_CONF
}
/package
rm
-rf
${
TMPDIR
}
mkdir
-p
${
TMPDIR
}
# Copy files and create directories and links
cd
"
${
TOP
}
"
makeDirectory
${
TMPDIR
}
/mqttclient.x/bin
copyFileToTmpDir
"
${
OUTPUT_PATH
}
"
"
${
TMPDIR
}
/
${
PACKAGE_TOP_DIR
}
bin/
${
OUTPUT_BASENAME
}
"
0755
# Generate tar file
cd
"
${
TOP
}
"
rm
-f
${
CND_DISTDIR
}
/
${
CND_CONF
}
/package/mqttclient.x.tar
cd
${
TMPDIR
}
tar
-vcf
../../../../
${
CND_DISTDIR
}
/
${
CND_CONF
}
/package/mqttclient.x.tar
*
checkReturnCode
# Cleanup
cd
"
${
TOP
}
"
rm
-rf
${
TMPDIR
}
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/configurations.xml
0 → 100644
View file @
376d2666
<?xml version="1.0" encoding="UTF-8"?>
<configurationDescriptor
version=
"62"
>
<logicalFolder
name=
"root"
displayName=
"root"
projectFiles=
"true"
>
<logicalFolder
name=
"HeaderFiles"
displayName=
"Header Files"
projectFiles=
"true"
>
<logicalFolder
name=
"f3"
displayName=
"app"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"system_config"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"mx795_CC3100_e16"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"framework"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"driver"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"rtcc"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/rtcc/drv_rtcc_static.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f2"
displayName=
"spi"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"static"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_local.h
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.h
</itemPath>
</logicalFolder>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/drv_spi_static.h
</itemPath>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"f3"
displayName=
"usart"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_local.h
</itemPath>
</logicalFolder>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/usart/drv_usart_static.h
</itemPath>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"f2"
displayName=
"system"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"clk"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/system/clk/sys_clk_static.h
</itemPath>
</logicalFolder>
</logicalFolder>
</logicalFolder>
<itemPath>
../src/system_config/mx795_CC3100_e16/system_config.h
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/system_definitions.h
</itemPath>
</logicalFolder>
</logicalFolder>
<itemPath>
../src/app.h
</itemPath>
<itemPath>
../src/user_params.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f1"
displayName=
"framework"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"driver"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/driver/driver.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/driver/driver_common.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f2"
displayName=
"gfx"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/gfx/gfx_palette.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f3"
displayName=
"osal"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/osal/src/osal_impl_basic.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/osal/src/osal_impl_none.h
</itemPath>
</logicalFolder>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/osal/osal.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/osal/osal_definitions.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f4"
displayName=
"peripheral"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/peripheral/peripheral.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/peripheral/peripheral_common.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/peripheral/peripheral_common_32bit.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f5"
displayName=
"system"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"clk"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/clk/sys_clk.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/clk/sys_clk_mapping.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f2"
displayName=
"common"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/common/sys_common.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/common/sys_module.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/common/sys_buffer.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/common/sys_queue.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f3"
displayName=
"console"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/console/src/sys_console_local.h
</itemPath>
</logicalFolder>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/console/sys_console.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f4"
displayName=
"debug"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/debug/src/sys_debug_local.h
</itemPath>
</logicalFolder>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/debug/sys_debug.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f5"
displayName=
"devcon"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon_local.h
</itemPath>
</logicalFolder>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/sys_devcon.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f6"
displayName=
"int"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/src/sys_int_private.h
</itemPath>
</logicalFolder>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/sys_int.h
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/sys_int_mapping.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f7"
displayName=
"ports"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/ports/sys_ports.h
</itemPath>
</logicalFolder>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/system.h
</itemPath>
</logicalFolder>
</logicalFolder>
<itemPath>
../src/user.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"LinkerScript"
displayName=
"Linker Files"
projectFiles=
"true"
>
</logicalFolder>
<logicalFolder
name=
"f1"
displayName=
"Mongoose"
projectFiles=
"true"
>
<itemPath>
../../../../../mongoose.c
</itemPath>
<itemPath>
../../../../../mongoose.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"simplelink"
displayName=
"simplelink"
projectFiles=
"true"
>
<logicalFolder
name=
"include"
displayName=
"include"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/include/trace.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/include/device.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/include/socket.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/include/fs.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/include/netcfg.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/include/netapp.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/include/simplelink.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/include/wlan_rx_filters.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/include/wlan.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"source"
displayName=
"source"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netcfg.c
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/device.c
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/driver.c
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/protocol.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/nonos.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/objInclusion.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/fs.c
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/wlan.c
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/driver.h
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/socket.c
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/netapp.c
</itemPath>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/nonos.c
</itemPath>
</logicalFolder>
<itemPath>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink/template_user.h
</itemPath>
</logicalFolder>
<logicalFolder
name=
"SourceFiles"
displayName=
"Source Files"
projectFiles=
"true"
>
<logicalFolder
name=
"f3"
displayName=
"app"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"system_config"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"mx795_CC3100_e16"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"framework"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"driver"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"rtcc"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/rtcc/src/drv_rtcc_static.c
</itemPath>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"f2"
displayName=
"spi"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"static"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static.c
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_mapping.c
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_tasks.c
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.c
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_rm_tasks.c
</itemPath>
</logicalFolder>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"f3"
displayName=
"usart"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_mapping.c
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static.c
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_byte_model.c
</itemPath>
</logicalFolder>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"f2"
displayName=
"system"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"clk"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/system/clk/src/sys_clk_static.c
</itemPath>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"f2"
displayName=
"console"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/system/console/src/sys_console_static.c
</itemPath>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"f3"
displayName=
"ports"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../src/system_config/mx795_CC3100_e16/framework/system/ports/src/sys_ports_static.c
</itemPath>
</logicalFolder>
</logicalFolder>
</logicalFolder>
</logicalFolder>
<itemPath>
../src/system_config/mx795_CC3100_e16/system_init.c
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/system_interrupt.c
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/system_exceptions.c
</itemPath>
<itemPath>
../src/system_config/mx795_CC3100_e16/system_tasks.c
</itemPath>
</logicalFolder>
</logicalFolder>
<itemPath>
../src/app.c
</itemPath>
<itemPath>
../src/main.c
</itemPath>
<itemPath>
../src/cc3100_port.c
</itemPath>
</logicalFolder>
<logicalFolder
name=
"f1"
displayName=
"framework"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"system"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"debug"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/debug/src/sys_debug.c
</itemPath>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"f2"
displayName=
"devcon"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon.c
</itemPath>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon_pic32mx.c
</itemPath>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"f3"
displayName=
"int"
projectFiles=
"true"
>
<logicalFolder
name=
"f1"
displayName=
"src"
projectFiles=
"true"
>
<itemPath>
../../../../../../../../../microchip/harmony/v1_08_01/framework/system/int/src/sys_int_pic32.c
</itemPath>
</logicalFolder>
</logicalFolder>
</logicalFolder>
</logicalFolder>
</logicalFolder>
<logicalFolder
name=
"ExternalFiles"
displayName=
"Important Files"
projectFiles=
"false"
>
<itemPath>
Makefile
</itemPath>
</logicalFolder>
</logicalFolder>
<sourceRootList>
<Elem>
../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink
</Elem>
<Elem>
../../../../../../../go/src/cesanta.com/mongoose
</Elem>
<Elem>
../../../../../../../microchip/harmony/v1_08_01
</Elem>
<Elem>
../../../../../../../../../CC3100SDK_1.2.0/cc3100-sdk/simplelink
</Elem>
<Elem>
../../../../..
</Elem>
</sourceRootList>
<projectmakefile>
Makefile
</projectmakefile>
<confs>
<conf
name=
"mx795_CC3100_e16"
type=
"2"
>
<toolsSet>
<developmentServer>
localhost
</developmentServer>
<targetDevice>
PIC32MX795F512L
</targetDevice>
<targetHeader></targetHeader>
<targetPluginBoard></targetPluginBoard>
<platformTool>
PKOBSKDEPlatformTool
</platformTool>
<languageToolchain>
XC32
</languageToolchain>
<languageToolchainVersion>
1.42
</languageToolchainVersion>
<platform>
2
</platform>
</toolsSet>
<compileType>
<linkerTool>
<linkerLibItems>
<linkerLibFileItem>
../../../../../../../../../microchip/harmony/v1_08_01/bin/framework/peripheral/PIC32MX795F512L_peripherals.a
</linkerLibFileItem>
<linkerLibFileItem>
../../../../../../../../../microchip/harmony/v1_08_01/framework/tcpip/src/crypto/aes_pic32mx.a
</linkerLibFileItem>
</linkerLibItems>
</linkerTool>
<archiverTool>
</archiverTool>
<loading>
<useAlternateLoadableFile>
false
</useAlternateLoadableFile>
<parseOnProdLoad>
false
</parseOnProdLoad>
<alternateLoadableFile></alternateLoadableFile>
</loading>
</compileType>
<makeCustomizationType>
<makeCustomizationPreStepEnabled>
false
</makeCustomizationPreStepEnabled>
<makeCustomizationPreStep></makeCustomizationPreStep>
<makeCustomizationPostStepEnabled>
false
</makeCustomizationPostStepEnabled>
<makeCustomizationPostStep></makeCustomizationPostStep>
<makeCustomizationPutChecksumInUserID>
false
</makeCustomizationPutChecksumInUserID>
<makeCustomizationEnableLongLines>
false
</makeCustomizationEnableLongLines>
<makeCustomizationNormalizeHexFile>
false
</makeCustomizationNormalizeHexFile>
</makeCustomizationType>
<C32>
<property
key=
"additional-warnings"
value=
"false"
/>
<property
key=
"addresss-attribute-use"
value=
"false"
/>
<property
key=
"enable-app-io"
value=
"false"
/>
<property
key=
"enable-omit-frame-pointer"
value=
"false"
/>
<property
key=
"enable-symbols"
value=
"true"
/>
<property
key=
"enable-unroll-loops"
value=
"false"
/>
<property
key=
"exclude-floating-point"
value=
"false"
/>
<property
key=
"extra-include-directories"
value=
"../src;../src/system_config/mx795_CC3100_e16;../src/mx795_CC3100_e16;../../../../framework;../src/system_config/mx795_CC3100_e16/framework;../../../../../../../../../microchip/harmony/v1_08_01/framework"
/>
<property
key=
"generate-16-bit-code"
value=
"false"
/>
<property
key=
"generate-micro-compressed-code"
value=
"false"
/>
<property
key=
"isolate-each-function"
value=
"true"
/>
<property
key=
"make-warnings-into-errors"
value=
"false"
/>
<property
key=
"optimization-level"
value=
"-O1"
/>
<property
key=
"place-data-into-section"
value=
"false"
/>
<property
key=
"post-instruction-scheduling"
value=
"default"
/>
<property
key=
"pre-instruction-scheduling"
value=
"default"
/>
<property
key=
"preprocessor-macros"
value=
""
/>
<property
key=
"strict-ansi"
value=
"false"
/>
<property
key=
"support-ansi"
value=
"false"
/>
<property
key=
"toplevel-reordering"
value=
""
/>
<property
key=
"use-cci"
value=
"false"
/>
<property
key=
"use-iar"
value=
"false"
/>
<property
key=
"use-indirect-calls"
value=
"false"
/>
</C32>
<C32-AR>
<property
key=
"additional-options-chop-files"
value=
"false"
/>
</C32-AR>
<C32-AS>
<property
key=
"assembler-symbols"
value=
""
/>
<property
key=
"enable-symbols"
value=
"true"
/>
<property
key=
"exclude-floating-point-library"
value=
"false"
/>
<property
key=
"expand-macros"
value=
"false"
/>
<property
key=
"extra-include-directories-for-assembler"
value=
""
/>
<property
key=
"extra-include-directories-for-preprocessor"
value=
""
/>
<property
key=
"false-conditionals"
value=
"false"
/>
<property
key=
"generate-16-bit-code"
value=
"false"
/>
<property
key=
"generate-micro-compressed-code"
value=
"false"
/>
<property
key=
"keep-locals"
value=
"false"
/>
<property
key=
"list-assembly"
value=
"false"
/>
<property
key=
"list-source"
value=
"false"
/>
<property
key=
"list-symbols"
value=
"false"
/>
<property
key=
"oXC32asm-list-to-file"
value=
"false"
/>
<property
key=
"omit-debug-dirs"
value=
"false"
/>
<property
key=
"omit-forms"
value=
"false"
/>
<property
key=
"preprocessor-macros"
value=
""
/>
<property
key=
"warning-level"
value=
""
/>
</C32-AS>
<C32-LD>
<property
key=
"additional-options-use-response-files"
value=
"false"
/>
<property
key=
"allocate-dinit"
value=
"false"
/>
<property
key=
"code-dinit"
value=
"false"
/>
<property
key=
"ebase-addr"
value=
""
/>
<property
key=
"enable-check-sections"
value=
"false"
/>
<property
key=
"exclude-floating-point-library"
value=
"false"
/>
<property
key=
"exclude-standard-libraries"
value=
"false"
/>
<property
key=
"extra-lib-directories"
value=
""
/>
<property
key=
"fill-flash-options-addr"
value=
""
/>
<property
key=
"fill-flash-options-const"
value=
""
/>
<property
key=
"fill-flash-options-how"
value=
"0"
/>
<property
key=
"fill-flash-options-inc-const"
value=
"1"
/>
<property
key=
"fill-flash-options-increment"
value=
""
/>
<property
key=
"fill-flash-options-seq"
value=
""
/>
<property
key=
"fill-flash-options-what"
value=
"0"
/>
<property
key=
"generate-16-bit-code"
value=
"false"
/>
<property
key=
"generate-cross-reference-file"
value=
"false"
/>
<property
key=
"generate-micro-compressed-code"
value=
"false"
/>
<property
key=
"heap-size"
value=
"2048"
/>
<property
key=
"input-libraries"
value=
""
/>
<property
key=
"kseg-length"
value=
""
/>
<property
key=
"kseg-origin"
value=
""
/>
<property
key=
"linker-symbols"
value=
""
/>
<property
key=
"map-file"
value=
"${DISTDIR}/${PROJECTNAME}.${IMAGE_TYPE}.map"
/>
<property
key=
"no-startup-files"
value=
"false"
/>
<property
key=
"oXC32ld-extra-opts"
value=
""
/>
<property
key=
"optimization-level"
value=
""
/>
<property
key=
"preprocessor-macros"
value=
""
/>
<property
key=
"remove-unused-sections"
value=
"true"
/>
<property
key=
"report-memory-usage"
value=
"false"
/>
<property
key=
"serial-length"
value=
""
/>
<property
key=
"serial-origin"
value=
""
/>
<property
key=
"stack-size"
value=
""
/>
<property
key=
"symbol-stripping"
value=
""
/>
<property
key=
"trace-symbols"
value=
""
/>
<property
key=
"warn-section-align"
value=
"false"
/>
</C32-LD>
<C32CPP>
<property
key=
"additional-warnings"
value=
"false"
/>
<property
key=
"addresss-attribute-use"
value=
"false"
/>
<property
key=
"check-new"
value=
"false"
/>
<property
key=
"eh-specs"
value=
"true"
/>
<property
key=
"enable-app-io"
value=
"false"
/>
<property
key=
"enable-omit-frame-pointer"
value=
"false"
/>
<property
key=
"enable-symbols"
value=
"true"
/>
<property
key=
"enable-unroll-loops"
value=
"false"
/>
<property
key=
"exceptions"
value=
"true"
/>
<property
key=
"exclude-floating-point"
value=
"false"
/>
<property
key=
"extra-include-directories"
value=
""
/>
<property
key=
"generate-16-bit-code"
value=
"false"
/>
<property
key=
"generate-micro-compressed-code"
value=
"false"
/>
<property
key=
"isolate-each-function"
value=
"true"
/>
<property
key=
"make-warnings-into-errors"
value=
"false"
/>
<property
key=
"optimization-level"
value=
"-O1"
/>
<property
key=
"place-data-into-section"
value=
"false"
/>
<property
key=
"post-instruction-scheduling"
value=
"default"
/>
<property
key=
"pre-instruction-scheduling"
value=
"default"
/>
<property
key=
"preprocessor-macros"
value=
""
/>
<property
key=
"rtti"
value=
"true"
/>
<property
key=
"strict-ansi"
value=
"false"
/>
<property
key=
"toplevel-reordering"
value=
""
/>
<property
key=
"use-cci"
value=
"false"
/>
<property
key=
"use-iar"
value=
"false"
/>
<property
key=
"use-indirect-calls"
value=
"false"
/>
</C32CPP>
<C32Global>
<property
key=
"common-include-directories"
value=
"/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/include"
/>
<property
key=
"gp-relative-option"
value=
""
/>
<property
key=
"legacy-libc"
value=
"false"
/>
<property
key=
"relaxed-math"
value=
"false"
/>
<property
key=
"save-temps"
value=
"false"
/>
<property
key=
"wpo-lto"
value=
"false"
/>
<appendMe
value=
"-DEXT_LIB_REGISTERED_GENERAL_EVENTS -DSL_FULL -DCS_PLATFORM=6 -DMG_SIMPLELINK_NO_OSI"
/>
</C32Global>
<PICkit3PlatformTool>
<property
key=
"ADC 1"
value=
"true"
/>
<property
key=
"AutoSelectMemRanges"
value=
"auto"
/>
<property
key=
"CHANGE NOTICE"
value=
"true"
/>
<property
key=
"COMPARATOR"
value=
"true"
/>
<property
key=
"CTMU"
value=
"true"
/>
<property
key=
"DMA"
value=
"true"
/>
<property
key=
"Freeze All Other Peripherals"
value=
"true"
/>
<property
key=
"I2C1"
value=
"true"
/>
<property
key=
"I2C2"
value=
"true"
/>
<property
key=
"INPUT CAPTURE 1"
value=
"true"
/>
<property
key=
"INPUT CAPTURE 2"
value=
"true"
/>
<property
key=
"INPUT CAPTURE 3"
value=
"true"
/>
<property
key=
"INPUT CAPTURE 4"
value=
"true"
/>
<property
key=
"INPUT CAPTURE 5"
value=
"true"
/>
<property
key=
"INTERRUPT CONTROL"
value=
"true"
/>
<property
key=
"OUTPUT COMPARE 1"
value=
"true"
/>
<property
key=
"OUTPUT COMPARE 2"
value=
"true"
/>
<property
key=
"OUTPUT COMPARE 3"
value=
"true"
/>
<property
key=
"OUTPUT COMPARE 4"
value=
"true"
/>
<property
key=
"OUTPUT COMPARE 5"
value=
"true"
/>
<property
key=
"PARALLEL MASTER/SLAVE PORT"
value=
"true"
/>
<property
key=
"REAL TIME CLOCK"
value=
"true"
/>
<property
key=
"SPI/I2S 1"
value=
"true"
/>
<property
key=
"SPI/I2S 2"
value=
"true"
/>
<property
key=
"SecureSegment.SegmentProgramming"
value=
"FullChipProgramming"
/>
<property
key=
"TIMER1"
value=
"true"
/>
<property
key=
"TIMER2"
value=
"true"
/>
<property
key=
"TIMER3"
value=
"true"
/>
<property
key=
"TIMER4"
value=
"true"
/>
<property
key=
"TIMER5"
value=
"true"
/>
<property
key=
"ToolFirmwareFilePath"
value=
"Press to browse for a specific firmware version"
/>
<property
key=
"ToolFirmwareOption.UseLatestFirmware"
value=
"true"
/>
<property
key=
"UART1"
value=
"true"
/>
<property
key=
"UART2"
value=
"true"
/>
<property
key=
"hwtoolclock.frcindebug"
value=
"false"
/>
<property
key=
"memories.aux"
value=
"false"
/>
<property
key=
"memories.bootflash"
value=
"true"
/>
<property
key=
"memories.configurationmemory"
value=
"true"
/>
<property
key=
"memories.eeprom"
value=
"true"
/>
<property
key=
"memories.flashdata"
value=
"true"
/>
<property
key=
"memories.id"
value=
"true"
/>
<property
key=
"memories.programmemory"
value=
"true"
/>
<property
key=
"memories.programmemory.end"
value=
"0x1d003fff"
/>
<property
key=
"memories.programmemory.start"
value=
"0x1d000000"
/>
<property
key=
"poweroptions.powerenable"
value=
"false"
/>
<property
key=
"programmertogo.imagename"
value=
""
/>
<property
key=
"programoptions.donoteraseauxmem"
value=
"false"
/>
<property
key=
"programoptions.eraseb4program"
value=
"true"
/>
<property
key=
"programoptions.pgmspeed"
value=
"2"
/>
<property
key=
"programoptions.preserveeeprom"
value=
"false"
/>
<property
key=
"programoptions.preserveprogramrange"
value=
"false"
/>
<property
key=
"programoptions.preserveprogramrange.end"
value=
"0x1d003fff"
/>
<property
key=
"programoptions.preserveprogramrange.start"
value=
"0x1d000000"
/>
<property
key=
"programoptions.preserveuserid"
value=
"false"
/>
<property
key=
"programoptions.testmodeentrymethod"
value=
"VPPFirst"
/>
<property
key=
"programoptions.usehighvoltageonmclr"
value=
"false"
/>
<property
key=
"programoptions.uselvpprogramming"
value=
"false"
/>
<property
key=
"voltagevalue"
value=
"3.25"
/>
</PICkit3PlatformTool>
<PKOBSKDEPlatformTool>
<property
key=
"AutoSelectMemRanges"
value=
"auto"
/>
<property
key=
"SecureSegment.SegmentProgramming"
value=
"FullChipProgramming"
/>
<property
key=
"ToolFirmwareFilePath"
value=
"Press to browse for a specific firmware version"
/>
<property
key=
"ToolFirmwareOption.UseLatestFirmware"
value=
"true"
/>
<property
key=
"firmware.download.all"
value=
"false"
/>
<property
key=
"memories.configurationmemory"
value=
"true"
/>
<property
key=
"memories.dataflash"
value=
"true"
/>
<property
key=
"memories.eeprom"
value=
"true"
/>
<property
key=
"memories.id"
value=
"true"
/>
<property
key=
"memories.programmemory"
value=
"true"
/>
<property
key=
"memories.programmemory.end"
value=
"0x1d07ffff"
/>
<property
key=
"memories.programmemory.start"
value=
"0x1d000000"
/>
<property
key=
"memories.userotp"
value=
"true"
/>
<property
key=
"programoptions.donoteraseauxmem"
value=
"false"
/>
<property
key=
"programoptions.eraseb4program"
value=
"true"
/>
<property
key=
"programoptions.preservedataflash"
value=
"false"
/>
<property
key=
"programoptions.preserveeeprom"
value=
"false"
/>
<property
key=
"programoptions.preserveprogramrange"
value=
"false"
/>
<property
key=
"programoptions.preserveprogramrange.end"
value=
"0x1d0001ff"
/>
<property
key=
"programoptions.preserveprogramrange.start"
value=
"0x1d000000"
/>
<property
key=
"programoptions.usehighvoltageonmclr"
value=
"false"
/>
<property
key=
"programoptions.uselvpprogramming"
value=
"true"
/>
</PKOBSKDEPlatformTool>
</conf>
</confs>
</configurationDescriptor>
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/private/SuppressibleMessageMemo.properties
0 → 100644
View file @
376d2666
#
#Thu Sep 29 17:49:40 EEST 2016
pkobskde/
DEVID_MISMATCH
=
true
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/private/configurations.xml
0 → 100644
View file @
376d2666
<?xml version="1.0" encoding="UTF-8"?>
<configurationDescriptor
version=
"62"
>
<projectmakefile>
Makefile
</projectmakefile>
<defaultConf>
0
</defaultConf>
<confs>
<conf
name=
"mx795_CC3100_e16"
type=
"2"
>
<platformToolSN>
:=MPLABComm-USB-Microchip:=
<
vid>04D8:=
<
pid>8107:=
<
rev>0002:=
<
man>Microchip Technology Incorporated:=
<
prod>Explorer 16/32 PICkit on Board:=
<
sn>BUR162971352:=
<
drv>x:=
<
xpt>h:=end
</platformToolSN>
<languageToolchainDir>
/opt/microchip/xc32/v1.42/bin
</languageToolchainDir>
<mdbdebugger
version=
"1"
>
<placeholder1>
place holder 1
</placeholder1>
<placeholder2>
place holder 2
</placeholder2>
</mdbdebugger>
<runprofile
version=
"6"
>
<args></args>
<rundir></rundir>
<buildfirst>
true
</buildfirst>
<console-type>
0
</console-type>
<terminal-type>
0
</terminal-type>
<remove-instrumentation>
0
</remove-instrumentation>
<environment>
</environment>
</runprofile>
</conf>
</confs>
</configurationDescriptor>
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/private/private.xml
0 → 100644
View file @
376d2666
<?xml version="1.0" encoding="UTF-8"?>
<project-private
xmlns=
"http://www.netbeans.org/ns/project-private/1"
>
<editor-bookmarks
xmlns=
"http://www.netbeans.org/ns/editor-bookmarks/2"
lastBookmarkId=
"0"
/>
<open-files
xmlns=
"http://www.netbeans.org/ns/projectui-open-files/2"
>
<group>
<file>
file:/home/alex/microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon.c
</file>
<file>
file:/home/alex/microchip/harmony/v1_08_01/framework/system/debug/src/sys_debug.c
</file>
<file>
file:/home/alex/microchip/harmony/v1_08_01/framework/system/devcon/src/sys_devcon_pic32mx.c
</file>
<file>
file:/home/alex/CC3100SDK_1.2.0/cc3100-sdk/simplelink/source/spawn.c
</file>
<file>
file:/home/alex/microchip/harmony/v1_08_01/framework/system/int/src/sys_int_pic32.c
</file>
</group>
</open-files>
</project-private>
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/project.properties
0 → 100644
View file @
376d2666
examples/PIC32/mqtt_client/firmware/mqtt_client.X/nbproject/project.xml
0 → 100644
View file @
376d2666
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://www.netbeans.org/ns/project/1"
>
<type>
com.microchip.mplab.nbide.embedded.makeproject
</type>
<configuration>
<Harmony
xmlns=
"Harmony"
MHC=
"true"
/>
<data
xmlns=
"http://www.netbeans.org/ns/make-project/1"
>
<name>
mqtt_client
</name>
<creation-uuid>
e54023e9-3948-44ef-bf6f-29d8b223e555
</creation-uuid>
<make-project-type>
0
</make-project-type>
<c-extensions>
c
</c-extensions>
<cpp-extensions/>
<header-extensions>
h
</header-extensions>
<asminc-extensions/>
<sourceEncoding>
ISO-8859-1
</sourceEncoding>
<make-dep-projects/>
</data>
</configuration>
</project>
examples/PIC32/mqtt_client/firmware/mqtt_client.hconfig
0 → 100644
View file @
376d2666
#
# Application configuration file generated by
# Microchip Harmony Configurator (MHC) from Harmony version: 1.04
#
mainmenu "MPLAB Harmony & Application Configuration"
menu "Application Configuration"
config APP_INSTANCES
int "Number of Applications"
default 1
range 1 10 # Must limit to 10 or application templates will need to be updated.
config APP_AUTO_GENERATE_CODE # Used by MHC internally to selectively auto-generate app.h, app.c, and main.c
bool
default n
source "$HARMONY_VERSION_PATH/utilities/mhc/config/gencode/framework/global_event/config/global_event_gencode.hconfig"
source "$HARMONY_VERSION_PATH/utilities/mhc/config/app_name_idx_gencode.ftl" 10 instances
menu "Exception Handling"
config USE_EXCEPTION_HANDLER
bool "Use MPLAB Harmony Exception Handler Template?"
default y
---help---
Enter 'Y' if you want to include an exception handler template
(system_exceptions.c) in this system configuration. Enter 'N' if
you do not.
---endhelp---
config EXCEPTION_USE_SYS_DEBUG
bool "Use debug services in exception handler?"
depends on USE_EXCEPTION_HANDLER
default y
---help---
Enter 'Y' if you want the exception handler to use the SYS_DEBUG service to
report exception information. Enter 'N' if you do not.
---endhelp---
config EXCEPTION_BREAKPOINT
bool "Hit breakpoint when an exception occurs?"
depends on USE_EXCEPTION_HANDLER && EXCEPTION_USE_SYS_DEBUG
default y
---help---
Enter 'Y' if you want the exception handler to hit a breakpoint when
an exception occurs. Enter 'N' if you do not.
Note: Only works if debugging is enabled.
---endhelp---
endmenu # Exception Handling
#insert application specific configuration here
endmenu # Application Configuration
source "$HARMONY_VERSION_PATH/config/harmony.hconfig"
examples/PIC32/mqtt_client/firmware/src/app.c
0 → 100644
View file @
376d2666
/*
* Copyright (c) 2016 Cesanta Software Limited
* All rights reserved
*/
#include "app.h"
#include "system/debug/sys_debug.h"
#include "./../../../../../mongoose.h"
#include "user_params.h"
static
struct
mg_mgr
mgr
;
static
int
msg_id
;
struct
mg_mqtt_topic_expression
topic_expressions
[]
=
{{
"/test"
,
0
}};
APP_DATA
appData
;
void
APP_Initialize
(
void
)
{
appData
.
state
=
APP_STATE_INIT
;
DRV_RTCC_Start
();
mg_mgr_init
(
&
mgr
,
NULL
);
}
static
void
ev_handler
(
struct
mg_connection
*
nc
,
int
ev
,
void
*
p
);
void
APP_Tasks
(
void
)
{
/*
* Processing CC3100 Tasks
* It looks like SYS task and might be processed in SYS_Tasks
* But for this demo it is here to make this call
* visible
*/
_SlNonOsMainLoopTask
();
/* Check the application's current state. */
switch
(
appData
.
state
)
{
/* Application's initial state. */
case
APP_STATE_INIT
:
{
SYS_PRINT
(
"
\n\r
*** PIC32 MQTT CLIENT ***
\n\r
"
);
SYS_PRINT
(
"
\n\r
Initializing CC3100
\n\r
"
);
int
res
=
sl_Start
(
NULL
,
NULL
,
NULL
);
if
(
res
!=
0
)
{
SYS_PRINT
(
"FAILED
\n\r
"
);
appData
.
state
=
APP_STATE_DONE
;
break
;
}
SlSecParams_t
sec_params
;
memset
(
&
sec_params
,
0
,
sizeof
(
sec_params
));
sec_params
.
Key
=
NET_PWD
;
sec_params
.
KeyLen
=
sizeof
(
NET_PWD
)
-
1
;
sec_params
.
Type
=
NET_SECURITY
;
SYS_PRINT
(
"Connecting to WiFi
\n\r
"
);
sl_WlanConnect
(
NET_SSID
,
sizeof
(
NET_SSID
)
-
1
,
0
,
&
sec_params
,
NULL
);
SYS_PRINT
(
"Initialization done
\n\r
"
);
appData
.
state
=
APP_STATE_SERVICE_TASKS
;
break
;
}
case
APP_STATE_CONNECT_BROKER
:
{
if
(
mg_connect
(
&
mgr
,
MQTT_BROKER_ADDRESS
,
ev_handler
)
==
NULL
)
{
SYS_PRINT
(
"Failed to create connection
\n\r
"
);
appData
.
state
=
APP_STATE_DONE
;
}
else
{
appData
.
state
=
APP_STATE_SERVICE_TASKS
;
}
break
;
}
case
APP_STATE_SERVICE_TASKS
:
{
static
uint32_t
prev_poll_time
=
0
;
uint32_t
now
=
DRV_RTCC_TimeGet
();
if
(
now
-
prev_poll_time
>
100
)
{
/*
* We cannot call mg_mgr_poll every cycle
* it leads to SPI overload (internaly mg_mgr_poll calls
* CC3100 via SPI
*/
mg_mgr_poll
(
&
mgr
,
1
);
prev_poll_time
=
now
;
}
break
;
}
case
APP_STATE_DONE
:
{
/* Do nothing here */
break
;
}
default:
{
/* TODO: Handle error in application's state machine. */
break
;
}
}
}
void
SimpleLinkWlanEventHandler
(
SlWlanEvent_t
*
pWlanEvent
)
{
switch
(
pWlanEvent
->
Event
)
{
case
SL_WLAN_CONNECT_EVENT
:
SYS_PRINT
(
"Connected to WiFi
\r\n
"
);
break
;
case
SL_WLAN_DISCONNECT_EVENT
:
SYS_PRINT
(
"Disconnected WiFi
\r\n
"
);
break
;
default:
SYS_PRINT
(
"Got Wlan event %d
\r\n
"
,
pWlanEvent
->
Event
);
break
;
}
}
void
SimpleLinkNetAppEventHandler
(
SlNetAppEvent_t
*
pNetAppEvent
)
{
switch
(
pNetAppEvent
->
Event
)
{
case
SL_NETAPP_IPV4_IPACQUIRED_EVENT
:
SYS_PRINT
(
"Got IP
\r\n
"
);
appData
.
state
=
APP_STATE_CONNECT_BROKER
;
break
;
default:
SYS_PRINT
(
"Got NetApp Event: %d
\r\n
"
,
pNetAppEvent
->
Event
);
break
;
}
}
static
void
ev_handler
(
struct
mg_connection
*
nc
,
int
ev
,
void
*
p
)
{
struct
mg_mqtt_message
*
msg
=
(
struct
mg_mqtt_message
*
)
p
;
static
int
count1
=
0
;
switch
(
ev
)
{
case
MG_EV_CONNECT
:
if
(
*
(
int
*
)
p
!=
0
)
{
SYS_PRINT
(
"Failed to connect to %s
\r\n
"
,
MQTT_BROKER_ADDRESS
);
}
else
{
SYS_PRINT
(
"Connected to %s
\r\n
"
,
MQTT_BROKER_ADDRESS
);
}
struct
mg_send_mqtt_handshake_opts
opts
;
memset
(
&
opts
,
0
,
sizeof
(
opts
));
opts
.
user_name
=
MQTT_USER_NAME
;
opts
.
password
=
MQTT_USER_PWD
;
mg_set_protocol_mqtt
(
nc
);
mg_send_mqtt_handshake_opt
(
nc
,
"PIC32"
,
opts
);
break
;
case
MG_EV_MQTT_CONNACK
:
if
(
msg
->
connack_ret_code
!=
MG_EV_MQTT_CONNACK_ACCEPTED
)
{
SYS_PRINT
(
"Got mqtt connection error %d
\n\r
"
,
msg
->
connack_ret_code
);
}
else
{
SYS_PRINT
(
"Connected to broker
\n\r
"
);
}
SYS_PRINT
(
"Subscribing to /test
\n\r
"
);
mg_mqtt_subscribe
(
nc
,
topic_expressions
,
sizeof
(
topic_expressions
)
/
sizeof
(
*
topic_expressions
),
++
msg_id
);
nc
->
flags
|=
MG_F_USER_1
;
break
;
case
MG_EV_MQTT_SUBACK
:
SYS_PRINT
(
"Subscription acknowledged
\r\n
"
);
break
;
case
MG_EV_MQTT_PUBLISH
:
SYS_PRINT
(
"Got incoming message %s: %.*s
\r\n
"
,
msg
->
topic
,
(
int
)
msg
->
payload
.
len
,
msg
->
payload
.
p
);
break
;
case
MG_EV_POLL
:
{
if
(
nc
->
flags
&
MG_F_USER_1
)
{
char
msg
[
100
];
static
uint32_t
prev_send
=
0
;
uint32_t
now
=
DRV_RTCC_TimeGet
();
if
(
now
-
prev_send
>
1000
)
{
int
len
=
snprintf
(
msg
,
sizeof
(
msg
),
"Current RTC value: %u"
,
now
);
SYS_PRINT
(
"Publishing message with RTC value=%u
\r\n
"
,
now
);
mg_mqtt_publish
(
nc
,
"/stuff"
,
++
msg_id
,
MG_MQTT_QOS
(
0
),
msg
,
len
);
prev_send
=
now
;
}
}
break
;
}
case
MG_EV_CLOSE
:
SYS_PRINT
(
"Connection to broker is closed
\r\n
"
);
appData
.
state
=
APP_STATE_DONE
;
break
;
default:
break
;
}
}
examples/PIC32/mqtt_client/firmware/src/app.h
0 → 100644
View file @
376d2666
/*
* Copyright (c) 2016 Cesanta Software Limited
* All rights reserved
*/
#ifndef _APP_H
#define _APP_H
#include <stdint.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdlib.h>
#include "system_config.h"
#include "system_definitions.h"
#include "simplelink.h"
#ifdef __cplusplus
extern
"C"
{
#endif
/* Application states
Summary:
Application states enumeration
Description:
This enumeration defines the valid application states. These states
determine the behavior of the application at various times.
*/
typedef
enum
{
APP_STATE_INIT
=
0
,
APP_STATE_SERVICE_TASKS
,
APP_STATE_CONNECT_BROKER
,
APP_STATE_DONE
}
APP_STATES
;
// *****************************************************************************
/* Application Data
Summary:
Holds application data
Description:
This structure holds the application's data.
Remarks:
Application strings and buffers are be defined outside this structure.
*/
typedef
struct
{
/* The application's current state */
APP_STATES
state
;
}
APP_DATA
;
/*******************************************************************************
Function:
void APP_Initialize ( void )
Summary:
MPLAB Harmony application initialization routine.
Description:
This function initializes the Harmony application. It places the
application in its initial state and prepares it to run so that its
APP_Tasks function can be called.
Precondition:
All other system initialization routines should be called before calling
this routine (in "SYS_Initialize").
Parameters:
None.
Returns:
None.
Example:
<code>
APP_Initialize();
</code>
Remarks:
This routine must be called from the SYS_Initialize function.
*/
void
APP_Initialize
(
void
);
/*******************************************************************************
Function:
void APP_Tasks ( void )
Summary:
MPLAB Harmony Demo application tasks function
Description:
This routine is the Harmony Demo application's tasks function. It
defines the application's state machine and core logic.
Precondition:
The system and application initialization ("SYS_Initialize") should be
called before calling this.
Parameters:
None.
Returns:
None.
Example:
<code>
APP_Tasks();
</code>
Remarks:
This routine must be called from SYS_Tasks() routine.
*/
void
APP_Tasks
(
void
);
#ifdef __cplusplus
}
#endif
#endif
/* _APP_H */
examples/PIC32/mqtt_client/firmware/src/cc3100_port.c
0 → 100644
View file @
376d2666
/*
* Copyright (c) 2016 Cesanta Software Limited
* All rights reserved
*/
#include "app.h"
#include "system/debug/sys_debug.h"
#include "simplelink.h"
#include "user_params.h"
P_EVENT_HANDLER
g_cc3100_IRQ_handler
=
NULL
;
void
AssertCS
()
{
PLIB_PORTS_PinClear
(
PORTS_ID_0
,
CS_PORT
,
CS_PIN
);
}
void
DeassertCS
()
{
PLIB_PORTS_PinSet
(
PORTS_ID_0
,
CS_PORT
,
CS_PIN
);
}
void
CC3100_enable
()
{
PLIB_PORTS_PinSet
(
PORTS_ID_0
,
HIB_PORT
,
HIB_PIN
);
}
void
CC3100_disable
()
{
PLIB_PORTS_PinClear
(
PORTS_ID_0
,
HIB_PORT
,
HIB_PIN
);
}
Fd_t
spi_Open
(
char
*
ifName
,
unsigned
long
flags
)
{
CC3100_disable
();
return
0
;
}
int
spi_Write
(
Fd_t
fd
,
unsigned
char
*
pBuff
,
int
len
)
{
if
(
len
>
512
)
{
SYS_PRINT
(
"BUFFER TOO SMALL"
);
return
0
;
}
AssertCS
();
uint8_t
dummy
[
512
];
DRV_SPI0_BufferAddWriteRead
(
pBuff
,
dummy
,
len
);
DRV_SPI_Tasks
(
sysObj
.
spiObjectIdx0
);
DeassertCS
();
return
len
;
}
int
spi_Read
(
Fd_t
fd
,
unsigned
char
*
pBuff
,
int
len
)
{
if
(
len
>
512
)
{
SYS_PRINT
(
"BUFFER TOO SMALL"
);
return
0
;
}
uint8_t
dummy
[
512
];
memset
(
dummy
,
0xFF
,
len
);
AssertCS
();
DRV_SPI0_BufferAddWriteRead
(
dummy
,
pBuff
,
len
);
DRV_SPI_Tasks
(
sysObj
.
spiObjectIdx0
);
DeassertCS
();
return
len
;
}
int
registerInterruptHandler
(
P_EVENT_HANDLER
int_handler
,
void
*
pValue
)
{
(
void
)
pValue
;
g_cc3100_IRQ_handler
=
int_handler
;
}
examples/PIC32/mqtt_client/firmware/src/main.c
0 → 100644
View file @
376d2666
/*
* Copyright (c) 2016 Cesanta Software Limited
* All rights reserved
*/
#include <stddef.h>
#include <stdlib.h>
#include "system/common/sys_module.h"
int
main
(
void
)
{
/* Initialize all MPLAB Harmony modules, including application(s). */
SYS_Initialize
(
NULL
);
while
(
1
)
{
/* Maintain state machines of all polled MPLAB Harmony modules. */
SYS_Tasks
();
}
/* Execution should not come here during normal operation */
return
(
EXIT_FAILURE
);
}
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/configuration.xml
0 → 100644
View file @
376d2666
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configuration
version=
"1.0.8.7"
>
<Designer>
<Assets>
<Settings
bpp=
"16"
>
<MemoryLocations>
<MemoryLocation
address=
"0"
id=
"default"
/>
</MemoryLocations>
</Settings>
</Assets>
<Screens
height=
"200"
width=
"320"
>
<Screen
active=
"true"
background=
"000000"
clearOnShow=
"true"
doubleBuffer=
"false"
export=
"true"
name=
"Screen1"
primary=
"true"
visible=
"true"
>
<Objects/>
</Screen>
</Screens>
<Schemes
defaultSchemeName=
"default"
>
<Scheme
name=
"default"
>
<Alpha>
100
</Alpha>
<BackgroundOffset>
0,0
</BackgroundOffset>
<EmbossSize>
3
</EmbossSize>
<Colors>
<Primary>
FFFFFF
</Primary>
<Secondary>
404040
</Secondary>
<Disabled>
C0C0C0
</Disabled>
<Background>
000000
</Background>
<EmbossLight>
C0C0C0
</EmbossLight>
<EmbossDark>
404040
</EmbossDark>
<TextPrimary>
000000
</TextPrimary>
<TextSecondary>
FFFFFF
</TextSecondary>
<TextDisabled>
404040
</TextDisabled>
<GradientStart>
000000
</GradientStart>
<GradientEnd>
FFFFFF
</GradientEnd>
</Colors>
<FillStyle>
Color
</FillStyle>
<BackgroundType>
None
</BackgroundType>
</Scheme>
</Schemes>
</Designer>
<General>
<HarmonyPath
path=
"../../../../../../../microchip/harmony/v1_08_01"
/>
<Processor
name=
""
/>
<ForceOptimization
flag=
"true"
/>
<MergeStrategy
flag=
"USER_ALL"
/>
</General>
<Manifest>
<Files>
<File>
<Name>
osal_impl_basic.h
</Name>
<Path>
Header Files/framework/osal/src
</Path>
</File>
<File>
<Name>
peripheral_common_32bit.h
</Name>
<Path>
Header Files/framework/peripheral
</Path>
</File>
<File>
<Name>
driver_common.h
</Name>
<Path>
Header Files/framework/driver
</Path>
</File>
<File>
<Name>
sys_devcon.c
</Name>
<Path>
Source Files/framework/system/devcon/src
</Path>
</File>
<File>
<Name>
osal.h
</Name>
<Path>
Header Files/framework/osal
</Path>
</File>
<File>
<Name>
sys_ports.h
</Name>
<Path>
Header Files/framework/system/ports
</Path>
</File>
<File>
<Name>
driver.h
</Name>
<Path>
Header Files/framework/driver
</Path>
</File>
<File>
<Name>
peripheral_common.h
</Name>
<Path>
Header Files/framework/peripheral
</Path>
</File>
<File>
<Name>
sys_debug_local.h
</Name>
<Path>
Header Files/framework/system/debug/src
</Path>
</File>
<File>
<Name>
sys_common.h
</Name>
<Path>
Header Files/framework/system/common
</Path>
</File>
<File>
<Name>
sys_buffer.h
</Name>
<Path>
Header Files/framework/system/common
</Path>
</File>
<File>
<Name>
sys_int_pic32.c
</Name>
<Path>
Source Files/framework/system/int/src
</Path>
</File>
<File>
<Name>
sys_clk.h
</Name>
<Path>
Header Files/framework/system/clk
</Path>
</File>
<File>
<Name>
osal_impl_none.h
</Name>
<Path>
Header Files/framework/osal/src
</Path>
</File>
<File>
<Name>
sys_clk_mapping.h
</Name>
<Path>
Header Files/framework/system/clk
</Path>
</File>
<File>
<Name>
osal_definitions.h
</Name>
<Path>
Header Files/framework/osal
</Path>
</File>
<File>
<Name>
sys_int_mapping.h
</Name>
<Path>
Header Files/framework/system/int
</Path>
</File>
<File>
<Name>
gfx_palette.h
</Name>
<Path>
Header Files/framework/gfx
</Path>
</File>
<File>
<Name>
sys_int_private.h
</Name>
<Path>
Header Files/framework/system/int/src
</Path>
</File>
<File>
<Name>
sys_devcon.h
</Name>
<Path>
Header Files/framework/system/devcon
</Path>
</File>
<File>
<Name>
system.h
</Name>
<Path>
Header Files/framework/system
</Path>
</File>
<File>
<Name>
sys_debug.c
</Name>
<Path>
Source Files/framework/system/debug/src
</Path>
</File>
<File>
<Name>
sys_console.h
</Name>
<Path>
Header Files/framework/system/console
</Path>
</File>
<File>
<Name>
sys_debug.h
</Name>
<Path>
Header Files/framework/system/debug
</Path>
</File>
<File>
<Name>
sys_module.h
</Name>
<Path>
Header Files/framework/system/common
</Path>
</File>
<File>
<Name>
sys_devcon_pic32mx.c
</Name>
<Path>
Source Files/framework/system/devcon/src
</Path>
</File>
<File>
<Name>
sys_devcon_local.h
</Name>
<Path>
Header Files/framework/system/devcon/src
</Path>
</File>
<File>
<Name>
peripheral.h
</Name>
<Path>
Header Files/framework/peripheral
</Path>
</File>
<File>
<Name>
sys_queue.h
</Name>
<Path>
Header Files/framework/system/common
</Path>
</File>
<File>
<Name>
sys_console_local.h
</Name>
<Path>
Header Files/framework/system/console/src
</Path>
</File>
<File>
<Name>
sys_int.h
</Name>
<Path>
Header Files/framework/system/int
</Path>
</File>
</Files>
<Templates>
<Template>
<Name>
sys_console_static.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/system/console/src
</Path>
<Checksum>
0B506F1F6112899EF538390AD8DBD62F
</Checksum>
</Template>
<Template>
<Name>
system_definitions.h
</Name>
<Path>
Header Files/app/system_config/mx795_CC3100_e16
</Path>
<Checksum>
1F863F474CF6B1EF5BCAEC53DA0A1EB9
</Checksum>
</Template>
<Template>
<Name>
system_exceptions.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16
</Path>
<Checksum>
C111969CA43D6CEA1E9E33A6164E7AE0
</Checksum>
</Template>
<Template>
<Name>
drv_spi_static_local.h
</Name>
<Path>
Header Files/app/system_config/mx795_CC3100_e16/framework/driver/spi/static/src
</Path>
<Checksum>
70055803006A2C67E983956B3B3ABD25
</Checksum>
</Template>
<Template>
<Name>
drv_spi_mapping.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/driver/spi/static/src
</Path>
<Checksum>
ADEEE2519E932B46D44C41B8F44E1F19
</Checksum>
</Template>
<Template>
<Name>
drv_usart_static_byte_model.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/driver/usart/src
</Path>
<Checksum>
F91C429976AC25EB8B3639F0B0356E3B
</Checksum>
</Template>
<Template>
<Name>
system_init.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16
</Path>
<Checksum>
34219E31193F143A502765E488BC500E
</Checksum>
<ProjectFileChecksum>
368F06F4DCF995EE27BD5F31F9034D30
</ProjectFileChecksum>
</Template>
<Template>
<Name>
drv_usart_static.h
</Name>
<Path>
Header Files/app/system_config/mx795_CC3100_e16/framework/driver/usart
</Path>
<Checksum>
AE37BD63B6EC9F6ADD6B8006CE192FCB
</Checksum>
</Template>
<Template>
<Name>
drv_spi_static_tasks.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/driver/spi/static/src
</Path>
<Checksum>
8D9BDD4F87493B036E9786F53F65EE82
</Checksum>
</Template>
<Template>
<Name>
drv_spi_static.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/driver/spi/static/src
</Path>
<Checksum>
C0323F1E5F9550BF1BC4441ADB9B09D8
</Checksum>
</Template>
<Template>
<Name>
drv_rtcc_static.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/driver/rtcc/src
</Path>
<Checksum>
9A5D97DC0EADF32162B4B222AAC95408
</Checksum>
</Template>
<Template>
<Name>
sys_clk_static.h
</Name>
<Path>
Header Files/app/system_config/mx795_CC3100_e16/framework/system/clk
</Path>
<Checksum>
B4BD59D8D7C4DA95DC5E3B57755FD352
</Checksum>
</Template>
<Template>
<Name>
system_config.h
</Name>
<Path>
Header Files/app/system_config/mx795_CC3100_e16
</Path>
<Checksum>
85CDEB06EBF7053ADCB2CB37014D10D1
</Checksum>
</Template>
<Template>
<Name>
drv_usart_static_local.h
</Name>
<Path>
Header Files/app/system_config/mx795_CC3100_e16/framework/driver/usart/src
</Path>
<Checksum>
62F7F49D6A443F111DA38971475472FD
</Checksum>
</Template>
<Template>
<Name>
system_interrupt.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16
</Path>
<Checksum>
CACF8AB870174547FD1DC4FE62DECBAD
</Checksum>
<ProjectFileChecksum>
DB1F2DBEF12282D8AF55C36D1192E873
</ProjectFileChecksum>
</Template>
<Template>
<Name>
sys_clk_static.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/system/clk/src
</Path>
<Checksum>
E8C935BED4628875A8C3428DDD07355C
</Checksum>
</Template>
<Template>
<Name>
drv_spi_static.h
</Name>
<Path>
Header Files/app/system_config/mx795_CC3100_e16/framework/driver/spi/static
</Path>
<Checksum>
68B5BA023AB90B18D229B6E7CBF0850C
</Checksum>
</Template>
<Template>
<Name>
drv_usart_mapping.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/driver/usart/src
</Path>
<Checksum>
115DDE4372E58D4116BC77DC36FD97DC
</Checksum>
</Template>
<Template>
<Name>
main.c
</Name>
<Path>
Source Files/app
</Path>
</Template>
<Template>
<Name>
drv_spi_static_sys_queue.h
</Name>
<Path>
Header Files/app/system_config/mx795_CC3100_e16/framework/driver/spi/static/src
</Path>
<Checksum>
3D489FB0B5415BB6F80FA34FC0CEE9F7
</Checksum>
</Template>
<Template>
<Name>
drv_spi_static_rm_tasks.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/driver/spi/static/src
</Path>
<Checksum>
BED98A3F5628502709D95341DC70019B
</Checksum>
</Template>
<Template>
<Name>
app.c
</Name>
<Path>
Source Files/app
</Path>
</Template>
<Template>
<Name>
sys_ports_static.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/system/ports/src
</Path>
<Checksum>
F693DCC21C702581B107B8A238195A13
</Checksum>
</Template>
<Template>
<Name>
drv_spi_static_sys_queue.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/driver/spi/static/src
</Path>
<Checksum>
E06222D2E5F5F69EE3C77ACD6FCC3059
</Checksum>
</Template>
<Template>
<Name>
system_tasks.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16
</Path>
<Checksum>
9990FEA6D9BDD86EAA2B873D5A5B9DAC
</Checksum>
<ProjectFileChecksum>
91547DE270F61E54B606034EBF1BAEC1
</ProjectFileChecksum>
</Template>
<Template>
<Name>
app.h
</Name>
<Path>
Header Files/app
</Path>
</Template>
<Template>
<Name>
drv_rtcc_static.h
</Name>
<Path>
Header Files/app/system_config/mx795_CC3100_e16/framework/driver/rtcc
</Path>
<Checksum>
FED59BF02817E49C245011170B963EE2
</Checksum>
</Template>
<Template>
<Name>
drv_usart_static.c
</Name>
<Path>
Source Files/app/system_config/mx795_CC3100_e16/framework/driver/usart/src
</Path>
<Checksum>
BD4DEFD647BB5AF32D1DBF352D6139D5
</Checksum>
</Template>
</Templates>
<CompilerItems>
<C32>
<Include
value=
"/home/alex/go/src/cesanta.com/mongoose/examples/PIC32/mqtt_client/firmware/src"
/>
<Include
value=
"/home/alex/go/src/cesanta.com/mongoose/examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16"
/>
<Include
value=
"/home/alex/go/src/cesanta.com/mongoose/examples/PIC32/mqtt_client/firmware/src/mx795_CC3100_e16"
/>
<Include
value=
"/home/alex/microchip/harmony/v1_08_01/framework"
/>
<Include
value=
"/home/alex/go/src/cesanta.com/mongoose/examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework"
/>
</C32>
</CompilerItems>
<Libraries>
<Library
value=
"../../../../../../../../../microchip/harmony/v1_08_01/framework/tcpip/src/crypto/aes_pic32mx.a"
/>
<Library
value=
"../../../../../../../../../microchip/harmony/v1_08_01/bin/framework/peripheral/PIC32MX795F512L_peripherals.a"
/>
</Libraries>
</Manifest>
</configuration>
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/rtcc/drv_rtcc_static.h
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
RTCC Driver Interface Declarations for Static Single Instance Driver
Company:
Microchip Technology Inc.
File Name:
drv_rtcc_static.h
Summary:
RTCC driver interface declarations for the static single instance driver.
Description:
The RTCC device driver provides a simple interface to manage the RTCC
modules on Microchip microcontrollers. This file defines the interface
Declarations for the OC driver.
Remarks:
Static interfaces incorporate the driver instance number within the names
of the routines, eliminating the need for an object ID or object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2013 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTOCULAR PURPOSE.
IN NO EVENT SHALL MOCROCHIP OR ITS LOCENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STROCT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVOCES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#ifndef _DRV_RTCC_STATIC_H
#define _DRV_RTCC_STATIC_H
// *****************************************************************************
// *****************************************************************************
// Section: Interface Headers for RTCC Instance
// *****************************************************************************
// *****************************************************************************
void
DRV_RTCC_Initialize
(
void
);
void
DRV_RTCC_Start
(
void
);
void
DRV_RTCC_Stop
(
void
);
void
DRV_RTCC_ClockOutput
(
void
);
uint32_t
DRV_RTCC_TimeGet
(
void
);
uint32_t
DRV_RTCC_DateGet
(
void
);
uint32_t
DRV_RTCC_AlarmTimeGet
(
void
);
uint32_t
DRV_RTCC_AlarmDateGet
(
void
);
#endif // #ifndef _DRV_RTCC_STATIC_H
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/rtcc/src/drv_rtcc_static.c
0 → 100644
View file @
376d2666
/*******************************************************************************
RTCC Driver Initialization File
File Name:
drv_rtcc_static.c
Summary:
This file contains source code necessary to initialize the RTCC driver.
Description:
RTCC Driver includes initialization and other routines with small footprtint.
*******************************************************************************/
// DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2013-2014 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
// DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Header Includes
// *****************************************************************************
// *****************************************************************************
#include "peripheral/rtcc/plib_rtcc.h"
#include "peripheral/devcon/plib_devcon.h"
// *****************************************************************************
// *****************************************************************************
// Section: RTCC static driver functions
// *****************************************************************************
// *****************************************************************************
void
DRV_RTCC_Initialize
(
void
)
{
PLIB_DEVCON_SystemUnlock
(
DEVCON_ID_0
);
/* Unlock System */
/* Initialize RTCC */
PLIB_RTCC_WriteEnable
(
RTCC_ID_0
);
/* Enable writes to RTCC */
PLIB_RTCC_Disable
(
RTCC_ID_0
);
/* Disable clock to RTCC */
while
(
PLIB_RTCC_ClockRunningStatus
(
RTCC_ID_0
))
;
/*Check if clock is disabled */
PLIB_RTCC_RTCTimeSet
(
RTCC_ID_0
,
0x23595900
);
/* Set RTCC time */
PLIB_RTCC_RTCDateSet
(
RTCC_ID_0
,
0x14010100
);
/* Set RTCC date */
PLIB_RTCC_AlarmDisable
(
RTCC_ID_0
);
/* Disable alarm */
while
(
PLIB_RTCC_AlarmSyncStatusGet
(
RTCC_ID_0
))
;
/* Wait for disable */
PLIB_RTCC_AlarmTimeSet
(
RTCC_ID_0
,
0x00000500
);
/* Set RTCC alarm time */
PLIB_RTCC_AlarmDateSet
(
RTCC_ID_0
,
0x00010100
);
/* Set RTCC alarm date */
PLIB_RTCC_AlarmMaskModeSelect
(
RTCC_ID_0
,
RTCC_ALARM_EVERY_SECOND
);
/* Set RTCC alarm mode */
}
void
DRV_RTCC_Start
(
void
)
{
PLIB_RTCC_Enable
(
RTCC_ID_0
);
}
void
DRV_RTCC_Stop
(
void
)
{
PLIB_RTCC_Disable
(
RTCC_ID_0
);
}
void
DRV_RTCC_ClockOutput
(
void
)
{
PLIB_RTCC_ClockOutputEnable
(
RTCC_ID_0
);
}
uint32_t
DRV_RTCC_TimeGet
(
void
)
{
return
PLIB_RTCC_RTCTimeGet
(
RTCC_ID_0
);
}
uint32_t
DRV_RTCC_DateGet
(
void
)
{
return
PLIB_RTCC_RTCDateGet
(
RTCC_ID_0
);
}
uint32_t
DRV_RTCC_AlarmTimeGet
(
void
)
{
return
PLIB_RTCC_AlarmTimeGet
(
RTCC_ID_0
);
}
uint32_t
DRV_RTCC_AlarmDateGet
(
void
)
{
return
PLIB_RTCC_AlarmDateGet
(
RTCC_ID_0
);
}
/*******************************************************************************
End of File
*/
\ No newline at end of file
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/spi/static/drv_spi_static.h
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SPI Driver Interface Declarations for Static Single Instance Driver
Company:
Microchip Technology Inc.
File Name:
drv_spi_static.h
Summary:
SPI driver interface declarations for the static single instance driver.
Description:
The SPI device driver provides a simple interface to manage the SPI
modules on Microchip microcontrollers. This file defines the interface
Declarations for the SPI static driver.
Remarks:
Static interfaces incorporate the driver instance number within the names
of the routines, eliminating the need for an object ID or object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#ifndef _DRV_SPI_STATIC_H
#define _DRV_SPI_STATIC_H
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "driver/spi/static/src/drv_spi_static_local.h"
// DOM-IGNORE-BEGIN
#ifdef __cplusplus // Provide C++ Compatibility
extern
"C"
{
#endif
// DOM-IGNORE-END
// *********************************************************************************************
// *********************************************************************************************
// Section: System Interface Headers for the Instance 0 of SPI static driver
// *********************************************************************************************
// *********************************************************************************************
SYS_MODULE_OBJ
DRV_SPI0_Initialize
(
void
);
void
DRV_SPI0_Deinitialize
(
void
);
SYS_STATUS
DRV_SPI0_Status
(
void
);
void
DRV_SPI0_Tasks
(
void
);
// *********************************************************************************************
// *********************************************************************************************
// Section: General Client Interface Headers for the Instance 0 of SPI static driver
// *********************************************************************************************
// *********************************************************************************************
DRV_HANDLE
DRV_SPI0_Open
(
const
SYS_MODULE_INDEX
drvIndex
,
const
DRV_IO_INTENT
ioIntent
);
void
DRV_SPI0_Close
(
void
);
int32_t
DRV_SPI0_ClientConfigure
(
const
DRV_SPI_CLIENT_DATA
*
cfgData
);
// *********************************************************************************************
// *********************************************************************************************
// Section: Read & Write Client Interface Headers for the Instance 0 of SPI static driver
// *********************************************************************************************
// *********************************************************************************************
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddRead
(
void
*
rxBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
);
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddWrite
(
void
*
txBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
);
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddRead2
(
void
*
rxBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
,
DRV_SPI_BUFFER_HANDLE
*
jobHandle
);
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddWrite2
(
void
*
txBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
,
DRV_SPI_BUFFER_HANDLE
*
jobHandle
);
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddWriteRead2
(
void
*
txBuffer
,
size_t
txSize
,
void
*
rxBuffer
,
size_t
rxSize
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
,
DRV_SPI_BUFFER_HANDLE
*
jobHandle
);
DRV_SPI_BUFFER_EVENT
DRV_SPI0_BufferStatus
(
DRV_SPI_BUFFER_HANDLE
bufferHandle
);
/* This API name was present in the old static driver which is maintained for compatibility.
So, giving a new name for the new static driver which is taken care of while mapping */
#define DRV_SPI0_BufferAddWriteReadNew(txbuff, txsize, rxbuff, rxsize, cb, ct ) \
DRV_SPI0_BufferAddWriteRead2
((
txbuff
),
(
txsize
),
(
rxbuff
),
(
rxsize
),
(
cb
),
(
ct
),
NULL
)
// *********************************************************************************************
// *********************************************************************************************
// Section: Old static driver compatibility APIs, these will be deprecated.
// *********************************************************************************************
// *********************************************************************************************
bool
DRV_SPI0_ReceiverBufferIsFull
(
void
);
bool
DRV_SPI0_TransmitterBufferIsFull
(
void
);
int32_t
DRV_SPI0_BufferAddWriteRead
(
const
void
*
txBuffer
,
void
*
rxBuffer
,
uint32_t
size
);
// *********************************************************************************************
// DOM-IGNORE-BEGIN
#ifdef __cplusplus
}
#endif
// DOM-IGNORE-END
#endif // #ifndef _DRV_SPI_STATIC_H
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_mapping.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SPI Driver Dynamic to Static mapping
Company:
Microchip Technology Inc.
File Name:
drv_spi_mapping.c
Summary:
Source code for the SPI driver dynamic APIs to static API mapping.
Description:
This file contains code that maps dynamic APIs to static whenever
the static mode of the driver is selected..
Remarks:
Static interfaces incorporate the driver instance number within the names
of the routines, eliminating the need for an object ID or object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
#include "system_definitions.h"
SYS_MODULE_OBJ
DRV_SPI_Initialize
(
const
SYS_MODULE_INDEX
index
,
const
SYS_MODULE_INIT
*
const
init
)
{
SYS_MODULE_OBJ
returnValue
;
switch
(
index
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_Initialize
();
break
;
}
default:
{
returnValue
=
SYS_MODULE_OBJ_INVALID
;
break
;
}
}
return
returnValue
;
}
void
DRV_SPI_Deinitialize
(
SYS_MODULE_OBJ
object
)
{
switch
(
object
)
{
case
DRV_SPI_INDEX_0
:
{
DRV_SPI0_Deinitialize
();
break
;
}
default:
{
break
;
}
}
}
SYS_STATUS
DRV_SPI_Status
(
SYS_MODULE_OBJ
object
)
{
SYS_STATUS
returnValue
;
switch
(
object
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_Status
();
break
;
}
default:
{
returnValue
=
SYS_STATUS_ERROR
;
break
;
}
}
return
returnValue
;
}
void
DRV_SPI_Tasks
(
SYS_MODULE_OBJ
object
)
{
switch
(
object
)
{
case
DRV_SPI_INDEX_0
:
{
DRV_SPI0_Tasks
();
break
;
}
default:
{
break
;
}
}
}
//client interface
DRV_HANDLE
DRV_SPI_Open
(
const
SYS_MODULE_INDEX
index
,
const
DRV_IO_INTENT
ioIntent
)
{
DRV_HANDLE
returnValue
;
switch
(
index
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_Open
(
index
,
ioIntent
);
break
;
}
default:
{
returnValue
=
DRV_HANDLE_INVALID
;
break
;
}
}
return
returnValue
;
}
void
DRV_SPI_Close
(
const
DRV_HANDLE
handle
)
{
uintptr_t
instance
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_SPI_INDEX_0
:
{
DRV_SPI0_Close
(
);
break
;
}
default:
{
break
;
}
}
}
int32_t
DRV_SPI_ClientConfigure
(
DRV_HANDLE
handle
,
const
DRV_SPI_CLIENT_DATA
*
cfgData
)
{
uintptr_t
instance
;
int32_t
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_ClientConfigure
(
cfgData
);
break
;
}
default:
{
returnValue
=
(
int32_t
)
DRV_HANDLE_INVALID
;
break
;
}
}
return
returnValue
;
}
//Read & Write Client Interface
DRV_SPI_BUFFER_HANDLE
DRV_SPI_BufferAddRead
(
DRV_HANDLE
handle
,
void
*
rxBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
)
{
uintptr_t
instance
;
DRV_SPI_BUFFER_HANDLE
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_BufferAddRead
(
rxBuffer
,
size
,
completeCB
,
context
);
break
;
}
default:
{
returnValue
=
DRV_SPI_BUFFER_HANDLE_INVALID
;
break
;
}
}
return
returnValue
;
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI_BufferAddWrite
(
DRV_HANDLE
handle
,
void
*
txBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
)
{
uintptr_t
instance
;
DRV_SPI_BUFFER_HANDLE
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_BufferAddWrite
(
txBuffer
,
size
,
completeCB
,
context
);
break
;
}
default:
{
returnValue
=
DRV_SPI_BUFFER_HANDLE_INVALID
;
break
;
}
}
return
returnValue
;
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI_BufferAddWriteRead
(
DRV_HANDLE
handle
,
void
*
txBuffer
,
size_t
txSize
,
void
*
rxBuffer
,
size_t
rxSize
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
)
{
uintptr_t
instance
;
DRV_SPI_BUFFER_HANDLE
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
//Mapping to a new static driver's API name.
switch
(
instance
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_BufferAddWriteReadNew
(
txBuffer
,
txSize
,
rxBuffer
,
rxSize
,
completeCB
,
context
);
break
;
}
default:
{
returnValue
=
DRV_SPI_BUFFER_HANDLE_INVALID
;
break
;
}
}
return
returnValue
;
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI_BufferAddRead2
(
DRV_HANDLE
handle
,
void
*
rxBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
,
DRV_SPI_BUFFER_HANDLE
*
jobHandle
)
{
uintptr_t
instance
;
DRV_SPI_BUFFER_HANDLE
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_BufferAddRead2
(
rxBuffer
,
size
,
completeCB
,
context
,
jobHandle
);
break
;
}
default:
{
returnValue
=
DRV_SPI_BUFFER_HANDLE_INVALID
;
break
;
}
}
return
returnValue
;
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI_BufferAddWrite2
(
DRV_HANDLE
handle
,
void
*
txBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
,
DRV_SPI_BUFFER_HANDLE
*
jobHandle
)
{
uintptr_t
instance
;
DRV_SPI_BUFFER_HANDLE
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_BufferAddWrite2
(
txBuffer
,
size
,
completeCB
,
context
,
jobHandle
);
break
;
}
default:
{
returnValue
=
DRV_SPI_BUFFER_HANDLE_INVALID
;
break
;
}
}
return
returnValue
;
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI_BufferAddWriteRead2
(
DRV_HANDLE
handle
,
void
*
txBuffer
,
size_t
txSize
,
void
*
rxBuffer
,
size_t
rxSize
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
,
DRV_SPI_BUFFER_HANDLE
*
jobHandle
)
{
uintptr_t
instance
;
DRV_SPI_BUFFER_HANDLE
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_SPI_INDEX_0
:
{
returnValue
=
DRV_SPI0_BufferAddWriteRead2
(
txBuffer
,
txSize
,
rxBuffer
,
rxSize
,
completeCB
,
context
,
jobHandle
);
break
;
}
default:
{
returnValue
=
DRV_SPI_BUFFER_HANDLE_INVALID
;
break
;
}
}
return
returnValue
;
}
DRV_SPI_BUFFER_EVENT
DRV_SPI_BufferStatus
(
DRV_SPI_BUFFER_HANDLE
bufferHandle
)
{
//This function is independent of instance or client.
return
DRV_SPI0_BufferStatus
(
bufferHandle
);
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SPI Driver Static implementation
Company:
Microchip Technology Inc.
File Name:
drv_spi_static.c
Summary:
Source code for the SPI driver static implementation.
Description:
The SPI device driver provides a simple interface to manage the SPI
modules on Microchip microcontrollers. This file contains static implementation
for the SPI driver.
Remarks:
Static interfaces incorporate the driver instance number within the names
of the routines, eliminating the need for an object ID or object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include <string.h>
#include "system_config.h"
#include "system_definitions.h"
// *****************************************************************************
// *****************************************************************************
// Section: Global Data
// *****************************************************************************
// *****************************************************************************
static
uint8_t
sDrvSPIQueueArea
[
DRV_SPI_SYS_QUEUE_BUFFER_SIZE
(
DRV_SPI_INSTANCES_NUMBER
,
sizeof
(
DRV_SPI_JOB_OBJECT
),
DRV_SPI_INSTANCES_NUMBER
*
DRV_SPI_ELEMENTS_PER_QUEUE
)];
/* This is the Queue manager object . */
static
DRV_SPI_SYS_QUEUE_MANAGER_SETUP
qmInitData
=
{
sDrvSPIQueueArea
,
sizeof
(
sDrvSPIQueueArea
),
DRV_SPI_INSTANCES_NUMBER
,
sizeof
(
DRV_SPI_JOB_OBJECT
),
DRV_SPI_SYS_QUEUE_Fifo
,
};
/* This is the Queue setup object . */
static
DRV_SPI_SYS_QUEUE_SETUP
qInitData
=
{
0
,
10
,
0
,
};
/* This is the Queue Manager handle*/
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
hQueueManager
;
// *****************************************************************************
// *****************************************************************************
// Section: Instance 0 static driver functions
// *****************************************************************************
// *****************************************************************************
/* This is the driver static object . */
DRV_SPI_OBJ
gDrvSPI0Obj
;
SYS_MODULE_OBJ
DRV_SPI0_Initialize
(
void
)
{
DRV_SPI_OBJ
*
dObj
=
(
DRV_SPI_OBJ
*
)
NULL
;
dObj
=
&
gDrvSPI0Obj
;
/* Disable the SPI module to configure it*/
PLIB_SPI_Disable
(
SPI_ID_1
);
/* Set up Master or Slave Mode*/
PLIB_SPI_MasterEnable
(
SPI_ID_1
);
PLIB_SPI_PinDisable
(
SPI_ID_1
,
SPI_PIN_SLAVE_SELECT
);
/* Set up if the SPI is allowed to run while the rest of the CPU is in idle mode*/
PLIB_SPI_StopInIdleEnable
(
SPI_ID_1
);
/* Set up clock Polarity and output data phase*/
PLIB_SPI_ClockPolaritySelect
(
SPI_ID_1
,
SPI_CLOCK_POLARITY_IDLE_LOW
);
PLIB_SPI_OutputDataPhaseSelect
(
SPI_ID_1
,
SPI_OUTPUT_DATA_PHASE_ON_IDLE_TO_ACTIVE_CLOCK
);
/* Set up the Input Sample Phase*/
PLIB_SPI_InputSamplePhaseSelect
(
SPI_ID_1
,
SPI_INPUT_SAMPLING_PHASE_IN_MIDDLE
);
/* Communication Width Selection */
PLIB_SPI_CommunicationWidthSelect
(
SPI_ID_1
,
SPI_COMMUNICATION_WIDTH_8BITS
);
/* Baud rate selection */
PLIB_SPI_BaudRateSet
(
SPI_ID_1
,
SYS_CLK_PeripheralFrequencyGet
(
CLK_BUS_PERIPHERAL_2
),
10000000
);
/* Protocol selection */
PLIB_SPI_FramedCommunicationDisable
(
SPI_ID_1
);
#if defined (PLIB_SPI_ExistsAudioProtocolControl)
if
(
PLIB_SPI_ExistsAudioProtocolControl
(
SPI_ID_1
))
{
PLIB_SPI_AudioProtocolDisable
(
SPI_ID_1
);
}
#endif
/* Buffer type selection */
#if defined (PLIB_SPI_ExistsFIFOControl)
if
(
PLIB_SPI_ExistsFIFOControl
(
SPI_ID_1
))
{
PLIB_SPI_FIFODisable
(
SPI_ID_1
);
}
#endif
PLIB_SPI_BufferClear
(
SPI_ID_1
);
PLIB_SPI_ReceiverOverflowClear
(
SPI_ID_1
);
/* Initialize Queue only once for all instances of SPI driver*/
if
(
DRV_SPI_SYS_QUEUE_Initialize
(
&
qmInitData
,
&
hQueueManager
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Could not create queuing system."
);
return
SYS_MODULE_OBJ_INVALID
;
}
/* Update the Queue parameters. */
qInitData
.
maxElements
=
10
;
//Queue size
qInitData
.
reserveElements
=
1
;
//Mininmum number of job queues reserved
/* Create Queue for this instance of SPI */
if
(
DRV_SPI_SYS_QUEUE_CreateQueue
(
hQueueManager
,
&
qInitData
,
&
dObj
->
queue
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Could not set up driver instance queue."
);
return
SYS_MODULE_OBJ_INVALID
;
}
/* Update the SPI OBJECT parameters. */
dObj
->
operationStarting
=
NULL
;
dObj
->
operationEnded
=
NULL
;
dObj
->
numTrfsSmPolled
=
16
;
/* Enable the Module */
PLIB_SPI_Enable
(
SPI_ID_1
);
return
(
SYS_MODULE_OBJ
)
DRV_SPI_INDEX_0
;
}
void
DRV_SPI0_Deinitialize
(
void
)
{
/* Disable the SPI Module */
PLIB_SPI_Disable
(
SPI_ID_1
);
return
;
}
SYS_STATUS
DRV_SPI0_Status
(
void
)
{
/* Return the current status of driver instance */
return
SYS_STATUS_READY
;
}
void
DRV_SPI0_Tasks
(
void
)
{
/* Call the respective task routine */
DRV_SPI0_PolledMasterRM8BitTasks
(
&
gDrvSPI0Obj
);
}
DRV_HANDLE
DRV_SPI0_Open
(
const
SYS_MODULE_INDEX
index
,
const
DRV_IO_INTENT
intent
)
{
return
(
DRV_HANDLE
)
DRV_SPI_INDEX_0
;
}
void
DRV_SPI0_Close
(
void
)
{
return
;
}
int32_t
DRV_SPI0_ClientConfigure
(
const
DRV_SPI_CLIENT_DATA
*
cfgData
)
{
DRV_SPI_OBJ
*
dObj
=
(
DRV_SPI_OBJ
*
)
NULL
;
dObj
=
&
gDrvSPI0Obj
;
if
(
cfgData
==
NULL
)
{
/* Nothing to do */
return
0
;
}
if
(
cfgData
->
operationStarting
!=
NULL
)
{
dObj
->
operationStarting
=
cfgData
->
operationStarting
;
}
if
(
cfgData
->
operationEnded
!=
NULL
)
{
dObj
->
operationEnded
=
cfgData
->
operationEnded
;
}
if
(
cfgData
->
baudRate
!=
0
)
{
PLIB_SPI_BaudRateSet
(
SPI_ID_1
,
SYS_CLK_PeripheralFrequencyGet
(
CLK_BUS_PERIPHERAL_2
),
cfgData
->
baudRate
);
}
return
0
;
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddRead2
(
void
*
rxBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
,
DRV_SPI_BUFFER_HANDLE
*
jobHandle
)
{
DRV_SPI_OBJ
*
dObj
=
(
DRV_SPI_OBJ
*
)
NULL
;
dObj
=
&
gDrvSPI0Obj
;
DRV_SPI_JOB_OBJECT
*
pJob
=
NULL
;
if
(
DRV_SPI_SYS_QUEUE_AllocElementLock
(
dObj
->
queue
,
(
void
**
)
&
pJob
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Error trying to get a free entry."
);
return
(
DRV_SPI_BUFFER_HANDLE
)
NULL
;
}
memset
(
pJob
,
0
,
sizeof
(
DRV_SPI_JOB_OBJECT
));
pJob
->
rxBuffer
=
rxBuffer
;
pJob
->
dataLeftToRx
=
size
;
pJob
->
dummyLeftToTx
=
size
;
pJob
->
completeCB
=
completeCB
;
pJob
->
context
=
context
;
pJob
->
status
=
DRV_SPI_BUFFER_EVENT_PENDING
;
if
(
jobHandle
!=
NULL
)
{
*
jobHandle
=
(
DRV_SPI_BUFFER_HANDLE
)
pJob
;
}
if
(
DRV_SPI_SYS_QUEUE_EnqueueLock
(
dObj
->
queue
,
(
void
*
)
pJob
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Error enqueing new job."
);
return
(
DRV_SPI_BUFFER_HANDLE
)
NULL
;
}
return
(
DRV_SPI_BUFFER_HANDLE
)
pJob
;
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddWrite2
(
void
*
txBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
,
DRV_SPI_BUFFER_HANDLE
*
jobHandle
)
{
DRV_SPI_OBJ
*
dObj
=
(
DRV_SPI_OBJ
*
)
NULL
;
dObj
=
&
gDrvSPI0Obj
;
DRV_SPI_JOB_OBJECT
*
pJob
=
NULL
;
if
(
DRV_SPI_SYS_QUEUE_AllocElementLock
(
dObj
->
queue
,
(
void
**
)
&
pJob
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Error trying to get a free entry."
);
return
(
DRV_SPI_BUFFER_HANDLE
)
NULL
;
}
memset
(
pJob
,
0
,
sizeof
(
DRV_SPI_JOB_OBJECT
));
pJob
->
txBuffer
=
txBuffer
;
pJob
->
dataLeftToTx
=
size
;
pJob
->
dummyLeftToRx
=
size
;
pJob
->
completeCB
=
completeCB
;
pJob
->
context
=
context
;
pJob
->
status
=
DRV_SPI_BUFFER_EVENT_PENDING
;
if
(
jobHandle
!=
NULL
)
{
*
jobHandle
=
(
DRV_SPI_BUFFER_HANDLE
)
pJob
;
}
if
(
DRV_SPI_SYS_QUEUE_EnqueueLock
(
dObj
->
queue
,
(
void
*
)
pJob
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Error enqueing new job."
);
return
(
DRV_SPI_BUFFER_HANDLE
)
NULL
;
}
return
(
DRV_SPI_BUFFER_HANDLE
)
pJob
;
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddWriteRead2
(
void
*
txBuffer
,
size_t
txSize
,
void
*
rxBuffer
,
size_t
rxSize
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
,
DRV_SPI_BUFFER_HANDLE
*
jobHandle
)
{
DRV_SPI_OBJ
*
dObj
=
(
DRV_SPI_OBJ
*
)
NULL
;
dObj
=
&
gDrvSPI0Obj
;
DRV_SPI_JOB_OBJECT
*
pJob
=
NULL
;
if
(
DRV_SPI_SYS_QUEUE_AllocElementLock
(
dObj
->
queue
,
(
void
**
)
&
pJob
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Error trying to get a free entry."
);
return
(
DRV_SPI_BUFFER_HANDLE
)
NULL
;
}
memset
(
pJob
,
0
,
sizeof
(
DRV_SPI_JOB_OBJECT
));
pJob
->
txBuffer
=
txBuffer
;
pJob
->
dataLeftToTx
=
txSize
;
pJob
->
rxBuffer
=
rxBuffer
;
pJob
->
dataLeftToRx
=
rxSize
;
if
(
jobHandle
!=
NULL
)
{
*
jobHandle
=
(
DRV_SPI_BUFFER_HANDLE
)
pJob
;
}
if
(
rxSize
>
txSize
)
{
pJob
->
dummyLeftToTx
=
rxSize
-
txSize
;
}
if
(
txSize
>
rxSize
)
{
pJob
->
dummyLeftToRx
=
txSize
-
rxSize
;
}
pJob
->
completeCB
=
completeCB
;
pJob
->
context
=
context
;
pJob
->
status
=
DRV_SPI_BUFFER_EVENT_PENDING
;
if
(
DRV_SPI_SYS_QUEUE_EnqueueLock
(
dObj
->
queue
,
(
void
*
)
pJob
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Error enqueing new job."
);
return
(
DRV_SPI_BUFFER_HANDLE
)
NULL
;
}
return
(
DRV_SPI_BUFFER_HANDLE
)
pJob
;
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddRead
(
void
*
rxBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
)
{
return
DRV_SPI0_BufferAddRead2
(
rxBuffer
,
size
,
completeCB
,
context
,
NULL
);
}
DRV_SPI_BUFFER_HANDLE
DRV_SPI0_BufferAddWrite
(
void
*
txBuffer
,
size_t
size
,
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
,
void
*
context
)
{
return
DRV_SPI0_BufferAddWrite2
(
txBuffer
,
size
,
completeCB
,
context
,
NULL
);
}
DRV_SPI_BUFFER_EVENT
DRV_SPI0_BufferStatus
(
DRV_SPI_BUFFER_HANDLE
bufferHandle
)
{
DRV_SPI_JOB_OBJECT
*
pJob
=
(
DRV_SPI_JOB_OBJECT
*
)
bufferHandle
;
return
pJob
->
status
;
}
int32_t
DRV_SPI0_PolledErrorTasks
(
struct
DRV_SPI_OBJ
*
dObj
)
{
if
(
dObj
->
currentJob
==
NULL
)
{
return
0
;
}
register
DRV_SPI_JOB_OBJECT
*
currentJob
=
dObj
->
currentJob
;
if
(
PLIB_SPI_ReceiverHasOverflowed
(
SPI_ID_1
))
{
currentJob
->
status
=
DRV_SPI_BUFFER_EVENT_ERROR
;
if
(
currentJob
->
completeCB
!=
NULL
)
{
(
*
currentJob
->
completeCB
)(
DRV_SPI_BUFFER_EVENT_ERROR
,
(
DRV_SPI_BUFFER_HANDLE
)
currentJob
,
currentJob
->
context
);
}
if
(
dObj
->
operationEnded
!=
NULL
)
{
(
*
dObj
->
operationEnded
)(
DRV_SPI_BUFFER_EVENT_ERROR
,
(
DRV_SPI_BUFFER_HANDLE
)
currentJob
,
currentJob
->
context
);
}
if
(
DRV_SPI_SYS_QUEUE_FreeElementLock
(
dObj
->
queue
,
currentJob
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Queue free element error."
);
return
0
;
}
dObj
->
currentJob
=
NULL
;
PLIB_SPI_BufferClear
(
SPI_ID_1
);
PLIB_SPI_ReceiverOverflowClear
(
SPI_ID_1
);
}
return
0
;
}
// *********************************************************************************************
// *********************************************************************************************
// Section: Old static driver compatibility APIs, these will be deprecated.
// *********************************************************************************************
// *********************************************************************************************
bool
DRV_SPI0_ReceiverBufferIsFull
(
void
)
{
return
(
PLIB_SPI_ReceiverBufferIsFull
(
SPI_ID_1
));
}
bool
DRV_SPI0_TransmitterBufferIsFull
(
void
)
{
return
(
PLIB_SPI_TransmitBufferIsFull
(
SPI_ID_1
));
}
int32_t
DRV_SPI0_BufferAddWriteRead
(
const
void
*
txBuffer
,
void
*
rxBuffer
,
uint32_t
size
)
{
bool
continueLoop
;
int32_t
txcounter
=
0
;
int32_t
rxcounter
=
0
;
do
{
continueLoop
=
false
;
if
(
!
PLIB_SPI_TransmitBufferIsFull
(
SPI_ID_1
)
&&
txcounter
<
size
)
{
PLIB_SPI_BufferWrite
(
SPI_ID_1
,
((
uint8_t
*
)
txBuffer
)[
txcounter
]);
txcounter
++
;
continueLoop
=
true
;
}
while
(
txcounter
!=
rxcounter
)
{
while
(
!
PLIB_SPI_ReceiverBufferIsFull
(
SPI_ID_1
));
((
uint8_t
*
)
rxBuffer
)[
rxcounter
]
=
PLIB_SPI_BufferRead
(
SPI_ID_1
);
rxcounter
++
;
continueLoop
=
true
;
}
if
(
txcounter
>
rxcounter
)
{
continueLoop
=
true
;
}
}
while
(
continueLoop
);
return
txcounter
;
}
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_local.h
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SPI Driver Local Data Structures for static implementation
Company:
Microchip Technology Inc.
File Name:
drv_spi_static_local.h
Summary:
SPI Driver Local Data Structures for static implementation
Description:
Driver Local Data Structures for static implementation
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute Software
only when embedded on a Microchip microcontroller or digital signal controller
that is integrated into your product or third party product (pursuant to the
sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#ifndef _DRV_SPI_STATIC_LOCAL_H
#define _DRV_SPI_STATIC_LOCAL_H
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
#include "driver/spi/drv_spi.h"
#include "system/int/sys_int.h"
#include "system/debug/sys_debug.h"
#include "driver/spi/static/src/drv_spi_static_sys_queue.h"
// DOM-IGNORE-BEGIN
#ifdef __cplusplus // Provide C++ Compatibility
extern
"C"
{
#endif
// DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Data Type Definitions
// *****************************************************************************
// *****************************************************************************
#define MAX(a,b) ((a<b) ? b : a)
#define MIN(a,b) ((b<a) ? b : a)
#define PLIB_SPI_RX_8BIT_FIFO_SIZE(index) 16
#define PLIB_SPI_RX_8BIT_HW_MARK(index) 8
#define PLIB_SPI_RX_16BIT_FIFO_SIZE(index) 8
#define PLIB_SPI_RX_16BIT_HW_MARK(index) 4
#define PLIB_SPI_RX_32BIT_FIFO_SIZE(index) 4
#define PLIB_SPI_RX_32BIT_HW_MARK(index) 2
#define PLIB_SPI_TX_8BIT_FIFO_SIZE(index) 16
#define PLIB_SPI_TX_8BIT_LW_MARK(index) 8
#define PLIB_SPI_TX_16BIT_FIFO_SIZE(index) 8
#define PLIB_SPI_TX_16BIT_LW_MARK(index) 4
#define PLIB_SPI_TX_32BIT_FIFO_SIZE(index) 4
#define PLIB_SPI_TX_32BIT_LW_MARK(index) 2
struct
DRV_SPI_OBJ
;
/* SPI Job object. */
typedef
struct
_DRV_SPI_JOB_OBJECT
{
uint8_t
*
txBuffer
;
uint8_t
*
rxBuffer
;
size_t
dataTxed
;
size_t
dataRxed
;
size_t
dataLeftToTx
;
size_t
dummyLeftToTx
;
size_t
dataLeftToRx
;
size_t
dummyLeftToRx
;
DRV_SPI_BUFFER_EVENT
status
;
DRV_SPI_BUFFER_EVENT_HANDLER
completeCB
;
void
*
context
;
}
DRV_SPI_JOB_OBJECT
;
// *****************************************************************************
/* SPI Static Driver Instance Object
Summary:
Object used to keep any data required for the static SPI driver.
Description:
This object is used to keep track of any data that must be maintained to
manage the SPI static driver.
Remarks:
None.
*/
typedef
struct
DRV_SPI_OBJ
{
uint8_t
numTrfsSmPolled
;
bool
errEnabled
;
DRV_SPI_BUFFER_EVENT_HANDLER
operationStarting
;
DRV_SPI_BUFFER_EVENT_HANDLER
operationEnded
;
DRV_SPI_SYS_QUEUE_HANDLE
queue
;
DRV_SPI_JOB_OBJECT
*
currentJob
;
bool
txEnabled
;
bool
rxEnabled
;
uint8_t
symbolsInProgress
;
}
DRV_SPI_OBJ
;
// *****************************************************************************
// *****************************************************************************
// Section: Queue related Data Type Definitions
// *****************************************************************************
// *****************************************************************************
typedef
struct
_DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
{
struct
_DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pNext
;
}
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
;
typedef
struct
_DRV_SPI_SYS_QUEUE_QUEUE_DATA
{
void
*
pQueueManager
;
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pHead
;
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pTail
;
DRV_SPI_SYS_QUEUE_INTERUPT_CHANGE
fptrIntChange
;
size_t
numReserved
;
size_t
maxElements
;
size_t
numAlloc
;
struct
_DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pNext
;
size_t
numEnqueued
;
size_t
numAllocOps
;
size_t
numFreeOps
;
size_t
numDequeueOps
;
size_t
numEnqueueOps
;
size_t
numReserveLW
;
size_t
numAllocHW
;
size_t
numEnqueuedHW
;
size_t
outOfMemoryErrors
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
;
typedef
struct
_DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
{
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueueArea
;
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pFreeQueueHead
;
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pFreeQueueTail
;
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pElementArea
;
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pFreeElementHead
;
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pFreeElementTail
;
size_t
numReserveElements
;
size_t
numFreeElements
;
size_t
numAllocOps
;
size_t
numFreeOps
;
size_t
numQueueCreateOps
;
size_t
numQueueDestroyOps
;
size_t
freeElementsLW
;
size_t
reserveElementsLW
;
size_t
outOfMemoryErrors
;
uint8_t
numQueues
;
uint8_t
numQueuesHW
;
}
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
;
// *****************************************************************************
// *****************************************************************************
// Section: Local functions.
// *****************************************************************************
// *****************************************************************************
int32_t
DRV_SPI0_PolledMasterRM8BitTasks
(
struct
DRV_SPI_OBJ
*
dObj
);
int32_t
DRV_SPI0_PolledErrorTasks
(
struct
DRV_SPI_OBJ
*
dObj
);
int32_t
DRV_SPI0_MasterRMSend8BitPolled
(
struct
DRV_SPI_OBJ
*
dObj
);
int32_t
DRV_SPI0_MasterRMReceive8BitPolled
(
struct
DRV_SPI_OBJ
*
dObj
);
// DOM-IGNORE-BEGIN
#ifdef __cplusplus
}
#endif
// DOM-IGNORE-END
#endif //#ifndef _DRV_SPI_STATIC_LOCAL_H
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_rm_tasks.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SPI Driver Functions for Static Standard Buffer Driver Tasks Functions
Company:
Microchip Technology Inc.
File Name:
drv_spi_static_rm_tasks.c
Summary:
SPI driver tasks functions
Description:
The SPI device driver provides a simple interface to manage the SPI
modules on Microchip microcontrollers. This file contains implemenation
for the SPI driver.
Remarks:
This file is generated from framework/driver/spi/template/drv_spi_static_rm_tasks.c.ftl
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#include "system_config.h"
#include "system_definitions.h"
int32_t
DRV_SPI0_MasterRMSend8BitPolled
(
struct
DRV_SPI_OBJ
*
pDrvObj
)
{
register
DRV_SPI_JOB_OBJECT
*
currentJob
=
pDrvObj
->
currentJob
;
/* Check to see if we have any more bytes to transmit */
if
(
currentJob
->
dataLeftToTx
+
currentJob
->
dummyLeftToTx
==
0
)
{
return
0
;
}
/* Check to see if the transmit buffer is empty*/
if
(
!
PLIB_SPI_TransmitBufferIsEmpty
(
SPI_ID_1
))
{
return
0
;
}
/* Make sure that we don't have something in progress and overrun the RX buffer */
if
(
pDrvObj
->
symbolsInProgress
!=
0
)
{
return
0
;
}
if
(
currentJob
->
dataLeftToTx
!=
0
)
{
/* Transmit the data & update the counts */
PLIB_SPI_BufferWrite
(
SPI_ID_1
,
currentJob
->
txBuffer
[
currentJob
->
dataTxed
]);
currentJob
->
dataTxed
++
;
currentJob
->
dataLeftToTx
--
;
}
else
{
/* Transmit the dummy data & update the counts */
PLIB_SPI_BufferWrite
(
SPI_ID_1
,
0xff
);
currentJob
->
dummyLeftToTx
--
;
}
/* We now have a symbol in progress*/
pDrvObj
->
symbolsInProgress
=
1
;
return
0
;
}
int32_t
DRV_SPI0_MasterRMReceive8BitPolled
(
struct
DRV_SPI_OBJ
*
pDrvObj
)
{
register
DRV_SPI_JOB_OBJECT
*
currentJob
=
pDrvObj
->
currentJob
;
if
(
currentJob
==
NULL
)
{
return
0
;
}
if
(
PLIB_SPI_ReceiverBufferIsFull
(
SPI_ID_1
))
{
/* We have data waiting in the SPI buffer */
if
(
currentJob
->
dataLeftToRx
!=
0
)
{
/* Receive the data and updates the count */
currentJob
->
rxBuffer
[
currentJob
->
dataRxed
]
=
PLIB_SPI_BufferRead
(
SPI_ID_1
);
currentJob
->
dataRxed
++
;
currentJob
->
dataLeftToRx
--
;
}
else
{
/* No Data but dummy data: Note: We cannot just clear the
buffer because we have to keep track of how many symbols/units we
have received, and the number may have increased since we checked
how full the buffer is.*/
PLIB_SPI_BufferRead
(
SPI_ID_1
);
//SYS_CONSOLE_MESSAGE("Rd ");
currentJob
->
dummyLeftToRx
--
;
}
/* No longer have a symbol in progress */
pDrvObj
->
symbolsInProgress
=
0
;
}
return
0
;
}
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SPI Driver Queue related local interfaces
Company:
Microchip Technology Inc.
File Name:
drv_spi_static_sys_queue.h
Summary:
Queue related local interface declarations
Description:
Queue related local interface declarations
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute Software
only when embedded on a Microchip microcontroller or digital signal controller
that is integrated into your product or third party product (pursuant to the
sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include <string.h>
#include "system_config.h"
#include "system_definitions.h"
DRV_SPI_SYS_QUEUE_RESULT
_DRV_SPI_SYS_QUEUE_LockQueue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
bool
freeList
);
DRV_SPI_SYS_QUEUE_RESULT
_DRV_SPI_SYS_QUEUE_UnlockQueue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
bool
freeList
);
DRV_SPI_SYS_QUEUE_RESULT
_DRV_SPI_SYS_QUEUE_LockQueueManager
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
);
DRV_SPI_SYS_QUEUE_RESULT
_DRV_SPI_SYS_QUEUE_UnlockQueueManager
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Initialize
(
DRV_SPI_SYS_QUEUE_MANAGER_SETUP
*
initParams
,
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
*
handle
)
{
if
(
initParams
==
NULL
||
initParams
->
pBuffer
==
NULL
||
handle
==
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
(
initParams
->
type
!=
DRV_SPI_SYS_QUEUE_Fifo
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
size_t
sizeNeeded
=
(
sizeof
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
)
*
initParams
->
numQueues
)
+
sizeof
(
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
)
+
(
sizeof
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
)
+
initParams
->
elementSize
);
if
(
initParams
->
bufferLen
<
sizeNeeded
)
{
return
DRV_SPI_SYS_QUEUE_OUT_OF_MEMORY
;
}
// Blank the memory area
memset
(
initParams
->
pBuffer
,
0
,
initParams
->
bufferLen
);
// Set up the Queue Manager Area
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
pQueueManager
=
(
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
)
initParams
->
pBuffer
;
pQueueManager
->
pQueueArea
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)((
uint32_t
)
pQueueManager
+
sizeof
(
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
));
pQueueManager
->
pElementArea
=
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
)((
uint32_t
)
pQueueManager
->
pQueueArea
+
(
sizeof
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
)
*
initParams
->
numQueues
)
);
//Set up the Queue Handles
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
pQueueManager
->
pQueueArea
;
pQueueManager
->
pFreeQueueHead
=
pQueue
;
pQueueManager
->
pFreeQueueTail
=
pQueue
;
pQueue
->
pQueueManager
=
pQueueManager
;
uint8_t
counter
;
for
(
counter
=
1
;
counter
<
initParams
->
numQueues
;
counter
++
)
{
pQueueManager
->
pFreeQueueTail
->
pNext
=
&
(
pQueue
[
counter
]);
pQueueManager
->
pFreeQueueTail
=
&
(
pQueue
[
counter
]);
pQueue
[
counter
].
pQueueManager
=
pQueueManager
;
}
// Set up the elements
size_t
spaceRemaining
=
initParams
->
bufferLen
-
sizeof
(
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
)
-
(
sizeof
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
)
*
initParams
->
numQueues
);
size_t
numberOfElements
=
spaceRemaining
/
(
sizeof
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
)
+
initParams
->
elementSize
);
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pElement
=
pQueueManager
->
pElementArea
;
pQueueManager
->
pFreeElementHead
=
pElement
;
pQueueManager
->
pFreeElementTail
=
pElement
;
for
(
counter
=
1
;
counter
<
numberOfElements
;
counter
++
)
{
pElement
=
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
)
((
uint32_t
)
pQueueManager
->
pElementArea
+
(
sizeof
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
)
+
initParams
->
elementSize
)
*
counter
);
pQueueManager
->
pFreeElementTail
->
pNext
=
pElement
;
pQueueManager
->
pFreeElementTail
=
pElement
;
}
pQueueManager
->
numFreeElements
=
numberOfElements
;
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueueManager
->
freeElementsLW
=
numberOfElements
;
#endif
*
handle
=
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
)
pQueueManager
;
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Deinitialize
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
)
{
if
((
queueManager
<=
0
)
&&
(
queueManager
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_CreateQueue
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
,
DRV_SPI_SYS_QUEUE_SETUP
*
initParams
,
DRV_SPI_SYS_QUEUE_HANDLE
*
handle
)
{
if
((
queueManager
<=
0
)
&&
(
queueManager
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
pQueueManager
=
(
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
)
queueManager
;
if
(
initParams
==
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
(
pQueueManager
->
pFreeQueueHead
==
NULL
)
{
return
DRV_SPI_SYS_QUEUE_OUT_OF_QUEUES
;
}
if
((
pQueueManager
->
numReserveElements
+
initParams
->
reserveElements
)
>
pQueueManager
->
numFreeElements
)
{
return
DRV_SPI_SYS_QUEUE_OUT_OF_MEMORY
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
pQueueManager
->
pFreeQueueHead
;
pQueueManager
->
pFreeQueueHead
=
pQueue
->
pNext
;
if
(
pQueueManager
->
pFreeQueueHead
==
NULL
)
{
pQueueManager
->
pFreeQueueTail
=
NULL
;
}
memset
(
pQueue
,
0
,
sizeof
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
));
pQueue
->
pQueueManager
=
pQueueManager
;
pQueue
->
fptrIntChange
=
initParams
->
fptrIntChange
;
pQueue
->
numReserved
=
initParams
->
reserveElements
;
pQueue
->
maxElements
=
initParams
->
maxElements
;
pQueueManager
->
numReserveElements
+=
initParams
->
reserveElements
;
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueueManager
->
numQueueCreateOps
++
;
pQueueManager
->
numQueues
++
;
pQueueManager
->
reserveElementsLW
+=
initParams
->
reserveElements
;
if
(
pQueueManager
->
numQueues
>
pQueueManager
->
numQueuesHW
)
{
pQueueManager
->
numQueuesHW
=
pQueueManager
->
numQueues
;
}
#endif
*
handle
=
(
DRV_SPI_SYS_QUEUE_HANDLE
)
pQueue
;
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_DestroyQueue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
)
{
if
((
queue
<=
0
)
&&
(
queue
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
pQueueManager
=
pQueue
->
pQueueManager
;
if
(
pQueue
->
pNext
!=
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
void
*
pElement
=
NULL
;
DRV_SPI_SYS_QUEUE_Dequeue
(
queue
,
&
pElement
);
while
(
pElement
!=
NULL
)
{
DRV_SPI_SYS_QUEUE_FreeElement
(
queue
,
pElement
);
DRV_SPI_SYS_QUEUE_Dequeue
(
queue
,
&
pElement
);
}
pQueueManager
->
numReserveElements
-=
pQueue
->
numReserved
;
if
(
pQueueManager
->
pFreeQueueTail
==
NULL
)
{
pQueueManager
->
pFreeQueueTail
=
pQueue
;
pQueueManager
->
pFreeQueueHead
=
pQueue
;
}
else
{
pQueue
->
pNext
=
pQueueManager
->
pFreeQueueHead
;
pQueueManager
->
pFreeQueueHead
=
pQueue
;
}
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueueManager
->
numQueueDestroyOps
++
;
pQueueManager
->
numQueues
--
;
pQueueManager
->
reserveElementsLW
-=
pQueueManager
->
numReserveElements
;
#endif
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_AllocElement
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
)
{
if
(
element
==
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
((
queue
<=
0
)
&&
(
queue
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
pQueueManager
=
pQueue
->
pQueueManager
;
if
(
pQueue
->
pNext
!=
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
(
pQueueManager
->
pFreeElementHead
==
NULL
)
{
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueueManager
->
outOfMemoryErrors
++
;
pQueue
->
outOfMemoryErrors
++
;
#endif
return
DRV_SPI_SYS_QUEUE_OUT_OF_MEMORY
;
}
if
(
pQueue
->
numAlloc
==
pQueue
->
maxElements
)
{
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueueManager
->
outOfMemoryErrors
++
;
pQueue
->
outOfMemoryErrors
++
;
#endif
return
DRV_SPI_SYS_QUEUE_OUT_OF_MEMORY
;
}
if
(
pQueue
->
numAlloc
<
pQueue
->
numReserved
)
{
pQueueManager
->
numReserveElements
--
;
}
else
if
(
pQueueManager
->
numFreeElements
==
pQueueManager
->
numReserveElements
)
{
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueueManager
->
outOfMemoryErrors
++
;
pQueue
->
outOfMemoryErrors
++
;
#endif
return
DRV_SPI_SYS_QUEUE_OUT_OF_MEMORY
;
}
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pEntry
=
pQueueManager
->
pFreeElementHead
;
pQueueManager
->
pFreeElementHead
=
pEntry
->
pNext
;
if
(
pQueueManager
->
pFreeElementHead
==
NULL
)
{
pQueueManager
->
pFreeElementTail
=
NULL
;
}
pEntry
->
pNext
=
NULL
;
pQueueManager
->
numFreeElements
--
;
pQueue
->
numAlloc
++
;
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueue
->
numAllocOps
++
;
pQueueManager
->
numAllocOps
++
;
if
(
pQueueManager
->
numFreeElements
<
pQueueManager
->
freeElementsLW
)
{
pQueueManager
->
freeElementsLW
=
pQueueManager
->
numFreeElements
;
}
if
(
pQueueManager
->
numReserveElements
<
pQueueManager
->
reserveElementsLW
)
{
pQueueManager
->
reserveElementsLW
=
pQueueManager
->
numReserveElements
;
}
if
(
pQueue
->
numAlloc
>
pQueue
->
numAllocHW
)
{
pQueue
->
numAllocHW
=
pQueue
->
numAlloc
;
}
#endif
*
element
=
(
void
*
)((
uint32_t
)
pEntry
+
sizeof
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
));
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_FreeElement
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
*
element
)
{
if
((
queue
<=
0
)
&&
(
queue
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
pQueueManager
=
pQueue
->
pQueueManager
;
if
(
pQueue
->
pNext
!=
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pEntry
=
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
)((
uint32_t
)
element
-
sizeof
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
));
if
(
pQueueManager
->
pFreeElementHead
==
NULL
)
{
pQueueManager
->
pFreeElementHead
=
pEntry
;
}
else
{
pQueueManager
->
pFreeElementTail
->
pNext
=
pEntry
;
}
pQueueManager
->
pFreeElementTail
=
pEntry
;
pQueueManager
->
numFreeElements
++
;
pQueue
->
numAlloc
--
;
if
(
pQueue
->
numAlloc
<
pQueue
->
numReserved
)
{
pQueueManager
->
numReserveElements
++
;
}
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueue
->
numFreeOps
++
;
pQueueManager
->
numFreeOps
++
;
#endif
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Enqueue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
*
element
)
{
if
((
queue
<=
0
)
&&
(
queue
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
if
(
pQueue
->
pNext
!=
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pEntry
=
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
)((
uint32_t
)
element
-
sizeof
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
));
if
(
pQueue
->
pHead
==
NULL
)
{
pQueue
->
pHead
=
pEntry
;
pQueue
->
pTail
=
pEntry
;
}
else
{
pQueue
->
pTail
->
pNext
=
pEntry
;
pQueue
->
pTail
=
pEntry
;
}
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueue
->
numEnqueued
++
;
if
(
pQueue
->
numEnqueued
>
pQueue
->
numEnqueuedHW
)
{
pQueue
->
numEnqueuedHW
=
pQueue
->
numEnqueued
;
}
pQueue
->
numEnqueueOps
++
;
#endif
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Dequeue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
)
{
if
(
element
==
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
((
queue
<=
0
)
&&
(
queue
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
if
(
pQueue
->
pNext
!=
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
(
pQueue
->
pHead
==
NULL
)
{
*
element
=
NULL
;
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pEntry
=
pQueue
->
pHead
;
pQueue
->
pHead
=
pEntry
->
pNext
;
if
(
pQueue
->
pHead
==
NULL
)
{
pQueue
->
pTail
=
NULL
;
}
pEntry
->
pNext
=
NULL
;
#if _SPI_DRV_SYS_QUEUE_TRACKING
pQueue
->
numEnqueued
--
;
pQueue
->
numDequeueOps
++
;
#endif
*
element
=
(
void
*
)((
uint32_t
)
pEntry
+
sizeof
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
));
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Peek
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
)
{
if
(
element
==
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
((
queue
<=
0
)
&&
(
queue
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
if
(
pQueue
->
pNext
!=
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
(
pQueue
->
pHead
==
NULL
)
{
*
element
=
NULL
;
}
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
*
pEntry
=
pQueue
->
pHead
;
*
element
=
(
void
*
)((
uint32_t
)
pEntry
+
sizeof
(
DRV_SPI_SYS_QUEUE_FIFO_ELEMENT_DATA
));
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
bool
DRV_SPI_SYS_QUEUE_IsEmpty
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
)
{
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
return
pQueue
->
pHead
==
NULL
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Lock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
)
{
return
_DRV_SPI_SYS_QUEUE_LockQueue
(
queue
,
false
);
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Unlock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
)
{
return
_DRV_SPI_SYS_QUEUE_UnlockQueue
(
queue
,
false
);
}
DRV_SPI_SYS_QUEUE_RESULT
_DRV_SPI_SYS_QUEUE_LockQueue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
bool
freeList
)
{
if
((
queue
<=
0
)
&&
(
queue
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
pQueueManager
=
pQueue
->
pQueueManager
;
if
(
pQueue
->
pNext
!=
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
(
freeList
)
{
return
_DRV_SPI_SYS_QUEUE_LockQueueManager
((
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
)
pQueueManager
);
}
else
{
if
(
pQueue
->
fptrIntChange
!=
NULL
)
{
(
*
pQueue
->
fptrIntChange
)(
queue
,
true
);
}
}
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
_DRV_SPI_SYS_QUEUE_UnlockQueue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
bool
freeList
)
{
if
((
queue
<=
0
)
&&
(
queue
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
pQueueManager
=
pQueue
->
pQueueManager
;
if
(
pQueue
->
pNext
!=
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
(
freeList
)
{
return
_DRV_SPI_SYS_QUEUE_UnlockQueueManager
((
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
)
pQueueManager
);
}
else
{
if
(
pQueue
->
fptrIntChange
!=
NULL
)
{
(
*
pQueue
->
fptrIntChange
)(
queue
,
false
);
}
}
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_HANDLE
DRV_SPI_SYS_QUEUE_CreateQueueLock
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
,
DRV_SPI_SYS_QUEUE_SETUP
*
initParams
,
DRV_SPI_SYS_QUEUE_HANDLE
*
queue
)
{
DRV_SPI_SYS_QUEUE_RESULT
ret
;
DRV_SPI_SYS_QUEUE_HANDLE
ret2
;
ret
=
_DRV_SPI_SYS_QUEUE_LockQueueManager
(
queueManager
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
ret2
=
DRV_SPI_SYS_QUEUE_CreateQueue
(
queueManager
,
initParams
,
queue
);
ret
=
_DRV_SPI_SYS_QUEUE_UnlockQueueManager
(
queueManager
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
return
ret2
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_DestroyQueueLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
)
{
DRV_SPI_SYS_QUEUE_RESULT
ret
;
DRV_SPI_SYS_QUEUE_RESULT
ret2
;
ret
=
_DRV_SPI_SYS_QUEUE_LockQueue
(
queue
,
true
);
// TODO!!! Fix this
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
ret2
=
DRV_SPI_SYS_QUEUE_DestroyQueue
(
queue
);
ret
=
_DRV_SPI_SYS_QUEUE_UnlockQueue
(
queue
,
true
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
return
ret2
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_AllocElementLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
)
{
DRV_SPI_SYS_QUEUE_RESULT
ret
;
DRV_SPI_SYS_QUEUE_RESULT
ret2
;
ret
=
_DRV_SPI_SYS_QUEUE_LockQueue
(
queue
,
true
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
ret2
=
DRV_SPI_SYS_QUEUE_AllocElement
(
queue
,
element
);
ret
=
_DRV_SPI_SYS_QUEUE_UnlockQueue
(
queue
,
true
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
return
ret2
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_FreeElementLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
*
element
)
{
DRV_SPI_SYS_QUEUE_RESULT
ret
;
DRV_SPI_SYS_QUEUE_RESULT
ret2
;
ret
=
_DRV_SPI_SYS_QUEUE_LockQueue
(
queue
,
true
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
ret2
=
DRV_SPI_SYS_QUEUE_FreeElement
(
queue
,
element
);
ret
=
_DRV_SPI_SYS_QUEUE_UnlockQueue
(
queue
,
true
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
return
ret2
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_EnqueueLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
*
element
)
{
DRV_SPI_SYS_QUEUE_RESULT
ret
;
DRV_SPI_SYS_QUEUE_RESULT
ret2
;
ret
=
_DRV_SPI_SYS_QUEUE_LockQueue
(
queue
,
false
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
ret2
=
DRV_SPI_SYS_QUEUE_Enqueue
(
queue
,
element
);
ret
=
_DRV_SPI_SYS_QUEUE_UnlockQueue
(
queue
,
false
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
return
ret2
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_DequeueLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
)
{
DRV_SPI_SYS_QUEUE_RESULT
ret
;
DRV_SPI_SYS_QUEUE_RESULT
ret2
;
ret
=
_DRV_SPI_SYS_QUEUE_LockQueue
(
queue
,
false
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
ret2
=
DRV_SPI_SYS_QUEUE_Dequeue
(
queue
,
element
);
ret
=
_DRV_SPI_SYS_QUEUE_UnlockQueue
(
queue
,
false
);
if
(
ret
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
return
ret
;
}
return
ret2
;
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_QueueManagerStatus
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
,
DRV_SPI_SYS_QUEUE_MANAGER_STATUS
*
status
)
{
#if _SPI_DRV_SYS_QUEUE_TRACKING
if
((
queueManager
<=
0
)
&&
(
queueManager
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
pQueueManager
=
(
DRV_SPI_SYS_QUEUE_QUEUE_MANAGER_DATA
*
)
queueManager
;
status
->
numAllocOps
=
pQueueManager
->
numAllocOps
;
status
->
numFreeOps
=
pQueueManager
->
numFreeOps
;
status
->
numQueueCreateOps
=
pQueueManager
->
numQueueCreateOps
;
status
->
numQueueDestroyOps
=
pQueueManager
->
numQueueDestroyOps
;
status
->
numReserveElements
=
pQueueManager
->
numReserveElements
;
status
->
numFreeElements
=
pQueueManager
->
numFreeElements
;
status
->
freeElementsLW
=
pQueueManager
->
freeElementsLW
;
status
->
reserveElementsLW
=
pQueueManager
->
reserveElementsLW
;
status
->
outOfMemoryErrors
=
pQueueManager
->
outOfMemoryErrors
;
status
->
numQueues
=
pQueueManager
->
numQueues
;
status
->
numQueuesHW
=
pQueueManager
->
numQueuesHW
;
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
#else
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
#endif
}
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_QueueStatus
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
DRV_SPI_SYS_QUEUE_STATUS
*
status
)
{
#if _SPI_DRV_SYS_QUEUE_TRACKING
if
((
queue
<=
0
)
&&
(
queue
>=
DRV_SPI_SYS_QUEUE_MAX_ERROR
))
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
pQueue
=
(
DRV_SPI_SYS_QUEUE_QUEUE_DATA
*
)
queue
;
if
(
pQueue
->
pNext
!=
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
if
(
status
==
NULL
)
{
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
}
status
->
numAllocOps
=
pQueue
->
numAllocOps
;
status
->
numFreeOps
=
pQueue
->
numFreeOps
;
status
->
numDequeueOps
=
pQueue
->
numDequeueOps
;
status
->
numEnqueueOps
=
pQueue
->
numEnqueueOps
;
status
->
numReserved
=
pQueue
->
numReserved
;
status
->
numAlloc
=
pQueue
->
numAlloc
;
status
->
numEnqueued
=
pQueue
->
numEnqueued
;
status
->
numReserveLW
=
pQueue
->
numReserveLW
;
status
->
numAllocHW
=
pQueue
->
numAllocHW
;
status
->
numEnqueuedHW
=
pQueue
->
numEnqueuedHW
;
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
#else
return
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
;
#endif
}
DRV_SPI_SYS_QUEUE_RESULT
_DRV_SPI_SYS_QUEUE_LockQueueManager
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
)
{
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
DRV_SPI_SYS_QUEUE_RESULT
_DRV_SPI_SYS_QUEUE_UnlockQueueManager
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
)
{
return
DRV_SPI_SYS_QUEUE_SUCCESS
;
}
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_sys_queue.h
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SPI Driver Queue related local interfaces
Company:
Microchip Technology Inc.
File Name:
drv_spi_static_sys_queue.h
Summary:
Queue related local interface declarations
Description:
Queue related local interface declarations
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute Software
only when embedded on a Microchip microcontroller or digital signal controller
that is integrated into your product or third party product (pursuant to the
sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#ifndef _DRV_SPI_STATIC_SYS_QUEUE_H
#define _DRV_SPI_STATIC_SYS_QUEUE_H
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
// DOM-IGNORE-BEGIN
#ifdef __cplusplus // Provide C++ Compatibility
extern
"C"
{
#endif
// DOM-IGNORE-END
#define _DRV_SPI_QM_SIZE 72
#define _DRV_SPI_Q_SIZE 80
#define _DRV_SPI_QE_SIZE 4
#define DRV_SPI_SYS_QUEUE_BUFFER_SIZE(queues, elementSize, desiredElements) \
(
_DRV_SPI_QM_SIZE
+
\
(
_DRV_SPI_Q_SIZE
*
queues
)
+
\
((
elementSize
+
_DRV_SPI_QE_SIZE
)
*
\
desiredElements
)
)
// *****************************************************************************
/* SPI Driver Queue Manager Handle
Summary:
Handle identifying the queue manager
Description:
A queue manager handle value is returned by a call to the DRV_SPI_SYS_QUEUE_Initialize() function.
This handle is associated with the buffer passed into the function and it allows the
application to track the queue.
Remarks:
None
*/
typedef
uintptr_t
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
;
// *****************************************************************************
/* SPI Driver Queue Handle
Summary:
Handle identifying the queue
Description:
A queue handle value is returned by a call to the DRV_SPI_SYS_QUEUE_CreateQueue () function.
This handle is associated with the buffer passed into the the DRV_SPI_SYS_QUEUE_Initialize() function.
Remarks:
None
*/
typedef
uintptr_t
DRV_SPI_SYS_QUEUE_HANDLE
;
typedef
enum
{
DRV_SPI_SYS_QUEUE_SUCCESS
=
0
,
DRV_SPI_SYS_QUEUE_OUT_OF_MEMORY
=
-
1
,
DRV_SPI_SYS_QUEUE_OUT_OF_QUEUES
=
-
2
,
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
=
-
3
,
DRV_SPI_SYS_QUEUE_MAX_ERROR
=
DRV_SPI_SYS_QUEUE_INVALID_PARAMETER
,
}
DRV_SPI_SYS_QUEUE_RESULT
;
typedef
enum
{
DRV_SPI_SYS_QUEUE_Unknown
=
0
,
DRV_SPI_SYS_QUEUE_Fifo
=
1
,
}
DRV_SPI_SYS_QUEUE_Type
;
typedef
void
(
*
DRV_SPI_SYS_QUEUE_INTERUPT_CHANGE
)
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
bool
mask
);
typedef
struct
_DRV_SPI_SYS_QUEUE_MANAGER_SETUP
{
void
*
pBuffer
;
size_t
bufferLen
;
uint8_t
numQueues
;
size_t
elementSize
;
DRV_SPI_SYS_QUEUE_Type
type
;
}
DRV_SPI_SYS_QUEUE_MANAGER_SETUP
;
typedef
struct
_DRV_SPI_SYS_QUEUE_SETUP
{
size_t
reserveElements
;
size_t
maxElements
;
DRV_SPI_SYS_QUEUE_INTERUPT_CHANGE
fptrIntChange
;
}
DRV_SPI_SYS_QUEUE_SETUP
;
typedef
struct
_DRV_SPI_SYS_QUEUE_MANAGER_STATUS
{
size_t
numAllocOps
;
size_t
numFreeOps
;
size_t
numQueueCreateOps
;
size_t
numQueueDestroyOps
;
size_t
numReserveElements
;
size_t
numFreeElements
;
size_t
freeElementsLW
;
size_t
reserveElementsLW
;
size_t
outOfMemoryErrors
;
uint8_t
numQueues
;
uint8_t
numQueuesHW
;
}
DRV_SPI_SYS_QUEUE_MANAGER_STATUS
;
typedef
struct
_DRV_SPI_SYS_QUEUE_STATUS
{
size_t
numAllocOps
;
size_t
numFreeOps
;
size_t
numDequeueOps
;
size_t
numEnqueueOps
;
size_t
numReserved
;
size_t
numAlloc
;
size_t
numEnqueued
;
size_t
numReserveLW
;
size_t
numAllocHW
;
size_t
numEnqueuedHW
;
}
DRV_SPI_SYS_QUEUE_STATUS
;
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Initialize
(
DRV_SPI_SYS_QUEUE_MANAGER_SETUP
*
initParams
,
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
*
handle
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Deinitialize
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_CreateQueue
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
,
DRV_SPI_SYS_QUEUE_SETUP
*
initParams
,
DRV_SPI_SYS_QUEUE_HANDLE
*
handle
);
DRV_SPI_SYS_QUEUE_HANDLE
DRV_SPI_SYS_QUEUE_CreateQueueLock
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
,
DRV_SPI_SYS_QUEUE_SETUP
*
initParams
,
DRV_SPI_SYS_QUEUE_HANDLE
*
queue
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_DestroyQueue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_DestroyQueueLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Lock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Unlock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_AllocElement
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_AllocElementLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_FreeElement
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
*
element
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_FreeElementLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
*
element
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Enqueue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
*
element
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_EnqueueLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
*
element
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Dequeue
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_DequeueLock
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_Peek
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
void
**
element
);
bool
DRV_SPI_SYS_QUEUE_IsEmpty
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_QueueManagerStatus
(
DRV_SPI_SYS_QUEUE_MANAGER_HANDLE
queueManager
,
DRV_SPI_SYS_QUEUE_MANAGER_STATUS
*
status
);
DRV_SPI_SYS_QUEUE_RESULT
DRV_SPI_SYS_QUEUE_QueueStatus
(
DRV_SPI_SYS_QUEUE_HANDLE
queue
,
DRV_SPI_SYS_QUEUE_STATUS
*
status
);
// DOM-IGNORE-BEGIN
#ifdef __cplusplus
}
#endif
// DOM-IGNORE-END
#endif //_DRV_SPI_STATIC_SYS_QUEUE_H_
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/spi/static/src/drv_spi_static_tasks.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SPI Driver Functions for Static Driver Tasks Functions
Company:
Microchip Technology Inc.
File Name:
drv_spi_static_tasks.c
Summary:
SPI driver tasks functions
Description:
The SPI device driver provides a simple interface to manage the SPI
modules on Microchip microcontrollers. This file contains implemenation
for the SPI driver.
Remarks:
This file is generated from framework/driver/spi/template/drv_spi_static_tasks.c.ftl
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#include "system_config.h"
#include "system_definitions.h"
int32_t
DRV_SPI0_PolledMasterRM8BitTasks
(
struct
DRV_SPI_OBJ
*
dObj
)
{
volatile
bool
continueLoop
;
uint8_t
counter
=
0
;
uint8_t
numPolled
=
dObj
->
numTrfsSmPolled
;
uint8_t
result
=
0
;
do
{
DRV_SPI_JOB_OBJECT
*
currentJob
=
dObj
->
currentJob
;
/* Check for a new task */
if
(
dObj
->
currentJob
==
NULL
)
{
if
(
DRV_SPI_SYS_QUEUE_DequeueLock
(
dObj
->
queue
,
(
void
*
)
&
(
dObj
->
currentJob
))
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Error in dequeing."
);
return
0
;
}
if
(
dObj
->
currentJob
==
NULL
)
{
return
0
;
}
currentJob
=
dObj
->
currentJob
;
dObj
->
symbolsInProgress
=
0
;
/* Call the operation starting function pointer. This can be used to modify the slave select lines */
if
(
dObj
->
operationStarting
!=
NULL
)
{
(
*
dObj
->
operationStarting
)(
DRV_SPI_BUFFER_EVENT_PROCESSING
,
(
DRV_SPI_BUFFER_HANDLE
)
currentJob
,
currentJob
->
context
);
}
/* List the new job as processing*/
currentJob
->
status
=
DRV_SPI_BUFFER_EVENT_PROCESSING
;
/* Flush out the Receive buffer */
PLIB_SPI_BufferClear
(
SPI_ID_1
);
}
continueLoop
=
false
;
/* Execute the sub tasks */
if
(
currentJob
->
dataLeftToTx
+
currentJob
->
dummyLeftToTx
!=
0
)
{
DRV_SPI0_MasterRMSend8BitPolled
(
dObj
);
}
DRV_SPI0_PolledErrorTasks
(
dObj
);
/* Figure out how many bytes are left to be received */
volatile
size_t
bytesLeft
=
currentJob
->
dataLeftToRx
+
currentJob
->
dummyLeftToRx
;
// Check to see if we have any data left to receive and update the bytes left.
if
(
bytesLeft
!=
0
)
{
DRV_SPI0_MasterRMReceive8BitPolled
(
dObj
);
bytesLeft
=
currentJob
->
dataLeftToRx
+
currentJob
->
dummyLeftToRx
;
}
if
(
bytesLeft
==
0
)
{
/* Job is complete*/
currentJob
->
status
=
DRV_SPI_BUFFER_EVENT_COMPLETE
;
/* Call the job complete call back*/
if
(
currentJob
->
completeCB
!=
NULL
)
{
(
*
currentJob
->
completeCB
)(
DRV_SPI_BUFFER_EVENT_COMPLETE
,
(
DRV_SPI_BUFFER_HANDLE
)
currentJob
,
currentJob
->
context
);
}
/* Call the operation complete call back. This is different than the
job complete callback. This can be used to modify the Slave Select line.*/
if
(
dObj
->
operationEnded
!=
NULL
)
{
(
*
dObj
->
operationEnded
)(
DRV_SPI_BUFFER_EVENT_COMPLETE
,
(
DRV_SPI_BUFFER_HANDLE
)
currentJob
,
currentJob
->
context
);
}
/* Return the job back to the free queue*/
if
(
DRV_SPI_SYS_QUEUE_FreeElementLock
(
dObj
->
queue
,
currentJob
)
!=
DRV_SPI_SYS_QUEUE_SUCCESS
)
{
SYS_ASSERT
(
false
,
"
\r\n
SPI Driver: Queue free element error."
);
return
0
;
}
/* Clean up */
dObj
->
currentJob
=
NULL
;
}
counter
++
;
if
((
counter
<
numPolled
)
&&
(
result
!=
0
))
{
continueLoop
=
true
;
}
}
while
(
continueLoop
);
return
0
;
}
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/usart/drv_usart_static.h
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
USART Driver Interface Declarations for Static Single Instance Driver
Company:
Microchip Technology Inc.
File Name:
drv_usart_static.h
Summary:
USART driver interface declarations for the static single instance driver.
Description:
The USART device driver provides a simple interface to manage the USART
modules on Microchip microcontrollers. This file defines the interface
Declarations for the USART static driver.
Remarks:
Static interfaces incorporate the driver instance number within the names
of the routines, eliminating the need for an object ID or object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#ifndef _DRV_USART_STATIC_H
#define _DRV_USART_STATIC_H
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "driver/usart/src/drv_usart_static_local.h"
// DOM-IGNORE-BEGIN
#ifdef __cplusplus // Provide C++ Compatibility
extern
"C"
{
#endif
// DOM-IGNORE-END
// *********************************************************************************************
// *********************************************************************************************
// Section: System Interface Headers for the Instance 0 of USART static driver
// *********************************************************************************************
// *********************************************************************************************
SYS_MODULE_OBJ
DRV_USART0_Initialize
(
void
);
void
DRV_USART0_Deinitialize
(
void
);
SYS_STATUS
DRV_USART0_Status
(
void
);
void
DRV_USART0_TasksTransmit
(
void
);
void
DRV_USART0_TasksReceive
(
void
);
void
DRV_USART0_TasksError
(
void
);
// *********************************************************************************************
// *********************************************************************************************
// Section: General Client Interface Headers for the Instance 0 of USART static driver
// *********************************************************************************************
// *********************************************************************************************
DRV_HANDLE
DRV_USART0_Open
(
const
SYS_MODULE_INDEX
index
,
const
DRV_IO_INTENT
ioIntent
);
void
DRV_USART0_Close
(
void
);
DRV_USART_CLIENT_STATUS
DRV_USART0_ClientStatus
(
void
);
DRV_USART_TRANSFER_STATUS
DRV_USART0_TransferStatus
(
void
);
// *********************************************************************************************
// *********************************************************************************************
// Section: Byte Model Client Interface Headers for the Instance 0 of USART static driver
// *********************************************************************************************
// *********************************************************************************************
uint8_t
DRV_USART0_ReadByte
(
void
);
void
DRV_USART0_WriteByte
(
const
uint8_t
byte
);
unsigned
int
DRV_USART0_ReceiverBufferSizeGet
(
void
);
unsigned
int
DRV_USART0_TransmitBufferSizeGet
(
void
);
bool
DRV_USART0_ReceiverBufferIsEmpty
(
void
);
bool
DRV_USART0_TransmitBufferIsFull
(
void
);
// *********************************************************************************************
// *********************************************************************************************
// Section: Set up Client Interface Headers for the Instance 0 of USART static driver
// *********************************************************************************************
// *********************************************************************************************
DRV_USART_BAUD_SET_RESULT
DRV_USART0_BaudSet
(
uint32_t
baud
);
DRV_USART_LINE_CONTROL_SET_RESULT
DRV_USART0_LineControlSet
(
DRV_USART_LINE_CONTROL
lineControlMode
);
// DOM-IGNORE-BEGIN
#ifdef __cplusplus
}
#endif
// DOM-IGNORE-END
#endif // #ifndef _DRV_USART_STATIC_H
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_mapping.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
USART Driver Dynamic to Static mapping
Company:
Microchip Technology Inc.
File Name:
drv_usart_mapping.c
Summary:
Source code for the USART driver dynamic APIs to static API mapping.
Description:
This file contains code that maps dynamic APIs to static whenever
the static mode of the driver is selected..
Remarks:
Static interfaces incorporate the driver instance number within the names
of the routines, eliminating the need for an object ID or object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
#include "system_definitions.h"
SYS_MODULE_OBJ
DRV_USART_Initialize
(
const
SYS_MODULE_INDEX
index
,
const
SYS_MODULE_INIT
*
const
init
)
{
SYS_MODULE_OBJ
returnValue
;
switch
(
index
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_Initialize
();
break
;
}
default:
{
returnValue
=
SYS_MODULE_OBJ_INVALID
;
break
;
}
}
return
returnValue
;
}
void
DRV_USART_Deinitialize
(
SYS_MODULE_OBJ
object
)
{
switch
(
object
)
{
case
DRV_USART_INDEX_0
:
{
DRV_USART0_Deinitialize
();
break
;
}
default:
{
break
;
}
}
}
SYS_STATUS
DRV_USART_Status
(
SYS_MODULE_OBJ
object
)
{
SYS_STATUS
returnValue
;
switch
(
object
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_Status
();
break
;
}
default:
{
returnValue
=
SYS_STATUS_ERROR
;
break
;
}
}
return
returnValue
;
}
void
DRV_USART_TasksTransmit
(
SYS_MODULE_OBJ
object
)
{
switch
(
object
)
{
case
DRV_USART_INDEX_0
:
{
DRV_USART0_TasksTransmit
();
break
;
}
default:
{
break
;
}
}
}
void
DRV_USART_TasksReceive
(
SYS_MODULE_OBJ
object
)
{
switch
(
object
)
{
case
DRV_USART_INDEX_0
:
{
DRV_USART0_TasksReceive
();
break
;
}
default:
{
break
;
}
}
}
void
DRV_USART_TasksError
(
SYS_MODULE_OBJ
object
)
{
switch
(
object
)
{
case
DRV_USART_INDEX_0
:
{
DRV_USART0_TasksError
();
break
;
}
default:
{
break
;
}
}
}
//client interface
DRV_HANDLE
DRV_USART_Open
(
const
SYS_MODULE_INDEX
index
,
const
DRV_IO_INTENT
ioIntent
)
{
DRV_HANDLE
returnValue
;
switch
(
index
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_Open
(
index
,
ioIntent
);
break
;
}
default:
{
returnValue
=
DRV_HANDLE_INVALID
;
break
;
}
}
return
returnValue
;
}
void
DRV_USART_Close
(
const
DRV_HANDLE
handle
)
{
uintptr_t
instance
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
DRV_USART0_Close
();
break
;
}
default:
{
break
;
}
}
}
DRV_USART_CLIENT_STATUS
DRV_USART_ClientStatus
(
DRV_HANDLE
handle
)
{
uintptr_t
instance
;
DRV_USART_CLIENT_STATUS
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_ClientStatus
();
break
;
}
default:
{
returnValue
=
DRV_CLIENT_STATUS_ERROR
;
break
;
}
}
return
returnValue
;
}
DRV_USART_TRANSFER_STATUS
DRV_USART_TransferStatus
(
const
DRV_HANDLE
handle
)
{
uintptr_t
instance
;
DRV_USART_TRANSFER_STATUS
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_TransferStatus
();
break
;
}
default:
{
returnValue
=
(
DRV_USART_TRANSFER_STATUS
)
NULL
;
break
;
}
}
return
returnValue
;
}
//Byte Model
uint8_t
DRV_USART_ReadByte
(
const
DRV_HANDLE
handle
)
{
uintptr_t
instance
;
uint8_t
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_ReadByte
();
break
;
}
default:
{
SYS_ASSERT
(
false
,
"Incorrect Driver Handle"
);
returnValue
=
0
;
break
;
}
}
return
returnValue
;
}
void
DRV_USART_WriteByte
(
const
DRV_HANDLE
handle
,
const
uint8_t
byte
)
{
uintptr_t
instance
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
DRV_USART0_WriteByte
(
byte
);
break
;
}
default:
{
break
;
}
}
}
unsigned
int
DRV_USART_ReceiverBufferSizeGet
(
const
DRV_HANDLE
handle
)
{
uintptr_t
instance
;
unsigned
int
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_ReceiverBufferSizeGet
();
break
;
}
default:
{
returnValue
=
(
unsigned
int
)
NULL
;
break
;
}
}
return
returnValue
;
}
unsigned
int
DRV_USART_TransmitBufferSizeGet
(
const
DRV_HANDLE
handle
)
{
uintptr_t
instance
;
unsigned
int
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_TransmitBufferSizeGet
();
break
;
}
default:
{
returnValue
=
(
unsigned
int
)
NULL
;
break
;
}
}
return
returnValue
;
}
bool
DRV_USART_ReceiverBufferIsEmpty
(
const
DRV_HANDLE
handle
)
{
uintptr_t
instance
;
bool
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_ReceiverBufferIsEmpty
();
break
;
}
default:
{
returnValue
=
false
;
break
;
}
}
return
returnValue
;
}
bool
DRV_USART_TransmitBufferIsFull
(
const
DRV_HANDLE
handle
)
{
uintptr_t
instance
;
bool
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_TransmitBufferIsFull
();
break
;
}
default:
{
returnValue
=
false
;
break
;
}
}
return
returnValue
;
}
DRV_USART_BAUD_SET_RESULT
DRV_USART_BaudSet
(
const
DRV_HANDLE
handle
,
uint32_t
baud
)
{
uintptr_t
instance
;
DRV_USART_BAUD_SET_RESULT
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_BaudSet
(
baud
);
break
;
}
default:
{
returnValue
=
DRV_USART_BAUD_SET_ERROR
;
break
;
}
}
return
returnValue
;
}
DRV_USART_LINE_CONTROL_SET_RESULT
DRV_USART_LineControlSet
(
const
DRV_HANDLE
handle
,
const
DRV_USART_LINE_CONTROL
lineControl
)
{
uintptr_t
instance
;
DRV_USART_LINE_CONTROL_SET_RESULT
returnValue
;
instance
=
handle
&
0x00FF
;
//As we are handling single client, only multiple instance is taken care.
switch
(
instance
)
{
case
DRV_USART_INDEX_0
:
{
returnValue
=
DRV_USART0_LineControlSet
(
lineControl
);
break
;
}
default:
{
returnValue
=
DRV_USART_LINE_CONTROL_SET_ERROR
;
break
;
}
}
return
returnValue
;
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
USART Driver Static implementation
Company:
Microchip Technology Inc.
File Name:
drv_usart_static.c
Summary:
Source code for the USART driver static implementation.
Description:
The USART device driver provides a simple interface to manage the USART
modules on Microchip microcontrollers. This file contains static implementation
for the USART driver.
Remarks:
Static interfaces incorporate the driver instance number within the names
of the routines, eliminating the need for an object ID or object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
#include "system_definitions.h"
// *****************************************************************************
// *****************************************************************************
// Section: Global Data
// *****************************************************************************
// *****************************************************************************
/* This is the driver static object . */
DRV_USART_OBJ
gDrvUSART0Obj
;
// *****************************************************************************
// *****************************************************************************
// Section: Instance 0 static driver functions
// *****************************************************************************
// *****************************************************************************
SYS_MODULE_OBJ
DRV_USART0_Initialize
(
void
)
{
uint32_t
clockSource
;
/* Disable the USART module to configure it*/
PLIB_USART_Disable
(
USART_ID_2
);
/* Initialize the USART based on configuration settings */
PLIB_USART_InitializeModeGeneral
(
USART_ID_2
,
false
,
/*Auto baud*/
false
,
/*LoopBack mode*/
false
,
/*Auto wakeup on start*/
false
,
/*IRDA mode*/
false
);
/*Stop In Idle mode*/
/* Set the line control mode */
PLIB_USART_LineControlModeSelect
(
USART_ID_2
,
DRV_USART_LINE_CONTROL_8NONE1
);
/* We set the receive interrupt mode to receive an interrupt whenever FIFO
is not empty */
PLIB_USART_InitializeOperation
(
USART_ID_2
,
USART_RECEIVE_FIFO_ONE_CHAR
,
USART_TRANSMIT_FIFO_IDLE
,
USART_ENABLE_TX_RX_USED
);
/* Get the USART clock source value*/
clockSource
=
SYS_CLK_PeripheralFrequencyGet
(
CLK_BUS_PERIPHERAL_1
);
/* Set the baud rate and enable the USART */
PLIB_USART_BaudSetAndEnable
(
USART_ID_2
,
clockSource
,
115200
);
/*Desired Baud rate value*/
/* Clear the interrupts to be on the safer side*/
SYS_INT_SourceStatusClear
(
INT_SOURCE_USART_2_TRANSMIT
);
SYS_INT_SourceStatusClear
(
INT_SOURCE_USART_2_RECEIVE
);
SYS_INT_SourceStatusClear
(
INT_SOURCE_USART_2_ERROR
);
/* Enable the error interrupt source */
SYS_INT_SourceEnable
(
INT_SOURCE_USART_2_ERROR
);
/* Enable the Receive interrupt source */
SYS_INT_SourceEnable
(
INT_SOURCE_USART_2_RECEIVE
);
/* Return the driver instance value*/
return
(
SYS_MODULE_OBJ
)
DRV_USART_INDEX_0
;
}
void
DRV_USART0_Deinitialize
(
void
)
{
bool
status
;
/* Disable the interrupts */
status
=
SYS_INT_SourceDisable
(
INT_SOURCE_USART_2_TRANSMIT
)
;
status
=
SYS_INT_SourceDisable
(
INT_SOURCE_USART_2_RECEIVE
)
;
status
=
SYS_INT_SourceDisable
(
INT_SOURCE_USART_2_ERROR
);
/* Ignore the warning */
(
void
)
status
;
/* Disable USART module */
PLIB_USART_Disable
(
USART_ID_2
);
}
SYS_STATUS
DRV_USART0_Status
(
void
)
{
/* Return the status as ready always */
return
SYS_STATUS_READY
;
}
void
DRV_USART0_TasksTransmit
(
void
)
{
/* This is the USART Driver Transmit tasks routine.
In this function, the driver checks if a transmit
interrupt is active and performs respective action*/
/* Reading the transmit interrupt flag */
if
(
SYS_INT_SourceStatusGet
(
INT_SOURCE_USART_2_TRANSMIT
))
{
/* Disable the interrupt, to avoid calling ISR continuously*/
SYS_INT_SourceDisable
(
INT_SOURCE_USART_2_TRANSMIT
);
/* Clear up the interrupt flag */
SYS_INT_SourceStatusClear
(
INT_SOURCE_USART_2_TRANSMIT
);
}
}
void
DRV_USART0_TasksReceive
(
void
)
{
/* This is the USART Driver Receive tasks routine. If the receive
interrupt flag is set, the tasks routines are executed.
*/
/* Reading the receive interrupt flag */
if
(
SYS_INT_SourceStatusGet
(
INT_SOURCE_USART_2_RECEIVE
))
{
/* Clear up the interrupt flag */
SYS_INT_SourceStatusClear
(
INT_SOURCE_USART_2_RECEIVE
);
}
}
void
DRV_USART0_TasksError
(
void
)
{
/* This is the USART Driver Error tasks routine. In this function, the
* driver checks if an error interrupt has occurred. If so the error
* condition is cleared. */
/* Reading the error interrupt flag */
if
(
SYS_INT_SourceStatusGet
(
INT_SOURCE_USART_2_ERROR
))
{
/* This means an error has occurred */
if
(
PLIB_USART_ReceiverOverrunHasOccurred
(
USART_ID_2
))
{
PLIB_USART_ReceiverOverrunErrorClear
(
USART_ID_2
);
}
/* Clear up the error interrupt flag */
SYS_INT_SourceStatusClear
(
INT_SOURCE_USART_2_ERROR
);
}
}
DRV_HANDLE
DRV_USART0_Open
(
const
SYS_MODULE_INDEX
index
,
const
DRV_IO_INTENT
ioIntent
)
{
/* Return the driver instance value*/
return
((
DRV_HANDLE
)
DRV_USART_INDEX_0
);
}
void
DRV_USART0_Close
(
void
)
{
return
;
}
DRV_USART_CLIENT_STATUS
DRV_USART0_ClientStatus
(
void
)
{
/* Return the status as ready always*/
return
DRV_USART_CLIENT_STATUS_READY
;
}
DRV_USART_TRANSFER_STATUS
DRV_USART0_TransferStatus
(
void
)
{
DRV_USART_TRANSFER_STATUS
result
=
0
;
/* Check if RX data available */
if
(
PLIB_USART_ReceiverDataIsAvailable
(
USART_ID_2
))
{
result
|=
DRV_USART_TRANSFER_STATUS_RECEIVER_DATA_PRESENT
;
}
else
{
result
|=
DRV_USART_TRANSFER_STATUS_RECEIVER_EMPTY
;
}
/* Check if TX Buffer is empty */
if
(
PLIB_USART_TransmitterIsEmpty
(
USART_ID_2
))
{
result
|=
DRV_USART_TRANSFER_STATUS_TRANSMIT_EMPTY
;
}
/* Check if the TX buffer is full */
if
(
PLIB_USART_TransmitterBufferIsFull
(
USART_ID_2
))
{
result
|=
DRV_USART_TRANSFER_STATUS_TRANSMIT_FULL
;
}
return
(
result
);
}
DRV_USART_BAUD_SET_RESULT
DRV_USART0_BaudSet
(
uint32_t
baud
)
{
uint32_t
clockSource
;
int32_t
brgValueLow
=
0
;
int32_t
brgValueHigh
=
0
;
DRV_USART_BAUD_SET_RESULT
retVal
=
DRV_USART_BAUD_SET_SUCCESS
;
#if defined (PLIB_USART_ExistsModuleBusyStatus)
bool
isEnabled
=
false
;
#endif
/* Get the USART clock source value*/
clockSource
=
SYS_CLK_PeripheralFrequencyGet
(
CLK_BUS_PERIPHERAL_1
);
/* Calculate low and high baud values */
brgValueLow
=
(
(
clockSource
/
baud
)
>>
4
)
-
1
;
brgValueHigh
=
(
(
clockSource
/
baud
)
>>
2
)
-
1
;
#if defined (PLIB_USART_ExistsModuleBusyStatus)
isEnabled
=
PLIB_USART_ModuleIsBusy
(
USART_ID_2
);
if
(
isEnabled
)
{
PLIB_USART_Disable
(
USART_ID_2
);
while
(
PLIB_USART_ModuleIsBusy
(
USART_ID_2
));
}
#endif
/* Check if the baud value can be set with high baud settings */
if
((
brgValueHigh
>=
0
)
&&
(
brgValueHigh
<=
UINT16_MAX
))
{
PLIB_USART_BaudRateHighEnable
(
USART_ID_2
);
PLIB_USART_BaudRateHighSet
(
USART_ID_2
,
clockSource
,
baud
);
}
/* Check if the baud value can be set with low baud settings */
else
if
((
brgValueLow
>=
0
)
&&
(
brgValueLow
<=
UINT16_MAX
))
{
PLIB_USART_BaudRateHighDisable
(
USART_ID_2
);
PLIB_USART_BaudRateSet
(
USART_ID_2
,
clockSource
,
baud
);
}
else
{
retVal
=
DRV_USART_BAUD_SET_ERROR
;
}
#if defined (PLIB_USART_ExistsModuleBusyStatus)
if
(
isEnabled
)
{
PLIB_USART_Enable
(
USART_ID_2
);
}
#endif
return
retVal
;
}
DRV_USART_LINE_CONTROL_SET_RESULT
DRV_USART0_LineControlSet
(
DRV_USART_LINE_CONTROL
lineControlMode
)
{
#if defined (PLIB_USART_ExistsModuleBusyStatus)
bool
isEnabled
=
false
;
#endif
#if defined (PLIB_USART_ExistsModuleBusyStatus)
isEnabled
=
PLIB_USART_ModuleIsBusy
(
USART_ID_2
);
if
(
isEnabled
)
{
PLIB_USART_Disable
(
USART_ID_2
);
while
(
PLIB_USART_ModuleIsBusy
(
USART_ID_2
));
}
#endif
/* Set the Line Control Mode */
PLIB_USART_LineControlModeSelect
(
USART_ID_2
,
lineControlMode
);
#if defined (PLIB_USART_ExistsModuleBusyStatus)
if
(
isEnabled
)
{
PLIB_USART_Enable
(
USART_ID_2
);
}
#endif
/* Return success */
return
(
DRV_USART_LINE_CONTROL_SET_SUCCESS
);
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_byte_model.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
USART driver static implementation of Byte model.
Company:
Microchip Technology Inc.
File Name:
drv_usart_static_byte_model.c
Summary:
Source code for the USART driver static implementation of Byte model.
Description:
This file contains the source code for the static implementation of the
USART driver Byte model.
Remarks:
Static interfaces incorporate the driver instance number within the names
of the routines, eliminating the need for an object ID or object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
#include "system_definitions.h"
// *****************************************************************************
// *****************************************************************************
// Section: Global Data
// *****************************************************************************
// *****************************************************************************
extern
DRV_USART_OBJ
gDrvUSART0Obj
;
// *****************************************************************************
// *****************************************************************************
// Section: Instance 0 static driver functions
// *****************************************************************************
// *****************************************************************************
uint8_t
DRV_USART0_ReadByte
(
void
)
{
uint8_t
readValue
;
/* Receive one byte */
readValue
=
PLIB_USART_ReceiverByteReceive
(
USART_ID_2
);
return
readValue
;
}
void
DRV_USART0_WriteByte
(
const
uint8_t
byte
)
{
/* Wait till TX buffer is available as blocking operation is selected */
while
(
PLIB_USART_TransmitterBufferIsFull
(
USART_ID_2
));
/* Send one byte */
PLIB_USART_TransmitterByteSend
(
USART_ID_2
,
byte
);
SYS_INT_SourceEnable
(
INT_SOURCE_USART_2_TRANSMIT
);
}
unsigned
int
DRV_USART0_ReceiverBufferSizeGet
(
void
)
{
return
8
;
}
unsigned
int
DRV_USART0_TransmitBufferSizeGet
(
void
)
{
return
8
;
}
bool
DRV_USART0_ReceiverBufferIsEmpty
(
void
)
{
/* Check the status of receiver buffer */
return
(
!
PLIB_USART_ReceiverDataIsAvailable
(
USART_ID_2
));
}
bool
DRV_USART0_TransmitBufferIsFull
(
void
)
{
/* Check the status of transmitter buffer */
return
(
PLIB_USART_TransmitterBufferIsFull
(
USART_ID_2
));
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/driver/usart/src/drv_usart_static_local.h
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
USART Driver Local Data Structures for static implementation
Company:
Microchip Technology Inc.
File Name:
drv_usart_static_local.h
Summary:
USART Driver Local Data Structures for static implementation
Description:
Driver Local Data Structures for static implementation
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute Software
only when embedded on a Microchip microcontroller or digital signal controller
that is integrated into your product or third party product (pursuant to the
sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#ifndef _DRV_USART_STATIC_LOCAL_H
#define _DRV_USART_STATIC_LOCAL_H
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include <stdint.h>
#include <stdbool.h>
#include <stddef.h>
#include "driver/usart/drv_usart.h"
#include "driver/usart/src/drv_usart_variant_mapping.h"
#include "system/clk/sys_clk.h"
#include "system/int/sys_int.h"
#include "system/debug/sys_debug.h"
// DOM-IGNORE-BEGIN
#ifdef __cplusplus // Provide C++ Compatibility
extern
"C"
{
#endif
// DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Data Type Definitions
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
/* USART Static Driver Instance Object
Summary:
Object used to keep any data required for the static USART driver.
Description:
This object is used to keep track of any data that must be maintained to
manage the USART static driver.
Remarks:
None.
*/
typedef
struct
{
}
DRV_USART_OBJ
;
// *****************************************************************************
// *****************************************************************************
// Section: Local functions.
// *****************************************************************************
// *****************************************************************************
// DOM-IGNORE-BEGIN
#ifdef __cplusplus
}
#endif
// DOM-IGNORE-END
#endif //#ifndef _DRV_USART_STATIC_LOCAL_H
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/system/clk/src/sys_clk_static.c
0 → 100644
View file @
376d2666
/*******************************************************************************
SYS CLK Static Functions for Clock System Service
Company:
Microchip Technology Inc.
File Name:
sys_clk_static.c
Summary:
SYS CLK static function implementations for the Clock System Service.
Description:
The Clock System Service provides a simple interface to manage the
oscillators
on Microchip microcontrollers. This file defines the static implementation
for the
Clock System Service.
Remarks:
Static functions incorporate all system clock configuration settings as
determined by the user via the Microchip Harmony Configurator GUI. It
provides
static version of the routines, eliminating the need for an object ID or
object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
// DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2014 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
// DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Include Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
#include "system_definitions.h"
#include "peripheral/osc/plib_osc.h"
#include "system/devcon/sys_devcon.h"
// *****************************************************************************
// *****************************************************************************
// Section: File Scope Functions
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
/* Function:
void SYS_CLK_Static_Initialize ( const SYS_CLK_INIT const * clkInit )
Summary:
Initializes hardware and internal data structure of the System Clock.
Description:
This function initializes the hardware and internal data structure of System
Clock Service.
Remarks:
This is configuration values for the static version of the Clock System
Service
module is determined by the user via the Microchip Harmony Configurator GUI.
This template will build a sys_clk_static.h and sys_clk_static.c file with
the configuration per the user's choice.
The objective is to eliminate the user's need to be knowledgeable in the
function of
the 'configuration bits' to configure the system oscillators.
*/
void
SYS_CLK_Initialize
(
const
SYS_CLK_INIT
const
*
clkInit
)
{
SYS_DEVCON_SystemUnlock
();
PLIB_OSC_FRCDivisorSelect
(
OSC_ID_0
,
OSC_FRC_DIV_2
);
/* Enable Peripheral Bus 1 */
PLIB_OSC_PBClockDivisorSet
(
OSC_ID_0
,
0
,
1
);
SYS_DEVCON_SystemLock
();
}
//******************************************************************************
/* Function:
inline uint32_t SYS_CLK_SystemFrequencyGet ( void )
Summary:
Gets the system clock frequency in Hertz.
Description:
This function gets the System clock frequency in Hertz.
Precondition:
None.
Parameters:
None.
Returns:
System clock frequency in Hertz.
Example:
<code>
uint32_t sysClockHz;
sysClockHz = SYS_CLK_SystemFrequencyGet ( );
</code>
Remarks:
*/
inline
uint32_t
SYS_CLK_SystemFrequencyGet
(
void
)
{
return
SYS_CLK_FREQ
;
}
//******************************************************************************
/* Function:
inline uint32_t SYS_CLK_PeripheralFrequencyGet ( CLK_BUSES_PERIPHERAL
peripheralBus )
Summary:
Gets the selected clock peripheral bus frequency in Hertz.
Description:
This function gets the selected peripheral bus clock frequency in Hertz.
Precondition:
None.
Parameters:
peripheralBus - Reference clock bus selection. One of the possible value
from
CLK_BUSES_PERIPHERAL enum. For devices that do
not have multiple
clock channels for Reference clock,
CLK_BUS_PERIPHERAL_1 should be
the selection.
Returns:
Clock frequency in Hertz.
Example:
<code>
unsigned long peripheralClockHz;
peripheralClockHz = SYS_CLK_PeripheralFrequencyGet ( CLK_BUS_PERIPHERAL_5 );
</code>
Remarks:
Most of the devices doesn't have multiple Peripheral clock buses. In
that case,
pass CLK_USB_PERIPHERAL_1 as the bus number.
*/
inline
uint32_t
SYS_CLK_PeripheralFrequencyGet
(
CLK_BUSES_PERIPHERAL
peripheralBus
)
{
return
SYS_CLK_BUS_PERIPHERAL_1
;
}
//******************************************************************************
/* Function:
inline uint32_t SYS_CLK_ReferenceClockFrequencyGet ( CLK_BUSES_REFERENCE
referenceBus )
Summary:
Gets the selected Reference clock bus frequency in Hertz.
Description:
This function gets frequency of the selected Reference clock bus in Hertz.
Precondition:
None.
Parameters:
peripheralBus - Reference clock bus selection. One of the possible value
from
CLK_BUSES_REFERENCE enum. For devices that do
not have multiple
clock channels for Reference clock,
CLK_BUS_REFERENCE_1 should be
the selection.
Returns:
Clock frequency in Hz.
Example:
<code>
unsigned long sysClockOutputHz;
sysClockOutputHz = SYS_CLK_ReferenceClockFrequencyGet ( CLK_BUS_REFERENCE_3
);
</code>
Remarks:
*/
inline
uint32_t
SYS_CLK_ReferenceClockFrequencyGet
(
CLK_BUSES_REFERENCE
referenceBus
)
{
return
0
;
}
/******************************************************************************
Function:
void SYS_CLK_SecondaryOscillatorEnable ( void )
Summary:
Enables the secondary oscillator.
Description:
This function enables the secondary oscillator.
Remarks:
For more details refer sys_clk.h.
*/
void
SYS_CLK_SecondaryOscillatorEnable
(
void
)
{
/* Check for secondary oscillator status */
if
(
!
PLIB_OSC_SecondaryIsEnabled
(
OSC_ID_0
))
{
/* Unlock and enable secondary oscillator */
SYS_DEVCON_SystemUnlock
();
PLIB_OSC_SecondaryEnable
(
OSC_ID_0
);
SYS_DEVCON_SystemLock
();
}
}
/******************************************************************************
Function:
void SYS_CLK_SecondaryOscillatorDisable ( void )
Summary:
Disables the secondary oscillator.
Description:
This function disables the secondary oscillator.
Remarks:
For more details refer sys_clk.h.
*/
void
SYS_CLK_SecondaryOscillatorDisable
(
void
)
{
/* Check for secondary oscillator status */
if
(
PLIB_OSC_SecondaryIsEnabled
(
OSC_ID_0
))
{
/* Unlock and disable secondary oscillator*/
SYS_DEVCON_SystemUnlock
();
PLIB_OSC_SecondaryDisable
(
OSC_ID_0
);
SYS_DEVCON_SystemLock
();
}
}
/******************************************************************************
Function:
bool SYS_CLK_SecondaryOscillatorIsEnabled ( void )
Summary:
Identifies whether secondary oscillator is enabled or disabled.
Description:
This function identifies whether the secondary oscillator is enabled or
disabled.
Remarks:
For more details refer sys_clk.h.
*/
bool
SYS_CLK_SecondaryOscillatorIsEnabled
(
void
)
{
return
(
PLIB_OSC_SecondaryIsEnabled
(
OSC_ID_0
));
}
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/system/clk/sys_clk_static.h
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SYS CLK Static Interface Declarations for Clock System Service
Company:
Microchip Technology Inc.
File Name:
sys_clk_static.h
Summary:
SYS CLK interface declarations for the static system service.
Description:
The Clock System Service provides a simple interface to manage the oscillators
on Microchip microcontrollers. This file defines the interface
Declarations for the SYS CLK system service.
Remarks:
Static interfaces incorporate all system clock configuration settings as
determined by the user via the Microchip Harmony Configurator GUI. It provides
static version of the routines, eliminating the need for an object ID or
object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2014 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
// DOM-IGNORE-BEGIN
#ifdef __cplusplus // Provide C++ Compatibility
extern
"C"
{
#endif
// DOM-IGNORE-END
#ifndef _SYS_CLK_STATIC_H
#define _SYS_CLK_STATIC_H
// *****************************************************************************
// *****************************************************************************
// Section: SYS CLK Module Initialization Routine (Static Version)
// *****************************************************************************
// *****************************************************************************
#endif // #ifndef _SYS_CLK_STATIC_H
//DOM-IGNORE-BEGIN
#ifdef __cplusplus
}
#endif
//DOM-IGNORE-END
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/system/console/src/sys_console_static.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SYS CONSOLE Static Functions for Console System Service
Company:
Microchip Technology Inc.
File Name:
sys_console_static.c
Summary:
SYS CONSOLE static function implementations for the Console System Service.
Description:
The Console System Service provides a simple interface to manage the oscillators
on Microchip microcontrollers. This file defines the static implementation for the
Console System Service.
Remarks:
Static functions incorporate all system clock configuration settings as
determined by the user via the Microchip Harmony Configurator GUI. It provides
static version of the routines, eliminating the need for an object ID or
object handle.
Static single-open interfaces also eliminate the need for the open handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2014 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Include Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
#include "system_definitions.h"
#include "system/console/sys_console.h"
// *****************************************************************************
// *****************************************************************************
// Section: Global Variable Definitions
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
/* Function:
SYS_MODULE_OBJ SYS_CONSOLE_Initialize( const SYS_MODULE_INDEX index,
const SYS_MODULE_INIT * const init )
Summary:
Initializes data for the instance of the Console module and opens the
specific module instance.
Description:
This function initializes the Console module, and selects the I/O device to
be used. It also initializes any internal data structures.
Precondition:
None.
Parameters:
index - Index for the instance to be initialized
init - Pointer to a data structure containing any data necessary
to initialize the sys console. This pointer may be null if no
data is required because static overrides have been
provided.
Returns:
If successful, returns a valid handle to an object. Otherwise, it
returns SYS_MODULE_OBJ_INVALID. The returned object must be passed as
argument to SYS_CONSOLE_Reinitialize, SYS_CONSOLE_Deinitialize,
SYS_CONSOLE_Tasks and SYS_CONSOLE_Status routines.
Remarks:
This routine should only be called once during system initialization
unless SYS_Console_Deinitialize is first called to deinitialize the device
instance before reinitializing it. If the system was already initialized
it safely returns without causing any disturbance.
*/
SYS_MODULE_OBJ
SYS_CONSOLE_Initialize
(
const
SYS_MODULE_INDEX
index
,
const
SYS_MODULE_INIT
*
const
init
)
{
return
1
;
}
// *****************************************************************************
/* Function:
void SYS_CONSOLE_Reinitialize ( SYS_MODULE_OBJ object,
const SYS_MODULE_INIT * const init )
Summary:
Reinitializes and refreshes the data structure for the instance of the
Console module.
Description:
This function reinitializes and refreshes the data structure for the
instance of the Console module.
PreCondition:
The SYS_CONSOLE_Initialize function should have been called before calling
this function.
Parameters:
object - Identifies the SYS CONSOLE Object returned by the Initialize
interface
init - Pointer to the data structure containing any data
necessary to initialize the hardware
Returns:
- true - if successful
- false - if unsuccessful
*/
bool
SYS_CONSOLE_Reinitialize
(
SYS_MODULE_OBJ
object
,
const
SYS_MODULE_INIT
*
const
init
)
{
return
true
;
}
// *****************************************************************************
/* Function:
void SYS_CONSOLE_Deinitialize ( SYS_MODULE_OBJ object )
Summary:
Deinitializes the specific module instance of the Console module.
Description:
Deinitializes the specific module instance disabling its operation (and
any hardware for driver modules). Resets all the internal data
structures and fields for the specified instance to the default
settings.
PreCondition:
The SYS_CONSOLE_Initialize function should have been called before calling
this function.
Parameters:
object - SYS CONSOLE object handle, returned from SYS_CONSOLE_Initialize
Returns:
- true - if successful
- false - if unsuccessful
*/
bool
SYS_CONSOLE_Deinitialize
(
SYS_MODULE_OBJ
object
)
{
return
true
;
}
// *****************************************************************************
/* Function:
SYS_STATUS SYS_CONSOLE_Status ( SYS_MODULE_OBJ object )
Summary:
Returns status of the specific module instance of the Console module.
Description:
This function returns the status of the specific module instance disabling its
operation (and any hardware for driver modules).
PreCondition:
The SYS_CONSOLE_Initialize function should have been called before calling
this function.
Parameters:
object - SYS CONSOLE object handle, returned from SYS_CONSOLE_Initialize
Returns:
SYS_STATUS_READY Indicates that any previous module operation for the
specified module has completed
SYS_STATUS_BUSY Indicates that a previous module operation for the
specified module has not yet completed
SYS_STATUS_ERROR Indicates that the specified module is in an error state
*/
SYS_STATUS
SYS_CONSOLE_Status
(
SYS_MODULE_OBJ
object
)
{
return
SYS_STATUS_READY
;
}
// *****************************************************************************
/* Function:
void SYS_CONSOLE_Tasks ( SYS_MODULE_OBJ object )
Summary:
Maintains the system console's state machine and implements its ISR.
Description:
This routine is used to maintain the system console's internal state machine
and implement its ISR for interrupt-driven implementations.
Precondition:
The SYS_CONSOLE_Initialize function must have been called for the specified
console instance.
Parameters:
object - SYS CONSOLE object handle, returned from SYS_CONSOLE_Initialize
Returns:
None.
*/
void
SYS_CONSOLE_Tasks
(
SYS_MODULE_OBJ
object
)
{
}
// *****************************************************************************
/* Function:
ssize_t SYS_CONSOLE_Read( const SYS_MODULE_INDEX index, int fd, void *buf, size_t count )
Summary:
Reads data from the console device.
Description:
This function reads the data from the console device.
Preconditions:
None.
Parameters:
index - Console instance index
fd - This field is not used
Maintained for backward compatibility
NULL value can be passed as a parameter
buf - Buffer to hold the read data.
count - Number of bytes to read.
Returns:
Number of bytes actually read.
Remarks:
None.
*/
ssize_t
SYS_CONSOLE_Read
(
const
SYS_MODULE_INDEX
index
,
int
fd
,
void
*
buf
,
size_t
count
)
{
size_t
numBytes
=
0
;
char
*
pReadByte
=
(
char
*
)
buf
;
if
(
!
DRV_USART0_ReceiverBufferIsEmpty
()
)
{
*
pReadByte
=
DRV_USART0_ReadByte
();
numBytes
++
;
pReadByte
++
;
}
return
numBytes
;
}
// *****************************************************************************
/* Function:
ssize_t SYS_CONSOLE_Write( const SYS_MODULE_INDEX index, int fd, const void *buffer, size_t count )
Summary:
Writes data to the console device.
Description:
This function writes data to the console device.
Preconditions:
None.
Parameters:
index - Console instance index
fd - This field is not used
Maintained for backward compatibility
NULL value can be passed as a parameter
buf - Buffer holding the data to be written.
count - Number of bytes to write.
Returns:
Number of bytes written or -1 if error.
Remarks:
None.
*/
ssize_t
SYS_CONSOLE_Write
(
const
SYS_MODULE_INDEX
index
,
int
fd
,
const
char
*
buf
,
size_t
count
)
{
size_t
numBytes
=
0
;
while
(
numBytes
<
count
)
{
DRV_USART0_WriteByte
(
buf
[
numBytes
++
]);
}
return
count
;
}
// *****************************************************************************
/* Function:
void SYS_CONSOLE_RegisterCallback(const SYS_MODULE_INDEX index, consoleCallbackFunction cbFunc, SYS_CONSOLE_EVENT event)
Summary:
Registers a callback function with the console service that will be
executed when the read or write queue is emptied.
Description:
This function is used by an application to register a callback function
with the console service. The callback function is called in response to
an event. Separate callback functions are required for each event.
Preconditions:
None.
Parameters:
index - Console instance index
consCallbackFunc - The name of the callback function
event - Enumerated list of events that can trigger a callback
Returns:
None.
Remarks:
None.
*/
void
SYS_CONSOLE_RegisterCallback
(
const
SYS_MODULE_INDEX
index
,
consoleCallbackFunction
cbFunc
,
SYS_CONSOLE_EVENT
event
)
{
}
// *****************************************************************************
/* Function:
void SYS_CONSOLE_Flush(const SYS_MODULE_INDEX index)
Summary:
Flushes the read and write queues and resets an overflow error for the
console.
Description:
This function flushes the read and write queues and resets an overflow
error for the console.
Preconditions:
None.
Parameters:
index - Console instance index
Returns:
None.
Remarks:
None.
*/
void
SYS_CONSOLE_Flush
(
const
SYS_MODULE_INDEX
index
)
{
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/framework/system/ports/src/sys_ports_static.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
SYS PORTS Static Functions for PORTS System Service
Company:
Microchip Technology Inc.
File Name:
sys_ports_static.c
Summary:
SYS PORTS static function implementations for the Ports System Service.
Description:
The Ports System Service provides a simple interface to manage the ports
on Microchip microcontrollers. This file defines the static implementation for the
Ports System Service.
Remarks:
Static functions incorporate all system ports configuration settings as
determined by the user via the Microchip Harmony Configurator GUI. It provides
static version of the routines, eliminating the need for an object ID or
object handle.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2013 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#include "system_config.h"
#include "system/ports/sys_ports.h"
#include "peripheral/devcon/plib_devcon.h"
#include "peripheral/ports/plib_ports.h"
#include "peripheral/int/plib_int.h"
/******************************************************************************
Function:
SYS_PORTS_Initialize(void)
Summary:
Initializes Ports System Service
Description:
This function initializes different port pins/channels to the desired state.
It also remaps the pins to the desired specific function.
Remarks:
None.
*/
void
SYS_PORTS_Initialize
(
void
)
{
/* AN and CN Pins Initialization */
PLIB_PORTS_AnPinsModeSelect
(
PORTS_ID_0
,
SYS_PORT_AD1PCFG
,
PORTS_PIN_MODE_DIGITAL
);
PLIB_PORTS_CnPinsPullUpEnable
(
PORTS_ID_0
,
SYS_PORT_CNPUE
);
PLIB_PORTS_CnPinsEnable
(
PORTS_ID_0
,
SYS_PORT_CNEN
);
PLIB_PORTS_ChangeNoticeEnable
(
PORTS_ID_0
);
PLIB_PORTS_Read
(
PORTS_ID_0
,
PORT_CHANNEL_D
);
PLIB_INT_SourceFlagClear
(
INT_ID_0
,
INT_SOURCE_CHANGE_NOTICE
);
PLIB_INT_SourceEnable
(
INT_ID_0
,
INT_SOURCE_CHANGE_NOTICE
);
PLIB_INT_VectorPrioritySet
(
INT_ID_0
,
INT_VECTOR_CN
,
INT_PRIORITY_LEVEL2
);
PLIB_INT_VectorSubPrioritySet
(
INT_ID_0
,
INT_VECTOR_CN
,
INT_SUBPRIORITY_LEVEL0
);
/* PORT D Initialization */
PLIB_PORTS_OpenDrainEnable
(
PORTS_ID_0
,
PORT_CHANNEL_D
,
SYS_PORT_D_ODC
);
PLIB_PORTS_Write
(
PORTS_ID_0
,
PORT_CHANNEL_D
,
SYS_PORT_D_LAT
);
PLIB_PORTS_DirectionOutputSet
(
PORTS_ID_0
,
PORT_CHANNEL_D
,
SYS_PORT_D_TRIS
^
0xFFFF
);
}
/******************************************************************************
Function:
PORTS_DATA_TYPE SYS_PORTS_Read( PORTS_MODULE_ID index, PORTS_CHANNEL channel )
Summary:
Reads the data from the I/O port.
Description:
This function reads the data from the I/O port.
Remarks:
None.
*/
PORTS_DATA_TYPE
SYS_PORTS_Read
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
)
{
return
PLIB_PORTS_Read
(
index
,
channel
);
}
/******************************************************************************
Function:
void SYS_PORTS_Write( PORTS_MODULE_ID index, PORTS_CHANNEL channel,
PORTS_DATA_TYPE value )
Summary:
Writes the data from the I/O port.
Description:
This function writes the data to the I/O port.
Remarks:
None.
*/
void
SYS_PORTS_Write
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_DATA_TYPE
value
)
{
PLIB_PORTS_Write
(
index
,
channel
,
value
);
}
/******************************************************************************
Function:
void SYS_PORTS_Set( PORTS_MODULE_ID index, PORTS_CHANNEL channel,
PORTS_DATA_TYPE value,
PORTS_DATA_MASK mask )
Summary:
Sets the selected digital port/latch based on the mask.
Description:
This function sets the selected digital port/latch relative to the mask.
Remarks:
None.
*/
void
SYS_PORTS_Set
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_DATA_TYPE
value
,
PORTS_DATA_MASK
mask
)
{
PLIB_PORTS_Set
(
index
,
channel
,
value
,
mask
);
}
/******************************************************************************
Function:
void SYS_PORTS_Clear ( PORTS_MODULE_ID index, PORTS_CHANNEL channel,
PORTS_DATA_MASK clearMask )
Summary:
Clears the selected digital port.
Description:
This function clears the selected digital port.
Remarks:
None.
*/
void
SYS_PORTS_Clear
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_DATA_MASK
clearMask
)
{
PLIB_PORTS_Clear
(
index
,
channel
,
clearMask
);
}
/******************************************************************************
Function:
void SYS_PORTS_DirectionSelect( PORTS_MODULE_ID index,
SYS_PORTS_PIN_DIRECTION pinDir,
PORTS_CHANNEL channel,
PORTS_DATA_MASK mask )
Summary:
Enables the direction for the selected port.
Description:
This function enables the direction for the selected port.
Remarks:
None.
*/
void
SYS_PORTS_DirectionSelect
(
PORTS_MODULE_ID
index
,
SYS_PORTS_PIN_DIRECTION
pinDir
,
PORTS_CHANNEL
channel
,
PORTS_DATA_MASK
mask
)
{
if
(
pinDir
==
SYS_PORTS_DIRECTION_INPUT
)
{
PLIB_PORTS_DirectionInputSet
(
index
,
channel
,
mask
);
}
else
{
PLIB_PORTS_DirectionOutputSet
(
index
,
channel
,
mask
);
}
}
/******************************************************************************
Function:
PORTS_DATA_MASK SYS_PORTS_DirectionGet( PORTS_MODULE_ID index,
PORTS_CHANNEL channel )
Summary:
Reads the port direction for the selected port.
Description:
This function reads the port direction for the selected port.
Remarks:
None.
*/
PORTS_DATA_MASK
SYS_PORTS_DirectionGet
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
)
{
return
PLIB_PORTS_DirectionGet
(
index
,
channel
);
}
/******************************************************************************
Function:
void SYS_PORTS_Toggle( PORTS_MODULE_ID index, PORTS_CHANNEL channel,
PORTS_DATA_MASK toggleMask )
Summary:
Toggles the selected digital port pins.
Description:
This function toggles the selected digital port pins.
Remarks:
None.
*/
void
SYS_PORTS_Toggle
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_DATA_MASK
toggleMask
)
{
PLIB_PORTS_Toggle
(
index
,
channel
,
toggleMask
);
}
/******************************************************************************
Function:
void SYS_PORTS_OpenDrainEnable( PORTS_MODULE_ID index, PORTS_CHANNEL channel,
PORTS_DATA_MASK mask )
Summary:
Enables the open drain functionality for the selected port.
Description:
This function enables the open drain functionality for the selected port.
Remarks:
None.
*/
void
SYS_PORTS_OpenDrainEnable
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_DATA_MASK
mask
)
{
#if defined(PLIB_PORTS_ExistsPortsOpenDrain)
if
(
PLIB_PORTS_ExistsPortsOpenDrain
(
index
))
{
PLIB_PORTS_OpenDrainEnable
(
index
,
channel
,
mask
);
}
#endif
}
/******************************************************************************
Function:
void SYS_PORTS_OpenDrainDisable( PORTS_MODULE_ID index, PORTS_CHANNEL channel,
PORTS_DATA_MASK mask )
Summary:
Disables the open drain functionality for the selected port.
Description:
This function disables the open drain functionality for the selected port.
Remarks:
None.
*/
void
SYS_PORTS_OpenDrainDisable
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_DATA_MASK
mask
)
{
#if defined(PLIB_PORTS_ExistsPortsOpenDrain)
if
(
PLIB_PORTS_ExistsPortsOpenDrain
(
index
))
{
PLIB_PORTS_OpenDrainDisable
(
index
,
channel
,
mask
);
}
#endif
}
// *****************************************************************************
// *****************************************************************************
// Section: SYS Change Notification Pins Routines
// *****************************************************************************
// *****************************************************************************
/******************************************************************************
Function:
void SYS_PORTS_ChangeNotificationGlobalEnable( PORTS_MODULE_ID index )
Summary:
Globally enables the change notification.
Description:
This function globally enables the change notification.
Remarks:
None.
*/
void
SYS_PORTS_ChangeNotificationGlobalEnable
(
PORTS_MODULE_ID
index
)
{
#if defined(PLIB_PORTS_ExistsChangeNotice)
if
(
PLIB_PORTS_ExistsChangeNotice
(
index
))
{
PLIB_PORTS_ChangeNoticeEnable
(
index
);
}
#endif
}
/******************************************************************************
Function:
void SYS_PORTS_ChangeNotificationGlobalDisable( PORTS_MODULE_ID index )
Summary:
Globally disables the change notification.
Description:
This function globally disables the change notification.
Remarks:
None.
*/
void
SYS_PORTS_ChangeNotificationGlobalDisable
(
PORTS_MODULE_ID
index
)
{
#if defined(PLIB_PORTS_ExistsChangeNotice)
if
(
PLIB_PORTS_ExistsChangeNotice
(
index
))
{
PLIB_PORTS_ChangeNoticeDisable
(
index
);
}
#endif
}
/******************************************************************************
Function:
void SYS_PORTS_GlobalChangeNotificationDisable( PORTS_MODULE_ID index )
Summary:
Globally disables the change notification for the selected port.
Description:
This function globally disables the change notification for the selected port.
Remarks:
None.
*/
void
SYS_PORTS_GlobalChangeNotificationDisable
(
PORTS_MODULE_ID
index
)
{
#if defined(PLIB_PORTS_ExistsChangeNotice)
if
(
PLIB_PORTS_ExistsChangeNotice
(
index
))
{
PLIB_PORTS_ChangeNoticeDisable
(
index
);
}
#endif
}
/******************************************************************************
Function:
void SYS_PORTS_ChangeNotificationEnable( PORTS_MODULE_ID index,
PORTS_CHANGE_NOTICE_PIN pinNum,
SYS_PORTS_PULLUP_PULLDOWN_STATUS value )
Summary:
Enables the change notification for the selected port.
Description:
This function enables the change notification for the selected port.
Remarks:
None.
*/
void
SYS_PORTS_ChangeNotificationEnable
(
PORTS_MODULE_ID
index
,
PORTS_CHANGE_NOTICE_PIN
pinNum
,
SYS_PORTS_PULLUP_PULLDOWN_STATUS
value
)
{
#if defined(PLIB_PORTS_ExistsChangeNoticePullUp)
if
(
PLIB_PORTS_ExistsChangeNoticePullUp
(
index
))
{
switch
(
value
)
{
case
SYS_PORTS_PULLUP_DISABLE
:
PLIB_PORTS_ChangeNoticePullUpDisable
(
index
,
pinNum
);
break
;
case
SYS_PORTS_PULLUP_ENABLE
:
PLIB_PORTS_ChangeNoticePullUpEnable
(
index
,
pinNum
);
break
;
}
}
#endif
#if defined(PLIB_PORTS_ExistsPinChangeNotice)
if
(
PLIB_PORTS_ExistsPinChangeNotice
(
index
))
{
PLIB_PORTS_PinChangeNoticeEnable
(
index
,
pinNum
);
}
#endif
}
/******************************************************************************
Function:
void SYS_PORTS_ChangeNotificationDisable( PORTS_MODULE_ID index,
PORTS_CHANGE_NOTICE_PIN pinNum )
Summary:
Disables the change notification for the selected port.
Description:
This function disables the change notification for the selected port.
Remarks:
None.
*/
void
SYS_PORTS_ChangeNotificationDisable
(
PORTS_MODULE_ID
index
,
PORTS_CHANGE_NOTICE_PIN
pinNum
)
{
#if defined(PLIB_PORTS_ExistsPinChangeNotice)
if
(
PLIB_PORTS_ExistsPinChangeNotice
(
index
))
{
PLIB_PORTS_PinChangeNoticeDisable
(
index
,
pinNum
);
}
#endif
}
/******************************************************************************
Function:
void SYS_PORTS_ChangeNotificationInIdleModeEnable( PORTS_MODULE_ID index )
Summary:
Enables the change notification for the selected port in Sleep or Idle mode.
Description:
This function enables the change notification for the selected port in Sleep
or Idle mode.
Remarks:
None.
*/
void
SYS_PORTS_ChangeNotificationInIdleModeEnable
(
PORTS_MODULE_ID
index
)
{
#if defined(PLIB_PORTS_ExistsChangeNoticeInIdle)
if
(
PLIB_PORTS_ExistsChangeNoticeInIdle
(
index
))
{
PLIB_PORTS_ChangeNoticeInIdleEnable
(
index
);
}
#endif
}
// *****************************************************************************
/* Function:
void SYS_PORTS_ChangeNotificationInIdleModeDisable( PORTS_MODULE_ID index)
Summary:
Disables the change notification for the selected port in Sleep or Idle mode.
Description:
This function disables the change notification for the selected port in Sleep
or Idle mode.
Remarks:
None.
*/
void
SYS_PORTS_ChangeNotificationInIdleModeDisable
(
PORTS_MODULE_ID
index
)
{
#if defined(PLIB_PORTS_ExistsChangeNoticeInIdle)
if
(
PLIB_PORTS_ExistsChangeNoticeInIdle
(
index
))
{
PLIB_PORTS_ChangeNoticeInIdleDisable
(
index
);
}
#endif
}
// *****************************************************************************
/* Function:
void SYS_PORTS_ChangeNotificationPullUpEnable ( PORTS_MODULE_ID index,
PORTS_CHANGE_NOTICE_PIN pinNum )
Summary:
Enables weak pull-up on change notification pin.
Description:
This function enables weak pull-up on change notification pin.
Remarks:
None.
*/
void
SYS_PORTS_ChangeNotificationPullUpEnable
(
PORTS_MODULE_ID
index
,
PORTS_CHANGE_NOTICE_PIN
pinNum
)
{
#if defined(PLIB_PORTS_ExistsChangeNoticePullUp)
if
(
PLIB_PORTS_ExistsChangeNoticePullUp
(
index
))
{
PLIB_PORTS_ChangeNoticePullUpEnable
(
index
,
pinNum
);
}
#endif
}
// *****************************************************************************
/* Function:
void SYS_PORTS_ChangeNotificationPullUpDisable ( PORTS_MODULE_ID index,
PORTS_CHANGE_NOTICE_PIN pinNum )
Summary:
Disables pull-up on input change.
Description:
This function disables pull-up on input change.
Remarks:
None.
*/
void
SYS_PORTS_ChangeNotificationPullUpDisable
(
PORTS_MODULE_ID
index
,
PORTS_CHANGE_NOTICE_PIN
pinNum
)
{
#if defined(PLIB_PORTS_ExistsChangeNoticePullUp)
if
(
PLIB_PORTS_ExistsChangeNoticePullUp
(
index
))
{
PLIB_PORTS_ChangeNoticePullUpDisable
(
index
,
pinNum
);
}
#endif
}
// *****************************************************************************
// *****************************************************************************
// Section: SYS PORT PINS Control Routines
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
/* Function:
void SYS_PORTS_PinModeSelect ( PORTS_MODULE_ID index, PORTS_ANALOG_PIN pin,
PORTS_PIN_MODE mode)
Summary:
Enables the selected pin as analog or digital.
Description:
This function enables the selected pin as analog or digital.
Remarks:
None.
*/
void
SYS_PORTS_PinModeSelect
(
PORTS_MODULE_ID
index
,
PORTS_ANALOG_PIN
pin
,
PORTS_PIN_MODE
mode
)
{
#if defined(PLIB_PORTS_ExistsPinMode)
if
(
PLIB_PORTS_ExistsPinMode
(
index
))
{
PLIB_PORTS_PinModeSelect
(
index
,
pin
,
mode
);
}
#endif
}
// *****************************************************************************
/* Function:
void SYS_PORTS_PinWrite ( PORTS_MODULE_ID index,
PORTS_CHANNEL channel,
PORTS_BIT_POS bitPos
bool value )
Summary:
Writes the selected digital pin.
Description:
This function writes the selected digital pin.
Remarks:
None.
*/
void
SYS_PORTS_PinWrite
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_BIT_POS
bitPos
,
bool
value
)
{
PLIB_PORTS_PinWrite
(
index
,
channel
,
bitPos
,
value
);
}
// *****************************************************************************
/* Function:
bool SYS_PORTS_PinRead ( PORTS_MODULE_ID index,
PORTS_CHANNEL channel,
PORTS_BIT_POS bitPos )
Summary:
Reads the selected digital pin.
Description:
This function reads the selected digital pin.
Remarks:
None.
*/
bool
SYS_PORTS_PinRead
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_BIT_POS
bitPos
)
{
return
PLIB_PORTS_PinGet
(
index
,
channel
,
bitPos
);
}
// *****************************************************************************
/* Function:
void SYS_PORTS_PinToggle ( PORTS_MODULE_ID index,
PORTS_CHANNEL channel,
PORTS_BIT_POS bitPos )
Summary:
Toggles the selected digital pin.
Description:
This function toggles the selected digital pin.
Remarks:
None.
*/
void
SYS_PORTS_PinToggle
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_BIT_POS
bitPos
)
{
PLIB_PORTS_PinToggle
(
index
,
channel
,
bitPos
);
}
// *****************************************************************************
/* Function:
void SYS_PORTS_PinSet( PORTS_MODULE_ID index,
PORTS_CHANNEL channel,
PORTS_BIT_POS bitPos )
Summary:
Sets the selected digital pin/latch.
Description:
This function sets the selected digital pin/latch.
Remarks:
None.
*/
void
SYS_PORTS_PinSet
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_BIT_POS
bitPos
)
{
PLIB_PORTS_PinSet
(
index
,
channel
,
bitPos
);
}
// *****************************************************************************
/* Function:
void SYS_PORTS_PinClear ( PORTS_MODULE_ID index,
PORTS_CHANNEL channel,
PORTS_BIT_POS bitPos )
Summary:
Clears the selected digital pin.
Description:
This function clears the selected digital pin.
Remarks:
None.
*/
void
SYS_PORTS_PinClear
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_BIT_POS
bitPos
)
{
PLIB_PORTS_PinClear
(
index
,
channel
,
bitPos
);
}
// *****************************************************************************
/* Function:
void SYS_PORTS_PinDirectionSelect ( PORTS_MODULE_ID index,
SYS_PORTS_PIN_DIRECTION pinDir,
PORTS_CHANNEL channel,
PORTS_BIT_POS bitPos )
Summary:
Enables the direction for the selected pin.
Description:
This function enables the direction for the selected pin.
Remarks:
None.
*/
void
SYS_PORTS_PinDirectionSelect
(
PORTS_MODULE_ID
index
,
SYS_PORTS_PIN_DIRECTION
pinDir
,
PORTS_CHANNEL
channel
,
PORTS_BIT_POS
bitPos
)
{
if
(
pinDir
==
SYS_PORTS_DIRECTION_OUTPUT
)
{
PLIB_PORTS_PinDirectionOutputSet
(
index
,
channel
,
bitPos
);
}
else
{
PLIB_PORTS_PinDirectionInputSet
(
index
,
channel
,
bitPos
);
}
}
// *****************************************************************************
/* Function:
void SYS_PORTS_PinOpenDrainEnable ( PORTS_MODULE_ID index,
PORTS_CHANNEL channel,
PORTS_BIT_POS bitPos )
Summary:
Enables the open-drain functionality for the selected pin.
Description:
This function enables the open-drain functionality for the selected pin.
Remarks:
None.
*/
void
SYS_PORTS_PinOpenDrainEnable
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_BIT_POS
bitPos
)
{
#if defined(PLIB_PORTS_ExistsPortsOpenDrain)
if
(
PLIB_PORTS_ExistsPortsOpenDrain
(
index
))
{
PLIB_PORTS_PinOpenDrainEnable
(
index
,
channel
,
bitPos
);
}
#endif
}
// *****************************************************************************
/* Function:
void SYS_PORTS_PinOpenDrainDisable ( PORTS_MODULE_ID index,
PORTS_CHANNEL channel,
PORTS_BIT_POS bitPos )
Summary:
Disables the open-drain functionality for the selected pin.
Description:
This function disables the open-drain functionality for the selected pin.
Remarks:
None.
*/
void
SYS_PORTS_PinOpenDrainDisable
(
PORTS_MODULE_ID
index
,
PORTS_CHANNEL
channel
,
PORTS_BIT_POS
bitPos
)
{
#if defined(PLIB_PORTS_ExistsPortsOpenDrain)
if
(
PLIB_PORTS_ExistsPortsOpenDrain
(
index
))
{
PLIB_PORTS_PinOpenDrainDisable
(
index
,
channel
,
bitPos
);
}
#endif
}
// *****************************************************************************
/* Function:
void SYS_PORTS_RemapInput( PORTS_MODULE_ID index,
PORTS_REMAP_INPUT_FUNCTION function,
PORTS_REMAP_INPUT_PIN remapPin )
Summary:
Input/Output (I/O) function remapping.
Description:
This function controls the I/O function remapping.
Precondition:
None.
*/
void
SYS_PORTS_RemapInput
(
PORTS_MODULE_ID
index
,
PORTS_REMAP_INPUT_FUNCTION
function
,
PORTS_REMAP_INPUT_PIN
remapPin
)
{
#if defined(PLIB_PORTS_ExistsRemapInput)
if
(
PLIB_PORTS_ExistsRemapInput
(
index
))
{
PLIB_DEVCON_SystemUnlock
(
DEVCON_ID_0
);
PLIB_DEVCON_DeviceRegistersUnlock
(
DEVCON_ID_0
,
DEVCON_PPS_REGISTERS
);
PLIB_PORTS_RemapInput
(
index
,
function
,
remapPin
);
}
#endif
}
// *****************************************************************************
/* Function:
void SYS_PORTS_RemapOutput( PORTS_MODULE_ID index,
PORTS_REMAP_OUTPUT_FUNCTION function,
PORTS_REMAP_OUTPUT_PIN remapPin )
Summary:
Input/Output (I/O) function remapping.
Description:
This function controls the I/O function remapping.
Precondition:
None.
*/
void
SYS_PORTS_RemapOutput
(
PORTS_MODULE_ID
index
,
PORTS_REMAP_OUTPUT_FUNCTION
function
,
PORTS_REMAP_OUTPUT_PIN
remapPin
)
{
#if defined(PLIB_PORTS_ExistsRemapOutput)
if
(
PLIB_PORTS_ExistsRemapOutput
(
index
))
{
PLIB_DEVCON_SystemUnlock
(
DEVCON_ID_0
);
PLIB_DEVCON_DeviceRegistersUnlock
(
DEVCON_ID_0
,
DEVCON_PPS_REGISTERS
);
PLIB_PORTS_RemapOutput
(
index
,
function
,
remapPin
);
}
#endif
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/mx795.mhc
0 → 100644
View file @
376d2666
#
# Configuration generated by Microchip Harmony Configurator (MHC) v1.0.8.7
# Project name: mqtt_client
# Configuration: mx795_CC3100_e16
# Device: PIC32MX795F512L
# Harmony version: 1.08.01
#
#
# from $PROJECT_FIRMWARE_DIRECTORY/$PROJECT_NAME.hconfig
#
CONFIG_APP_INSTANCES=1
#
# from $HARMONY_VERSION_PATH/utilities/mhc/config/app_name_idx_gencode.ftl
#
CONFIG_APP_MENU_IDX0=y
CONFIG_APP_NAME_0="app"
CONFIG_APP_AUTO_GENERATE_CODE0=n
#
# from $PROJECT_FIRMWARE_DIRECTORY/$PROJECT_NAME.hconfig
#
CONFIG_USE_EXCEPTION_HANDLER=y
CONFIG_EXCEPTION_USE_SYS_DEBUG=y
CONFIG_EXCEPTION_BREAKPOINT=y
#
# from bluetooth.hconfig
#
CONFIG_USE_BLUETOOTH_LIBRARIES=n
#
# from bootloader.hconfig
#
CONFIG_USE_BOOTLOADER=n
#
# from crypto.hconfig
#
CONFIG_USE_CRYPTO_LIBRARY=n
CONFIG_USE_CRYPTO_LIB=n
#
# from decoder.hconfig
#
CONFIG_USE_IMAGE_DECODER=n
CONFIG_USE_DECODER=n
#
# from drv_adc.hconfig
#
CONFIG_USE_DRV_ADC=n
#
# from drv_camera.hconfig
#
CONFIG_USE_DRV_CAMERA=n
#
# from drv_can.hconfig
#
CONFIG_USE_DRV_CAN=n
#
# from drv_cmp.hconfig
#
CONFIG_DRV_CVREF_ENABLE=n
CONFIG_USE_DRV_CMP=n
#
# from drv_encx24j600.hconfig
#
CONFIG_DRV_ENCX24J600_USE_DRIVER=n
#
# from drv_enc28j60.hconfig
#
CONFIG_DRV_ENC28J60_USE_DRIVER=n
#
# from tcpip_mac.hconfig
#
CONFIG_TCPIP_USE_ETH_MAC=n
#
# from drv_flash.hconfig
#
CONFIG_USE_DRV_FLASH=n
#
# from drv_gfx_glcd.hconfig
#
CONFIG_USE_DRV_GFX_GLCD=n
#
# from drv_gfx_lcc.hconfig
#
CONFIG_USE_DRV_GFX_LCC=n
#
# from drv_gfx_otm2201a.hconfig
#
CONFIG_USE_DRV_GFX_OTM2201A=n
#
# from drv_gfx_ssd1926.hconfig
#
CONFIG_USE_DRV_GFX_SSD1926=n
#
# from drv_gfx_ssd1289.hconfig
#
CONFIG_USE_DRV_GFX_SSD1289=n
#
# from drv_gfx_s1d13517.hconfig
#
CONFIG_USE_DRV_GFX_S1D13517=n
#
# from drv_gfx_display.hconfig
#
CONFIG_USE_DRV_GFX_DISPLAY=n
CONFIG_DRV_GFX_DISP_VSYNC_NEGATIVE_POLARITY=n
CONFIG_DRV_GFX_DISP_HSYNC_NEGATIVE_POLARITY=n
#
# from drv_i2c.hconfig
#
CONFIG_USE_DRV_I2C=n
#
# from drv_ic.hconfig
#
CONFIG_USE_DRV_IC=n
#
# from drv_nvm.hconfig
#
CONFIG_USE_DRV_NVM=n
#
# from drv_oc.hconfig
#
CONFIG_USE_DRV_OC=n
#
# from drv_pmp.hconfig
#
CONFIG_USE_DRV_PMP=n
#
# from drv_rtcc.hconfig
#
CONFIG_USE_DRV_RTCC=y
CONFIG_DRV_RTCC_DRIVER_MODE="STATIC"
CONFIG_DRV_RTCC_INTERRUPT_MODE=n
CONFIG_DRV_RTCC_ALARM_MASK_CONFIGURATION="RTCC_ALARM_EVERY_SECOND"
CONFIG_DRV_RTCC_OUTPUT_ENABLE=n
CONFIG_DRV_RTCC_TIME_SET="235959"
CONFIG_DRV_RTCC_DATE_SET="140101"
CONFIG_DRV_RTCC_DAY_SET=0
CONFIG_DRV_RTCC_ALARM_TIME_SET="000005"
CONFIG_DRV_RTCC_ALARM_DATE_SET="0101"
CONFIG_DRV_RTCC_ALARM_DAY_SET=0
#
# from drv_sample.hconfig
#
CONFIG_USE_DRV_SAMPLE=n
#
# from drv_sdcard.hconfig
#
CONFIG_USE_DRV_SDCARD=n
#
# from drv_spi.hconfig
#
CONFIG_DRV_SPI_USE_DRIVER=y
CONFIG_DRV_SPI_DRIVER_MODE="STATIC"
CONFIG_DRV_SPI_USE_BLOCKING=n
CONFIG_DRV_SPI_USE_ISR_MODE=n
CONFIG_DRV_SPI_USE_POLLED_MODE=y
CONFIG_DRV_SPI_USE_MASTER_MODE=y
CONFIG_DRV_SPI_USE_SLAVE_MODE=n
CONFIG_DRV_SPI_USE_STANDARD_BUFFER_MODE=y
CONFIG_DRV_SPI_USE_ENHANCED_BUFFER_MODE=n
CONFIG_DRV_SPI_USE_8BIT_MODE=y
CONFIG_DRV_SPI_USE_16BIT_MODE=n
CONFIG_DRV_SPI_USE_32BIT_MODE=n
CONFIG_DRV_SPI_USE_DMA=n
CONFIG_DRV_SPI_USE_CLIENT_CONFIG_FUCNTION=y
CONFIG_DRV_SPI_INSTANCES_NUMBER=1
CONFIG_DRV_SPI_CLIENT_NUMBER=1
CONFIG_DRV_SPI_NUM_ELEMENTS_PER_INSTANCE=10
#
# from $HARMONY_VERSION_PATH/framework/driver/spi/config/drv_spi_idx.ftl
#
CONFIG_DRV_SPI_IDX0=y
CONFIG_DRV_SPI_SPI_ID_IDX0="SPI_ID_1"
CONFIG_DRV_SPI_TASK_MODE_POLLED_IDX0=y
CONFIG_DRV_SPI_SPI_MODE_MASTER_IDX0=y
CONFIG_DRV_SPI_COMM_WIDTH_8_BIT_IDX0=y
CONFIG_DRV_SPI_BUFFER_STANDARD_IDX0=y
CONFIG_DRV_SPI_ALLOW_IDLE_RUN_IDX0=n
CONFIG_DRV_SPI_SPI_PROTOCOL_TYPE_IDX0="DRV_SPI_PROTOCOL_TYPE_STANDARD"
CONFIG_DRV_SPI_SPI_CLOCK_IDX0="CLK_BUS_PERIPHERAL_2"
CONFIG_DRV_SPI_BAUD_RATE_IDX0=10000000
CONFIG_DRV_SPI_CLOCK_MODE_IDX0="DRV_SPI_CLOCK_MODE_IDLE_LOW_EDGE_RISE"
CONFIG_DRV_SPI_INPUT_PHASE_IDX0="SPI_INPUT_SAMPLING_PHASE_IN_MIDDLE"
CONFIG_DRV_SPI_QUEUE_SIZE_IDX0=10
CONFIG_DRV_SPI_RESERVED_JOB_IDX0=1
CONFIG_DRV_SPI_TRANSACTIONS_PER_SM_RUN_IDX0=16
CONFIG_DRV_SPI_SPI_ID_STATIC_IDX0="SPI_ID_1"
CONFIG_DRV_SPI_SPI_MODE_STATIC_IDX0="DRV_SPI_MODE_MASTER"
CONFIG_DRV_SPI_COMM_WIDTH_STATIC_IDX0="SPI_COMMUNICATION_WIDTH_8BITS"
CONFIG_DRV_SPI_BUFFER_STATIC_IDX0="DRV_SPI_BUFFER_TYPE_ENHANCED"
CONFIG_DRV_SPI_ALLOW_IDLE_RUN_STATIC_IDX0=n
CONFIG_DRV_SPI_SPI_PROTOCOL_TYPE_STATIC_IDX0="DRV_SPI_PROTOCOL_TYPE_STANDARD"
CONFIG_DRV_SPI_FRAME_SYNC_PULSE_STATIC_IDX0="SPI_FRAME_SYNC_PULSE_ON_EVERY_DATA_CHARACTER"
CONFIG_DRV_SPI_FRAME_PULSE_POLARITY_STATIC_IDX0="SPI_FRAME_PULSE_POLARITY_ACTIVE_LOW"
CONFIG_DRV_SPI_FRAME_PULSE_DIRECTION_STATIC_IDX0="SPI_FRAME_PULSE_DIRECTION_OUTPUT"
CONFIG_DRV_SPI_FRAME_PULSE_EDGE_STATIC_IDX0="SPI_FRAME_PULSE_EDGE_PRECEDES_FIRST_BIT_CLOCK"
CONFIG_DRV_SPI_FRAME_PULSE_WIDTH_STATIC_IDX0="SPI_FRAME_PULSE_WIDTH_ONE_CLOCK_WIDE"
CONFIG_DRV_SPI_AUDIO_TRANSMIT_MODE_STATIC_IDX0="SPI_AUDIO_TRANSMIT_STEREO"
CONFIG_DRV_SPI_AUDIO_PROTOCOL_MODE_STATIC_IDX0="SPI_AUDIO_PROTOCOL_I2S"
CONFIG_DRV_SPI_SPI_CLOCK_STATIC_IDX0="CLK_BUS_PERIPHERAL_2"
CONFIG_DRV_SPI_BAUD_RATE_STATIC_IDX0=1000000
CONFIG_DRV_SPI_CLOCK_MODE_STATIC_IDX0="DRV_SPI_CLOCK_MODE_IDLE_LOW_EDGE_RISE"
CONFIG_DRV_SPI_INPUT_PHASE_STATIC_IDX0="SPI_INPUT_SAMPLING_PHASE_IN_MIDDLE"
#
# from drv_spi.hconfig
#
CONFIG_DRV_SPI_STATIC_INSTANCES_NUMBER=0
#
# from drv_sst25vf016b.hconfig
#
CONFIG_USE_DRV_SST25VF016B=n
#
# from drv_sst25vf020b.hconfig
#
CONFIG_USE_DRV_SST25VF020B=n
#
# from drv_sst25vf064c.hconfig
#
CONFIG_USE_DRV_SST25VF064C=n
#
# from drv_tmr.hconfig
#
CONFIG_USE_DRV_TMR=n
#
# from drv_adc10bit.hconfig
#
CONFIG_USE_DRV_TOUCH_ADC10BIT=n
#
# from drv_ar1021.hconfig
#
CONFIG_USE_DRV_TOUCH_AR1021=n
#
# from drv_mtch6301.hconfig
#
CONFIG_USE_DRV_TOUCH_MTCH6301=n
#
# from drv_mtch6303.hconfig
#
CONFIG_USE_DRV_TOUCH_MTCH6303=n
#
# from drv_usart.hconfig
#
CONFIG_USE_DRV_USART=y
CONFIG_DRV_USART_DRIVER_MODE="STATIC"
CONFIG_DRV_USART_INTERRUPT_MODE=y
CONFIG_DRV_USART_BYTE_MODEL_SUPPORT=y
CONFIG_DRV_USART_BYTE_MODEL_BLOCKING=y
CONFIG_DRV_USART_BYTE_MODEL_CALLBACK=n
CONFIG_DRV_USART_INSTANCES_NUMBER=1
CONFIG_DRV_USART_CLIENTS_NUMBER=1
#
# from $HARMONY_VERSION_PATH/framework/driver/usart/config/drv_usart_idx.ftl
#
CONFIG_DRV_USART_INST_IDX0=y
CONFIG_DRV_USART_PERIPHERAL_ID_IDX0="USART_ID_2"
CONFIG_DRV_USART_BAUD_RATE_IDX0=115200
CONFIG_DRV_USART_INT_PRIORITY_IDX0="INT_PRIORITY_LEVEL3"
CONFIG_DRV_USART_INT_SUB_PRIORITY_IDX0="INT_SUBPRIORITY_LEVEL0"
CONFIG_DRV_USART_OPER_MODE_IDX0="DRV_USART_OPERATION_MODE_NORMAL"
CONFIG_DRV_USART_INIT_FLAG_WAKE_ON_START_IDX0=n
CONFIG_DRV_USART_INIT_FLAG_AUTO_BAUD_IDX0=n
CONFIG_DRV_USART_INIT_FLAG_STOP_IN_IDLE_IDX0=n
CONFIG_DRV_USART_LINE_CNTRL_IDX0="DRV_USART_LINE_CONTROL_8NONE1"
CONFIG_DRV_USART_HANDSHAKE_MODE_IDX0="DRV_USART_HANDSHAKE_NONE"
CONFIG_DRV_USART_STATIC_RX_MODES_IDX0="USART_HANDSHAKE_MODE_FLOW_CONTROL"
CONFIG_DRV_USART_STATIC_OP_MODES_IDX0="USART_ENABLE_TX_RX_USED"
CONFIG_DRV_USART_STATIC_LINECONTROL_MODES_IDX0="USART_8N1"
CONFIG_DRV_USART_STATIC_TX_ENABLE_IDX0=y
CONFIG_DRV_USART_STATIC_RX_ENABLE_IDX0=y
CONFIG_DRV_USART_STATIC_TX_INTR_MODES_IDX0="USART_TRANSMIT_FIFO_NOT_FULL"
CONFIG_DRV_USART_STATIC_RX_INTR_MODES_IDX0="USART_RECEIVE_FIFO_ONE_CHAR"
#
# from drv_wifi.hconfig
#
CONFIG_USE_DRV_WIFI=n
#
# from gfx.hconfig
#
CONFIG_USE_GFX_STACK=n
#
# from gfx_segger.hconfig
#
CONFIG_USE_SEGGER_EMWIN=n
#
# from dsp.hconfig
#
CONFIG_USE_DSP=n
#
# from net_pres.hconfig
#
CONFIG_NET_PRES_USE=n
#
# from osal.hconfig
#
CONFIG_USE_OSAL=y
#
# from peripheral.hconfig
#
CONFIG_PERIPHERAL_LIB=y
#
# from sample_module.hconfig
#
CONFIG_USE_SAMPLE_MODULE=n
#
# from sys_clk.hconfig
#
CONFIG_USE_SYS_CLK=y
CONFIG_SYS_CLK_MODE="STATIC"
CONFIG_SYS_CLK_PBDIV0_OVERRIDE=n
CONFIG_SYS_CLK_PBDIV0_MX="DIV_1"
CONFIG_SYS_CLK_CONFIG_PRIMARY_XTAL="8000000"
CONFIG_SYS_CLK_CONFIG_SECONDARY_XTAL=""
CONFIG_SYS_CLK_FREQ="80000000"
CONFIG_SYS_CLK_PBCLK_FREQ="80000000"
CONFIG_SYS_CLK_UPLL_BEFORE_DIV2_FREQ="48000000"
#
# from sys_command.hconfig
#
CONFIG_USE_SYS_COMMAND=n
#
# from sys_common.hconfig
#
CONFIG_USE_SYS_COMMON=y
CONFIG_SYS_BUFFER=n
CONFIG_SYS_QUEUE=n
#
# from sys_console.hconfig
#
CONFIG_USE_SYS_CONSOLE=y
CONFIG_SYS_CONSOLE_MODE="STATIC"
CONFIG_SYS_CONSOLE_OVERRIDE_STDIO=y
CONFIG_SYS_CONSOLE_SOURCE_IDX0="UART_CONSOLE"
#
# from sys_debug.hconfig
#
CONFIG_USE_SYS_DEBUG=y
CONFIG_SYS_ERR_LEVEL="SYS_ERROR_FATAL"
CONFIG_DEBUG_PRINT_BUFFER_SIZE=8192
#
# from sys_devcon.hconfig
#
CONFIG_USE_SYS_DEVCON=y
CONFIG_SYS_DEVCON_USE_JTAG=n
CONFIG_SYS_DEVCON_USE_TRACE=n
#
# from sys_dma.hconfig
#
CONFIG_USE_SYS_DMA=n
#
# from sys_fs.hconfig
#
CONFIG_USE_SYS_FS=n
#
# from sys_int.hconfig
#
CONFIG_USE_SYS_INT=y
CONFIG_USE_EXT_INT=n
#
# from sys_msg.hconfig
#
CONFIG_USE_SYS_MSG=n
#
# from sys_ports.hconfig
#
CONFIG_USE_SYS_PORTS=y
CONFIG_SYS_PORTS_IMPLEMENTATION="STATIC"
CONFIG_COMPONENT_PACKAGE="TQFP"
CONFIG_SYS_PORTS_CN=y
CONFIG_USE_SYS_PORTS_CN_INTERRUPT=y
CONFIG_SYS_PORTS_CN_INTERRUPT_PRIORITY="INT_PRIORITY_LEVEL2"
CONFIG_SYS_PORTS_CN_INTERRUPT_SUB_PRIORITY="INT_SUBPRIORITY_LEVEL0"
CONFIG_SYS_PORT_ADPCFG=0xffff
CONFIG_SYS_PORT_CNEN=0x200000
CONFIG_SYS_PORT_CNPU=0x0
#
# from $HARMONY_VERSION_PATH/framework/system/ports/config/sys_ports_idx.ftl
#
CONFIG_SYS_PORT_A_TRIS=0xc6ff
CONFIG_SYS_PORT_A_LAT=0x0
CONFIG_SYS_PORT_A_ODC=0x0
CONFIG_SYS_PORT_B_TRIS=0xffff
CONFIG_SYS_PORT_B_LAT=0x0
CONFIG_SYS_PORT_B_ODC=0x0
CONFIG_SYS_PORT_C_TRIS=0xf01e
CONFIG_SYS_PORT_C_LAT=0x0
CONFIG_SYS_PORT_C_ODC=0x0
CONFIG_USE_PORT_D=y
CONFIG_SYS_PORT_D_TRIS=0xbfef
CONFIG_SYS_PORT_D_LAT=0x0
CONFIG_SYS_PORT_D_ODC=0x0
CONFIG_SYS_PORT_E_TRIS=0x3ff
CONFIG_SYS_PORT_E_LAT=0x0
CONFIG_SYS_PORT_E_ODC=0x0
CONFIG_SYS_PORT_F_TRIS=0x313f
CONFIG_SYS_PORT_F_LAT=0x0
CONFIG_SYS_PORT_F_ODC=0x0
CONFIG_SYS_PORT_G_TRIS=0xf3cf
CONFIG_SYS_PORT_G_LAT=0x0
CONFIG_SYS_PORT_G_ODC=0x0
#
# from sys_random.hconfig
#
CONFIG_USE_SYS_RANDOM=n
#
# from sys_reset.hconfig
#
CONFIG_USE_SYS_RESET=n
#
# from sys_rtcc.hconfig
#
CONFIG_USE_SYS_RTCC=n
#
# from sys_touch.hconfig
#
CONFIG_USE_SYS_TOUCH=n
#
# from sys_tmr.hconfig
#
CONFIG_USE_SYS_TMR=n
#
# from sys_wdt.hconfig
#
CONFIG_USE_SYS_WDT=n
#
# from test.hconfig
#
CONFIG_USE_TEST_HARNESS=n
#
# from tcpip_stack.hconfig
#
CONFIG_USE_TCPIP_STACK=n
#
# from usb.hconfig
#
CONFIG_USE_USB_STACK=n
#
# from bsp.hconfig
#
CONFIG_USE_BSP=n
#
# from rtos.hconfig
#
CONFIG_USE_3RDPARTY_RTOS=n
#
# from wolfssl.hconfig
#
CONFIG_USE_3RDPARTY_WOLFSSL=n
#
# from embtcp.hconfig
#
CONFIG_IN_EMB_TCPIP_USE_TCP=n
#
# from embdual.hconfig
#
CONFIG_IN_EMB_DUAL_USE_TCP=n
#
# from stack.hconfig
#
CONFIG_IN_TCPIP=n
#
# from gfxtp.hconfig
#
CONFIG_3RDPARTY_SEGGER_EMWIN_LIBRARY=n
#
# from harmony.hconfig
#
CONFIG_DEVICE_CONFIGURATION=y
#
# from PIC32MX795F512L.hconfig
#
CONFIG_USERID=0xffff
CONFIG_FSRSSEL="PRIORITY_7"
CONFIG_FMIIEN="ON"
CONFIG_FETHIO="ON"
CONFIG_FCANIO="ON"
CONFIG_FUSBIDIO="ON"
CONFIG_FVBUSONIO="ON"
CONFIG_FPLLIDIV="DIV_2"
CONFIG_FPLLMUL="MUL_20"
CONFIG_UPLLIDIV="DIV_2"
CONFIG_UPLLEN="OFF"
CONFIG_FPLLODIV="DIV_1"
CONFIG_FNOSC="FRCPLL"
CONFIG_FSOSCEN="ON"
CONFIG_IESO="ON"
CONFIG_POSCMOD="OFF"
CONFIG_OSCIOFNC="OFF"
CONFIG_FPBDIV="DIV_1"
CONFIG_FCKSM="CSECMD"
CONFIG_WDTPS="PS1048576"
CONFIG_FWDTEN="OFF"
CONFIG_DEBUG="ON"
CONFIG_ICESEL="ICS_PGx2"
CONFIG_PWP="OFF"
CONFIG_BWP="OFF"
CONFIG_CP="OFF"
#
# from harmony.hconfig
#
CONFIG_PROJECT_STANDALONE=n
#
# from project.hconfig
#
CONFIG_XC32_HEAP="2048"
#
# from isa.hconfig
#
CONFIG_ISA_MIPS32_MODE=y
CONFIG_ISA_MIPS16_MODE=n
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/system_config.h
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
MPLAB Harmony System Configuration Header
File Name:
system_config.h
Summary:
Build-time configuration header for the system defined by this MPLAB Harmony
project.
Description:
An MPLAB Project may have multiple configurations. This file defines the
build-time options for a single configuration.
Remarks:
This configuration header must not define any prototypes or data
definitions (or include any files that do). It only provides macro
definitions for build-time configuration options that are not instantiated
until used by another MPLAB Harmony module or application.
Created with MPLAB Harmony Version 1.08.01
*******************************************************************************/
// DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2013-2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
// DOM-IGNORE-END
#ifndef _SYSTEM_CONFIG_H
#define _SYSTEM_CONFIG_H
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
/* This section Includes other configuration headers necessary to completely
define this configuration.
*/
// DOM-IGNORE-BEGIN
#ifdef __cplusplus // Provide C++ Compatibility
extern
"C"
{
#endif
// DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: System Service Configuration
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
/* Common System Service Configuration Options
*/
#define SYS_VERSION_STR "1.08.01"
#define SYS_VERSION 10801
// *****************************************************************************
/* Clock System Service Configuration Options
*/
#define SYS_CLK_FREQ 80000000ul
#define SYS_CLK_BUS_PERIPHERAL_1 80000000ul
#define SYS_CLK_UPLL_BEFORE_DIV2_FREQ 48000000ul
#define SYS_CLK_CONFIG_PRIMARY_XTAL 8000000ul
#define SYS_CLK_CONFIG_SECONDARY_XTAL 0ul
/*** Interrupt System Service Configuration ***/
#define SYS_INT true
/*** Ports System Service Configuration ***/
#define SYS_PORT_AD1PCFG ~0xffff
#define SYS_PORT_CNPUE 0x0
#define SYS_PORT_CNEN 0x200000
#define SYS_PORT_D_TRIS 0xbfef
#define SYS_PORT_D_LAT 0x0
#define SYS_PORT_D_ODC 0x0
#define SYS_CONSOLE_DEVICE_MAX_INSTANCES 1
#define SYS_CONSOLE_INSTANCES_NUMBER 1
/*** Debug System Service Configuration ***/
#define SYS_DEBUG_ENABLE
#define DEBUG_PRINT_BUFFER_SIZE 8192
#define SYS_DEBUG_BUFFER_DMA_READY
#define SYS_DEBUG_USE_CONSOLE
// *****************************************************************************
// *****************************************************************************
// Section: Driver Configuration
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
/* USART Driver Configuration Options
*/
#define DRV_USART_INSTANCES_NUMBER 1
#define DRV_USART_CLIENTS_NUMBER 1
#define DRV_USART_INTERRUPT_MODE true
#define DRV_USART_BYTE_MODEL_SUPPORT true
#define DRV_USART_READ_WRITE_MODEL_SUPPORT false
#define DRV_USART_BUFFER_QUEUE_SUPPORT false
#define DRV_USART_SUPPORT_TRANSMIT_DMA false
#define DRV_USART_SUPPORT_RECEIVE_DMA false
/*** SPI Driver Configuration ***/
#define DRV_SPI_NUMBER_OF_MODULES 4
/*** Driver Compilation and static configuration options. ***/
/*** Select SPI compilation units.***/
#define DRV_SPI_POLLED 1
#define DRV_SPI_ISR 0
#define DRV_SPI_MASTER 1
#define DRV_SPI_SLAVE 0
#define DRV_SPI_RM 1
#define DRV_SPI_EBM 0
#define DRV_SPI_8BIT 1
#define DRV_SPI_16BIT 0
#define DRV_SPI_32BIT 0
#define DRV_SPI_DMA 0
/*** SPI Driver Static Allocation Options ***/
#define DRV_SPI_INSTANCES_NUMBER 1
#define DRV_SPI_CLIENTS_NUMBER 1
#define DRV_SPI_ELEMENTS_PER_QUEUE 10
// *****************************************************************************
// *****************************************************************************
// Section: Middleware & Other Library Configuration
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
// Section: Application Configuration
// *****************************************************************************
// *****************************************************************************
/*** Application Instance 0 Configuration ***/
//DOM-IGNORE-BEGIN
#ifdef __cplusplus
}
#endif
//DOM-IGNORE-END
#endif // _SYSTEM_CONFIG_H
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/system_definitions.h
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
System Definitions
File Name:
system_definitions.h
Summary:
MPLAB Harmony project system definitions.
Description:
This file contains the system-wide prototypes and definitions for an MPLAB
Harmony project.
*******************************************************************************/
//DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2013-2014 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
//DOM-IGNORE-END
#ifndef _SYS_DEFINITIONS_H
#define _SYS_DEFINITIONS_H
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include <stdint.h>
#include <stddef.h>
#include <stdbool.h>
#include "system/common/sys_common.h"
#include "system/common/sys_module.h"
#include "system/clk/sys_clk.h"
#include "system/clk/sys_clk_static.h"
#include "system/devcon/sys_devcon.h"
#include "system/int/sys_int.h"
#include "system/console/sys_console.h"
#include "driver/usart/drv_usart_static.h"
#include "system/ports/sys_ports.h"
#include "driver/spi/static/drv_spi_static.h"
#include "system/debug/sys_debug.h"
#include "driver/rtcc/drv_rtcc_static.h"
#include "peripheral/devcon/plib_devcon.h"
#include "app.h"
// DOM-IGNORE-BEGIN
#ifdef __cplusplus // Provide C++ Compatibility
extern
"C"
{
#endif
// DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Type Definitions
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
/* System Objects
Summary:
Structure holding the system's object handles
Description:
This structure contains the object handles for all objects in the
MPLAB Harmony project's system configuration.
Remarks:
These handles are returned from the "Initialize" functions for each module
and must be passed into the "Tasks" function for each module.
*/
typedef
struct
{
SYS_MODULE_OBJ
sysDevcon
;
SYS_MODULE_OBJ
drvUsart0
;
SYS_MODULE_OBJ
sysDebug
;
SYS_MODULE_OBJ
sysConsole0
;
/*** SPI Object for Index 0 ***/
SYS_MODULE_OBJ
spiObjectIdx0
;
}
SYSTEM_OBJECTS
;
// *****************************************************************************
// *****************************************************************************
// Section: extern declarations
// *****************************************************************************
// *****************************************************************************
extern
SYSTEM_OBJECTS
sysObj
;
//DOM-IGNORE-BEGIN
#ifdef __cplusplus
}
#endif
//DOM-IGNORE-END
#endif
/* _SYS_DEFINITIONS_H */
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/system_exceptions.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
MPLAB Harmony Exceptions Source File
File Name:
system_exceptions.c
Summary:
This file contains a function which overrides the deafult _weak_ exception
handler provided by the XC32 compiler.
Description:
This file redefines the default _weak_ exception handler with a more debug
friendly one. If an unexpected exception occurs the code will stop in a
while(1) loop. The debugger can be halted and two variables _excep_code and
_except_addr can be examined to determine the cause and address where the
exception occured.
*******************************************************************************/
// DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2013-2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
// DOM-IGNORE-END
#include <xc.h>
/* Defines special funciton registers, CP0 regs */
#include "system_config.h"
#include "system_definitions.h"
#include "system/debug/sys_debug.h"
// *****************************************************************************
// *****************************************************************************
// Section: Global Data Definitions
// *****************************************************************************
// *****************************************************************************
/*******************************************************************************
Exception Reason Data
<editor-fold defaultstate="expanded" desc="Exception Reason Data">
Remarks:
These global static items are used instead of local variables in the
_general_exception_handler function because the stack may not be available
if an exception has occured.
*/
/* Code identifying the cause of the exception (CP0 Cause register). */
static
unsigned
int
_excep_code
;
/* Address of instruction that caused the exception. */
static
unsigned
int
_excep_addr
;
/* Pointer to the string describing the cause of the exception. */
static
char
*
_cause_str
;
/* Array identifying the cause (indexed by _exception_code). */
static
char
*
cause
[]
=
{
"Interrupt"
,
"Undefined"
,
"Undefined"
,
"Undefined"
,
"Load/fetch address error"
,
"Store address error"
,
"Instruction bus error"
,
"Data bus error"
,
"Syscall"
,
"Breakpoint"
,
"Reserved instruction"
,
"Coprocessor unusable"
,
"Arithmetic overflow"
,
"Trap"
,
"Reserved"
,
"Reserved"
,
"Reserved"
,
"Reserved"
,
"Reserved"
};
// </editor-fold>
// *****************************************************************************
// *****************************************************************************
// Section: Exception Handling
// *****************************************************************************
// *****************************************************************************
/*******************************************************************************
Function:
void _general_exception_handler ( void )
Summary:
Overrides the XC32 _weak_ _generic_exception_handler.
Description:
This function overrides the XC32 default _weak_ _generic_exception_handler.
Remarks:
Refer to the XC32 User's Guide for additional information.
*/
void
_general_exception_handler
(
void
)
{
/* Mask off Mask of the ExcCode Field from the Cause Register
Refer to the MIPs Software User's manual */
_excep_code
=
(
_CP0_GET_CAUSE
()
&
0x0000007C
)
>>
2
;
_excep_addr
=
_CP0_GET_EPC
();
_cause_str
=
cause
[
_excep_code
];
SYS_DEBUG_PRINT
(
SYS_ERROR_ERROR
,
"
\n
General Exception %s (cause=%d, addr=%x).
\n
"
,
_cause_str
,
_excep_code
,
_excep_addr
);
while
(
1
)
{
SYS_DEBUG_BreakPoint
();
}
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/system_init.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
System Initialization File
File Name:
system_init.c
Summary:
This file contains source code necessary to initialize the system.
Description:
This file contains source code necessary to initialize the system. It
implements the "SYS_Initialize" function, defines the configuration bits,
and allocates any necessary global system resources, such as the
sysObj structure that contains the object handles to all the MPLAB Harmony
module objects in the system.
*******************************************************************************/
// DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2013-2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
// DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
#include "system_definitions.h"
// ****************************************************************************
// ****************************************************************************
// Section: Configuration Bits
// ****************************************************************************
// ****************************************************************************
// <editor-fold defaultstate="collapsed" desc="Configuration Bits">
/*** DEVCFG0 ***/
#pragma config DEBUG = ON
#pragma config ICESEL = ICS_PGx2
#pragma config PWP = OFF
#pragma config BWP = OFF
#pragma config CP = OFF
/*** DEVCFG1 ***/
#pragma config FNOSC = FRCPLL
#pragma config FSOSCEN = ON
#pragma config IESO = ON
#pragma config POSCMOD = OFF
#pragma config OSCIOFNC = OFF
#pragma config FPBDIV = DIV_1
#pragma config FCKSM = CSECMD
#pragma config WDTPS = PS1048576
#pragma config FWDTEN = OFF
/*** DEVCFG2 ***/
#pragma config FPLLIDIV = DIV_2
#pragma config FPLLMUL = MUL_20
#pragma config FPLLODIV = DIV_1
#pragma config UPLLIDIV = DIV_2
#pragma config UPLLEN = OFF
/*** DEVCFG3 ***/
#pragma config USERID = 0xffff
#pragma config FSRSSEL = PRIORITY_7
#pragma config FMIIEN = ON
#pragma config FETHIO = ON
#pragma config FCANIO = ON
#pragma config FUSBIDIO = ON
#pragma config FVBUSONIO = ON
// </editor-fold>
// *****************************************************************************
// *****************************************************************************
// Section: Driver Initialization Data
// *****************************************************************************
// *****************************************************************************
// <editor-fold defaultstate="collapsed" desc="DRV_SPI Initialization Data">
/*** SPI Driver Initialization Data ***/
// </editor-fold>
// <editor-fold defaultstate="collapsed" desc="DRV_USART Initialization Data">
// </editor-fold>
// *****************************************************************************
// *****************************************************************************
// Section: System Data
// *****************************************************************************
// *****************************************************************************
/* Structure to hold the object handles for the modules in the system. */
SYSTEM_OBJECTS
sysObj
;
// *****************************************************************************
// *****************************************************************************
// Section: Module Initialization Data
// *****************************************************************************
// *****************************************************************************
// <editor-fold defaultstate="collapsed" desc="SYS_CONSOLE Initialization Data">
// </editor-fold>
// <editor-fold defaultstate="collapsed" desc="SYS_DEBUG Initialization Data">
/*** System Debug Initialization Data ***/
SYS_DEBUG_INIT
debugInit
=
{
.
moduleInit
=
{
0
},
.
errorLevel
=
SYS_ERROR_FATAL
};
// </editor-fold>
//<editor-fold defaultstate="collapsed" desc="SYS_DEVCON Initialization Data">
/*******************************************************************************
Device Control System Service Initialization Data
*/
const
SYS_DEVCON_INIT
sysDevconInit
=
{
.
moduleInit
=
{
0
},
};
// </editor-fold>
// *****************************************************************************
// *****************************************************************************
// Section: Library/Stack Initialization Data
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
// Section: Static Initialization Functions
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
// *****************************************************************************
// Section: System Initialization
// *****************************************************************************
// *****************************************************************************
/*******************************************************************************
Function:
void SYS_Initialize ( void *data )
Summary:
Initializes the board, services, drivers, application and other modules.
Remarks:
See prototype in system/common/sys_module.h.
*/
void
SYS_Initialize
(
void
*
data
)
{
/* Core Processor Initialization */
SYS_CLK_Initialize
(
NULL
);
sysObj
.
sysDevcon
=
SYS_DEVCON_Initialize
(
SYS_DEVCON_INDEX_0
,
(
SYS_MODULE_INIT
*
)
&
sysDevconInit
);
SYS_DEVCON_PerformanceConfig
(
SYS_CLK_SystemFrequencyGet
());
SYS_DEVCON_JTAGDisable
();
SYS_PORTS_Initialize
();
/* Initialize Drivers */
/*** SPI Driver Index 0 initialization***/
sysObj
.
spiObjectIdx0
=
DRV_SPI_Initialize
(
DRV_SPI_INDEX_0
,
(
const
SYS_MODULE_INIT
*
const
)
NULL
);
/* RTCC Initialization Call */
DRV_RTCC_Initialize
();
sysObj
.
drvUsart0
=
DRV_USART_Initialize
(
DRV_USART_INDEX_0
,
(
SYS_MODULE_INIT
*
)
NULL
);
SYS_INT_VectorPrioritySet
(
INT_VECTOR_UART2
,
INT_PRIORITY_LEVEL3
);
SYS_INT_VectorSubprioritySet
(
INT_VECTOR_UART2
,
INT_SUBPRIORITY_LEVEL0
);
/* Initialize System Services */
sysObj
.
sysConsole0
=
SYS_CONSOLE_Initialize
(
SYS_CONSOLE_INDEX_0
,
NULL
);
/*** Debug Service Initialization Code ***/
sysObj
.
sysDebug
=
SYS_DEBUG_Initialize
(
SYS_DEBUG_INDEX_0
,
(
SYS_MODULE_INIT
*
)
&
debugInit
);
/*** Interrupt Service Initialization Code ***/
SYS_INT_Initialize
();
/* Initialize Middleware */
/* Enable Global Interrupts */
SYS_INT_Enable
();
/* Initialize the Application */
APP_Initialize
();
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/system_interrupt.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
System Interrupts File
File Name:
system_interrupt.c
Summary:
Raw ISR definitions.
Description:
This file contains a definitions of the raw ISRs required to support the
interrupt sub-system.
Summary:
This file contains source code for the interrupt vector functions in the
system.
Description:
This file contains source code for the interrupt vector functions in the
system. It implements the system and part specific vector "stub" functions
from which the individual "Tasks" functions are called for any modules
executing interrupt-driven in the MPLAB Harmony system.
Remarks:
This file requires access to the systemObjects global data structure that
contains the object handles to all MPLAB Harmony module objects executing
interrupt-driven in the system. These handles are passed into the individual
module "Tasks" functions to identify the instance of the module to maintain.
*******************************************************************************/
// DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2011-2014 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
// DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include <xc.h>
#include <sys/attribs.h>
#include "app.h"
#include "system_definitions.h"
#include "simplelink.h"
// *****************************************************************************
// *****************************************************************************
// Section: System Interrupt Vector Functions
// *****************************************************************************
// *****************************************************************************
extern
P_EVENT_HANDLER
g_cc3100_IRQ_handler
;
void
__ISR
(
_CHANGE_NOTICE_VECTOR
,
ipl2AUTO
)
_IntHandlerChangeNotification
(
void
)
{
if
(
SYS_PORTS_PinRead
(
PORTS_ID_0
,
PORT_CHANNEL_D
,
PORTS_BIT_POS_15
)
==
0x01
)
{
if
(
g_cc3100_IRQ_handler
!=
NULL
)
{
g_cc3100_IRQ_handler
(
0
);
}
}
DRV_SPI_Tasks
(
sysObj
.
spiObjectIdx0
);
PLIB_INT_SourceFlagClear
(
INT_ID_0
,
INT_SOURCE_CHANGE_NOTICE
);
}
void
__ISR
(
_UART_2_VECTOR
,
ipl3AUTO
)
_IntHandlerDrvUsartInstance0
(
void
)
{
DRV_USART_TasksTransmit
(
sysObj
.
drvUsart0
);
DRV_USART_TasksReceive
(
sysObj
.
drvUsart0
);
DRV_USART_TasksError
(
sysObj
.
drvUsart0
);
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/system_config/mx795_CC3100_e16/system_tasks.c
0 → 100644
View file @
376d2666
/* clang-format off */
/*******************************************************************************
System Tasks File
File Name:
system_tasks.c
Summary:
This file contains source code necessary to maintain system's polled state
machines.
Description:
This file contains source code necessary to maintain system's polled state
machines. It implements the "SYS_Tasks" function that calls the individual
"Tasks" functions for all polled MPLAB Harmony modules in the system.
Remarks:
This file requires access to the systemObjects global data structure that
contains the object handles to all MPLAB Harmony module objects executing
polled in the system. These handles are passed into the individual module
"Tasks" functions to identify the instance of the module to maintain.
*******************************************************************************/
// DOM-IGNORE-BEGIN
/*******************************************************************************
Copyright (c) 2013-2015 released Microchip Technology Inc. All rights reserved.
Microchip licenses to you the right to use, modify, copy and distribute
Software only when embedded on a Microchip microcontroller or digital signal
controller that is integrated into your product or third party product
(pursuant to the sublicense terms in the accompanying license agreement).
You should refer to the license agreement accompanying this Software for
additional information regarding your rights and obligations.
SOFTWARE AND DOCUMENTATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF
MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL MICROCHIP OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER
CONTRACT, NEGLIGENCE, STRICT LIABILITY, CONTRIBUTION, BREACH OF WARRANTY, OR
OTHER LEGAL EQUITABLE THEORY ANY DIRECT OR INDIRECT DAMAGES OR EXPENSES
INCLUDING BUT NOT LIMITED TO ANY INCIDENTAL, SPECIAL, INDIRECT, PUNITIVE OR
CONSEQUENTIAL DAMAGES, LOST PROFITS OR LOST DATA, COST OF PROCUREMENT OF
SUBSTITUTE GOODS, TECHNOLOGY, SERVICES, OR ANY CLAIMS BY THIRD PARTIES
(INCLUDING BUT NOT LIMITED TO ANY DEFENSE THEREOF), OR OTHER SIMILAR COSTS.
*******************************************************************************/
// DOM-IGNORE-END
// *****************************************************************************
// *****************************************************************************
// Section: Included Files
// *****************************************************************************
// *****************************************************************************
#include "system_config.h"
#include "system_definitions.h"
// *****************************************************************************
// *****************************************************************************
// Section: System "Tasks" Routine
// *****************************************************************************
// *****************************************************************************
/*******************************************************************************
Function:
void SYS_Tasks ( void )
Remarks:
See prototype in system/common/sys_module.h.
*/
void
SYS_Tasks
(
void
)
{
/* Maintain system services */
SYS_CONSOLE_Tasks
(
sysObj
.
sysConsole0
);
SYS_DEVCON_Tasks
(
sysObj
.
sysDevcon
);
/* Maintain Device Drivers */
DRV_SPI_Tasks
(
sysObj
.
spiObjectIdx0
);
/* Maintain Middleware & Other Libraries */
/* Maintain the application's state machine. */
APP_Tasks
();
}
/*******************************************************************************
End of File
*/
examples/PIC32/mqtt_client/firmware/src/user.h
0 → 100644
View file @
376d2666
/*
* user.h - CC31xx/CC32xx Host Driver Implementation
*
* Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/
*
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*
* Adapted for PIC32 by 2016 Cesanta Software Limited
*/
#ifndef __USER_H__
#define __USER_H__
#ifdef __cplusplus
extern
"C"
{
#endif
/*!
******************************************************************************
\defgroup porting_user_include Porting - User Include Files
This section IS NOT REQUIRED in case user provided primitives are handled
in makefiles or project configurations (IDE)
PORTING ACTION:
- Include all required header files for the definition of:
-# Transport layer library API (e.g. SPI, UART)
-# OS primitives definitions (e.g. Task spawn, Semaphores)
-# Memory management primitives (e.g. alloc, free)
******************************************************************************
*/
#undef FD_SETSIZE
#undef FD_SET
#undef FD_CLR
#undef FD_ISSET
#undef FD_ZERO
#undef htonl
#undef ntohl
#undef htons
#undef ntohs
#undef EBADF
#undef ENOMEM
#undef EINVAL
#include <string.h>
typedef
int
Fd_t
;
typedef
void
(
*
P_EVENT_HANDLER
)(
void
*
pValue
);
typedef
P_EVENT_HANDLER
SL_P_EVENT_HANDLER
;
/*!
\def MAX_CONCURRENT_ACTIONS
\brief Defines the maximum number of concurrent action in the system
Min:1 , Max: 32
Actions which has async events as return, can be
\sa
\note In case there are not enough resources for the actions needed
in the system, error is received: POOL_IS_EMPTY one option is
to increase MAX_CONCURRENT_ACTIONS (improves performance but
results in memory consumption) Other option is to call the API
later (decrease performance)
\warning In case of setting to one, recommend to use non-blocking
recv\recvfrom to allow multiple socket recv
*/
#define MAX_CONCURRENT_ACTIONS 10
/*!
******************************************************************************
\defgroup proting_capabilities Porting - Capabilities Set
This section IS NOT REQUIRED in case one of the following pre defined
capabilities set is in use:
- SL_TINY
- SL_SMALL
- SL_FULL
PORTING ACTION:
- Define one of the pre-defined capabilities set or uncomment the
relevant definitions below to select the required capabilities
@{
*******************************************************************************
*/
/*!
\def SL_INC_ARG_CHECK
\brief Defines whether the SimpleLink driver perform argument check
or not
When defined, the SimpleLink driver perform argument check on
function call. Removing this define could reduce some code
size and improve slightly the performances but may impact in
unpredictable behavior in case of invalid arguments
\sa
\note belongs to \ref proting_sec
\warning Removing argument check may cause unpredictable behavior in
case of invalid arguments.
In this case the user is responsible to argument validity
(for example all handlers must not be NULL)
*/
#define SL_INC_ARG_CHECK
/*!
\def SL_INC_STD_BSD_API_NAMING
\brief Defines whether SimpleLink driver should expose standard BSD
APIs or not
When defined, the SimpleLink driver in addtion to its
alternative
BSD APIs expose also standard BSD APIs.
Stadrad BSD API includs the following functions:
socket , close , accept , bind , listen , connect , select ,
setsockopt , getsockopt , recv , recvfrom , write , send ,
sendto ,
gethostbyname
\sa
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_STD_BSD_API_NAMING
/*!
\brief Defines whether to include extended API in SimpleLink driver
or not
When defined, the SimpleLink driver will include also all
exteded API of the included packages
\sa ext_api
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_EXT_API
/*!
\brief Defines whether to include WLAN package in SimpleLink driver
or not
When defined, the SimpleLink driver will include also
the WLAN package
\sa
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_WLAN_PKG
/*!
\brief Defines whether to include SOCKET package in SimpleLink
driver or not
When defined, the SimpleLink driver will include also
the SOCKET package
\sa
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_SOCKET_PKG
/*!
\brief Defines whether to include NET_APP package in SimpleLink
driver or not
When defined, the SimpleLink driver will include also the
NET_APP package
\sa
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_NET_APP_PKG
/*!
\brief Defines whether to include NET_CFG package in SimpleLink
driver or not
When defined, the SimpleLink driver will include also
the NET_CFG package
\sa
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_NET_CFG_PKG
/*!
\brief Defines whether to include NVMEM package in SimpleLink
driver or not
When defined, the SimpleLink driver will include also the
NVMEM package
\sa
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_NVMEM_PKG
/*!
\brief Defines whether to include socket server side APIs
in SimpleLink driver or not
When defined, the SimpleLink driver will include also socket
server side APIs
\sa server_side
\note
\warning
*/
#define SL_INC_SOCK_SERVER_SIDE_API
/*!
\brief Defines whether to include socket client side APIs in SimpleLink
driver or not
When defined, the SimpleLink driver will include also socket
client side APIs
\sa client_side
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_SOCK_CLIENT_SIDE_API
/*!
\brief Defines whether to include socket receive APIs in SimpleLink
driver or not
When defined, the SimpleLink driver will include also socket
receive side APIs
\sa recv_api
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_SOCK_RECV_API
/*!
\brief Defines whether to include socket send APIs in SimpleLink
driver or not
When defined, the SimpleLink driver will include also socket
send side APIs
\sa send_api
\note belongs to \ref proting_sec
\warning
*/
#define SL_INC_SOCK_SEND_API
/*!
Close the Doxygen group.
@}
*/
/*!
******************************************************************************
\defgroup porting_enable_device Porting - Device Enable/Disable
The enable/disable line (nHib) provide mechanism to enter the device into
the least current consumption mode. This mode could be used when no traffic
is required (tx/rx).
when this hardware line is not connected to any IO of the host this define
should be left empty.
\note Not connecting this line results in ability to start the driver
only once.
PORTING ACTION:
- Bind the GPIO that is connected to the device to the SimpleLink
driver
@{
******************************************************************************
*/
/*!
\brief Preamble to the enabling the Network Processor.
Placeholder to implement any pre-process operations
before enabling networking operations.
\sa sl_DeviceEnable
\note belongs to \ref ported_sec
*/
#define sl_DeviceEnablePreamble()
/*!
\brief Enable the device by set the appropriate GPIO to high
\sa sl_DeviceDisable
\note belongs to \ref proting_sec
\warning if nHib/nShutdown pins are not connected to the host this define
should be left empty. Not connecting on of these lines may
result
in higher power consumption and inability to start and stop the
driver correctly.
*/
#define sl_DeviceEnable CC3100_enable
/*!
\brief Disable the device by setting the appropriate GPIO to Low
\sa sl_DeviceEnable
\note belongs to \ref proting_sec
\warning if nHib/nShutdown pins are not connected to the host this define
should be left empty. Not connecting on of these lines may
result
in higher power consumption and inability to start and stop the
driver correctly.
*/
#define sl_DeviceDisable CC3100_disable
/*!
Close the Doxygen group.
@}
*/
/*!
******************************************************************************
\defgroup porting_interface Porting - Communication Interface
The simple link device can work with different communication
channels (e.g. spi/uart). Texas Instruments provides single driver
that can work with all these types. This section bind between the
physical communication interface channel and the SimpleLink driver
\note Correct and efficient implementation of this driver is critical
for the performances of the SimpleLink device on this platform.
PORTING ACTION:
- Bind the functions of the communication channel interface driver with
the simple link driver
@{
******************************************************************************
*/
#define _SlFd_t int
/*!
\brief Opens an interface communication port to be used for
communicating
with a SimpleLink device
Given an interface name and option flags, this function opens
the communication port and creates a file descriptor.
This file descriptor is used afterwards to read and write
data from and to this specific communication channel.
The speed, clock polarity, clock phase, chip select and all
other
specific attributes of the channel are all should be set to
hardcoded
in this function.
\param ifName - points to the interface name/path. The interface
name is an
optional attributes that the simple link driver
receives
on opening the driver (sl_Start).
In systems that the spi channel is not implemented
as
part of the os device drivers, this parameter could
be NULL.
\param flags - optional flags parameters for future use
\return upon successful completion, the function shall open the channel
and return a non-negative integer representing the file
descriptor.
Otherwise, -1 shall be returned
\sa sl_IfClose , sl_IfRead , sl_IfWrite
\note The prototype of the function is as follow:
Fd_t xxx_IfOpen(char* pIfName , unsigned long flags);
\note belongs to \ref proting_sec
\warning
*/
#define sl_IfOpen spi_Open
/*!
\brief Closes an opened interface communication port
\param fd - file descriptor of opened communication channel
\return upon successful completion, the function shall return 0.
Otherwise, -1 shall be returned
\sa sl_IfOpen , sl_IfRead , sl_IfWrite
\note The prototype of the function is as follow:
int xxx_IfClose(Fd_t Fd);
\note belongs to \ref proting_sec
\warning
*/
#define sl_IfClose spi_Close
/*!
\brief Attempts to read up to len bytes from an opened communication
channel
into a buffer starting at pBuff.
\param fd - file descriptor of an opened communication channel
\param pBuff - pointer to the first location of a buffer that
contains enough
space for all expected data
\param len - number of bytes to read from the communication
channel
\return upon successful completion, the function shall return the number
of read bytes.
Otherwise, 0 shall be returned
\sa sl_IfClose , sl_IfOpen , sl_IfWrite
\note The prototype of the function is as follow:
int xxx_IfRead(Fd_t Fd , char* pBuff , int Len);
\note belongs to \ref proting_sec
\warning
*/
#define sl_IfRead spi_Read
/*!
\brief attempts to write up to len bytes to the SPI channel
\param fd - file descriptor of an opened communication channel
\param pBuff - pointer to the first location of a buffer that
contains
the data to send over the communication channel
\param len - number of bytes to write to the communication
channel
\return upon successful completion, the function shall return the number
of sent bytes.
therwise, 0 shall be returned
\sa sl_IfClose , sl_IfOpen , sl_IfRead
\note This function could be implemented as zero copy and return only
upon successful completion
of writing the whole buffer, but in cases that memory allocation
is not too tight, the
function could copy the data to internal buffer, return back and
complete the write in
parallel to other activities as long as the other SPI activities
would be blocked until
the entire buffer write would be completed
The prototype of the function is as follow:
int xxx_IfWrite(Fd_t Fd , char* pBuff , int Len);
\note belongs to \ref proting_sec
\warning
*/
#define sl_IfWrite spi_Write
/*!
\brief register an interrupt handler routine for the host IRQ
\param InterruptHdl - pointer to interrupt handler routine
\param pValue - pointer to a memory structure that is passed
to the interrupt handler.
\return upon successful registration, the function shall return 0.
Otherwise, -1 shall be returned
\sa
\note If there is already registered interrupt handler, the function
should overwrite the old handler with the new one
\note If the handler is a null pointer, the function should
un-register the
interrupt handler, and the interrupts can be disabled.
\note belongs to \ref proting_sec
\warning
*/
#define sl_IfRegIntHdlr(InterruptHdl, pValue) \
registerInterruptHandler
(
InterruptHdl
,
pValue
)
/*!
\brief Masks the Host IRQ
\sa sl_IfUnMaskIntHdlr
\note belongs to \ref proting_sec
\warning
*/
#define sl_IfMaskIntHdlr()
/*!
\brief Unmasks the Host IRQ
\sa sl_IfMaskIntHdlr
\note belongs to \ref proting_sec
\warning
*/
#define sl_IfUnMaskIntHdlr()
/*!
\brief Write Handers for statistics debug on write
\param interface handler - pointer to interrupt handler routine
\return no return value
\sa
\note An optional hooks for monitoring before and after write info
\note belongs to \ref proting_sec
\warning
*/
/*
#define SL_START_WRITE_STAT
*/
#ifdef SL_START_WRITE_STAT
#define sl_IfStartWriteSequence SlStudio_SpiStartWriteSeq
#define sl_IfEndWriteSequence SlStudio_SpiEndWriteSeq
#endif
/*!
Close the Doxygen group.
@}
*/
/*!
******************************************************************************
\defgroup porting_mem_mgm Porting - Memory Management
This section declare in which memory management model the SimpleLink driver
will run:
-# Static
-# Dynamic
This section IS NOT REQUIRED in case Static model is selected.
The default memory model is Static
PORTING ACTION:
- If dynamic model is selected, define the alloc and free functions.
@{
*****************************************************************************
*/
/*!
\brief Defines whether the SimpleLink driver is working in dynamic
memory model or not
When defined, the SimpleLink driver use dynamic allocations
if dynamic allocation is selected malloc and free functions
must be retrieved
\sa
\note belongs to \ref proting_sec
\warning
*/
/*
#define SL_MEMORY_MGMT_DYNAMIC
*/
#ifdef SL_MEMORY_MGMT_DYNAMIC
/*!
\brief
\sa
\note belongs to \ref proting_sec
\warning
*/
#define sl_Malloc(Size) malloc(Size)
/*!
\brief
\sa
\note belongs to \ref proting_sec
\warning
*/
#define sl_Free(pMem) free(pMem)
#endif
/*!
Close the Doxygen group.
@}
*/
/*!
******************************************************************************
\defgroup porting_os Porting - Operating System
The simple link driver can run on multi-threaded environment as well
as non-os environment (mail loop)
This section IS NOT REQUIRED in case you are working on non-os environment.
If you choose to work in multi-threaded environment under any operating
system
you will have to provide some basic adaptation routines to allow the driver
to protect access to resources from different threads (locking object) and
to allow synchronization between threads (sync objects).
PORTING ACTION:
-# Uncomment SL_PLATFORM_MULTI_THREADED define
-# Bind locking object routines
-# Bind synchronization object routines
-# Optional - Bind spawn thread routine
@{
******************************************************************************
*/
/*
#define SL_PLATFORM_MULTI_THREADED
*/
#ifdef SL_PLATFORM_MULTI_THREADED
/*!
\brief
\sa
\note belongs to \ref proting_sec
\warning
*/
#define SL_OS_RET_CODE_OK
/*!
\brief
\sa
\note belongs to \ref proting_sec
\warning
*/
#define SL_OS_WAIT_FOREVER
/*!
\brief
\sa
\note belongs to \ref proting_sec
\warning
*/
#define SL_OS_NO_WAIT
/*!
\brief type definition for a time value
\note On each porting or platform the type could be whatever is needed -
integer, pointer to structure etc.
\note belongs to \ref proting_sec
*/
#define _SlTime_t
/*!
\brief type definition for a sync object container
Sync object is object used to synchronize between two threads or thread and
interrupt handler.
One thread is waiting on the object and the other thread send a signal,
which then
release the waiting thread.
The signal must be able to be sent from interrupt context.
This object is generally implemented by binary semaphore or events.
\note On each porting or platform the type could be whatever is needed -
integer, structure etc.
\note belongs to \ref proting_sec
*/
#define _SlSyncObj_t
/*!
\brief This function creates a sync object
The sync object is used for synchronization between diffrent thread or ISR
and
a thread.
\param pSyncObj - pointer to the sync object control block
\return upon successful creation the function should return 0
Otherwise, a negative value indicating the error code shall be
returned
\note belongs to \ref proting_sec
\warning
*/
#define sl_SyncObjCreate(pSyncObj, pName)
/*!
\brief This function deletes a sync object
\param pSyncObj - pointer to the sync object control block
\return upon successful deletion the function should return 0
Otherwise, a negative value indicating the error code shall be
returned
\note belongs to \ref proting_sec
\warning
*/
#define sl_SyncObjDelete(pSyncObj)
/*!
\brief This function generates a sync signal for the object.
All suspended threads waiting on this sync object are resumed
\param pSyncObj - pointer to the sync object control block
\return upon successful signaling the function should return 0
Otherwise, a negative value indicating the error code shall be
returned
\note the function could be called from ISR context
\warning
*/
#define sl_SyncObjSignal(pSyncObj)
/*!
\brief This function waits for a sync signal of the specific sync object
\param pSyncObj - pointer to the sync object control block
\param Timeout - numeric value specifies the maximum number of mSec
to
stay suspended while waiting for the sync signal
Currently, the simple link driver uses only two
values:
- OSI_WAIT_FOREVER
- OSI_NO_WAIT
\return upon successful reception of the signal within the timeout window
return 0
Otherwise, a negative value indicating the error code shall be
returned
\note belongs to \ref proting_sec
\warning
*/
#define sl_SyncObjWait(pSyncObj, Timeout)
/*!
\brief type definition for a locking object container
Locking object are used to protect a resource from mutual accesses of two or
more threads.
The locking object should suppurt reentrant locks by a signal thread.
This object is generally implemented by mutex semaphore
\note On each porting or platform the type could be whatever is needed -
integer, structure etc.
\note belongs to \ref proting_sec
*/
#define _SlLockObj_t
/*!
\brief This function creates a locking object.
The locking object is used for protecting a shared resources between
different
threads.
\param pLockObj - pointer to the locking object control block
\return upon successful creation the function should return 0
Otherwise, a negative value indicating the error code shall be
returned
\note belongs to \ref proting_sec
\warning
*/
#define sl_LockObjCreate(pLockObj, pName)
/*!
\brief This function deletes a locking object.
\param pLockObj - pointer to the locking object control block
\return upon successful deletion the function should return 0
Otherwise, a negative value indicating the error code shall be
returned
\note belongs to \ref proting_sec
\warning
*/
#define sl_LockObjDelete(pLockObj)
/*!
\brief This function locks a locking object.
All other threads that call this function before this thread calls
the osi_LockObjUnlock would be suspended
\param pLockObj - pointer to the locking object control block
\param Timeout - numeric value specifies the maximum number of mSec
to
stay suspended while waiting for the locking object
Currently, the simple link driver uses only two
values:
- OSI_WAIT_FOREVER
- OSI_NO_WAIT
\return upon successful reception of the locking object the function should
return 0
Otherwise, a negative value indicating the error code shall be
returned
\note belongs to \ref proting_sec
\warning
*/
#define sl_LockObjLock(pLockObj, Timeout)
/*!
\brief This function unlock a locking object.
\param pLockObj - pointer to the locking object control block
\return upon successful unlocking the function should return 0
Otherwise, a negative value indicating the error code shall be
returned
\note belongs to \ref proting_sec
\warning
*/
#define sl_LockObjUnlock(pLockObj)
#endif
/*!
\brief This function call the pEntry callback from a different context
\param pEntry - pointer to the entry callback function
\param pValue - pointer to any type of memory structure that would
be
passed to pEntry callback from the execution thread.
\param flags - execution flags - reserved for future usage
\return upon successful registration of the spawn the function should return
0
(the function is not blocked till the end of the execution of the
function
and could be returned before the execution is actually completed)
Otherwise, a negative value indicating the error code shall be
returned
\note belongs to \ref proting_sec
\warning
*/
/*
#define SL_PLATFORM_EXTERNAL_SPAWN
*/
#ifdef SL_PLATFORM_EXTERNAL_SPAWN
#define sl_Spawn(pEntry, pValue, flags)
#endif
/*!
Close the Doxygen group.
@}
*/
/*!
******************************************************************************
\defgroup porting_events Porting - Event Handlers
This section includes the asynchronous event handlers routines
PORTING ACTION:
-Uncomment the required handler and define your routine as the value
of this handler
@{
******************************************************************************
*/
/*!
\brief
\sa
\note belongs to \ref proting_sec
\warning
*/
/*
#define sl_GeneralEvtHdlr
*/
/*!
\brief An event handler for WLAN connection or disconnection
indication
This event handles async WLAN events.
Possible events are:
SL_WLAN_CONNECT_EVENT - indicates WLAN is connected
SL_WLAN_DISCONNECT_EVENT - indicates WLAN is disconnected
\sa
\note belongs to \ref proting_sec
\warning
*/
#define sl_WlanEvtHdlr SimpleLinkWlanEventHandler
/*!
\brief An event handler for IP address asynchronous event. Usually
accepted after new WLAN connection.
This event handles networking events.
Possible events are:
SL_NETAPP_IPV4_ACQUIRED - IP address was acquired (DHCP or
Static)
\sa
\note belongs to \ref proting_sec
\warning
*/
#define sl_NetAppEvtHdlr SimpleLinkNetAppEventHandler
/*!
\brief A callback for HTTP server events.
Possible events are:
SL_NETAPP_HTTPGETTOKENVALUE - NWP requests to get the value of
a specific token SL_NETAPP_HTTPPOSTTOKENVALUE - NWP post to the
host a new value for a specific token
\param pServerEvent - Contains the relevant event information
(SL_NETAPP_HTTPGETTOKENVALUE or SL_NETAPP_HTTPPOSTTOKENVALUE)
\param pServerResponse - Should be filled by the user with the relevant
response information (i.e SL_NETAPP_HTTPSETTOKENVALUE as a
response to SL_NETAPP_HTTPGETTOKENVALUE event)
\sa
\note belongs to \ref proting_sec
\warning
*/
// #define sl_HttpServerCallback SimpleLinkHttpServerCallback
/*!
\brief
\sa
\note belongs to \ref proting_sec
\warning
*/
/*
#define sl_SockEvtHdlr
*/
/*!
\brief
\sa
\note belongs to \ref porting_sec
\warning
*/
#define sl_AsyncCmdHdlr SimpleLinkCmdHandler
#define SL_STORE_RESTORE_CONTEXT
#ifdef SL_STORE_RESTORE_CONTEXT
#define sl_SuspenedStoreContext SimpleLinkSuspenedStoreContextHandler
#define sl_ResumeRestoreContext SimpleLinkResumeRestoreContextHandler
#endif
/*!
Close the Doxygen group.
@}
*/
#ifdef __cplusplus
}
#endif // __cplusplus
#endif // __USER_H__
examples/PIC32/mqtt_client/firmware/src/user_params.h
0 → 100644
View file @
376d2666
/*
* Copyright (c) 2016 Cesanta Software Limited
* All rights reserved
*/
#ifndef _USER_PARAMS_H
#define _USER_PARAMS_H
#define NET_SSID "my_network"
#define NET_PWD "my_password"
#define NET_SECURITY SL_SEC_TYPE_WPA_WPA2
#define MQTT_BROKER_ADDRESS "192.168.1.108:1883"
#define MQTT_USER_NAME NULL
#define MQTT_USER_PWD NULL
#define CS_PORT PORT_CHANNEL_D
#define CS_PIN PORTS_BIT_POS_14
#define HIB_PORT PORT_CHANNEL_D
#define HIB_PIN PORTS_BIT_POS_4
#endif
/* _USER_PARAMS_H */
mongoose.h
View file @
376d2666
...
@@ -468,6 +468,7 @@ unsigned long os_random(void);
...
@@ -468,6 +468,7 @@ unsigned long os_random(void);
#include <simplelink.h>
#include <simplelink.h>
#include <netapp.h>
#include <netapp.h>
#undef timeval
typedef
int
sock_t
;
typedef
int
sock_t
;
#define INVALID_SOCKET (-1)
#define INVALID_SOCKET (-1)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment