Initial commit
|
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<?ccsproject version="1.0"?>
|
||||
<projectOptions>
|
||||
<ccsVariant value="0:Eclipse-based"/>
|
||||
<ccsVersion value="12.4.0"/>
|
||||
<deviceVariant value="Cortex M.MSPM0G3507"/>
|
||||
<deviceFamily value="TMS470"/>
|
||||
<deviceEndianness value="little"/>
|
||||
<codegenToolVersion value="TICLANG_2.1.3.LTS"/>
|
||||
<isElfFormat value="true"/>
|
||||
<connection value="common/targetdb/connections/TIXDS110_Connection.xml"/>
|
||||
<rts value=""/>
|
||||
<createSlaveProjects value=""/>
|
||||
<ignoreDefaultDeviceSettings value="true"/>
|
||||
<ignoreDefaultCCSSettings value="true"/>
|
||||
<templateProperties value="id=empty_LP_MSPM0G3507_nortos_ticlang.projectspec.empty_LP_MSPM0G3507_nortos_ticlang,buildProfile=release,isHybrid=true"/>
|
||||
<sourceLookupPath value="${COM_TI_MSPM0_SDK_INSTALL_DIR}/source/ti/driverlib"/>
|
||||
<origin value="C:\ti\mspm0_sdk_1_20_01_06\examples\nortos\LP_MSPM0G3507\driverlib\empty\ticlang\empty_LP_MSPM0G3507_nortos_ticlang.projectspec"/>
|
||||
<filesToOpen value="empty.syscfg,README.md"/>
|
||||
<isTargetManual value="false"/>
|
||||
</projectOptions>
|
||||
|
|
@ -0,0 +1,129 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
|
||||
<storageModule moduleId="org.eclipse.cdt.core.settings">
|
||||
<cconfiguration id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.40547792">
|
||||
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.40547792" moduleId="org.eclipse.cdt.core.settings" name="Debug">
|
||||
<externalSettings/>
|
||||
<extensions>
|
||||
<extension id="com.ti.ccstudio.binaryparser.CoffParser" point="org.eclipse.cdt.core.BinaryParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="com.ti.ccstudio.errorparser.CoffErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="com.ti.ccstudio.errorparser.SysConfigErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
|
||||
</extensions>
|
||||
</storageModule>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<configuration artifactExtension="out" artifactName="${ProjName}" buildProperties="" cleanCommand="${CG_CLEAN_CMD}" description="" id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.40547792" name="Debug" parent="com.ti.ccstudio.buildDefinitions.TMS470.Debug">
|
||||
<folderInfo id="com.ti.ccstudio.buildDefinitions.TMS470.Debug.40547792." name="/" resourcePath="">
|
||||
<toolChain id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.DebugToolchain.190089834" name="TI Build Tools" secondaryOutputs="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex.outputType__BIN.14529591" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.DebugToolchain" targetTool="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.linkerDebug.723629336">
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS.2140542540" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_TAGS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="DEVICE_CONFIGURATION_ID=Cortex M.MSPM0G3507"/>
|
||||
<listOptionValue builtIn="false" value="DEVICE_CORE_ID=CORTEX_M0P"/>
|
||||
<listOptionValue builtIn="false" value="DEVICE_ENDIANNESS=little"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_FORMAT=ELF"/>
|
||||
<listOptionValue builtIn="false" value="RUNTIME_SUPPORT_LIBRARY="/>
|
||||
<listOptionValue builtIn="false" value="CCS_MBS_VERSION=6.1.3"/>
|
||||
<listOptionValue builtIn="false" value="PRODUCTS=MSPM0-SDK:1.20.1.06;sysconfig:1.18.0;"/>
|
||||
<listOptionValue builtIn="false" value="PRODUCT_MACRO_IMPORTS={"MSPM0-SDK":["${COM_TI_MSPM0_SDK_INCLUDE_PATH}","${COM_TI_MSPM0_SDK_LIBRARY_PATH}","${COM_TI_MSPM0_SDK_LIBRARIES}","${COM_TI_MSPM0_SDK_SYMBOLS}","${COM_TI_MSPM0_SDK_SYSCONFIG_MANIFEST}"],"sysconfig":["${SYSCONFIG_TOOL_INCLUDE_PATH}","${SYSCONFIG_TOOL_LIBRARY_PATH}","${SYSCONFIG_TOOL_LIBRARIES}","${SYSCONFIG_TOOL_SYMBOLS}","${SYSCONFIG_TOOL_SYSCONFIG_MANIFEST}"]}"/>
|
||||
<listOptionValue builtIn="false" value="OUTPUT_TYPE=executable"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION.1828537163" name="Compiler version" superClass="com.ti.ccstudio.buildDefinitions.core.OPT_CODEGEN_VERSION" value="TICLANG_3.2.2.LTS" valueType="string"/>
|
||||
<targetPlatform id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.targetPlatformDebug.504051076" name="Platform" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.targetPlatformDebug"/>
|
||||
<builder buildPath="${BuildDirectory}" id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.builderDebug.359414231" keepEnvironmentInBuildfile="false" name="GNU Make" parallelBuildOn="true" parallelizationNumber="optimal" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.builderDebug"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.compilerDebug.1849895338" name="Arm Compiler" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.compilerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.MARCH.2099337653" name="Select ARM architecture variant (-march)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.MARCH" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.MARCH.thumbv6m" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.MCPU.808881114" name="Select ARM processor variant (-mcpu)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.MCPU" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.MCPU.cortex-m0plus" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.MFLOAT_ABI.1183863072" name="Select assumed floating-point ABI (-mfloat-abi)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.MFLOAT_ABI" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.MFLOAT_ABI.soft" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.ENDIAN_NESS__BIG_LITTLE.407728420" name="Endian-ness (big/little) [See 'General' page to edit]" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.ENDIAN_NESS__BIG_LITTLE" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.ENDIAN_NESS__BIG_LITTLE.MLITTLE_ENDIAN" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.SELECT_PROCESSOR_MODE__ARM_THUMB.62553894" name="Select processor mode (arm/thumb)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.SELECT_PROCESSOR_MODE__ARM_THUMB" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.SELECT_PROCESSOR_MODE__ARM_THUMB.MTHUMB" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.OPT_LEVEL.238555820" name="Select optimization paradigm/level (-O)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.OPT_LEVEL" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.OPT_LEVEL.2" valueType="enumerated"/>
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.INCLUDE_PATH.885043111" name="Add dir to #include search path (-I)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.INCLUDE_PATH" valueType="includePath">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_MSPM0_SDK_INCLUDE_PATH}"/>
|
||||
<listOptionValue builtIn="false" value="${SYSCONFIG_TOOL_INCLUDE_PATH}"/>
|
||||
<listOptionValue builtIn="false" value="${workspace_loc:/mspm0g3507_mcal/NOR_FLASH}"/>
|
||||
<listOptionValue builtIn="false" value="${workspace_loc:/mspm0g3507_mcal/NOR_FLASH/platform}"/>
|
||||
<listOptionValue builtIn="false" value="${workspace_loc:/mspm0g3507_mcal/NOR_FLASH/SDK}"/>
|
||||
<listOptionValue builtIn="false" value="${PROJECT_ROOT}"/>
|
||||
<listOptionValue builtIn="false" value="${PROJECT_ROOT}/${ConfigName}"/>
|
||||
<listOptionValue builtIn="false" value="${COM_TI_MSPM0_SDK_INSTALL_DIR}/source/third_party/CMSIS/Core/Include"/>
|
||||
<listOptionValue builtIn="false" value="${COM_TI_MSPM0_SDK_INSTALL_DIR}/source"/>
|
||||
</option>
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.DEFINE.562373027" name="Pre-define NAME (-D)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.DEFINE" valueType="definedSymbols">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_MSPM0_SDK_SYMBOLS}"/>
|
||||
<listOptionValue builtIn="false" value="${SYSCONFIG_TOOL_SYMBOLS}"/>
|
||||
<listOptionValue builtIn="false" value="TIMER_INPUTCAPTURE_CONFIG_N"/>
|
||||
<listOptionValue builtIn="false" value="TIMER_PWM_CONFIG_N"/>
|
||||
<listOptionValue builtIn="false" value="ADC_CONFIG_N"/>
|
||||
<listOptionValue builtIn="false" value="TIMER_CONFIG_N"/>
|
||||
<listOptionValue builtIn="false" value="ADC_DMA_CONFIG_N"/>
|
||||
<listOptionValue builtIn="false" value="SYSTIC_CONFIG"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.GENERATE_DWARF_DEBUG.6957580" name="Generate DWARF debug" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.GENERATE_DWARF_DEBUG" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.GENERATE_DWARF_DEBUG.GDWARF_3" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.STD_C.378433428" name="Select assumed C language standard (-std)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.STD_C" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.STD_C.c11" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.STD_CPP.308548747" name="Select assumed C++ language standard (-std)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.STD_CPP" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.STD_CPP.c++11" valueType="enumerated"/>
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.CMD_FILE.1762236512" name="Read options from specified file (@)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compilerID.CMD_FILE" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="syscfg/device.opt"/>
|
||||
</option>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compiler.inputType__C_SRCS.351887616" name="C Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compiler.inputType__C_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compiler.inputType__CPP_SRCS.531268320" name="C++ Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compiler.inputType__CPP_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compiler.inputType__ASM_SRCS.614093656" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compiler.inputType__ASM_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compiler.inputType__ASM2_SRCS.1795484896" name="Assembly Sources" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.compiler.inputType__ASM2_SRCS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.linkerDebug.723629336" name="Arm Linker" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exe.linkerDebug">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.MAP_FILE.376159004" name="Link information (map) listed into <file> (--map_file, -m)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.MAP_FILE" value="${ProjName}.map" valueType="string"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.OUTPUT_FILE.1751142320" name="Specify output file name (--output_file, -o)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.OUTPUT_FILE" value="${ProjName}.out" valueType="string"/>
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.LIBRARY.307160145" name="Include library file or command file as input (--library, -l)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.LIBRARY" valueType="libs">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_MSPM0_SDK_LIBRARIES}"/>
|
||||
<listOptionValue builtIn="false" value="${SYSCONFIG_TOOL_LIBRARIES}"/>
|
||||
<listOptionValue builtIn="false" value="device.cmd.genlibs"/>
|
||||
<listOptionValue builtIn="false" value="libc.a"/>
|
||||
</option>
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.SEARCH_PATH.1854459042" name="Add <dir> to library search path (--search_path, -i)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.SEARCH_PATH" valueType="libPaths">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_MSPM0_SDK_LIBRARY_PATH}"/>
|
||||
<listOptionValue builtIn="false" value="${SYSCONFIG_TOOL_LIBRARY_PATH}"/>
|
||||
<listOptionValue builtIn="false" value="${COM_TI_MSPM0_SDK_INSTALL_DIR}/source"/>
|
||||
<listOptionValue builtIn="false" value="${PROJECT_ROOT}"/>
|
||||
<listOptionValue builtIn="false" value="${PROJECT_BUILD_DIR}/syscfg"/>
|
||||
<listOptionValue builtIn="false" value="${CG_TOOL_ROOT}/lib"/>
|
||||
</option>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.REREAD_LIBS.1415295936" name="Reread libraries; resolve backward references (--reread_libs, -x)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.REREAD_LIBS" value="false" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.DIAG_WRAP.23488117" name="Wrap diagnostic messages (--diag_wrap) [deprecated]" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.DIAG_WRAP" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.DIAG_WRAP.off" valueType="enumerated"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.DISPLAY_ERROR_NUMBER.1625579790" name="Emit diagnostic identifier numbers (--display_error_number)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.DISPLAY_ERROR_NUMBER" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.XML_LINK_INFO.566379026" name="Detailed link information data-base into <file> (--xml_link_info, -xml_link_info)" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.linkerID.XML_LINK_INFO" value="${ProjName}_linkInfo.xml" valueType="string"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exeLinker.inputType__CMD_SRCS.383059180" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exeLinker.inputType__CMD_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exeLinker.inputType__CMD2_SRCS.1483261799" name="Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exeLinker.inputType__CMD2_SRCS"/>
|
||||
<inputType id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exeLinker.inputType__GEN_CMDS.991907802" name="Generated Linker Command Files" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.exeLinker.inputType__GEN_CMDS"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex.1171666563" name="Arm Hex Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex">
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex.TOOL_ENABLE.67874727" name="Enable tool" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex.TOOL_ENABLE" value="true" valueType="boolean"/>
|
||||
<option id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex.OUTPUT_FORMAT.273173229" name="Output format" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex.OUTPUT_FORMAT" value="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex.OUTPUT_FORMAT.INTEL" valueType="enumerated"/>
|
||||
<outputType id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex.outputType__BIN.14529591" name="Binary File" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.hex.outputType__BIN"/>
|
||||
</tool>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.objcopy.734315709" name="Arm Objcopy Utility" superClass="com.ti.ccstudio.buildDefinitions.TMS470_TICLANG_3.2.objcopy"/>
|
||||
<tool id="com.ti.ccstudio.buildDefinitions.sysConfig.79964962" name="SysConfig" superClass="com.ti.ccstudio.buildDefinitions.sysConfig">
|
||||
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="com.ti.ccstudio.buildDefinitions.sysConfig.PRODUCTS.405021647" name="Root system config meta data file in a product or SDK (-s, --product)" superClass="com.ti.ccstudio.buildDefinitions.sysConfig.PRODUCTS" valueType="stringList">
|
||||
<listOptionValue builtIn="false" value="${COM_TI_MSPM0_SDK_SYSCONFIG_MANIFEST}"/>
|
||||
<listOptionValue builtIn="false" value="${SYSCONFIG_TOOL_SYSCONFIG_MANIFEST}"/>
|
||||
</option>
|
||||
</tool>
|
||||
</toolChain>
|
||||
</folderInfo>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
|
||||
</cconfiguration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
|
||||
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
|
||||
<project id="empty_LP_MSPM0G3507_nortos_ticlang.com.ti.ccstudio.buildDefinitions.TMS470.ProjectType.711060793" name="TMS470" projectType="com.ti.ccstudio.buildDefinitions.TMS470.ProjectType"/>
|
||||
</storageModule>
|
||||
<storageModule moduleId="refreshScope" versionNumber="2">
|
||||
<configuration configurationName="Debug">
|
||||
<resource resourceType="PROJECT" workspacePath="/mspm0g3507_mcal"/>
|
||||
</configuration>
|
||||
</storageModule>
|
||||
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
|
||||
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
|
||||
<storageModule moduleId="scannerConfiguration"/>
|
||||
</cproject>
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
# Auto detect text files and perform LF normalization
|
||||
* text=auto
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
/.metadata/
|
||||
/Debug/
|
||||
/dvt/
|
||||
/.jxbrowser.userdata
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="com.ti.ccstudio.debug.launchType.device.debugging">
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_DEBUGGER_PROPERTIES.MSPM0G3507.ccxml.Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P" value="<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <PropertyValues> <property id="ConnectOnStartup"> <curValue>1</curValue> </property> <property id="EnableInstalledBreakpoint"> <curValue>1</curValue> </property> <property id="IgnoreSoftLaunchFailures"> <curValue>0</curValue> </property> </PropertyValues> "/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_PROGRAM.MSPM0G3507.ccxml.Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P" value="${build_artifact:custom}"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_PROJECT.MSPM0G3507.ccxml.Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P" value="custom"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_TARGET_CONFIG" value="${target_config_active_default:custom}"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.MRU_PROGRAM.MSPM0G3507.ccxml.Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P" value="${build_artifact:custom}"/>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/custom"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||
<listEntry value="4"/>
|
||||
</listAttribute>
|
||||
<stringAttribute key="org.eclipse.debug.core.source_locator_id" value="com.ti.ccstudio.debug.sourceLocator"/>
|
||||
<stringAttribute key="org.eclipse.debug.core.source_locator_memento" value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <sourceLookupDirector> <sourceContainers duplicates="false"> <container memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;default/&gt;&#13;&#10;" typeId="org.eclipse.debug.core.containerType.default"/> <container memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;cpuSpecificContainer cpuName=&quot;Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P&quot;&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;project name=&amp;quot;custom&amp;quot; referencedProjects=&amp;quot;true&amp;quot;/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;org.eclipse.debug.core.containerType.project&quot;/&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;default/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;org.eclipse.debug.core.containerType.default&quot;/&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;productsSource/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;com.ti.ccstudio.debug.containerType.products.source&quot;/&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;deviceLibrarySource/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;com.ti.ccstudio.debug.containerType.device.library.source&quot;/&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;librarySource/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;com.ti.ccstudio.debug.containerType.library.source&quot;/&gt;&#13;&#10;&lt;/cpuSpecificContainer&gt;&#13;&#10;" typeId="com.ti.ccstudio.debug.containerType.cpu.specific"/> </sourceContainers> </sourceLookupDirector> "/>
|
||||
</launchConfiguration>
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="com.ti.ccstudio.debug.launchType.device.debugging">
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_DEBUGGER_PROPERTIES.MSPM0G3507.ccxml.Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P" value="<?xml version="1.0" encoding="UTF-8" standalone="no" ?> <PropertyValues> <property id="ConnectOnStartup"> <curValue>1</curValue> </property> <property id="EnableInstalledBreakpoint"> <curValue>1</curValue> </property> <property id="IgnoreSoftLaunchFailures"> <curValue>0</curValue> </property> </PropertyValues> "/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_PROGRAM.MSPM0G3507.ccxml.Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P" value="${build_artifact:db_msp3507_lcd}"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_PROJECT.MSPM0G3507.ccxml.Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P" value="db_msp3507_lcd"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.ATTR_TARGET_CONFIG" value="${target_config_active_default:db_msp3507_lcd}"/>
|
||||
<stringAttribute key="com.ti.ccstudio.debug.debugModel.MRU_PROGRAM.MSPM0G3507.ccxml.Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P" value="${build_artifact:db_msp3507_lcd}"/>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
|
||||
<listEntry value="/db_msp3507_lcd"/>
|
||||
</listAttribute>
|
||||
<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
|
||||
<listEntry value="4"/>
|
||||
</listAttribute>
|
||||
<stringAttribute key="org.eclipse.debug.core.source_locator_id" value="com.ti.ccstudio.debug.sourceLocator"/>
|
||||
<stringAttribute key="org.eclipse.debug.core.source_locator_memento" value="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <sourceLookupDirector> <sourceContainers duplicates="false"> <container memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;default/&gt;&#13;&#10;" typeId="org.eclipse.debug.core.containerType.default"/> <container memento="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#13;&#10;&lt;cpuSpecificContainer cpuName=&quot;Texas Instruments XDS110 USB Debug Probe/CORTEX_M0P&quot;&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;project name=&amp;quot;db_msp3507_lcd&amp;quot; referencedProjects=&amp;quot;true&amp;quot;/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;org.eclipse.debug.core.containerType.project&quot;/&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;default/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;org.eclipse.debug.core.containerType.default&quot;/&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;productsSource/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;com.ti.ccstudio.debug.containerType.products.source&quot;/&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;deviceLibrarySource/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;com.ti.ccstudio.debug.containerType.device.library.source&quot;/&gt;&#13;&#10; &lt;childContainerEntry childMemento=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; standalone=&amp;quot;no&amp;quot;?&amp;gt;&amp;#13;&amp;#10;&amp;lt;librarySource/&amp;gt;&amp;#13;&amp;#10;&quot; childType=&quot;com.ti.ccstudio.debug.containerType.library.source&quot;/&gt;&#13;&#10;&lt;/cpuSpecificContainer&gt;&#13;&#10;" typeId="com.ti.ccstudio.debug.containerType.cpu.specific"/> </sourceContainers> </sourceLookupDirector> "/>
|
||||
</launchConfiguration>
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>mspm0g3507_mcal</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
|
||||
<triggers>full,incremental,</triggers>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>com.ti.ccstudio.core.ccsNature</nature>
|
||||
<nature>org.eclipse.cdt.core.cnature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
|
||||
<nature>org.eclipse.cdt.core.ccnature</nature>
|
||||
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
eclipse.preferences.version=1
|
||||
inEditor=false
|
||||
onBuild=false
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
doxygen/doxygen_new_line_after_brief=true
|
||||
doxygen/doxygen_use_brief_tag=false
|
||||
doxygen/doxygen_use_javadoc_tags=true
|
||||
doxygen/doxygen_use_pre_tag=false
|
||||
doxygen/doxygen_use_structural_commands=false
|
||||
eclipse.preferences.version=1
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
eclipse.preferences.version=1
|
||||
org.eclipse.cdt.debug.core.toggleBreakpointModel=com.ti.ccstudio.debug.CCSBreakpointMarker
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
eclipse.preferences.version=1
|
||||
encoding//Debug/Core/Source/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/Core/Source/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/Generated\ Codes/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/Generated\ Codes/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/LCD_1604/interface/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/LCD_1604/interface/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/LCD_1604/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/LCD_1604/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/NOR_FLASH/SDK/src/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/NOR_FLASH/SDK/src/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/NOR_FLASH/platform/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/NOR_FLASH/platform/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/SDK/drivers/Src/timers/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/SDK/drivers/Src/timers/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/ivec_ECU/ivec_ecu_can/src/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/ivec_ECU/ivec_ecu_can/src/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/ivec_ECU/ivec_ecu_common/src/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/ivec_ECU/ivec_ecu_common/src/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/ivec_ECU/ivec_ecu_uart/src/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/ivec_ECU/ivec_ecu_uart/src/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/makefile=UTF-8
|
||||
encoding//Debug/objects.mk=UTF-8
|
||||
encoding//Debug/sources.mk=UTF-8
|
||||
encoding//Debug/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/subdir_vars.mk=UTF-8
|
||||
encoding//Debug/utils/subdir_rules.mk=UTF-8
|
||||
encoding//Debug/utils/subdir_vars.mk=UTF-8
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
/*
|
||||
* gpio.h
|
||||
*
|
||||
* Created on: 22-Jan-2024
|
||||
* Author: saar
|
||||
*/
|
||||
|
||||
#ifndef CORE_INCLUDE_GPIO_H_
|
||||
#define CORE_INCLUDE_GPIO_H_
|
||||
|
||||
#include "ti_msp_dl_config.h"
|
||||
|
||||
int8_t mcu_gpioInitAllMcal(void);
|
||||
int8_t mcu_gpioDeInitMcal(GPIO_Regs *GPIOx, uint32_t GPIO_Pin);
|
||||
void mcu_gpioWriteMcal(void* port, uint32_t pin, uint32_t state);
|
||||
uint16_t mcu_gpioReadMcal(void* port, uint32_t pin);
|
||||
void mcu_gpioToggleMcal(void *port, uint32_t pin);
|
||||
void mcu_set_gpioDirectionMcal(uint32_t pincmIndex, bool direction);
|
||||
|
||||
#endif /* CORE_INCLUDE_GPIO_H_ */
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
//#ifndef CORE_INCLUDE_IVEC_MCAL_ADC_DMA_H_
|
||||
//#define CORE_INCLUDE_IVEC_MCAL_ADC_DMA_H_
|
||||
//
|
||||
//#include "..\mspm0g3507_mcal\utils\utils.h"
|
||||
//
|
||||
///** @defgroup DMA_definition
|
||||
// * @{
|
||||
// */
|
||||
//#define dmaCHID_u8 ((uint8_t) 0) /*!< DMA channel ID */
|
||||
//#define dmaSAMPLETIME_u16 ((uint16_t) 320) /*!< DMA sample time */
|
||||
//#define dmaSAMPLECNT_u8 ((uint8_t) 6) /*!< DMA sample count */
|
||||
///**
|
||||
// * @}
|
||||
// */
|
||||
//
|
||||
//
|
||||
///*!<Function for ADC */
|
||||
//
|
||||
//IVEC_McalStatus_e xMCAL_AdcInit(ADC12_Regs* const adc_inst);
|
||||
//IVEC_McalStatus_e xMCAL_AdcDeInit(ADC12_Regs* const adc_inst);
|
||||
//IVEC_McalStatus_e xMCAL_AdcStart(ADC12_Regs* const adc_inst);
|
||||
//IVEC_McalStatus_e xMCAL_AdcStop(ADC12_Regs* const adc_inst);
|
||||
//
|
||||
//
|
||||
///*!<Function for DMA */
|
||||
//IVEC_McalStatus_e xMCAL_DmaInit(void);
|
||||
//IVEC_McalStatus_e xMCAL_DmaDeInit(void);
|
||||
//IVEC_McalStatus_e xMCAL_DmaStart(const uint8_t u8channel ,uint16_t* p_u16adcDma);
|
||||
//IVEC_McalStatus_e xMCAL_DmaStop(void);
|
||||
//
|
||||
//void _prv_adccallback();
|
||||
//
|
||||
//
|
||||
//
|
||||
//#endif /* CORE_INCLUDE_IVEC_MCAL_ADC_DMA_H_ */
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
/**
|
||||
* @file ivec_mcal_i2c.h
|
||||
* @author Akshat Dabas (akshat@vecmocon.com)
|
||||
* @brief This header file contains API for I2C Functionality
|
||||
* @version 0.1.0
|
||||
* @date 2024-Mar-27
|
||||
*
|
||||
* @copyright Copyright (c) 2024
|
||||
*
|
||||
*/
|
||||
#ifndef CORE_INCLUDE_IVEC_MCAL_I2C_H_
|
||||
#define CORE_INCLUDE_IVEC_MCAL_I2C_H_
|
||||
|
||||
#define I2C_PACKETSIZE 16
|
||||
|
||||
#include "ti_msp_dl_config.h"
|
||||
#include "../utils/utils.h"
|
||||
#include "string.h"
|
||||
|
||||
xCoreStatus_t xMCAL_I2C_init(I2C_Regs *I2C_inst, xI2C_baud_t baud);
|
||||
xCoreStatus_t xMCU_i2cWriteMcal(I2C_Regs *I2C_inst,uint8_t u8addr ,uint8_t *u8TxPacket, int len);
|
||||
xCoreStatus_t xMCU_i2cReadMcal(I2C_Regs *I2C_inst, uint8_t u8addr, int len);
|
||||
xCoreStatus_t xMCU_i2cDevReadyMcal(I2C_Regs *I2C_inst,uint8_t u8addr);
|
||||
xCoreStatus_t xMcal_I2C_getData(I2C_Regs *I2C_inst, uint8_t *u8RxData, uint8_t len);
|
||||
xCoreStatus_t xMCAL_I2C_deinit(I2C_Regs *I2C_inst);
|
||||
|
||||
#endif /* CORE_INCLUDE_IVEC_MCAL_I2C_H_ */
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
|
||||
#ifndef CORE_INCLUDE_IVEC_MCAL_MCAN_H_
|
||||
#define CORE_INCLUDE_IVEC_MCAL_MCAN_H_
|
||||
|
||||
#include "ti_msp_dl_config.h"
|
||||
#include "..\utils\utils.h"
|
||||
|
||||
IVEC_McalStatus_e xMCAL_MCANInit(MCAN_Regs* const mcan, xCAN_baud_t BAUD);
|
||||
IVEC_McalStatus_e xMCAL_MCANDeInit(MCAN_Regs* const mcan);
|
||||
IVEC_McalStatus_e xMCAL_MCANTx(MCAN_Regs *MCAN, DL_MCAN_TxBufElement *TxMsg ,uint16_t *TxData, uint32_t BufNum, int Bytes);
|
||||
IVEC_McalStatus_e xMCAL_MCANRx(MCAN_Regs *MCAN, DL_MCAN_RxBufElement *RxMsg ,uint32_t FifoNum,uint8_t *RxData,int DLC);
|
||||
IVEC_McalStatus_e xMCAL_getMCAN_ErrorStatus(char *ErrorStatus);
|
||||
IVEC_McalStatus_e xMCAL_getMCAN_InterruptLine1Status(uint32_t *Interrupt_Status);
|
||||
|
||||
|
||||
#endif /* CORE_INCLUDE_IVEC_MCAL_MCAN_H_ */
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
/**
|
||||
* @file ivec_mcal_spi.h
|
||||
* @author Akshat Dabas (akshat@vecmocon.com)
|
||||
* @brief This header file contains API for SPI Functionality
|
||||
* @version 0.1.0
|
||||
* @date 2024-Mar-12
|
||||
*
|
||||
* @copyright Copyright (c) 2024
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef CORE_INCLUDE_IVEC_MCAL_SPI_H_
|
||||
#define CORE_INCLUDE_IVEC_MCAL_SPI_H_
|
||||
|
||||
#define SPI_PKT_SIZE 24
|
||||
|
||||
#include "ti_msp_dl_config.h"
|
||||
#include "../utils/utils.h"
|
||||
|
||||
xCoreStatus_t xMCAL_SPI_init(SPI_Regs *SPI_inst, xSPI_CS_t xCS );
|
||||
xCoreStatus_t xMCAL_SPI_TxData(SPI_Regs *SPI_inst, uint8_t *u8SPI_TxData, uint8_t * u8SPI_RxData,uint8_t size);
|
||||
xCoreStatus_t xMCAL_SPI_deinit(SPI_Regs *SPI_inst);
|
||||
|
||||
#endif /* CORE_INCLUDE_IVEC_MCAL_SPI_H_ */
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
|
||||
#ifndef CORE_INCLUDE_IVEC_MCAL_TIMER_H_
|
||||
#define CORE_INCLUDE_IVEC_MCAL_TIMER_H_
|
||||
|
||||
#include "..\utils\utils.h"
|
||||
|
||||
#define timerCAPTURE_FREQ_i32 ((int32_t) 100000)
|
||||
|
||||
|
||||
|
||||
|
||||
/*!<Function for Periodic timer */
|
||||
IVEC_McalStatus_e xMCAL_TimerInit(GPTIMER_Regs* const pTimer_inst);
|
||||
IVEC_McalStatus_e xMCAL_TimerDeInit(GPTIMER_Regs* const pTimer_inst);
|
||||
IVEC_McalStatus_e xMCAL_TimerstartCounter(void);
|
||||
IVEC_McalStatus_e xMCAL_TimerstopCounter(void);
|
||||
IVEC_McalStatus_e xMCAL_TimersetLoadValue(GPTIMER_Regs* const pTimer_inst, uint32_t count,uint32_t* p_u32temp);
|
||||
IVEC_McalStatus_e xMCAL_TimergetCount(uint32_t* p_u32temp);
|
||||
void _prv_timGcallback();
|
||||
|
||||
/*!<function for PWM timer */
|
||||
IVEC_McalStatus_e xMCAL_PwmInit(GPTIMER_Regs* const Tim_inst);
|
||||
IVEC_McalStatus_e xMCAL_PwmDeInit(GPTIMER_Regs* const Tim_inst);
|
||||
IVEC_McalStatus_e xMCAL_PwmStart(void);
|
||||
IVEC_McalStatus_e xMCAL_PwmStop(void);
|
||||
|
||||
|
||||
/*!<function for input capture */
|
||||
|
||||
IVEC_McalStatus_e xMCAL_InputCaptureInit(GPTIMER_Regs* const Tim_inst);
|
||||
IVEC_McalStatus_e xMCAL_InputCaptureDeInit(GPTIMER_Regs* const Tim_inst);
|
||||
IVEC_McalStatus_e xMCAL_InputCaptureStart(void);
|
||||
IVEC_McalStatus_e xMCAL_InputCaptureStop(void);
|
||||
//float xMCAL_Calcfrequency(void);
|
||||
void vMCAL_Calcfrequency(float* f_frequency);
|
||||
void _prv_timAcallback();
|
||||
|
||||
|
||||
|
||||
|
||||
#endif /* CORE_INCLUDE_IVEC_MCAL_TIMER_H_ */
|
||||
|
|
@ -0,0 +1,195 @@
|
|||
#ifndef CORE_INCLUDE_IVEC_MCAL_UART_H_
|
||||
#define CORE_INCLUDE_IVEC_MCAL_UART_H_
|
||||
//#include "ivec_mcal_uart.h"
|
||||
|
||||
#include "ti_msp_dl_config.h"
|
||||
#include "../utils/utils.h"
|
||||
#include <stdint.h>
|
||||
//#ifndef IVEC_MCAL_UART_H
|
||||
//#define IVEC_MCAL_UART_H
|
||||
#include "ivec_mcal_common.h"
|
||||
//#include "ql_uart.h"
|
||||
|
||||
|
||||
typedef enum
|
||||
{
|
||||
mcalUART_BAUD_AUTO = 0,
|
||||
mcalUART_BAUD_2400 = 2400,
|
||||
mcalUART_BAUD_4800 = 4800,
|
||||
mcalUART_BAUD_9600 = 9600,
|
||||
mcalUART_BAUD_14400 = 14400,
|
||||
mcalUART_BAUD_19200 = 19200,
|
||||
mcalUART_BAUD_28800 = 28800,
|
||||
mcalUART_BAUD_33600 = 33600,
|
||||
mcalUART_BAUD_38400 = 38400,
|
||||
mcalUART_BAUD_57600 = 57600,
|
||||
mcalUART_BAUD_115200 = 115200,
|
||||
mcalUART_BAUD_230400 = 230400,
|
||||
mcalUART_BAUD_460800 = 460800,
|
||||
mcalUART_BAUD_921600 = 921600,
|
||||
mcalUART_BAUD_1000000 = 1000000,
|
||||
mcalUART_BAUD_1843200 = 1843200,
|
||||
mcalUART_BAUD_2000000 = 2000000, //only support uart2/3
|
||||
mcalUART_BAUD_2100000 = 2100000,
|
||||
mcalUART_BAUD_3686400 = 3686400, //only support uart2/3
|
||||
mcalUART_BAUD_4000000 = 4000000, //only support uart2/3
|
||||
mcalUART_BAUD_4468750 = 4468750 //only support uart2/3
|
||||
}McalUartBaudRate_e;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
mcalUART_DATABIT_7 = 7,
|
||||
mcalUART_DATABIT_8 = 8, //8910 ARM UART hardware only support 8bit Data
|
||||
}McalUartDataBit_e;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
mcalUART_STOP_1 = 1,
|
||||
mcalUART_STOP_2 = 2,
|
||||
}McalUartStopBit_e;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
mcalUART_PARITY_NONE,
|
||||
mcalUART_PARITY_ODD,
|
||||
mcalUART_PARITY_EVEN,
|
||||
}McalUartParityBit_e;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
mcalUART_FC_NONE = 0,
|
||||
mcalUARTFC_HW,
|
||||
}McalUartFlowCtrl_e;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
McalUartBaudRate_e eUartBaudrate;
|
||||
McalUartDataBit_e eUartDataBit;
|
||||
McalUartStopBit_e eUartStopBit;
|
||||
McalUartParityBit_e eUartParityBit;
|
||||
McalUartFlowCtrl_e eUartFlowCtrl;
|
||||
}McalUartConfig_s;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
mcalUART_PORT1 = 0,
|
||||
mcalUART_PORT2,
|
||||
mcalUART_PORT3
|
||||
}McalUartPortNumber_e;
|
||||
#define IVEC_MCAL_GNSS_UART mcalUART_PORT3
|
||||
typedef enum
|
||||
{
|
||||
IVEC_MCAL_UART_EVENT_RX_ARRIVED = 1,//(1 << 0), ///< Received new data
|
||||
IVEC_MCAL_UART_EVENT_RX_OVERFLOW =2 ,//(1 << 1), ///< Rx fifo overflowed
|
||||
IVEC_MCAL_UART_EVENT_TX_COMPLETE = 3//(1 << 2) ///< All data had been sent
|
||||
}IVEC_McalUartEvents_e;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
McalUartPortNumber_e eUartPortNumber;
|
||||
McalUartConfig_s xUartConfig;
|
||||
char* buffer;
|
||||
uint16_t u16len;
|
||||
void (*pvUartRecvCallback)(IVEC_McalUartEvents_e , char *,uint32_t);
|
||||
}McalUartHandle_s;
|
||||
|
||||
#define IVEC_MCAL_UART_MAX_PORT 3
|
||||
|
||||
IVEC_McalCommonErr_e xMCAL_UartDeInit(McalUartHandle_s* pxHandleUart);
|
||||
IVEC_McalCommonErr_e xMCAL_UartRead(McalUartHandle_s* pxHandleUart, unsigned char* pucData, unsigned int u32DataLength);
|
||||
IVEC_McalCommonErr_e xMCAL_UartWrite(McalUartHandle_s* pxHandleUart, unsigned char* pucData, unsigned int u32DataLength);
|
||||
IVEC_McalCommonErr_e __prvMCAL_UartPinInit(McalUartHandle_s* pxHandleUart);
|
||||
IVEC_McalCommonErr_e xMCAL_UartInit(McalUartHandle_s* pxHandleUart);
|
||||
|
||||
|
||||
#endif /* IVEC_MCAL_UART_H */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
//
|
||||
///**
|
||||
// * @file ivec_mcal_uart.h
|
||||
// * @author Akshat Dabas (akshat@vecmocon.com)
|
||||
// * @brief This header file contains API for UART Functionality
|
||||
// * @version 0.1.0
|
||||
// * @date 2024-Feb-17
|
||||
// *
|
||||
// * @copyright Copyright (c) 2024
|
||||
// *
|
||||
// */
|
||||
//
|
||||
//#ifndef CORE_INCLUDE_IVEC_MCAL_UART_H_
|
||||
//#define CORE_INCLUDE_IVEC_MCAL_UART_H_
|
||||
//
|
||||
//#include "ti_msp_dl_config.h"
|
||||
//#include "../utils/utils.h"
|
||||
//#include <stdint.h>
|
||||
//
|
||||
//#define BUFFER_SIZE 100U
|
||||
//#define SIZE 100U
|
||||
//
|
||||
//xCoreStatus_t xMCAL_uart_init(UART_Regs *uart_inst,xUart_baud_t xBaud);
|
||||
//xCoreStatus_t xMCAL_uart_deinit(UART_Regs* uart_inst);
|
||||
//xCoreStatus_t xMCAL_uart_getdata(UART_Regs *uart_inst, uint8_t *u8rxdata, uint32_t u32rxbuffer_size);
|
||||
//xCoreStatus_t xMCAL_uart_transmit(UART_Regs *uart_inst, uint8_t *u8txdata,uint32_t u32size);
|
||||
//xCoreStatus_t xMCAL_uart_bufferReset(UART_Regs * uart_inst);
|
||||
//
|
||||
//#endif /* CORE_INCLUDE_IVEC_MCAL_UART_H_ */
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
/*
|
||||
* uart.h
|
||||
*
|
||||
* Created on: 22-Jan-2024
|
||||
* Author: saara
|
||||
*/
|
||||
|
||||
#ifndef CORE_INCLUDE_UART_H_
|
||||
#define CORE_INCLUDE_UART_H_
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endif /* CORE_INCLUDE_UART_H_ */
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
/*
|
||||
* gpio.c
|
||||
*
|
||||
* Created on: 22-Jan-2024
|
||||
* Author: saar
|
||||
*/
|
||||
#include <stdlib.h>
|
||||
#include "../Include/gpio.h"
|
||||
|
||||
static uint32_t GPIOInitCounter = 0;
|
||||
|
||||
int8_t mcu_gpioInitAllMcal(void)
|
||||
{
|
||||
if (GPIOInitCounter == 0)
|
||||
{
|
||||
GPIOInitCounter = 1;
|
||||
SYSCFG_DL_GPIO_init();
|
||||
return 0;
|
||||
}
|
||||
else
|
||||
return -1;
|
||||
}
|
||||
|
||||
int8_t mcu_gpioDeInitMcal(GPIO_Regs *GPIOx, uint32_t GPIO_Pin)
|
||||
{
|
||||
if (GPIOInitCounter == 1)
|
||||
{
|
||||
GPIOInitCounter = 0;
|
||||
(void) GPIO_Pin;
|
||||
DL_GPIO_disablePower(GPIOx);
|
||||
return 0;
|
||||
}
|
||||
else
|
||||
return -1;
|
||||
}
|
||||
void mcu_gpioWriteMcal(void* port, uint32_t pin, uint32_t state)
|
||||
{
|
||||
// DL_GPIO_writePinsVal(port, pin, state);
|
||||
if(state)
|
||||
{
|
||||
DL_GPIO_setPins(port, pin);
|
||||
}
|
||||
else
|
||||
{
|
||||
DL_GPIO_clearPins(port, pin);
|
||||
}
|
||||
}
|
||||
|
||||
uint16_t mcu_gpioReadMcal(void* port, uint32_t pin)
|
||||
{
|
||||
return (DL_GPIO_readPins(port, pin));
|
||||
}
|
||||
|
||||
void mcu_gpioToggleMcal(void *port, uint32_t pin)
|
||||
{
|
||||
DL_GPIO_togglePins(port, pin);
|
||||
}
|
||||
|
||||
void mcu_set_gpioDirectionMcal(uint32_t pincmIndex, bool direction)
|
||||
{
|
||||
|
||||
if(direction)
|
||||
{
|
||||
DL_GPIO_initDigitalOutput(pincmIndex);
|
||||
}
|
||||
else
|
||||
{
|
||||
DL_GPIO_initDigitalInput(pincmIndex);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,232 @@
|
|||
///* USER CODE BEGIN Header */
|
||||
///**
|
||||
// ******************************************************************************
|
||||
// * @file adc_dma.c
|
||||
// * @brief This file provides code for the configuration
|
||||
// * of the ADC instances.
|
||||
// * @data 1-feb-2024
|
||||
// * @Author Vecmocon Technology
|
||||
// ******************************************************************************
|
||||
// */
|
||||
///* USER CODE END Header */
|
||||
//
|
||||
///* Includes ------------------------------------------------------------------*/
|
||||
//#include <Core\Include\ivec_mcal_adc_dma.h>
|
||||
//
|
||||
//static volatile bool b_AdcInitFlag = 0; /*!< ADC initialization flag */
|
||||
//static volatile bool b_AdcStartFlag =0; /*!< ADC start - stop flag */
|
||||
//static volatile bool b_DmaFlag =0; /*!< DMA initialization flag */
|
||||
//static volatile bool b_DmaStart =0; /*!< DMA initialization flag */
|
||||
//
|
||||
///**
|
||||
// * @brief Configuration for ADC12_0 clock.
|
||||
// */
|
||||
//static const DL_ADC12_ClockConfig gADC12_1ClockConfig = {
|
||||
// .clockSel = DL_ADC12_CLOCK_SYSOSC,
|
||||
// .divideRatio = DL_ADC12_CLOCK_DIVIDE_1,
|
||||
// .freqRange = DL_ADC12_CLOCK_FREQ_RANGE_24_TO_32,
|
||||
//};
|
||||
//
|
||||
//
|
||||
///**
|
||||
// * @brief Configuration for DMA.
|
||||
// */
|
||||
//static const DL_DMA_Config gDMA_CH0Config = {
|
||||
// .transferMode = DL_DMA_SINGLE_TRANSFER_MODE,
|
||||
// .extendedMode = DL_DMA_NORMAL_MODE,
|
||||
// .destIncrement = DL_DMA_ADDR_UNCHANGED,
|
||||
// .srcIncrement = DL_DMA_ADDR_UNCHANGED,
|
||||
// .destWidth = DL_DMA_WIDTH_WORD,
|
||||
// .srcWidth = DL_DMA_WIDTH_WORD,
|
||||
// .trigger = ADC12_1_INST_DMA_TRIGGER,
|
||||
// .triggerType = DL_DMA_TRIGGER_TYPE_EXTERNAL,
|
||||
//};
|
||||
//
|
||||
//
|
||||
//
|
||||
///**
|
||||
// * @brief Initlization ADC with DMA
|
||||
// * @note Interruptions enabled in this function
|
||||
// * @param adc_inst ADC handle
|
||||
// * @retval IVEC MCAL status
|
||||
// */
|
||||
//IVEC_McalStatus_e xMCAL_AdcInit(ADC12_Regs* const adc_inst)
|
||||
//{
|
||||
// assert(adc_inst == ADC1);
|
||||
// if(b_AdcInitFlag == 0)
|
||||
// {
|
||||
// DL_ADC12_setClockConfig(ADC1, (DL_ADC12_ClockConfig *) &gADC12_1ClockConfig);
|
||||
// DL_ADC12_initSingleSample(ADC1, DL_ADC12_REPEAT_MODE_ENABLED, DL_ADC12_SAMPLING_SOURCE_AUTO, DL_ADC12_TRIG_SRC_SOFTWARE,DL_ADC12_SAMP_CONV_RES_12_BIT, DL_ADC12_SAMP_CONV_DATA_FORMAT_UNSIGNED);
|
||||
// DL_ADC12_configConversionMem(ADC1, DL_ADC12_MEM_IDX_0,
|
||||
// ADC12_MEMCTL_CHANSEL_CHAN_0, ADC12_MEMCTL_VRSEL_VDDA, ADC12_MEMCTL_STIME_SEL_SCOMP0, ADC12_MEMCTL_AVGEN_DISABLE,
|
||||
// ADC12_MEMCTL_BCSEN_DISABLE, ADC12_MEMCTL_TRIG_AUTO_NEXT, ADC12_MEMCTL_WINCOMP_DISABLE);
|
||||
// DL_ADC12_enableFIFO(ADC1);
|
||||
// DL_ADC12_setPowerDownMode(ADC1,ADC12_CTL0_PWRDN_MANUAL);
|
||||
// DL_ADC12_setSampleTime0(ADC1,dmaSAMPLETIME_u16);
|
||||
// DL_ADC12_enableDMA(ADC1);
|
||||
// DL_ADC12_setDMASamplesCnt(ADC1,dmaSAMPLECNT_u8);
|
||||
// DL_ADC12_enableDMATrigger(ADC1,(ADC12_DMA_TRIG_IMASK_MEMRESIFG7_SET));
|
||||
// DL_ADC12_clearInterruptStatus(ADC1,(ADC12_CPU_INT_IMASK_DMADONE_SET));
|
||||
// DL_ADC12_enableInterrupt(ADC1,(ADC12_CPU_INT_IMASK_DMADONE_SET));
|
||||
// DL_ADC12_enableConversions(ADC1);
|
||||
// b_AdcInitFlag =1;
|
||||
// return IVEC_MCAL_STATUS_SUCCESS;
|
||||
// }
|
||||
// else
|
||||
// return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
//}
|
||||
//
|
||||
//
|
||||
///**
|
||||
// * @brief De-Initialize the ADC peripheral to their default reset values
|
||||
// * @param adc_inst ADC handle
|
||||
// * @retval IVEC MCAL status
|
||||
// */
|
||||
//IVEC_McalStatus_e xMCAL_AdcDeInit(ADC12_Regs* const adc_inst)
|
||||
//{
|
||||
// assert(adc_inst == ADC1);
|
||||
// if(b_AdcInitFlag == 1 )
|
||||
// {
|
||||
// b_AdcInitFlag = 0;
|
||||
// return IVEC_MCAL_STATUS_SUCCESS;
|
||||
// }
|
||||
// else
|
||||
// return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
//}
|
||||
//
|
||||
///**
|
||||
// * @brief Enable ADC, start conversion of regular group.
|
||||
// * @note Interruptions enabled in this function: None.
|
||||
// * @param adc_inst ADC handle
|
||||
// * @retval IVEC MCAL status
|
||||
// */
|
||||
//IVEC_McalStatus_e xMCAL_AdcStart(ADC12_Regs* const adc_inst)
|
||||
//{
|
||||
// assert(adc_inst == ADC1);
|
||||
// if (b_AdcStartFlag == 0)
|
||||
// {
|
||||
// DL_ADC12_startConversion(adc_inst);
|
||||
// b_AdcStartFlag =1;
|
||||
// return IVEC_MCAL_STATUS_SUCCESS;
|
||||
// }
|
||||
// else
|
||||
// return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
//}
|
||||
//
|
||||
///**
|
||||
// * @brief Stop ADC conversion of regular group.
|
||||
// * @param adc_inst ADC handle
|
||||
// * @retval IVEC MCAL status
|
||||
// */
|
||||
//IVEC_McalStatus_e xMCAL_AdcStop(ADC12_Regs* const adc_inst)
|
||||
//{
|
||||
// assert(adc_inst == ADC1);
|
||||
// if (b_AdcStartFlag == 1)
|
||||
// {
|
||||
// DL_ADC12_stopConversion(adc_inst);
|
||||
// b_AdcStartFlag = 0;
|
||||
// return IVEC_MCAL_STATUS_SUCCESS;
|
||||
// }
|
||||
// else
|
||||
// return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
//}
|
||||
//
|
||||
//
|
||||
///**
|
||||
// * @brief Initlization of DMA for ADC
|
||||
// * @note Interruptions enabled in this function
|
||||
// * @param adc_inst ADC handle
|
||||
// * @retval IVEC MCAL status
|
||||
// */
|
||||
//IVEC_McalStatus_e xMCAL_DmaInit(void)
|
||||
//{
|
||||
// if (b_DmaFlag==0)
|
||||
// {
|
||||
// DL_DMA_initChannel(DMA, dmaCHID_u8 , (DL_DMA_Config *) &gDMA_CH0Config);
|
||||
// DL_DMA_clearInterruptStatus(DMA, DMA_CPU_INT_IMASK_DMACH0_SET);
|
||||
// DL_DMA_enableInterrupt(DMA, DMA_CPU_INT_IMASK_DMACH0_SET);
|
||||
// DL_DMA_clearInterruptStatus(DMA, DMA_CPU_INT_IMASK_PREIRQCH0_SET);
|
||||
// DL_DMA_Full_Ch_setEarlyInterruptThreshold(DMA, dmaCHID_u8, DL_DMA_EARLY_INTERRUPT_THRESHOLD_HALF);
|
||||
// DL_DMA_enableInterrupt(DMA, DMA_CPU_INT_IMASK_PREIRQCH0_SET);
|
||||
// b_DmaFlag=1;
|
||||
// return IVEC_MCAL_STATUS_SUCCESS;
|
||||
// }
|
||||
// else
|
||||
// return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
//
|
||||
//}
|
||||
//
|
||||
///**
|
||||
// * @brief De-Initialize the DMA to their default reset values
|
||||
// * @param adc_inst ADC handle
|
||||
// * @retval IVEC MCAL status
|
||||
// */
|
||||
//IVEC_McalStatus_e xMCAL_DmaDeInit(void)
|
||||
//{
|
||||
// if(b_DmaFlag == 1 )
|
||||
// {
|
||||
// b_DmaFlag=0;
|
||||
// return IVEC_MCAL_STATUS_SUCCESS;
|
||||
// }
|
||||
// else
|
||||
// return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
//}
|
||||
//
|
||||
///**
|
||||
// * @brief Enable DMA, start transfer from ADC to DMA of regular group.
|
||||
// * @note Interruptions enabled in this function: None.
|
||||
// * @param u8Channel use to pass the DMA channel
|
||||
// * @param p_u16adcDma use to get the ADC raw
|
||||
// * @retval IVEC MCAL status
|
||||
// */
|
||||
//IVEC_McalStatus_e xMCAL_DmaStart(const uint8_t u8channel ,uint16_t* p_u16adcDma)
|
||||
//{
|
||||
// assert(b_DmaStart == 0);
|
||||
// static uint32_t l_u32Data[2];
|
||||
// DL_DMA_setSrcAddr(DMA, dmaCHID_u8, (uint32_t)DL_ADC12_getFIFOAddress(ADC1));
|
||||
// DL_DMA_setDestAddr(DMA, dmaCHID_u8, (uint32_t)&l_u32Data[0]);
|
||||
// DL_DMA_setTransferSize(DMA, dmaCHID_u8, u8channel);
|
||||
// DL_DMA_enableChannel(DMA, dmaCHID_u8);
|
||||
// DL_ADC12_enableDMA(ADC1);
|
||||
// *p_u16adcDma = l_u32Data[0];
|
||||
// return IVEC_MCAL_STATUS_SUCCESS;
|
||||
//}
|
||||
//
|
||||
///**
|
||||
// * @brief Function use to set the DMA channel
|
||||
// * @param u8Channel use to pass the DMA channel
|
||||
// * @retval IVEC MCAL status
|
||||
// */
|
||||
//IVEC_McalStatus_e xMCAL_DmaStop(void)
|
||||
//{
|
||||
// if(b_DmaStart == 0)
|
||||
// {
|
||||
// b_DmaStart =1;
|
||||
// return IVEC_MCAL_STATUS_SUCCESS;
|
||||
// }
|
||||
// else
|
||||
// return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
//}
|
||||
//
|
||||
///**
|
||||
// * @brief ADC call back function
|
||||
// * @note Interruptions enabled in this function
|
||||
// */
|
||||
//void _prv_adccallback()
|
||||
//{
|
||||
// switch (DL_ADC12_getPendingInterrupt(ADC1))
|
||||
// {
|
||||
// case DL_ADC12_IIDX_DMA_DONE:
|
||||
// break;
|
||||
// default:
|
||||
// break;
|
||||
// }
|
||||
//}
|
||||
///**
|
||||
// * @brief ADC IRQ handler
|
||||
// */
|
||||
//void ADC1_IRQHandler()
|
||||
//{
|
||||
// _prv_adccallback();
|
||||
//}
|
||||
//
|
||||
|
|
@ -0,0 +1,399 @@
|
|||
/**
|
||||
* @file ivec_mcal_i2c.c
|
||||
* @author Akshat Dabas (akshat@vecmocon.com)
|
||||
* @brief This source file contains API and Private members for I2C Functionality
|
||||
* @version 0.1.0
|
||||
* @date 2024-Mar-27
|
||||
*
|
||||
* @copyright Copyright (c) 2024
|
||||
*
|
||||
*/
|
||||
|
||||
#include "../Core/Include/ivec_mcal_i2c.h"
|
||||
|
||||
|
||||
/*REQUIRED I2C CONFIGS*/
|
||||
|
||||
/*=======================================================================================PRIVATE_MEMBERS======================================================================================*/
|
||||
|
||||
static volatile bool b_I2C0_INIT_FLAG=0;
|
||||
|
||||
static volatile bool b_I2C1_INIT_FLAG=0;
|
||||
|
||||
static volatile uint8_t u8RxBuffer0[I2C_PACKETSIZE];
|
||||
|
||||
static volatile uint8_t u8RxBuffer1[I2C_PACKETSIZE];
|
||||
|
||||
static volatile int i32bufferIdx0=0;
|
||||
|
||||
static volatile int i32bufferIdx1=0;
|
||||
|
||||
volatile int i32TempCount=0;
|
||||
|
||||
volatile int global_len;
|
||||
|
||||
static const DL_I2C_ClockConfig gI2C_0ClockConfig = {
|
||||
.clockSel = DL_I2C_CLOCK_BUSCLK,
|
||||
.divideRatio = DL_I2C_CLOCK_DIVIDE_1,
|
||||
};
|
||||
|
||||
static volatile uint8_t u8GlobalPacket[8];
|
||||
|
||||
static volatile xI2cControllerStatus_t xStatus_i2c = I2C_STATUS_IDLE;
|
||||
/*____________________________________________________________________________________________________________________________________________________________________________________________*/
|
||||
|
||||
|
||||
/*=============================================================================================================================================================================================
|
||||
PRIVATE_DECLARATIONS
|
||||
==============================================================================================================================================================================================*/
|
||||
|
||||
void _prv_vI2C_Callback()
|
||||
{
|
||||
switch (DL_I2C_getPendingInterrupt(I2C0))
|
||||
{
|
||||
case DL_I2C_IIDX_CONTROLLER_RX_DONE:
|
||||
xStatus_i2c = I2C_STATUS_RX_COMPLETE;
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_TX_DONE:
|
||||
DL_I2C_disableInterrupt(I2C0, DL_I2C_INTERRUPT_CONTROLLER_TXFIFO_TRIGGER);
|
||||
xStatus_i2c = I2C_STATUS_TX_COMPLETE;
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_RXFIFO_TRIGGER:
|
||||
xStatus_i2c = I2C_STATUS_RX_INPROGRESS;
|
||||
/* Receive all bytes from target */
|
||||
while (DL_I2C_isControllerRXFIFOEmpty(I2C0) != true) {
|
||||
if (i32bufferIdx0 <global_len)
|
||||
{
|
||||
u8RxBuffer0[i32bufferIdx0++] = DL_I2C_receiveControllerData(I2C0);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Ignore and remove from FIFO if the buffer is full */
|
||||
DL_I2C_receiveControllerData(I2C0);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_TXFIFO_TRIGGER:
|
||||
|
||||
xStatus_i2c = I2C_STATUS_TX_INPROGRESS;
|
||||
/* Fill TX FIFO with next bytes to send */
|
||||
if (i32TempCount < global_len)
|
||||
{
|
||||
i32TempCount += DL_I2C_fillControllerTXFIFO(I2C0, &u8GlobalPacket[i32TempCount], global_len - i32TempCount);
|
||||
}
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_ARBITRATION_LOST:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_NACK: /* NACK interrupt if I2C Target is disconnected */
|
||||
if ((xStatus_i2c == I2C_STATUS_RX_STARTED) ||(xStatus_i2c == I2C_STATUS_TX_STARTED))
|
||||
{
|
||||
xStatus_i2c = I2C_STATUS_ERROR;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
switch (DL_I2C_getPendingInterrupt(I2C1))
|
||||
{
|
||||
case DL_I2C_IIDX_CONTROLLER_RX_DONE:
|
||||
xStatus_i2c = I2C_STATUS_RX_COMPLETE;
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_TX_DONE:
|
||||
DL_I2C_disableInterrupt(I2C1, DL_I2C_INTERRUPT_CONTROLLER_TXFIFO_TRIGGER);
|
||||
xStatus_i2c = I2C_STATUS_TX_COMPLETE;
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_RXFIFO_TRIGGER:
|
||||
xStatus_i2c = I2C_STATUS_RX_INPROGRESS;
|
||||
/* Receive all bytes from target */
|
||||
while (DL_I2C_isControllerRXFIFOEmpty(I2C1) != true) {
|
||||
if (i32bufferIdx0 <global_len)
|
||||
{
|
||||
u8RxBuffer0[i32bufferIdx0++] = DL_I2C_receiveControllerData(I2C1);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Ignore and remove from FIFO if the buffer is full */
|
||||
DL_I2C_receiveControllerData(I2C1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_TXFIFO_TRIGGER:
|
||||
|
||||
xStatus_i2c = I2C_STATUS_TX_INPROGRESS;
|
||||
/* Fill TX FIFO with next bytes to send */
|
||||
if (i32TempCount < global_len)
|
||||
{
|
||||
i32TempCount += DL_I2C_fillControllerTXFIFO(I2C1, &u8GlobalPacket[i32TempCount], global_len - i32TempCount);
|
||||
}
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_ARBITRATION_LOST:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_I2C_IIDX_CONTROLLER_NACK: /* NACK interrupt if I2C Target is disconnected */
|
||||
if ((xStatus_i2c == I2C_STATUS_RX_STARTED) ||(xStatus_i2c == I2C_STATUS_TX_STARTED))
|
||||
{
|
||||
xStatus_i2c = I2C_STATUS_ERROR;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void I2C0_IRQHandler()
|
||||
{
|
||||
_prv_vI2C_Callback();
|
||||
}
|
||||
|
||||
void I2C1_IRQHandler()
|
||||
{
|
||||
_prv_vI2C_Callback();
|
||||
}
|
||||
|
||||
/*____________________________________________________________________________________________________________________________________________________________________________________________*/
|
||||
|
||||
/*=============================================================================================================================================================================================
|
||||
API
|
||||
==============================================================================================================================================================================================*/
|
||||
|
||||
/**
|
||||
* @brief Function to Init I2C Peripheral
|
||||
*
|
||||
* @param I2C_inst Pointer to I2C config registers
|
||||
* @param baud enum to set I2C Baud rate
|
||||
* @return xCoreStatus_t
|
||||
*/
|
||||
xCoreStatus_t xMCAL_I2C_init(I2C_Regs *I2C_inst, xI2C_baud_t baud)
|
||||
{
|
||||
assert(!(b_I2C0_INIT_FLAG == 1 && b_I2C1_INIT_FLAG == 1));
|
||||
assert(I2C_inst == I2C0 || I2C_inst == I2C1);
|
||||
|
||||
DL_I2C_setClockConfig(I2C_inst, (DL_I2C_ClockConfig *) &gI2C_0ClockConfig);
|
||||
DL_I2C_disableAnalogGlitchFilter(I2C_inst);
|
||||
|
||||
/* Configure Controller Mode */
|
||||
DL_I2C_resetControllerTransfer(I2C_inst);
|
||||
|
||||
if(baud==BAUD_400Khz)
|
||||
{
|
||||
/* Set frequency to 400000 Hz*/
|
||||
DL_I2C_setTimerPeriod(I2C_inst, 9);
|
||||
}
|
||||
else if(baud==BAUD_100Khz)
|
||||
{
|
||||
/* Set frequency to 100000 Hz*/
|
||||
DL_I2C_setTimerPeriod(I2C_inst, 31);
|
||||
}
|
||||
DL_I2C_setControllerTXFIFOThreshold(I2C_inst, DL_I2C_TX_FIFO_LEVEL_EMPTY);
|
||||
DL_I2C_setControllerRXFIFOThreshold(I2C_inst, DL_I2C_RX_FIFO_LEVEL_BYTES_1);
|
||||
DL_I2C_enableControllerClockStretching(I2C_inst);
|
||||
|
||||
/* Configure Interrupts */
|
||||
DL_I2C_enableInterrupt(I2C_inst,
|
||||
DL_I2C_INTERRUPT_CONTROLLER_ARBITRATION_LOST |
|
||||
DL_I2C_INTERRUPT_CONTROLLER_NACK |
|
||||
DL_I2C_INTERRUPT_CONTROLLER_RXFIFO_TRIGGER |
|
||||
DL_I2C_INTERRUPT_CONTROLLER_RX_DONE |
|
||||
DL_I2C_INTERRUPT_CONTROLLER_TX_DONE);
|
||||
|
||||
/* Enable module */
|
||||
DL_I2C_enableController(I2C_inst);
|
||||
|
||||
|
||||
if(I2C_inst==I2C0)
|
||||
{
|
||||
NVIC_EnableIRQ(I2C0_INT_IRQn);
|
||||
b_I2C0_INIT_FLAG=1;
|
||||
}
|
||||
if(I2C_inst==I2C1)
|
||||
{
|
||||
NVIC_EnableIRQ(I2C1_INT_IRQn);
|
||||
b_I2C1_INIT_FLAG=1;
|
||||
}
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to write Packet from controller to Target device
|
||||
*
|
||||
* @param I2C_inst Pointer to I2C config Register
|
||||
* @param u8addr I2C target device address
|
||||
* @param u8TxPacket Data to be written to target device
|
||||
* @param len Number of bytes to be written to target device
|
||||
* @return xCoreStatus_t
|
||||
*/
|
||||
xCoreStatus_t xMCU_i2cWriteMcal(I2C_Regs *I2C_inst,uint8_t u8addr ,uint8_t *u8TxPacket, int len)
|
||||
{
|
||||
|
||||
|
||||
assert(!(b_I2C0_INIT_FLAG == 1 && b_I2C1_INIT_FLAG == 1));
|
||||
assert(I2C_inst == I2C0 || I2C_inst == I2C1);
|
||||
|
||||
global_len=len;
|
||||
if(len==1)
|
||||
{
|
||||
u8GlobalPacket[0]=*u8TxPacket;
|
||||
global_len=1;
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
for(uint8_t j=0;j<len;j++)
|
||||
{
|
||||
u8GlobalPacket[j]=u8TxPacket[j];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
i32TempCount = DL_I2C_fillControllerTXFIFO(I2C_inst, &u8GlobalPacket[0], global_len);
|
||||
/* Enable TXFIFO trigger interrupt if there are more bytes to send */
|
||||
if (i32TempCount < global_len)
|
||||
{
|
||||
DL_I2C_enableInterrupt(I2C_inst, DL_I2C_INTERRUPT_CONTROLLER_TXFIFO_TRIGGER);
|
||||
}
|
||||
else
|
||||
{
|
||||
DL_I2C_disableInterrupt(I2C_inst, DL_I2C_INTERRUPT_CONTROLLER_TXFIFO_TRIGGER);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Send the packet to the controller.
|
||||
* This function will send Start + Stop automatically.
|
||||
*
|
||||
*/
|
||||
xStatus_i2c = I2C_STATUS_TX_STARTED;
|
||||
while (!(DL_I2C_getControllerStatus(I2C_inst) & DL_I2C_CONTROLLER_STATUS_IDLE));
|
||||
DL_I2C_startControllerTransfer(I2C_inst, u8addr , DL_I2C_CONTROLLER_DIRECTION_TX, global_len);
|
||||
|
||||
/* Wait until the Controller sends all bytes */
|
||||
while ((xStatus_i2c != I2C_STATUS_TX_COMPLETE) && (xStatus_i2c != I2C_STATUS_ERROR));
|
||||
|
||||
while (DL_I2C_getControllerStatus(I2C_inst) & DL_I2C_CONTROLLER_STATUS_BUSY_BUS);
|
||||
|
||||
while (!(DL_I2C_getControllerStatus(I2C_inst) & DL_I2C_CONTROLLER_STATUS_IDLE));
|
||||
|
||||
memset((uint8_t *)&u8GlobalPacket[0], 0, sizeof(u8GlobalPacket));
|
||||
i32TempCount=0;
|
||||
global_len=0;
|
||||
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to Read Data from Target device
|
||||
*
|
||||
* @param I2C_inst Pointer to I2C config Register
|
||||
* @param u8addr I2C target device address
|
||||
* @param len Number of bytes to Read from target device
|
||||
* @return xCoreStatus_t
|
||||
*/
|
||||
xCoreStatus_t xMCU_i2cReadMcal(I2C_Regs *I2C_inst, uint8_t u8addr, int len)
|
||||
{
|
||||
assert(!(b_I2C0_INIT_FLAG == 1 && b_I2C1_INIT_FLAG == 1));
|
||||
assert(I2C_inst == I2C0 || I2C_inst == I2C1);
|
||||
|
||||
global_len=len;
|
||||
|
||||
xStatus_i2c = I2C_STATUS_RX_STARTED;
|
||||
DL_I2C_startControllerTransfer(I2C_inst, u8addr, DL_I2C_CONTROLLER_DIRECTION_RX, len);
|
||||
/* Wait for all bytes to be received in interrupt */
|
||||
while (xStatus_i2c != I2C_STATUS_RX_COMPLETE);
|
||||
|
||||
while (DL_I2C_getControllerStatus(I2C_inst) & DL_I2C_CONTROLLER_STATUS_BUSY_BUS);
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to ping I2C target device and check if its ready for communication
|
||||
*
|
||||
* @param I2C_inst pointer to I2C config Register
|
||||
* @param u8addr I2C Target Address
|
||||
* @return xCoreStatus_t
|
||||
*/
|
||||
xCoreStatus_t xMCU_i2cDevReadyMcal(I2C_Regs *I2C_inst,uint8_t u8addr)
|
||||
{
|
||||
assert(!(b_I2C0_INIT_FLAG == 1 && b_I2C1_INIT_FLAG == 1));
|
||||
assert(I2C_inst == I2C0 || I2C_inst == I2C1);
|
||||
|
||||
uint8_t u8DummyData=0;
|
||||
|
||||
xMCU_i2cWriteMcal(I2C_inst, u8addr, &u8DummyData, 1);
|
||||
|
||||
if(xStatus_i2c!=I2C_STATUS_TX_COMPLETE)
|
||||
{
|
||||
return STATUS_ERROR;
|
||||
}
|
||||
else
|
||||
{
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to store read data from target into user array from static buffer in IRQ Handler
|
||||
*
|
||||
* @param I2C_inst pointer to I2C config Register
|
||||
* @param u8RxData array to store read data from target
|
||||
* @param len number of bytes to be read from buffer
|
||||
* @return xCoreStatus_t
|
||||
*/
|
||||
xCoreStatus_t xMcal_I2C_getData(I2C_Regs *I2C_inst, uint8_t *u8RxData, uint8_t len)
|
||||
{
|
||||
assert(!(b_I2C0_INIT_FLAG == 1 && b_I2C1_INIT_FLAG == 1));
|
||||
assert(I2C_inst == I2C0 || I2C_inst == I2C1);
|
||||
|
||||
if(I2C_inst==I2C0)
|
||||
{
|
||||
for(uint8_t j=0;j<len;j++)
|
||||
{
|
||||
u8RxData[j]=u8RxBuffer0[j];
|
||||
}
|
||||
i32bufferIdx0=0;
|
||||
memset((uint8_t *)&u8RxBuffer0[0], 0, sizeof(u8RxBuffer0));
|
||||
}
|
||||
|
||||
else if(I2C_inst==I2C1)
|
||||
{
|
||||
for(uint8_t j=0;j<len;j++)
|
||||
{
|
||||
u8RxData[j]=u8RxBuffer1[j];
|
||||
}
|
||||
i32bufferIdx1=0;
|
||||
memset((uint8_t *)&u8RxBuffer1[0], 0, sizeof(u8RxBuffer1));
|
||||
}
|
||||
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
xCoreStatus_t xMCAL_I2C_deinit(I2C_Regs *I2C_inst)
|
||||
{
|
||||
assert(!(b_I2C0_INIT_FLAG == 1 && b_I2C1_INIT_FLAG == 1));
|
||||
assert(I2C_inst == I2C0 || I2C_inst == I2C1);
|
||||
|
||||
if(I2C_inst==I2C0)
|
||||
{
|
||||
NVIC_DisableIRQ(I2C0_INT_IRQn);
|
||||
DL_I2C_disablePower(I2C_inst);
|
||||
b_I2C0_INIT_FLAG=0;
|
||||
}
|
||||
else
|
||||
{
|
||||
NVIC_DisableIRQ(I2C1_INT_IRQn);
|
||||
DL_I2C_disablePower(I2C_inst);
|
||||
b_I2C1_INIT_FLAG=0;
|
||||
}
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
|
||||
}
|
||||
|
||||
/*____________________________________________________________________________________________________________________________________________________________________________________________*/
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,529 @@
|
|||
/**
|
||||
******************************************************************************
|
||||
* @file ivec_mcal_mcan.c
|
||||
* @brief This file provides APIs for MCAN peripheral.
|
||||
* @date 15-feb-2024
|
||||
* @Author Vecmocon Technology
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#include <..\Core\Include\ivec_mcal_mcan.h>
|
||||
#include "string.h"
|
||||
|
||||
static volatile bool b_MCAN_InitFlag = 0; /*!< CAN initialization flag */
|
||||
static volatile bool b_ServiceInt=true;
|
||||
static volatile uint32_t u32InterruptLine1Status;
|
||||
static char u8ErrorInterruptStatus[50];
|
||||
static volatile DL_MCAN_RxFIFOStatus rxFS;
|
||||
static DL_MCAN_RxBufElement TempRxMsg;
|
||||
static uint32_t id;
|
||||
extern uint16_t idx;
|
||||
uint32_t IntrStatus;
|
||||
static volatile uint8_t u8_MCAN_StatusFlag = IVEC_MCAL_STATUS_ERROR;
|
||||
|
||||
|
||||
/*REQUIRED MCAN CONFIGS*/
|
||||
|
||||
/*=======================================================================================PRIVATE_MEMBERS======================================================================================*/
|
||||
|
||||
static const DL_MCAN_ClockConfig gMCAN0ClockConf = {
|
||||
.clockSel = DL_MCAN_FCLK_SYSPLLCLK1,////DL_MCAN_FCLK_SYSPLLCLK1,DL_MCAN_FCLK_HFCLK,
|
||||
.divider = DL_MCAN_FCLK_DIV_1,
|
||||
};
|
||||
|
||||
static const DL_MCAN_InitParams gMCAN0InitParams= {
|
||||
|
||||
/* Initialize MCAN Init parameters. */
|
||||
.fdMode = false,
|
||||
.brsEnable = false,
|
||||
.txpEnable = false,
|
||||
.efbi = false,
|
||||
.pxhddisable = false,
|
||||
.darEnable = false,
|
||||
.wkupReqEnable = false,
|
||||
.autoWkupEnable = false,
|
||||
.emulationEnable = true,
|
||||
.tdcEnable = true,
|
||||
.wdcPreload = 255,
|
||||
|
||||
/* Transmitter Delay Compensation parameters. */
|
||||
.tdcConfig.tdcf = 10,
|
||||
.tdcConfig.tdco = 6,
|
||||
};
|
||||
|
||||
static const DL_MCAN_ConfigParams gMCAN0ConfigParams={
|
||||
/* Initialize MCAN Config parameters. */
|
||||
.monEnable = false,
|
||||
.asmEnable = false,
|
||||
.tsPrescalar = 15,
|
||||
.tsSelect = 0,
|
||||
.timeoutSelect = DL_MCAN_TIMEOUT_SELECT_CONT,
|
||||
.timeoutPreload = 65535,
|
||||
.timeoutCntEnable = false,
|
||||
.filterConfig.rrfs = true,
|
||||
.filterConfig.rrfe = true,
|
||||
.filterConfig.anfe = 1,
|
||||
.filterConfig.anfs = 1,
|
||||
};
|
||||
|
||||
static const DL_MCAN_MsgRAMConfigParams gMCAN0MsgRAMConfigParams ={
|
||||
|
||||
/* Standard ID Filter List Start Address. */
|
||||
.flssa = 0 ,
|
||||
/* List Size: Standard ID. */
|
||||
.lss = 1 ,
|
||||
/* Extended ID Filter List Start Address. */
|
||||
.flesa = 48 ,
|
||||
/* List Size: Extended ID. */
|
||||
.lse = 1 ,
|
||||
/* Tx Buffers Start Address. */
|
||||
.txStartAddr = 10 ,
|
||||
/* Number of Dedicated Transmit Buffers. */
|
||||
.txBufNum = 10 ,
|
||||
.txFIFOSize = 10,
|
||||
/* Tx Buffer Element Size. */
|
||||
.txBufMode = 0,
|
||||
.txBufElemSize = DL_MCAN_ELEM_SIZE_8BYTES,
|
||||
/* Tx Event FIFO Start Address. */
|
||||
.txEventFIFOStartAddr = 640 ,
|
||||
/* Event FIFO Size. */
|
||||
.txEventFIFOSize = 10 ,
|
||||
/* Level for Tx Event FIFO watermark interrupt. */
|
||||
.txEventFIFOWaterMark = 0,
|
||||
/* Rx FIFO0 Start Address. */
|
||||
.rxFIFO0startAddr = 170 ,
|
||||
/* Number of Rx FIFO elements. */
|
||||
.rxFIFO0size = 10 ,
|
||||
/* Rx FIFO0 Watermark. */
|
||||
.rxFIFO0waterMark = 0,
|
||||
.rxFIFO0OpMode = 0,
|
||||
/* Rx FIFO1 Start Address. */
|
||||
.rxFIFO1startAddr = 190 ,
|
||||
/* Number of Rx FIFO elements. */
|
||||
.rxFIFO1size = 10 ,
|
||||
/* Level for Rx FIFO 1 watermark interrupt. */
|
||||
.rxFIFO1waterMark = 10,
|
||||
/* FIFO blocking mode. */
|
||||
.rxFIFO1OpMode = 0,
|
||||
/* Rx Buffer Start Address. */
|
||||
.rxBufStartAddr = 208 ,
|
||||
/* Rx Buffer Element Size. */
|
||||
.rxBufElemSize = DL_MCAN_ELEM_SIZE_8BYTES,
|
||||
/* Rx FIFO0 Element Size. */
|
||||
.rxFIFO0ElemSize = DL_MCAN_ELEM_SIZE_8BYTES,
|
||||
/* Rx FIFO1 Element Size. */
|
||||
.rxFIFO1ElemSize = DL_MCAN_ELEM_SIZE_8BYTES,
|
||||
};
|
||||
|
||||
static const DL_MCAN_StdMsgIDFilterElement gMCAN0StdFiltelem = {
|
||||
.sfec = 0x1,
|
||||
.sft = 0x0,
|
||||
.sfid1 = 0,
|
||||
.sfid2 = 2047,
|
||||
};
|
||||
|
||||
|
||||
static const DL_MCAN_BitTimingParams gMCAN0BitTimes_500 = {
|
||||
/* Arbitration Baud Rate Pre-scaler. */
|
||||
.nomRatePrescalar = 0,
|
||||
/* Arbitration Time segment before sample point. */
|
||||
.nomTimeSeg1 = 62,
|
||||
/* Arbitration Time segment after sample point. */
|
||||
.nomTimeSeg2 = 15,
|
||||
/* Arbitration (Re)Synchronization Jump Width Range. */
|
||||
.nomSynchJumpWidth = 15,
|
||||
/* Data Baud Rate Pre-scaler. */
|
||||
.dataRatePrescalar = 0,
|
||||
/* Data Time segment before sample point. */
|
||||
.dataTimeSeg1 = 0,
|
||||
/* Data Time segment after sample point. */
|
||||
.dataTimeSeg2 = 0,
|
||||
/* Data (Re)Synchronization Jump Width. */
|
||||
.dataSynchJumpWidth = 0,
|
||||
};
|
||||
|
||||
static const DL_MCAN_BitTimingParams gMCAN0BitTimes_250 = {
|
||||
/* Arbitration Baud Rate Pre-scaler. */
|
||||
.nomRatePrescalar = 0,
|
||||
/* Arbitration Time segment before sample point. */
|
||||
.nomTimeSeg1 = 138,
|
||||
/* Arbitration Time segment after sample point. */
|
||||
.nomTimeSeg2 = 19,
|
||||
/* Arbitration (Re)Synchronization Jump Width Range. */
|
||||
.nomSynchJumpWidth = 19,
|
||||
/* Data Baud Rate Pre-scaler. */
|
||||
.dataRatePrescalar = 0,
|
||||
/* Data Time segment before sample point. */
|
||||
.dataTimeSeg1 = 0,
|
||||
/* Data Time segment after sample point. */
|
||||
.dataTimeSeg2 = 0,
|
||||
/* Data (Re)Synchronization Jump Width. */
|
||||
.dataSynchJumpWidth = 0,
|
||||
};
|
||||
|
||||
|
||||
|
||||
/*____________________________________________________________________________________________________________________________________________________________________________________________*/
|
||||
|
||||
|
||||
/*=============================================================================================================================================================================================
|
||||
PRIVATE_DECLARATIONS
|
||||
==============================================================================================================================================================================================*/
|
||||
|
||||
/**
|
||||
* @brief Static Function to store RX data in a static buffer
|
||||
* @retval void
|
||||
*/
|
||||
//static void _prv_vGetRxMsg(DL_MCAN_RxBufElement *rxMsg,uint8_t *RxData,int DLC)
|
||||
//{
|
||||
// for (int i =0 ; i < DLC ; i++)
|
||||
// {
|
||||
// RxData[i] = rxMsg->data[i];
|
||||
// }
|
||||
//
|
||||
//}
|
||||
static void _prv_vGetRxMsg(DL_MCAN_RxBufElement *rxMsg,uint8_t *RxData,int DLC)
|
||||
{
|
||||
|
||||
id = ((rxMsg->id & (uint32_t) 0x1FFC0000) >> (uint32_t) 18);
|
||||
|
||||
switch (id) {
|
||||
case 0x5:
|
||||
|
||||
*RxData = rxMsg->data[0];
|
||||
idx = (rxMsg->data[0] + 1) % 256;
|
||||
|
||||
break;
|
||||
default:
|
||||
/* Don't do anything */
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Private Function working as an Error Handler in IRQ
|
||||
* @retval void
|
||||
*/
|
||||
static void ErrorHandler()
|
||||
{
|
||||
switch(DL_MCAN_getIntrStatus(CANFD0))
|
||||
{
|
||||
case MCAN_IR_PED_MASK:
|
||||
strcpy(u8ErrorInterruptStatus, "Protocol Error in Data Phase!");
|
||||
__asm("nop");
|
||||
break;
|
||||
case MCAN_IR_PEA_MASK:
|
||||
strcpy(u8ErrorInterruptStatus, "Protocol Error in Arbitration Phase!");
|
||||
__asm("nop");
|
||||
break;
|
||||
case MCAN_IR_BO_MASK:
|
||||
strcpy(u8ErrorInterruptStatus, "CAN BUS OFF!");
|
||||
DL_MCAN_reset(CANFD0);
|
||||
__asm("nop");
|
||||
break;
|
||||
case MCAN_IR_EW_MASK:
|
||||
strcpy(u8ErrorInterruptStatus, "Warning Status Interrupt generated!");
|
||||
__asm("nop");
|
||||
break;
|
||||
case MCAN_IR_EP_MASK:
|
||||
strcpy(u8ErrorInterruptStatus, "Error Passive Interrupt generated!");
|
||||
__asm("nop");
|
||||
break;
|
||||
case MCAN_IR_ELO_MASK:
|
||||
strcpy(u8ErrorInterruptStatus, "Error Logging Overflow!");
|
||||
__asm("nop");
|
||||
break;
|
||||
case MCAN_IR_BEU_MASK:
|
||||
strcpy(u8ErrorInterruptStatus, "Bit Error Uncorrected!");
|
||||
__asm("nop");
|
||||
break;
|
||||
case MCAN_IR_TOO_MASK:
|
||||
strcpy(u8ErrorInterruptStatus, "Timeout Occured!");
|
||||
__asm("nop");
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Default Interrupt Handler for MCAN
|
||||
*
|
||||
*/
|
||||
void CANFD0_IRQHandler(void)
|
||||
{
|
||||
ErrorHandler();
|
||||
|
||||
switch (DL_MCAN_getPendingInterrupt(CANFD0)) {
|
||||
case DL_MCAN_IIDX_LINE1:
|
||||
/* Check MCAN interrupts fired during TX/RX of CAN package */
|
||||
u32InterruptLine1Status |= DL_MCAN_getIntrStatus(CANFD0);
|
||||
DL_MCAN_clearIntrStatus(CANFD0, u32InterruptLine1Status,DL_MCAN_INTR_SRC_MCAN_LINE_1);
|
||||
b_ServiceInt = true;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//void CANFD0_IRQHandler(void)
|
||||
//{
|
||||
// IntrStatus = DL_MCAN_getIntrStatus(CANFD0);
|
||||
//
|
||||
// if (IntrStatus & DL_MCAN_INTERRUPT_TC){
|
||||
// __asm("nop");
|
||||
// DL_MCAN_clearIntrStatus(CANFD0, IntrStatus,DL_MCAN_INTR_SRC_MCAN_LINE_1);
|
||||
//
|
||||
// b_ServiceInt = true;
|
||||
// u8_MCAN_StatusFlag = IVEC_MCAL_STATUS_SUCCESS;
|
||||
// __asm("nop");
|
||||
// }
|
||||
// else if(IntrStatus & DL_MCAN_INTERRUPT_RF0N)
|
||||
// {
|
||||
// b_ServiceInt = false;
|
||||
// rxFS.fillLvl = 0;
|
||||
// rxFS.num = DL_MCAN_RX_FIFO_NUM_0;
|
||||
//
|
||||
// while ((rxFS.fillLvl) == 0)
|
||||
// {
|
||||
// DL_MCAN_getRxFIFOStatus(CANFD0, &rxFS);
|
||||
// }
|
||||
//
|
||||
// DL_MCAN_readMsgRam(CANFD0, DL_MCAN_MEM_TYPE_FIFO, 0, rxFS.num, &TempRxMsg);
|
||||
// DL_MCAN_writeRxFIFOAck(CANFD0, rxFS.num, rxFS.getIdx);
|
||||
//
|
||||
// xCanIdType_t idType = ERROR;
|
||||
// if (TempRxMsg.id >= 0 && TempRxMsg.id <= 0x7FF)
|
||||
// {
|
||||
// idType = STD_ID;
|
||||
// } else if (TempRxMsg.id <= 0x1FFFFFFF)
|
||||
// {
|
||||
// idType = EXT_ID;
|
||||
// }
|
||||
//
|
||||
// uint32_t idx = ((TempRxMsg.id & (uint32_t) 0x1FFC0000) >> (uint32_t) 18);
|
||||
//
|
||||
// if(idx)
|
||||
// {
|
||||
// for(uint8_t inx = 0; inx <= 7; inx++)
|
||||
// {
|
||||
// g_CanData[inx] = TempRxMsg.data[inx];
|
||||
// }
|
||||
// mcu_FDCAN_RxFifo_Callback(idx, &g_CanData[0], TempRxMsg.dlc);
|
||||
// }
|
||||
//
|
||||
// b_ServiceInt = true;
|
||||
// DL_MCAN_clearIntrStatus(CANFD0, IntrStatus,DL_MCAN_INTR_SRC_MCAN_LINE_1);
|
||||
// }
|
||||
// else{
|
||||
// DL_MCAN_getIntrStatus(CANFD0);
|
||||
// DL_MCAN_clearIntrStatus(CANFD0, IntrStatus,DL_MCAN_INTR_SRC_MCAN_LINE_1);
|
||||
// }
|
||||
// ErrorHandler();
|
||||
//}
|
||||
|
||||
/*=============================================================================================================================================================================================
|
||||
API
|
||||
==============================================================================================================================================================================================*/
|
||||
|
||||
/**
|
||||
* @brief Function to initialize MCAN Peripheral
|
||||
* @note Interrupts are enabled in this function itself
|
||||
* @param MCAN Pointer to the register overlay for the peripheral
|
||||
* @param BAUD Param to set Baud rate of MCAN
|
||||
* @retval IVEC_McalStatus_e
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_MCANInit(MCAN_Regs* MCAN, xCAN_baud_t BAUD)
|
||||
{
|
||||
assert(MCAN == CANFD0);
|
||||
assert(BAUD == BAUD_500 || BAUD == BAUD_250);
|
||||
assert(b_MCAN_InitFlag == 0);
|
||||
|
||||
DL_MCAN_RevisionId revid_MCAN0;
|
||||
|
||||
DL_MCAN_enableModuleClock(MCAN);
|
||||
|
||||
DL_MCAN_setClockConfig(MCAN, (DL_MCAN_ClockConfig *) &gMCAN0ClockConf);
|
||||
|
||||
/* Get MCANSS Revision ID. */
|
||||
DL_MCAN_getRevisionId(MCAN, &revid_MCAN0);
|
||||
|
||||
/* Wait for Memory initialization to be completed. */
|
||||
while(false == DL_MCAN_isMemInitDone(MCAN));
|
||||
|
||||
/* Put MCAN in SW initialization mode. */
|
||||
|
||||
DL_MCAN_setOpMode(MCAN, DL_MCAN_OPERATION_MODE_SW_INIT);
|
||||
|
||||
/* Wait till MCAN is not initialized. */
|
||||
while (DL_MCAN_OPERATION_MODE_SW_INIT != DL_MCAN_getOpMode(MCAN));
|
||||
|
||||
/* Initialize MCAN module. */
|
||||
DL_MCAN_init(MCAN, (DL_MCAN_InitParams *) &gMCAN0InitParams);
|
||||
|
||||
/* Configure MCAN module. */
|
||||
DL_MCAN_config(MCAN, (DL_MCAN_ConfigParams*) &gMCAN0ConfigParams);
|
||||
|
||||
/* Configure Bit timings. */
|
||||
if(BAUD==BAUD_500)
|
||||
{
|
||||
|
||||
DL_MCAN_setBitTime(MCAN, (DL_MCAN_BitTimingParams*) &gMCAN0BitTimes_500);
|
||||
}
|
||||
else if(BAUD==BAUD_250)
|
||||
{
|
||||
DL_MCAN_setBitTime(MCAN, (DL_MCAN_BitTimingParams*) &gMCAN0BitTimes_250);
|
||||
}
|
||||
|
||||
/* Configure Message RAM Sections */
|
||||
DL_MCAN_msgRAMConfig(MCAN, (DL_MCAN_MsgRAMConfigParams*) &gMCAN0MsgRAMConfigParams);
|
||||
|
||||
/* Configure Standard ID filter element */
|
||||
DL_MCAN_addStdMsgIDFilter(MCAN, 0U, (DL_MCAN_StdMsgIDFilterElement *) &gMCAN0StdFiltelem);
|
||||
|
||||
|
||||
/* Set Extended ID Mask. */
|
||||
DL_MCAN_setExtIDAndMask(MCAN, (0x1FFFFFFFU) );
|
||||
|
||||
/* Take MCAN out of the SW initialization mode */
|
||||
DL_MCAN_setOpMode(MCAN, DL_MCAN_OPERATION_MODE_NORMAL);
|
||||
|
||||
while (DL_MCAN_OPERATION_MODE_NORMAL != DL_MCAN_getOpMode(MCAN));
|
||||
|
||||
/* Enable MCAN mopdule Interrupts */
|
||||
DL_MCAN_enableIntr(MCAN, (DL_MCAN_INTERRUPT_BEU | \
|
||||
DL_MCAN_INTERRUPT_BO | \
|
||||
DL_MCAN_INTERRUPT_ELO | \
|
||||
DL_MCAN_INTERRUPT_EP | \
|
||||
DL_MCAN_INTERRUPT_EW | \
|
||||
DL_MCAN_INTERRUPT_PEA | \
|
||||
DL_MCAN_INTERRUPT_PED | \
|
||||
DL_MCAN_INTERRUPT_RF0N | \
|
||||
DL_MCAN_INTERRUPT_TC | \
|
||||
DL_MCAN_INTERRUPT_TOO), 1U);
|
||||
|
||||
DL_MCAN_selectIntrLine(MCAN, DL_MCAN_INTR_MASK_ALL, DL_MCAN_INTR_LINE_NUM_1);
|
||||
DL_MCAN_enableIntrLine(MCAN, DL_MCAN_INTR_LINE_NUM_1, 1U);
|
||||
|
||||
/* Enable MSPM0 MCAN interrupt */
|
||||
DL_MCAN_clearInterruptStatus(MCAN,(DL_MCAN_MSP_INTERRUPT_LINE1));
|
||||
DL_MCAN_enableInterrupt(MCAN,(DL_MCAN_MSP_INTERRUPT_LINE1));
|
||||
NVIC_EnableIRQ(CANFD0_INT_IRQn);
|
||||
b_MCAN_InitFlag = 1;
|
||||
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Function to De-Initialize MCAN peripheral
|
||||
* @param MCAN Pointer to the register overlay for the peripheral
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_MCANDeInit(MCAN_Regs* MCAN)
|
||||
{
|
||||
assert(MCAN == CANFD0);
|
||||
assert(b_MCAN_InitFlag != 0);
|
||||
|
||||
DL_MCAN_disablePower(MCAN);
|
||||
b_MCAN_InitFlag = 0;
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to Transmit CAN message
|
||||
* @param MCAN Pointer to the register overlay for the peripheral
|
||||
* @param TxMsg Message Object.
|
||||
* @param TxData Array of Data to be transmitted
|
||||
* @param BufNum Tx Buffer Number
|
||||
* @param Bytes Number of bytes to be transmitted
|
||||
* @retval IVEC_McalStatus_e
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_MCANTx(MCAN_Regs *MCAN, DL_MCAN_TxBufElement *TxMsg ,uint16_t *TxData, uint32_t BufNum, int Bytes)
|
||||
{
|
||||
assert(MCAN == CANFD0);
|
||||
assert(b_MCAN_InitFlag != 0);
|
||||
|
||||
for(int i=0;i<Bytes;i++)
|
||||
{
|
||||
TxMsg->data[i] = TxData[i];
|
||||
}
|
||||
|
||||
DL_MCAN_writeMsgRam(MCAN, DL_MCAN_MEM_TYPE_BUF, BufNum , TxMsg);
|
||||
DL_MCAN_TXBufAddReq(MCAN, BufNum);
|
||||
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to Receive CAN message
|
||||
* @param MCAN Pointer to the register overlay for the peripheral
|
||||
* @param RxMsg Message Object.
|
||||
* @param FifoNum Fifo Number to be used
|
||||
* @param RxData Array where received data is to be stored
|
||||
* @param DLC length of received data
|
||||
* @retval IVEC_McalStatus_e
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_MCANRx(MCAN_Regs *MCAN, DL_MCAN_RxBufElement *RxMsg ,uint32_t FifoNum,uint8_t *RxData,int DLC)
|
||||
{
|
||||
assert(MCAN == CANFD0);
|
||||
assert(b_MCAN_InitFlag != 0);
|
||||
|
||||
while (false == b_ServiceInt)
|
||||
{
|
||||
__WFE();//__asm("nop");
|
||||
}
|
||||
|
||||
b_ServiceInt = false;
|
||||
rxFS.fillLvl = 0;
|
||||
|
||||
if ((u32InterruptLine1Status & MCAN_IR_RF0N_MASK) == MCAN_IR_RF0N_MASK)
|
||||
{
|
||||
rxFS.num = DL_MCAN_RX_FIFO_NUM_0;
|
||||
while ((rxFS.fillLvl) == 0)
|
||||
{
|
||||
DL_MCAN_getRxFIFOStatus(MCAN, &rxFS);
|
||||
}
|
||||
DL_MCAN_readMsgRam(MCAN, DL_MCAN_MEM_TYPE_FIFO, FifoNum, rxFS.num, RxMsg);
|
||||
DL_MCAN_writeRxFIFOAck(MCAN, rxFS.num, rxFS.getIdx);
|
||||
_prv_vGetRxMsg(RxMsg,RxData,DLC);
|
||||
u32InterruptLine1Status &= ~(MCAN_IR_RF0N_MASK);
|
||||
}
|
||||
|
||||
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to check current Error Status of MCAN peripheral
|
||||
* @param ErrorStatus Pointer to array where current status will be stored
|
||||
* @retval IVEC_McalStatus_e
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_getMCAN_ErrorStatus(char *ErrorStatus)
|
||||
{
|
||||
assert(b_MCAN_InitFlag != 0);
|
||||
|
||||
strcpy(ErrorStatus,u8ErrorInterruptStatus);
|
||||
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to check Interrupt Line1 Status of MCAN peripheral
|
||||
* @param Interrupt_Status Pointer to variable where current status will be stored
|
||||
* @retval IVEC_McalStatus_e
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_getMCAN_InterruptLine1Status(uint32_t *Interrupt_Status)
|
||||
{
|
||||
assert(b_MCAN_InitFlag != 0);
|
||||
|
||||
*Interrupt_Status=u32InterruptLine1Status;
|
||||
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/*____________________________________________________________________________________________________________________________________________________________________________________________*/
|
||||
|
|
@ -0,0 +1,317 @@
|
|||
/**
|
||||
* @file ivec_mcal_spi.c
|
||||
* @author Akshat Dabas (akshat@vecmocon.com)
|
||||
* @brief This source file contains API and Private members for SPI Functionality
|
||||
* @version 0.1.0
|
||||
* @date 2024-Mar-12
|
||||
*
|
||||
* @copyright Copyright (c) 2024
|
||||
*
|
||||
*/
|
||||
|
||||
#include "../Core/Include/ivec_mcal_spi.h"
|
||||
|
||||
/*REQUIRED SPI CONFIGS*/
|
||||
|
||||
/*=======================================================================================PRIVATE_MEMBERS======================================================================================*/
|
||||
|
||||
static volatile uint8_t b_SPI0_INIT_FLAG=0;
|
||||
|
||||
static volatile uint8_t b_SPI1_INIT_FLAG=0;
|
||||
|
||||
static volatile int i32bufferIdx0=0;
|
||||
|
||||
static volatile int i32bufferIdx1=0;
|
||||
|
||||
static volatile uint8_t u8rxbuffer0[SPI_PKT_SIZE], u8rxbuffer1[SPI_PKT_SIZE];
|
||||
|
||||
static const DL_SPI_Config gSPI_0_config = {
|
||||
.mode = DL_SPI_MODE_CONTROLLER,
|
||||
.frameFormat = DL_SPI_FRAME_FORMAT_MOTO3_POL1_PHA1,
|
||||
.parity = DL_SPI_PARITY_NONE,
|
||||
.dataSize = DL_SPI_DATA_SIZE_8,
|
||||
.bitOrder = DL_SPI_BIT_ORDER_MSB_FIRST,
|
||||
};
|
||||
|
||||
static const DL_SPI_ClockConfig gSPI_0_clockConfig = {
|
||||
.clockSel = DL_SPI_CLOCK_BUSCLK,
|
||||
.divideRatio = DL_SPI_CLOCK_DIVIDE_RATIO_1
|
||||
};
|
||||
|
||||
/*____________________________________________________________________________________________________________________________________________________________________________________________*/
|
||||
|
||||
|
||||
/*=============================================================================================================================================================================================
|
||||
PRIVATE_DECLARATIONS
|
||||
==============================================================================================================================================================================================*/
|
||||
|
||||
/**
|
||||
* @brief Receive in static buffer Function for UART
|
||||
*
|
||||
* @param uart_inst
|
||||
* @return uint8_t
|
||||
*/
|
||||
uint8_t _prv_u8MCAL_spi_receive(SPI_Regs *SPI_inst)
|
||||
{
|
||||
uint8_t temp;
|
||||
temp=DL_SPI_receiveData8(SPI_inst);
|
||||
return temp;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to read byte by byte in IRQ Handler
|
||||
*
|
||||
*/
|
||||
void _prv_vspicallback()
|
||||
{
|
||||
switch (DL_SPI_getPendingInterrupt(SPI0))
|
||||
{
|
||||
case DL_SPI_IIDX_RX:
|
||||
|
||||
if(i32bufferIdx0>SPI_PKT_SIZE-1)
|
||||
{
|
||||
i32bufferIdx0=0;
|
||||
}
|
||||
|
||||
u8rxbuffer0[i32bufferIdx0]=_prv_u8MCAL_spi_receive(SPI0);
|
||||
i32bufferIdx0++;
|
||||
|
||||
break;
|
||||
case DL_SPI_IIDX_RX_TIMEOUT:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_SPI_IIDX_RX_FULL:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_SPI_IIDX_TX_UNDERFLOW:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_SPI_IIDX_PARITY_ERROR:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_SPI_IIDX_RX_OVERFLOW:
|
||||
__asm("nop");
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
switch (DL_SPI_getPendingInterrupt(SPI1))
|
||||
{
|
||||
case DL_SPI_IIDX_RX:
|
||||
|
||||
if(i32bufferIdx1>SPI_PKT_SIZE-1)
|
||||
{
|
||||
i32bufferIdx1=0;
|
||||
}
|
||||
|
||||
u8rxbuffer1[i32bufferIdx1]=_prv_u8MCAL_spi_receive(SPI1);
|
||||
i32bufferIdx1++;
|
||||
|
||||
break;
|
||||
case DL_SPI_IIDX_RX_TIMEOUT:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_SPI_IIDX_RX_FULL:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_SPI_IIDX_TX_UNDERFLOW:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_SPI_IIDX_PARITY_ERROR:
|
||||
__asm("nop");
|
||||
break;
|
||||
case DL_SPI_IIDX_RX_OVERFLOW:
|
||||
__asm("nop");
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Default Interrupt Callback for SPI_0
|
||||
*
|
||||
*/
|
||||
void SPI0_IRQHandler(void)
|
||||
{
|
||||
_prv_vspicallback();
|
||||
|
||||
}
|
||||
|
||||
void SPI1_IRQHandler(void)
|
||||
{
|
||||
_prv_vspicallback();
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*=============================================================================================================================================================================================
|
||||
API
|
||||
==============================================================================================================================================================================================*/
|
||||
|
||||
/**
|
||||
* @brief Initialize SPI in Controller/Master Mode
|
||||
*
|
||||
* @param SPI_inst Pointer to SPI config registers
|
||||
* @param BR enum to set SPI Bit Rate
|
||||
* @return xCoreStatus_t
|
||||
*/
|
||||
xCoreStatus_t xMCAL_SPI_init(SPI_Regs *SPI_inst, xSPI_CS_t xCS )
|
||||
{
|
||||
assert(SPI_inst == SPI0 || SPI_inst == SPI1);
|
||||
|
||||
assert(!(b_SPI0_INIT_FLAG == 1 && b_SPI1_INIT_FLAG == 1));
|
||||
|
||||
if(xCS!=0)
|
||||
{
|
||||
return STATUS_INIT_FAIL;
|
||||
}
|
||||
DL_SPI_setClockConfig(SPI_inst, (DL_SPI_ClockConfig *) &gSPI_0_clockConfig);
|
||||
DL_SPI_init(SPI_inst, (DL_SPI_Config *) &gSPI_0_config);
|
||||
|
||||
/* Configure Controller mode */
|
||||
if(xCS==0)
|
||||
{
|
||||
/*
|
||||
* Set the bit rate clock divider to generate the serial output clock
|
||||
* outputBitRate = (spiInputClock) / ((1 + SCR) * 2)
|
||||
* 1000000 = (40000000)/((1 + 19) * 2)
|
||||
*/
|
||||
DL_SPI_setBitRateSerialClockDivider(SPI_inst, 19);
|
||||
}
|
||||
//DL_SPI_enableLoopbackMode(SPI_inst);
|
||||
/* Set RX and TX FIFO threshold levels */
|
||||
//DL_SPI_setFIFOThreshold(SPI_inst, DL_SPI_RX_FIFO_LEVEL_1_2_FULL, DL_SPI_TX_FIFO_LEVEL_1_2_EMPTY);
|
||||
DL_SPI_setFIFOThreshold(SPI_inst, DL_SPI_RX_FIFO_LEVEL_ONE_FRAME, DL_SPI_TX_FIFO_LEVEL_EMPTY);
|
||||
/*Enable Interrupt*/
|
||||
DL_SPI_enableInterrupt(SPI_inst, (DL_SPI_INTERRUPT_PARITY_ERROR |
|
||||
DL_SPI_INTERRUPT_RX |
|
||||
DL_SPI_INTERRUPT_RX_FULL |
|
||||
DL_SPI_INTERRUPT_RX_OVERFLOW |
|
||||
DL_SPI_INTERRUPT_RX_TIMEOUT |
|
||||
DL_SPI_INTERRUPT_TX_UNDERFLOW));
|
||||
/* Enable module */
|
||||
DL_SPI_enable(SPI_inst);
|
||||
|
||||
if(SPI_inst==SPI0)
|
||||
{
|
||||
NVIC_EnableIRQ(SPI0_INT_IRQn);
|
||||
b_SPI0_INIT_FLAG=1;
|
||||
}
|
||||
else if(SPI_inst==SPI1)
|
||||
{
|
||||
NVIC_EnableIRQ(SPI1_INT_IRQn);
|
||||
b_SPI1_INIT_FLAG=1;
|
||||
}
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to Receive SPI Message
|
||||
*
|
||||
* @param SPI_inst Pointer to SPI config registers
|
||||
* @param u8SPI_RxData variable where received data will be stored
|
||||
* @param size Number of bytes to read
|
||||
* @return xCoreStatus_t
|
||||
*/
|
||||
xCoreStatus_t _prv_xSPI_getData(SPI_Regs *SPI_inst, uint8_t *u8SPI_RxData, uint8_t size )
|
||||
{
|
||||
assert(SPI_inst == SPI0 || SPI_inst == SPI1);
|
||||
assert(b_SPI0_INIT_FLAG != 0 || b_SPI1_INIT_FLAG != 0);
|
||||
|
||||
if(SPI_inst==SPI0)
|
||||
{
|
||||
for(uint8_t i=0;i<size;i++)
|
||||
{
|
||||
for(uint8_t j=0;j<=i32bufferIdx0;j++)
|
||||
{
|
||||
u8SPI_RxData[j]=u8rxbuffer0[j];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if(SPI_inst==SPI1)
|
||||
{
|
||||
for(uint8_t i=0;i<size;i++)
|
||||
{
|
||||
for(uint8_t j=0;j<=i32bufferIdx1;j++)
|
||||
{
|
||||
u8SPI_RxData[j]=u8rxbuffer1[j];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
i32bufferIdx0=0;
|
||||
i32bufferIdx1=0;
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function to Transmit SPI Message
|
||||
*
|
||||
* @param SPI_inst Pointer to CAN config registers
|
||||
* @param u8SPI_TxData data to be transmitted
|
||||
* @param size Number of bytes to transmit
|
||||
* @return xCoreStatus_t
|
||||
*/
|
||||
xCoreStatus_t xMCAL_SPI_TxData(SPI_Regs *SPI_inst, uint8_t *u8SPI_TxData, uint8_t * u8SPI_RxData,uint8_t size)
|
||||
{
|
||||
|
||||
assert(SPI_inst == SPI0 || SPI_inst == SPI1);
|
||||
assert(b_SPI0_INIT_FLAG != 0 || b_SPI1_INIT_FLAG != 0);
|
||||
|
||||
if (!DL_SPI_isTXFIFOFull(SPI_inst))
|
||||
{
|
||||
DL_GPIO_clearPins(GPIOB,DL_GPIO_PIN_20);
|
||||
for(uint8_t i=0;i<size;i++)
|
||||
{
|
||||
DL_SPI_transmitData8(SPI_inst,u8SPI_TxData[i]);
|
||||
while(DL_SPI_isBusy(SPI_inst));
|
||||
}
|
||||
|
||||
} else
|
||||
{
|
||||
return STATUS_ERROR;
|
||||
}
|
||||
|
||||
|
||||
DL_GPIO_setPins(GPIOB,DL_GPIO_PIN_20);
|
||||
|
||||
_prv_xSPI_getData(SPI_inst,u8SPI_RxData, size );
|
||||
|
||||
return STATUS_SUCCESS;
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief
|
||||
*
|
||||
* @param SPI_inst Pointer to SPI config registers
|
||||
* @return xCoreStatus_t
|
||||
*/
|
||||
xCoreStatus_t xMCAL_SPI_deinit(SPI_Regs *SPI_inst)
|
||||
{
|
||||
assert(SPI_inst == SPI0 || SPI_inst == SPI1);
|
||||
assert(b_SPI0_INIT_FLAG != 0 || b_SPI1_INIT_FLAG != 0);
|
||||
|
||||
if(SPI_inst==SPI0)
|
||||
{
|
||||
NVIC_DisableIRQ(SPI0_INT_IRQn);
|
||||
DL_SPI_disablePower(SPI_inst);
|
||||
b_SPI0_INIT_FLAG=0;
|
||||
}
|
||||
else if(SPI_inst==SPI1)
|
||||
{
|
||||
NVIC_DisableIRQ(SPI1_INT_IRQn);
|
||||
DL_SPI_disablePower(SPI_inst);
|
||||
b_SPI1_INIT_FLAG=0;
|
||||
}
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
/*____________________________________________________________________________________________________________________________________________________________________________________________*/
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,421 @@
|
|||
/* USER CODE BEGIN Header */
|
||||
/**
|
||||
******************************************************************************
|
||||
* @file timer.c
|
||||
* @brief This file provides code for the configuration
|
||||
* of the Periodic Timer , PWM and Input Capture.
|
||||
* @data 1-feb-2024
|
||||
* @Author Vecmocon Technology
|
||||
******************************************************************************
|
||||
*/
|
||||
/* USER CODE END Header */
|
||||
|
||||
/* Includes ------------------------------------------------------------------*/
|
||||
#include <..\Core\Include\ivec_mcal_timer.h>
|
||||
|
||||
static volatile bool b_TimerInitFlag = 0; /*!< Timer initialization flag */
|
||||
static volatile bool b_TimerCounterFlag = 0; /*!< Timer Counter flag */
|
||||
static volatile bool b_PwmInitflag = 0; /*!< PWM initialization flag */
|
||||
static volatile bool b_Pwmstartflag = 0; /*!< PWM Start flag */
|
||||
static volatile bool b_InputCaputerflag =0; /*!< Input Capture initialization flag */
|
||||
|
||||
|
||||
static volatile uint32_t g_u32CapturePeriod; /*!<To get the first capture period */
|
||||
static volatile uint32_t g_u32CaptureValue0; /*!<To get the first capture value */
|
||||
static volatile uint32_t g_u32CaptureValue1; /*!<To get the second capture value */
|
||||
static volatile uint32_t g_u32LoadValue; /*!<To get timer loaded value */
|
||||
float f_frequency =0; /*!<To get calculated frequency */
|
||||
|
||||
/**
|
||||
* @brief Configuration for Input capture timer.
|
||||
*/
|
||||
static const DL_TimerA_ClockConfig gCAPTURE_0ClockConfig = {
|
||||
.clockSel = DL_TIMER_CLOCK_BUSCLK,
|
||||
.divideRatio = DL_TIMER_CLOCK_DIVIDE_1,
|
||||
.prescale = 32U
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Configuration for Input capture mode channel.
|
||||
*/
|
||||
static const DL_TimerA_CaptureCombinedConfig gCAPTURE_0CaptureConfig = {
|
||||
.captureMode = DL_TIMER_CAPTURE_COMBINED_MODE_PULSE_WIDTH_AND_PERIOD,
|
||||
.period = CAPTURE_0_INST_LOAD_VALUE,
|
||||
.startTimer = DL_TIMER_STOP,
|
||||
.inputChan = DL_TIMER_INPUT_CHAN_0,
|
||||
.inputInvMode = DL_TIMER_CC_INPUT_INV_NOINVERT,
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Configuration for Periodic Timer.
|
||||
*/
|
||||
static const DL_TimerG_ClockConfig gTIMER_0ClockConfig = {
|
||||
.clockSel = DL_TIMER_CLOCK_LFCLK,
|
||||
.divideRatio = DL_TIMER_CLOCK_DIVIDE_1,
|
||||
.prescale = 32U,
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @brief Configuration for Periodic timer Mode and Period.
|
||||
*/
|
||||
static const DL_TimerG_TimerConfig gTIMER_0TimerConfig = {
|
||||
.period = TIMER_0_INST_LOAD_VALUE,
|
||||
.timerMode = DL_TIMER_TIMER_MODE_PERIODIC,
|
||||
.startTimer = DL_TIMER_STOP,
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* @brief Configuration for PWM timer.
|
||||
*/
|
||||
static const DL_TimerG_ClockConfig gPWM_0ClockConfig = {
|
||||
.clockSel = DL_TIMER_CLOCK_BUSCLK,
|
||||
.divideRatio = DL_TIMER_CLOCK_DIVIDE_1,
|
||||
.prescale = 31U
|
||||
};
|
||||
|
||||
/**
|
||||
* @brief Configuration for PWM time MODE and Periode.
|
||||
*/
|
||||
static const DL_TimerG_PWMConfig gPWM_0Config = {
|
||||
.pwmMode = DL_TIMER_PWM_MODE_EDGE_ALIGN,
|
||||
.period = 1000,
|
||||
.startTimer = DL_TIMER_STOP,
|
||||
};
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @brief Initlization Periodic timer
|
||||
* @note Interruptions enabled in this function
|
||||
* @param pTimer_inst Timer handle
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_TimerInit(GPTIMER_Regs* const pTimer_inst)
|
||||
{
|
||||
assert(pTimer_inst == TIMG0);
|
||||
if(b_TimerInitFlag==0)
|
||||
{
|
||||
DL_TimerG_setClockConfig(TIMG0, (DL_TimerG_ClockConfig *) &gTIMER_0ClockConfig);
|
||||
DL_TimerG_enableClock(TIMG0);
|
||||
DL_TimerG_initTimerMode(TIMG0,(DL_TimerG_TimerConfig *) &gTIMER_0TimerConfig);
|
||||
/* Configure Interrupts */
|
||||
DL_TimerG_enableInterrupt(TIMG0 , GPTIMER_CPU_INT_IMASK_Z_SET);
|
||||
NVIC_ClearPendingIRQ(TIMG0_INT_IRQn);
|
||||
NVIC_EnableIRQ(TIMG0_INT_IRQn);
|
||||
b_TimerInitFlag = 1;
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief De-Initialize the Timer peripheral to their default reset values
|
||||
* @param pTimer_inst Timer handle
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_TimerDeInit(GPTIMER_Regs* const pTimer_inst)
|
||||
{
|
||||
assert(pTimer_inst == TIMG0);
|
||||
if(b_TimerInitFlag == 1 )
|
||||
{
|
||||
b_TimerInitFlag = 0;
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief To get the timer counts.
|
||||
* @param p_u32temp to get the timer counts
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_TimergetCount(uint32_t* p_u32temp)
|
||||
{
|
||||
if(DL_Timer_isRunning(TIMG0) == 1)
|
||||
{
|
||||
*p_u32temp = DL_Timer_getTimerCount(TIMG0);
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
return IVEC_MCAL_STATUS_ERROR;
|
||||
}
|
||||
//IVEC_McalStatus_e xMCAL_TimergetCount(uint32_t* p_u32temp)
|
||||
//{
|
||||
// assert(DL_Timer_isRunning(TIMG0) == 1);
|
||||
// *p_u32temp = DL_Timer_getTimerCount(TIMG0);
|
||||
// return IVEC_MCAL_STATUS_SUCCESS;
|
||||
//}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Start the Timer counter.
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_TimerstartCounter(void)
|
||||
{
|
||||
if(b_TimerCounterFlag == 0)
|
||||
{
|
||||
DL_TimerG_startCounter(TIMG0);
|
||||
b_TimerCounterFlag = 1;
|
||||
return IVEC_MCAL_STATUS_TRUE;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_FALSE;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Stop the Timer stop.
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_TimerstopCounter(void)
|
||||
{
|
||||
if(b_TimerCounterFlag == 1)
|
||||
{
|
||||
DL_TimerG_stopCounter(TIMG0);
|
||||
b_TimerCounterFlag = 0;
|
||||
return IVEC_MCAL_STATUS_TRUE;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Function use to set load value of timer
|
||||
* @param pTimer_inst Timer handle
|
||||
* @param u8Channel use to pass the load value
|
||||
* @param p_u32temp use to get loaded value
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_TimersetLoadValue(GPTIMER_Regs* const pTimer_inst, uint32_t count,uint32_t* p_u32temp)
|
||||
{
|
||||
assert(pTimer_inst == TIMG0);
|
||||
DL_Timer_setLoadValue(TIMG0, count);
|
||||
*p_u32temp = DL_Timer_getLoadValue(TIMG0);
|
||||
return IVEC_MCAL_STATUS_TRUE;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Timer call back function
|
||||
* @note Interruptions enabled in this function
|
||||
*/
|
||||
void _prv_timGcallback()
|
||||
{
|
||||
switch (DL_TimerG_getPendingInterrupt(TIMG0))
|
||||
{
|
||||
case DL_TIMER_IIDX_ZERO:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Timer IRQ handler
|
||||
*/
|
||||
void TIMG0_IRQHandler()
|
||||
{
|
||||
_prv_timGcallback();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @brief Initlization PWM timer
|
||||
* @note Interruptions enabled in this function
|
||||
* @param Tim_inst Timer handle
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_PwmInit(GPTIMER_Regs* const Tim_inst)
|
||||
{
|
||||
assert(Tim_inst==TIMG0);
|
||||
if(b_PwmInitflag ==0)
|
||||
{
|
||||
DL_TimerG_setClockConfig(TIMG7, (DL_TimerG_ClockConfig *) &gPWM_0ClockConfig);
|
||||
DL_TimerG_initPWMMode(TIMG7, (DL_TimerG_PWMConfig *) &gPWM_0Config);
|
||||
DL_TimerG_setCaptureCompareValue(TIMG7, 500, DL_TIMER_CC_0_INDEX);
|
||||
DL_TimerG_setCaptureCompareOutCtl(TIMG7, GPTIMER_OCTL_01_CCPIV_LOW,
|
||||
GPTIMER_OCTL_01_CCPOINV_NOINV, GPTIMER_OCTL_01_CCPO_FUNCVAL,DL_TIMER_CC_0_INDEX);
|
||||
DL_TimerG_setCaptCompUpdateMethod(TIMG7, DL_TIMER_CC_UPDATE_METHOD_IMMEDIATE, DL_TIMER_CC_0_INDEX);
|
||||
DL_TimerG_enableClock(TIMG7);
|
||||
DL_TimerG_setCCPDirection(TIMG7 , GPTIMER_CCPD_C0CCP0_OUTPUT );
|
||||
DL_GPIO_initPeripheralOutputFunction(IOMUX_PINCM32,IOMUX_PINCM32_PF_TIMG7_CCP0);
|
||||
DL_GPIO_enableOutput(GPIOB, DL_GPIO_PIN_15);
|
||||
b_PwmInitflag =1;
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief De-Initlization PWM timer
|
||||
* @param Tim_inst Timer handle
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_PwmDeInit(GPTIMER_Regs* const Tim_inst)
|
||||
{
|
||||
assert(Tim_inst==TIMG0);
|
||||
if(b_PwmInitflag ==1)
|
||||
{
|
||||
b_PwmInitflag =0;
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Enable PWM Timer.
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_PwmStart(void)
|
||||
{
|
||||
if (b_Pwmstartflag == 0)
|
||||
{
|
||||
DL_TimerA_setCoreHaltBehavior(TIMG7, DL_TIMER_CORE_HALT_IMMEDIATE);
|
||||
DL_TimerG_startCounter(TIMG7);
|
||||
b_Pwmstartflag =1;
|
||||
return IVEC_MCAL_STATUS_TRUE;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_FALSE;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Disable PWM Timer.
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_PwmStop(void)
|
||||
{
|
||||
if (b_Pwmstartflag == 1)
|
||||
{
|
||||
DL_TimerA_setCoreHaltBehavior(TIMG7, DL_TIMER_CORE_HALT_IMMEDIATE);
|
||||
DL_TimerG_stopCounter(TIMG7);
|
||||
b_Pwmstartflag = 0;
|
||||
return IVEC_MCAL_STATUS_TRUE;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_FALSE;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Initlization Input Capture timer
|
||||
* @note Interruptions enabled in this function
|
||||
* @param Tim_inst Timer handle
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_InputCaptureInit(GPTIMER_Regs* const Tim_inst)
|
||||
{
|
||||
assert(Tim_inst==TIMA0);
|
||||
if(b_InputCaputerflag ==0)
|
||||
{
|
||||
DL_TimerA_setClockConfig(TIMA0,(DL_TimerA_ClockConfig *) &gCAPTURE_0ClockConfig);
|
||||
DL_TimerA_initCaptureCombinedMode(TIMA0,(DL_TimerA_CaptureCombinedConfig *) &gCAPTURE_0CaptureConfig);
|
||||
DL_TimerA_enableInterrupt(TIMA0 , DL_TIMERA_INTERRUPT_CC1_DN_EVENT | DL_TIMERA_INTERRUPT_ZERO_EVENT);
|
||||
DL_TimerA_enableClock(TIMA0);
|
||||
DL_GPIO_initPeripheralInputFunction(GPIO_CAPTURE_0_C0_IOMUX,GPIO_CAPTURE_0_C0_IOMUX_FUNC);
|
||||
b_InputCaputerflag = 1;
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief De-Initlization Input Capture timer
|
||||
* @param Tim_inst Timer handle
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_InputCaptureDeInit(GPTIMER_Regs* const Tim_inst)
|
||||
{
|
||||
assert(Tim_inst==TIMA0);
|
||||
if(b_InputCaputerflag ==1)
|
||||
{
|
||||
b_InputCaputerflag = 0;
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
else
|
||||
return IVEC_MCAL_STATUS_INIT_FAIL;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Enable IC timer.
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_InputCaptureStart(void)
|
||||
{
|
||||
assert(b_InputCaputerflag==1);
|
||||
DL_TimerG_setCoreHaltBehavior(TIMA0, DL_TIMER_CORE_HALT_IMMEDIATE);
|
||||
NVIC_EnableIRQ(TIMA0_INT_IRQn);
|
||||
DL_TimerA_startCounter(TIMA0);
|
||||
return IVEC_MCAL_STATUS_TRUE;
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Disable IC timer.
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
IVEC_McalStatus_e xMCAL_InputCaptureStop(void)
|
||||
{
|
||||
assert(b_InputCaputerflag==1);
|
||||
DL_TimerG_setCoreHaltBehavior(TIMA0, DL_TIMER_CORE_HALT_IMMEDIATE);
|
||||
NVIC_EnableIRQ(TIMA0_INT_IRQn);
|
||||
DL_TimerA_stopCounter(TIMA0);
|
||||
return IVEC_MCAL_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Calculate the frequency of input PWM signal.
|
||||
* @param f_frequency to get Calculate frequency
|
||||
* @retval IVEC MCAL status
|
||||
*/
|
||||
void vMCAL_Calcfrequency(float* f_frequency){
|
||||
|
||||
g_u32LoadValue = DL_Timer_getLoadValue(TIMA0);
|
||||
g_u32CaptureValue1 = g_u32CaptureValue0;
|
||||
g_u32CaptureValue0 = DL_Timer_getCaptureCompareValue(TIMA0, DL_TIMER_CC_1_INDEX);
|
||||
|
||||
if(g_u32CaptureValue1 > g_u32CaptureValue0)
|
||||
{
|
||||
g_u32CapturePeriod = g_u32CaptureValue1 - g_u32CaptureValue0;
|
||||
}
|
||||
else
|
||||
{
|
||||
g_u32CapturePeriod = g_u32LoadValue + g_u32CaptureValue1 - g_u32CaptureValue0;
|
||||
}
|
||||
*f_frequency = (timerCAPTURE_FREQ_i32)/(g_u32CapturePeriod + 1) *10;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Timer call back function
|
||||
* @note f_frequency: get the calculated frequency
|
||||
*/
|
||||
void _prv_timAcallback()
|
||||
{
|
||||
vMCAL_Calcfrequency(&f_frequency);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Timer IRQ handler
|
||||
*/
|
||||
void TIMA0_IRQHandler()
|
||||
{
|
||||
_prv_timAcallback();
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
/*
|
||||
* uart.c
|
||||
*
|
||||
* Created on: 22-Jan-2024
|
||||
* Author: saara
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
After Width: | Height: | Size: 676 B |
|
After Width: | Height: | Size: 147 B |
|
After Width: | Height: | Size: 132 B |
|
|
@ -0,0 +1,92 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>MCAL_DRIVER: D:/MSPM0G3507_MCAL/mspmog3507_mcal/Core/Source Directory Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">MCAL_DRIVER
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.16 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="dir_c6310732a22f63c0c2fc5595561e68f1.html">Core</a></li><li class="navelem"><a class="el" href="dir_a4cb02fe4f7b73e09a7c4d547d8e5b78.html">Source</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Source Directory Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
|
||||
Files</h2></td></tr>
|
||||
<tr class="memitem:gpio_8c"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html">gpio.c</a></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ivec__mcal__adc__dma_8c"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html">ivec_mcal_adc_dma.c</a></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ivec__mcal__timer_8c"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__timer_8c.html">ivec_mcal_timer.c</a></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:uart_8c"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="uart_8c.html">uart.c</a></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.16
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,86 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>MCAL_DRIVER: D:/MSPM0G3507_MCAL/mspmog3507_mcal/Core Directory Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">MCAL_DRIVER
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.16 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="dir_c6310732a22f63c0c2fc5595561e68f1.html">Core</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Core Directory Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
|
||||
Directories</h2></td></tr>
|
||||
<tr class="memitem:dir_a4cb02fe4f7b73e09a7c4d547d8e5b78"><td class="memItemLeft" align="right" valign="top">directory  </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a4cb02fe4f7b73e09a7c4d547d8e5b78.html">Source</a></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.16
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
After Width: | Height: | Size: 746 B |
|
After Width: | Height: | Size: 3.7 KiB |
|
|
@ -0,0 +1,120 @@
|
|||
/*
|
||||
@licstart The following is the entire license notice for the
|
||||
JavaScript code in this file.
|
||||
|
||||
Copyright (C) 1997-2017 by Dimitri van Heesch
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
@licend The above is the entire license notice
|
||||
for the JavaScript code in this file
|
||||
*/
|
||||
function toggleVisibility(linkObj)
|
||||
{
|
||||
var base = $(linkObj).attr('id');
|
||||
var summary = $('#'+base+'-summary');
|
||||
var content = $('#'+base+'-content');
|
||||
var trigger = $('#'+base+'-trigger');
|
||||
var src=$(trigger).attr('src');
|
||||
if (content.is(':visible')===true) {
|
||||
content.hide();
|
||||
summary.show();
|
||||
$(linkObj).addClass('closed').removeClass('opened');
|
||||
$(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
|
||||
} else {
|
||||
content.show();
|
||||
summary.hide();
|
||||
$(linkObj).removeClass('closed').addClass('opened');
|
||||
$(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function updateStripes()
|
||||
{
|
||||
$('table.directory tr').
|
||||
removeClass('even').filter(':visible:even').addClass('even');
|
||||
}
|
||||
|
||||
function toggleLevel(level)
|
||||
{
|
||||
$('table.directory tr').each(function() {
|
||||
var l = this.id.split('_').length-1;
|
||||
var i = $('#img'+this.id.substring(3));
|
||||
var a = $('#arr'+this.id.substring(3));
|
||||
if (l<level+1) {
|
||||
i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
|
||||
a.html('▼');
|
||||
$(this).show();
|
||||
} else if (l==level+1) {
|
||||
i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
|
||||
a.html('►');
|
||||
$(this).show();
|
||||
} else {
|
||||
$(this).hide();
|
||||
}
|
||||
});
|
||||
updateStripes();
|
||||
}
|
||||
|
||||
function toggleFolder(id)
|
||||
{
|
||||
// the clicked row
|
||||
var currentRow = $('#row_'+id);
|
||||
|
||||
// all rows after the clicked row
|
||||
var rows = currentRow.nextAll("tr");
|
||||
|
||||
var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
|
||||
|
||||
// only match elements AFTER this one (can't hide elements before)
|
||||
var childRows = rows.filter(function() { return this.id.match(re); });
|
||||
|
||||
// first row is visible we are HIDING
|
||||
if (childRows.filter(':first').is(':visible')===true) {
|
||||
// replace down arrow by right arrow for current row
|
||||
var currentRowSpans = currentRow.find("span");
|
||||
currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
|
||||
currentRowSpans.filter(".arrow").html('►');
|
||||
rows.filter("[id^=row_"+id+"]").hide(); // hide all children
|
||||
} else { // we are SHOWING
|
||||
// replace right arrow by down arrow for current row
|
||||
var currentRowSpans = currentRow.find("span");
|
||||
currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
|
||||
currentRowSpans.filter(".arrow").html('▼');
|
||||
// replace down arrows by right arrows for child rows
|
||||
var childRowsSpans = childRows.find("span");
|
||||
childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
|
||||
childRowsSpans.filter(".arrow").html('►');
|
||||
childRows.show(); //show all children
|
||||
}
|
||||
updateStripes();
|
||||
}
|
||||
|
||||
|
||||
function toggleInherit(id)
|
||||
{
|
||||
var rows = $('tr.inherit.'+id);
|
||||
var img = $('tr.inherit_header.'+id+' img');
|
||||
var src = $(img).attr('src');
|
||||
if (rows.filter(':first').is(':visible')===true) {
|
||||
rows.css('display','none');
|
||||
$(img).attr('src',src.substring(0,src.length-8)+'closed.png');
|
||||
} else {
|
||||
rows.css('display','table-row'); // using show() causes jump in firefox
|
||||
$(img).attr('src',src.substring(0,src.length-10)+'open.png');
|
||||
}
|
||||
}
|
||||
/* @license-end */
|
||||
|
|
@ -0,0 +1,86 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>MCAL_DRIVER: File List</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">MCAL_DRIVER
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.16 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">File List</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock">Here is a list of all files with brief descriptions:</div><div class="directory">
|
||||
<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
|
||||
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;"> </span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">▼</span><span id="img_0_" class="iconfopen" onclick="toggleFolder('0_')"> </span><a class="el" href="dir_c6310732a22f63c0c2fc5595561e68f1.html" target="_self">Core</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_0_0_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span id="arr_0_0_" class="arrow" onclick="toggleFolder('0_0_')">▼</span><span id="img_0_0_" class="iconfopen" onclick="toggleFolder('0_0_')"> </span><a class="el" href="dir_a4cb02fe4f7b73e09a7c4d547d8e5b78.html" target="_self">Source</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_0_0_0_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icondoc"></span><a class="el" href="gpio_8c.html" target="_self">gpio.c</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_0_0_1_"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icondoc"></span><a class="el" href="ivec__mcal__adc__dma_8c.html" target="_self">ivec_mcal_adc_dma.c</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_0_0_2_" class="even"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icondoc"></span><a class="el" href="ivec__mcal__timer_8c.html" target="_self">ivec_mcal_timer.c</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_0_0_3_"><td class="entry"><span style="width:48px;display:inline-block;"> </span><span class="icondoc"></span><a class="el" href="uart_8c.html" target="_self">uart.c</a></td><td class="desc"></td></tr>
|
||||
</table>
|
||||
</div><!-- directory -->
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.16
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
After Width: | Height: | Size: 616 B |
|
After Width: | Height: | Size: 597 B |
|
|
@ -0,0 +1,278 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>MCAL_DRIVER: Globals</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">MCAL_DRIVER
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.16 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="contents">
|
||||
<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
|
||||
|
||||
<h3><a id="index__5F"></a>- _ -</h3><ul>
|
||||
<li>_prv_adccallback()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a57beca8b8e3c29381f89c77272f32b68">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>_prv_timAcallback()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a9981e88dbc39b7bb02d463a9ea4f3fa4">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>_prv_timGcallback()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a39ed10ab2a6d4e159f8a9a7d4190fb7c">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_a"></a>- a -</h3><ul>
|
||||
<li>ADC1_IRQHandler()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a55924a8071033769a12ad0e752f67c8b">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_f"></a>- f -</h3><ul>
|
||||
<li>f_frequency
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a8f498d8164a8b5f1fe226ac7a1065223">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_g"></a>- g -</h3><ul>
|
||||
<li>g_u32AdcInitFlag
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#ae8bf595fdf07ae38cd281ee554b31e97">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>g_u32AdcStartFlag
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a21c312fa56d5beb1ca9fae155d0a1609">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>g_u32CapturePeriod
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a3364e3b26758d05e1b38b646f4054044">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32CaptureValue0
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a5085e6839b8d01a71d9a1864a6a69753">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32CaptureValue1
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a6c802071700ba3bf42eca5156386a8a9">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32DmaFlag
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a9eff7688a6f3ba4b0f1b28adc5c80a3c">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>g_u32DmaStart
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a1038428a9d3b822427c438df06a8ec44">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>g_u32InputCaputerflag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a2b584b8480730a5e8b81f41dabdc3c65">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32LoadValue
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ac844ec204b29603b2535167b848a8450">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32PwmInitflag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ae9f6b5d3e0f0c98e69d36aec59297b93">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32Pwmstartflag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a30c0b354b81726f2b556773926a2b8a4">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32TimerCounterFlag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a68bd1e66940c9f90419de8112a61792b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32TimerInitFlag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ad293840e9710293a11e123f501d4953c">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gADC12_1ClockConfig
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#acf01d1195f672e52c0674823195322f0">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>gCAPTURE_0CaptureConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#af3bb7eed2ea009bbb2ef2fb6a5b2c03b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gCAPTURE_0ClockConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a4cb7aaac1ab4f32cf08bdad1bf1cae45">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gDMA_CH0Config
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a55d4403e4654815d9b78943f6c1672b4">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>GPIOInitCounter
|
||||
: <a class="el" href="gpio_8c.html#a9c374bc0a8da82f26002077648439d2e">gpio.c</a>
|
||||
</li>
|
||||
<li>gPWM_0ClockConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a0ae32b282e1a0055a2bfb40dde156ee8">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gPWM_0Config
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a1d0ba15433c1c3eebee1f54eca6d8765">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gTIMER_0ClockConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a315d979d68b79fc842574a8d5251f14d">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gTIMER_0TimerConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a1f36f4fd8eca8231d01682c58870661b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_m"></a>- m -</h3><ul>
|
||||
<li>mcu_gpioDeInitMcal()
|
||||
: <a class="el" href="gpio_8c.html#a0a0f2ebe87263ebaf7d2a5b82b3323f3">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_gpioInitAllMcal()
|
||||
: <a class="el" href="gpio_8c.html#ad175e9af1360c572a452f01a6810743f">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_gpioReadMcal()
|
||||
: <a class="el" href="gpio_8c.html#ab06af00aff6dcb76b738d675fd006945">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_gpioToggleMcal()
|
||||
: <a class="el" href="gpio_8c.html#a6ac893a301d3f18eff66dc7a5a20dbd2">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_gpioWriteMcal()
|
||||
: <a class="el" href="gpio_8c.html#a617cf0cf44f313c752e64938cc69f078">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_set_gpioDirectionMcal()
|
||||
: <a class="el" href="gpio_8c.html#ac43adb1d6237423192f51fad6680cb86">gpio.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_t"></a>- t -</h3><ul>
|
||||
<li>TIMA0_IRQHandler()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#aceda73b51d2eabfba673bc0101cfd333">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>TIMG0_IRQHandler()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a793ba621e13e6300361d71aa960ff509">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_v"></a>- v -</h3><ul>
|
||||
<li>vMCAL_Calcfrequency()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#aaaba6906df06a72eea1870b2fb93b344">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_x"></a>- x -</h3><ul>
|
||||
<li>xMCAL_AdcDeInit()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a368cb56303959284205ba88b9b01760b">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_AdcInit()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#ac8cb58c0739bc24340af7b896c014384">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_AdcStart()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a434795b35e62fbcfb4861849a414c94c">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_AdcStop()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#aa04addc8765b1ad2024e57766304536a">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_DmaDeInit()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a25ea8d77c5ec67434ece105386c7b874">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_DmaInit()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a6bca37cb7ab71bb92d2ec567a7982003">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_DmaStart()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#af4186516cdf4ccad2e739b062d8e496e">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_DmaStop()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a86d92e7db5108dc91502d5a118f49864">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_InputCaptureDeInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#abac50c1a2c1bf54f5667e3beec45f807">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_InputCaptureInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a06d120975c4ecbd9172afae40c10c070">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_InputCaptureStart()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#afaa8036c34656643f0f3c78418045558">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_InputCaptureStop()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a7880a0e54486cce5ae226497dce7f76d">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_PwmDeInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ad6a8ab55481dcb0bd90bbbfe2619eb6f">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_PwmInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a873f0c0cb5202a2f6405e51d39351392">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_PwmStart()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a49967c43fb1cf87442514b93e10ab5cb">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_PwmStop()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a3b0ad75cdcd24c1d880a30c9beac3c9c">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimerDeInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a4bdb13bdf03682b629d3e7fc44b8dc10">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimergetCount()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a257cd4ace5ba831d880a6e98ce9b105a">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimerInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ac505d1366e2daba130aa5de2d34e880b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimersetLoadValue()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a92c540531f5d5cb9c4c1aa66dc55dd0b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimerstartCounter()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a05df50b9eac9dd77d022fc14fba6ff7b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimerstopCounter()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a14f98717c817a01bd6e5d7701ad969de">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.16
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,201 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>MCAL_DRIVER: Globals</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">MCAL_DRIVER
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.16 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="contents">
|
||||
 
|
||||
|
||||
<h3><a id="index__5F"></a>- _ -</h3><ul>
|
||||
<li>_prv_adccallback()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a57beca8b8e3c29381f89c77272f32b68">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>_prv_timAcallback()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a9981e88dbc39b7bb02d463a9ea4f3fa4">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>_prv_timGcallback()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a39ed10ab2a6d4e159f8a9a7d4190fb7c">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_a"></a>- a -</h3><ul>
|
||||
<li>ADC1_IRQHandler()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a55924a8071033769a12ad0e752f67c8b">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_m"></a>- m -</h3><ul>
|
||||
<li>mcu_gpioDeInitMcal()
|
||||
: <a class="el" href="gpio_8c.html#a0a0f2ebe87263ebaf7d2a5b82b3323f3">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_gpioInitAllMcal()
|
||||
: <a class="el" href="gpio_8c.html#ad175e9af1360c572a452f01a6810743f">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_gpioReadMcal()
|
||||
: <a class="el" href="gpio_8c.html#ab06af00aff6dcb76b738d675fd006945">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_gpioToggleMcal()
|
||||
: <a class="el" href="gpio_8c.html#a6ac893a301d3f18eff66dc7a5a20dbd2">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_gpioWriteMcal()
|
||||
: <a class="el" href="gpio_8c.html#a617cf0cf44f313c752e64938cc69f078">gpio.c</a>
|
||||
</li>
|
||||
<li>mcu_set_gpioDirectionMcal()
|
||||
: <a class="el" href="gpio_8c.html#ac43adb1d6237423192f51fad6680cb86">gpio.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_t"></a>- t -</h3><ul>
|
||||
<li>TIMA0_IRQHandler()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#aceda73b51d2eabfba673bc0101cfd333">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>TIMG0_IRQHandler()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a793ba621e13e6300361d71aa960ff509">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_v"></a>- v -</h3><ul>
|
||||
<li>vMCAL_Calcfrequency()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#aaaba6906df06a72eea1870b2fb93b344">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_x"></a>- x -</h3><ul>
|
||||
<li>xMCAL_AdcDeInit()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a368cb56303959284205ba88b9b01760b">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_AdcInit()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#ac8cb58c0739bc24340af7b896c014384">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_AdcStart()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a434795b35e62fbcfb4861849a414c94c">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_AdcStop()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#aa04addc8765b1ad2024e57766304536a">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_DmaDeInit()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a25ea8d77c5ec67434ece105386c7b874">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_DmaInit()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a6bca37cb7ab71bb92d2ec567a7982003">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_DmaStart()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#af4186516cdf4ccad2e739b062d8e496e">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_DmaStop()
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a86d92e7db5108dc91502d5a118f49864">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>xMCAL_InputCaptureDeInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#abac50c1a2c1bf54f5667e3beec45f807">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_InputCaptureInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a06d120975c4ecbd9172afae40c10c070">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_InputCaptureStart()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#afaa8036c34656643f0f3c78418045558">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_InputCaptureStop()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a7880a0e54486cce5ae226497dce7f76d">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_PwmDeInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ad6a8ab55481dcb0bd90bbbfe2619eb6f">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_PwmInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a873f0c0cb5202a2f6405e51d39351392">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_PwmStart()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a49967c43fb1cf87442514b93e10ab5cb">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_PwmStop()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a3b0ad75cdcd24c1d880a30c9beac3c9c">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimerDeInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a4bdb13bdf03682b629d3e7fc44b8dc10">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimergetCount()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a257cd4ace5ba831d880a6e98ce9b105a">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimerInit()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ac505d1366e2daba130aa5de2d34e880b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimersetLoadValue()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a92c540531f5d5cb9c4c1aa66dc55dd0b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimerstartCounter()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a05df50b9eac9dd77d022fc14fba6ff7b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>xMCAL_TimerstopCounter()
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a14f98717c817a01bd6e5d7701ad969de">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.16
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,143 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>MCAL_DRIVER: Globals</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">MCAL_DRIVER
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.16 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="contents">
|
||||
 <ul>
|
||||
<li>f_frequency
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a8f498d8164a8b5f1fe226ac7a1065223">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32AdcInitFlag
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#ae8bf595fdf07ae38cd281ee554b31e97">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>g_u32AdcStartFlag
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a21c312fa56d5beb1ca9fae155d0a1609">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>g_u32CapturePeriod
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a3364e3b26758d05e1b38b646f4054044">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32CaptureValue0
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a5085e6839b8d01a71d9a1864a6a69753">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32CaptureValue1
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a6c802071700ba3bf42eca5156386a8a9">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32DmaFlag
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a9eff7688a6f3ba4b0f1b28adc5c80a3c">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>g_u32DmaStart
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a1038428a9d3b822427c438df06a8ec44">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>g_u32InputCaputerflag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a2b584b8480730a5e8b81f41dabdc3c65">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32LoadValue
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ac844ec204b29603b2535167b848a8450">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32PwmInitflag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ae9f6b5d3e0f0c98e69d36aec59297b93">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32Pwmstartflag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a30c0b354b81726f2b556773926a2b8a4">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32TimerCounterFlag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a68bd1e66940c9f90419de8112a61792b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>g_u32TimerInitFlag
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#ad293840e9710293a11e123f501d4953c">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gADC12_1ClockConfig
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#acf01d1195f672e52c0674823195322f0">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>gCAPTURE_0CaptureConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#af3bb7eed2ea009bbb2ef2fb6a5b2c03b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gCAPTURE_0ClockConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a4cb7aaac1ab4f32cf08bdad1bf1cae45">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gDMA_CH0Config
|
||||
: <a class="el" href="ivec__mcal__adc__dma_8c.html#a55d4403e4654815d9b78943f6c1672b4">ivec_mcal_adc_dma.c</a>
|
||||
</li>
|
||||
<li>GPIOInitCounter
|
||||
: <a class="el" href="gpio_8c.html#a9c374bc0a8da82f26002077648439d2e">gpio.c</a>
|
||||
</li>
|
||||
<li>gPWM_0ClockConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a0ae32b282e1a0055a2bfb40dde156ee8">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gPWM_0Config
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a1d0ba15433c1c3eebee1f54eca6d8765">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gTIMER_0ClockConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a315d979d68b79fc842574a8d5251f14d">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
<li>gTIMER_0TimerConfig
|
||||
: <a class="el" href="ivec__mcal__timer_8c.html#a1f36f4fd8eca8231d01682c58870661b">ivec_mcal_timer.c</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.16
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,294 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>MCAL_DRIVER: D:/MSPM0G3507_MCAL/mspmog3507_mcal/Core/Source/gpio.c File Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">MCAL_DRIVER
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.16 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="dir_c6310732a22f63c0c2fc5595561e68f1.html">Core</a></li><li class="navelem"><a class="el" href="dir_a4cb02fe4f7b73e09a7c4d547d8e5b78.html">Source</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#func-members">Functions</a> |
|
||||
<a href="#var-members">Variables</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">gpio.c File Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><code>#include <stdlib.h></code><br />
|
||||
<code>#include "../Include/gpio.h"</code><br />
|
||||
</div><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
||||
Functions</h2></td></tr>
|
||||
<tr class="memitem:ad175e9af1360c572a452f01a6810743f"><td class="memItemLeft" align="right" valign="top">int8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#ad175e9af1360c572a452f01a6810743f">mcu_gpioInitAllMcal</a> (void)</td></tr>
|
||||
<tr class="separator:ad175e9af1360c572a452f01a6810743f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a0a0f2ebe87263ebaf7d2a5b82b3323f3"><td class="memItemLeft" align="right" valign="top">int8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a0a0f2ebe87263ebaf7d2a5b82b3323f3">mcu_gpioDeInitMcal</a> (GPIO_Regs *GPIOx, uint32_t GPIO_Pin)</td></tr>
|
||||
<tr class="separator:a0a0f2ebe87263ebaf7d2a5b82b3323f3"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a617cf0cf44f313c752e64938cc69f078"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a617cf0cf44f313c752e64938cc69f078">mcu_gpioWriteMcal</a> (void *port, uint32_t pin, uint32_t state)</td></tr>
|
||||
<tr class="separator:a617cf0cf44f313c752e64938cc69f078"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ab06af00aff6dcb76b738d675fd006945"><td class="memItemLeft" align="right" valign="top">uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#ab06af00aff6dcb76b738d675fd006945">mcu_gpioReadMcal</a> (void *port, uint32_t pin)</td></tr>
|
||||
<tr class="separator:ab06af00aff6dcb76b738d675fd006945"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6ac893a301d3f18eff66dc7a5a20dbd2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a6ac893a301d3f18eff66dc7a5a20dbd2">mcu_gpioToggleMcal</a> (void *port, uint32_t pin)</td></tr>
|
||||
<tr class="separator:a6ac893a301d3f18eff66dc7a5a20dbd2"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ac43adb1d6237423192f51fad6680cb86"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#ac43adb1d6237423192f51fad6680cb86">mcu_set_gpioDirectionMcal</a> (uint32_t pincmIndex, bool direction)</td></tr>
|
||||
<tr class="separator:ac43adb1d6237423192f51fad6680cb86"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
|
||||
Variables</h2></td></tr>
|
||||
<tr class="memitem:a9c374bc0a8da82f26002077648439d2e"><td class="memItemLeft" align="right" valign="top">static uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="gpio_8c.html#a9c374bc0a8da82f26002077648439d2e">GPIOInitCounter</a> = 0</td></tr>
|
||||
<tr class="separator:a9c374bc0a8da82f26002077648439d2e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="a0a0f2ebe87263ebaf7d2a5b82b3323f3"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a0a0f2ebe87263ebaf7d2a5b82b3323f3">◆ </a></span>mcu_gpioDeInitMcal()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">int8_t mcu_gpioDeInitMcal </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">GPIO_Regs * </td>
|
||||
<td class="paramname"><em>GPIOx</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">uint32_t </td>
|
||||
<td class="paramname"><em>GPIO_Pin</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ad175e9af1360c572a452f01a6810743f"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad175e9af1360c572a452f01a6810743f">◆ </a></span>mcu_gpioInitAllMcal()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">int8_t mcu_gpioInitAllMcal </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">void </td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ab06af00aff6dcb76b738d675fd006945"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ab06af00aff6dcb76b738d675fd006945">◆ </a></span>mcu_gpioReadMcal()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint16_t mcu_gpioReadMcal </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">void * </td>
|
||||
<td class="paramname"><em>port</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">uint32_t </td>
|
||||
<td class="paramname"><em>pin</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a6ac893a301d3f18eff66dc7a5a20dbd2"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a6ac893a301d3f18eff66dc7a5a20dbd2">◆ </a></span>mcu_gpioToggleMcal()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void mcu_gpioToggleMcal </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">void * </td>
|
||||
<td class="paramname"><em>port</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">uint32_t </td>
|
||||
<td class="paramname"><em>pin</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a617cf0cf44f313c752e64938cc69f078"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a617cf0cf44f313c752e64938cc69f078">◆ </a></span>mcu_gpioWriteMcal()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void mcu_gpioWriteMcal </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">void * </td>
|
||||
<td class="paramname"><em>port</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">uint32_t </td>
|
||||
<td class="paramname"><em>pin</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">uint32_t </td>
|
||||
<td class="paramname"><em>state</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ac43adb1d6237423192f51fad6680cb86"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ac43adb1d6237423192f51fad6680cb86">◆ </a></span>mcu_set_gpioDirectionMcal()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void mcu_set_gpioDirectionMcal </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">uint32_t </td>
|
||||
<td class="paramname"><em>pincmIndex</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">bool </td>
|
||||
<td class="paramname"><em>direction</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="groupheader">Variable Documentation</h2>
|
||||
<a id="a9c374bc0a8da82f26002077648439d2e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a9c374bc0a8da82f26002077648439d2e">◆ </a></span>GPIOInitCounter</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint32_t GPIOInitCounter = 0</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.16
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,76 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>MCAL_DRIVER: Main Page</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">MCAL_DRIVER
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.16 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">MCAL_DRIVER Documentation</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.16
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,604 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>MCAL_DRIVER: D:/MSPM0G3507_MCAL/mspmog3507_mcal/Core/Source/ivec_mcal_adc_dma.c File Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">MCAL_DRIVER
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.16 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="dir_c6310732a22f63c0c2fc5595561e68f1.html">Core</a></li><li class="navelem"><a class="el" href="dir_a4cb02fe4f7b73e09a7c4d547d8e5b78.html">Source</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#func-members">Functions</a> |
|
||||
<a href="#var-members">Variables</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">ivec_mcal_adc_dma.c File Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><code>#include <Core\Include\ivec_mcal_adc_dma.h></code><br />
|
||||
</div><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
||||
Functions</h2></td></tr>
|
||||
<tr class="memitem:ac8cb58c0739bc24340af7b896c014384"><td class="memItemLeft" align="right" valign="top">IVEC_McalStatus_e </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#ac8cb58c0739bc24340af7b896c014384">xMCAL_AdcInit</a> (ADC12_Regs *const adc_inst)</td></tr>
|
||||
<tr class="memdesc:ac8cb58c0739bc24340af7b896c014384"><td class="mdescLeft"> </td><td class="mdescRight">Initlization ADC with DMA. <a href="ivec__mcal__adc__dma_8c.html#ac8cb58c0739bc24340af7b896c014384">More...</a><br /></td></tr>
|
||||
<tr class="separator:ac8cb58c0739bc24340af7b896c014384"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a368cb56303959284205ba88b9b01760b"><td class="memItemLeft" align="right" valign="top">IVEC_McalStatus_e </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a368cb56303959284205ba88b9b01760b">xMCAL_AdcDeInit</a> (ADC12_Regs *const adc_inst)</td></tr>
|
||||
<tr class="memdesc:a368cb56303959284205ba88b9b01760b"><td class="mdescLeft"> </td><td class="mdescRight">De-Initialize the ADC peripheral to their default reset values. <a href="ivec__mcal__adc__dma_8c.html#a368cb56303959284205ba88b9b01760b">More...</a><br /></td></tr>
|
||||
<tr class="separator:a368cb56303959284205ba88b9b01760b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a434795b35e62fbcfb4861849a414c94c"><td class="memItemLeft" align="right" valign="top">IVEC_McalStatus_e </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a434795b35e62fbcfb4861849a414c94c">xMCAL_AdcStart</a> (ADC12_Regs *const adc_inst)</td></tr>
|
||||
<tr class="memdesc:a434795b35e62fbcfb4861849a414c94c"><td class="mdescLeft"> </td><td class="mdescRight">Enable ADC, start conversion of regular group. <a href="ivec__mcal__adc__dma_8c.html#a434795b35e62fbcfb4861849a414c94c">More...</a><br /></td></tr>
|
||||
<tr class="separator:a434795b35e62fbcfb4861849a414c94c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aa04addc8765b1ad2024e57766304536a"><td class="memItemLeft" align="right" valign="top">IVEC_McalStatus_e </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#aa04addc8765b1ad2024e57766304536a">xMCAL_AdcStop</a> (ADC12_Regs *const adc_inst)</td></tr>
|
||||
<tr class="memdesc:aa04addc8765b1ad2024e57766304536a"><td class="mdescLeft"> </td><td class="mdescRight">Stop ADC conversion of regular group. <a href="ivec__mcal__adc__dma_8c.html#aa04addc8765b1ad2024e57766304536a">More...</a><br /></td></tr>
|
||||
<tr class="separator:aa04addc8765b1ad2024e57766304536a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6bca37cb7ab71bb92d2ec567a7982003"><td class="memItemLeft" align="right" valign="top">IVEC_McalStatus_e </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a6bca37cb7ab71bb92d2ec567a7982003">xMCAL_DmaInit</a> (void)</td></tr>
|
||||
<tr class="memdesc:a6bca37cb7ab71bb92d2ec567a7982003"><td class="mdescLeft"> </td><td class="mdescRight">Initlization of DMA for ADC. <a href="ivec__mcal__adc__dma_8c.html#a6bca37cb7ab71bb92d2ec567a7982003">More...</a><br /></td></tr>
|
||||
<tr class="separator:a6bca37cb7ab71bb92d2ec567a7982003"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a25ea8d77c5ec67434ece105386c7b874"><td class="memItemLeft" align="right" valign="top">IVEC_McalStatus_e </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a25ea8d77c5ec67434ece105386c7b874">xMCAL_DmaDeInit</a> (void)</td></tr>
|
||||
<tr class="memdesc:a25ea8d77c5ec67434ece105386c7b874"><td class="mdescLeft"> </td><td class="mdescRight">De-Initialize the DMA to their default reset values. <a href="ivec__mcal__adc__dma_8c.html#a25ea8d77c5ec67434ece105386c7b874">More...</a><br /></td></tr>
|
||||
<tr class="separator:a25ea8d77c5ec67434ece105386c7b874"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:af4186516cdf4ccad2e739b062d8e496e"><td class="memItemLeft" align="right" valign="top">IVEC_McalStatus_e </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#af4186516cdf4ccad2e739b062d8e496e">xMCAL_DmaStart</a> (const uint8_t u8channel, uint16_t *p_u16adcDma)</td></tr>
|
||||
<tr class="memdesc:af4186516cdf4ccad2e739b062d8e496e"><td class="mdescLeft"> </td><td class="mdescRight">Enable DMA, start transfer from ADC to DMA of regular group. <a href="ivec__mcal__adc__dma_8c.html#af4186516cdf4ccad2e739b062d8e496e">More...</a><br /></td></tr>
|
||||
<tr class="separator:af4186516cdf4ccad2e739b062d8e496e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a86d92e7db5108dc91502d5a118f49864"><td class="memItemLeft" align="right" valign="top">IVEC_McalStatus_e </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a86d92e7db5108dc91502d5a118f49864">xMCAL_DmaStop</a> (void)</td></tr>
|
||||
<tr class="memdesc:a86d92e7db5108dc91502d5a118f49864"><td class="mdescLeft"> </td><td class="mdescRight">Function use to set the DMA channel. <a href="ivec__mcal__adc__dma_8c.html#a86d92e7db5108dc91502d5a118f49864">More...</a><br /></td></tr>
|
||||
<tr class="separator:a86d92e7db5108dc91502d5a118f49864"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a57beca8b8e3c29381f89c77272f32b68"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a57beca8b8e3c29381f89c77272f32b68">_prv_adccallback</a> ()</td></tr>
|
||||
<tr class="memdesc:a57beca8b8e3c29381f89c77272f32b68"><td class="mdescLeft"> </td><td class="mdescRight">ADC call back function. <a href="ivec__mcal__adc__dma_8c.html#a57beca8b8e3c29381f89c77272f32b68">More...</a><br /></td></tr>
|
||||
<tr class="separator:a57beca8b8e3c29381f89c77272f32b68"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a55924a8071033769a12ad0e752f67c8b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a55924a8071033769a12ad0e752f67c8b">ADC1_IRQHandler</a> ()</td></tr>
|
||||
<tr class="memdesc:a55924a8071033769a12ad0e752f67c8b"><td class="mdescLeft"> </td><td class="mdescRight">ADC IRQ handler. <a href="ivec__mcal__adc__dma_8c.html#a55924a8071033769a12ad0e752f67c8b">More...</a><br /></td></tr>
|
||||
<tr class="separator:a55924a8071033769a12ad0e752f67c8b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
|
||||
Variables</h2></td></tr>
|
||||
<tr class="memitem:ae8bf595fdf07ae38cd281ee554b31e97"><td class="memItemLeft" align="right" valign="top">static volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#ae8bf595fdf07ae38cd281ee554b31e97">g_u32AdcInitFlag</a> = 0</td></tr>
|
||||
<tr class="separator:ae8bf595fdf07ae38cd281ee554b31e97"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a21c312fa56d5beb1ca9fae155d0a1609"><td class="memItemLeft" align="right" valign="top">static volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a21c312fa56d5beb1ca9fae155d0a1609">g_u32AdcStartFlag</a> =0</td></tr>
|
||||
<tr class="separator:a21c312fa56d5beb1ca9fae155d0a1609"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a9eff7688a6f3ba4b0f1b28adc5c80a3c"><td class="memItemLeft" align="right" valign="top">static volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a9eff7688a6f3ba4b0f1b28adc5c80a3c">g_u32DmaFlag</a> =0</td></tr>
|
||||
<tr class="separator:a9eff7688a6f3ba4b0f1b28adc5c80a3c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a1038428a9d3b822427c438df06a8ec44"><td class="memItemLeft" align="right" valign="top">static volatile bool </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a1038428a9d3b822427c438df06a8ec44">g_u32DmaStart</a> =0</td></tr>
|
||||
<tr class="separator:a1038428a9d3b822427c438df06a8ec44"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:acf01d1195f672e52c0674823195322f0"><td class="memItemLeft" align="right" valign="top">static const DL_ADC12_ClockConfig </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#acf01d1195f672e52c0674823195322f0">gADC12_1ClockConfig</a></td></tr>
|
||||
<tr class="memdesc:acf01d1195f672e52c0674823195322f0"><td class="mdescLeft"> </td><td class="mdescRight">Configuration for ADC12_0 clock. <a href="ivec__mcal__adc__dma_8c.html#acf01d1195f672e52c0674823195322f0">More...</a><br /></td></tr>
|
||||
<tr class="separator:acf01d1195f672e52c0674823195322f0"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a55d4403e4654815d9b78943f6c1672b4"><td class="memItemLeft" align="right" valign="top">static const DL_DMA_Config </td><td class="memItemRight" valign="bottom"><a class="el" href="ivec__mcal__adc__dma_8c.html#a55d4403e4654815d9b78943f6c1672b4">gDMA_CH0Config</a></td></tr>
|
||||
<tr class="memdesc:a55d4403e4654815d9b78943f6c1672b4"><td class="mdescLeft"> </td><td class="mdescRight">Configuration for DMA. <a href="ivec__mcal__adc__dma_8c.html#a55d4403e4654815d9b78943f6c1672b4">More...</a><br /></td></tr>
|
||||
<tr class="separator:a55d4403e4654815d9b78943f6c1672b4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="a57beca8b8e3c29381f89c77272f32b68"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a57beca8b8e3c29381f89c77272f32b68">◆ </a></span>_prv_adccallback()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void _prv_adccallback </td>
|
||||
<td>(</td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>ADC call back function. </p>
|
||||
<dl class="section note"><dt>Note</dt><dd>Interruptions enabled in this function </dd></dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a55924a8071033769a12ad0e752f67c8b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a55924a8071033769a12ad0e752f67c8b">◆ </a></span>ADC1_IRQHandler()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void ADC1_IRQHandler </td>
|
||||
<td>(</td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>ADC IRQ handler. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a368cb56303959284205ba88b9b01760b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a368cb56303959284205ba88b9b01760b">◆ </a></span>xMCAL_AdcDeInit()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">IVEC_McalStatus_e xMCAL_AdcDeInit </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">ADC12_Regs *const </td>
|
||||
<td class="paramname"><em>adc_inst</em></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>De-Initialize the ADC peripheral to their default reset values. </p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">adc_inst</td><td>ADC handle </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="retval"><dt>Return values</dt><dd>
|
||||
<table class="retval">
|
||||
<tr><td class="paramname">IVEC</td><td>MCAL status </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ac8cb58c0739bc24340af7b896c014384"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ac8cb58c0739bc24340af7b896c014384">◆ </a></span>xMCAL_AdcInit()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">IVEC_McalStatus_e xMCAL_AdcInit </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">ADC12_Regs *const </td>
|
||||
<td class="paramname"><em>adc_inst</em></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Initlization ADC with DMA. </p>
|
||||
<dl class="section note"><dt>Note</dt><dd>Interruptions enabled in this function </dd></dl>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">adc_inst</td><td>ADC handle </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="retval"><dt>Return values</dt><dd>
|
||||
<table class="retval">
|
||||
<tr><td class="paramname">IVEC</td><td>MCAL status </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a434795b35e62fbcfb4861849a414c94c"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a434795b35e62fbcfb4861849a414c94c">◆ </a></span>xMCAL_AdcStart()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">IVEC_McalStatus_e xMCAL_AdcStart </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">ADC12_Regs *const </td>
|
||||
<td class="paramname"><em>adc_inst</em></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Enable ADC, start conversion of regular group. </p>
|
||||
<dl class="section note"><dt>Note</dt><dd>Interruptions enabled in this function: None. </dd></dl>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">adc_inst</td><td>ADC handle </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="retval"><dt>Return values</dt><dd>
|
||||
<table class="retval">
|
||||
<tr><td class="paramname">IVEC</td><td>MCAL status </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="aa04addc8765b1ad2024e57766304536a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aa04addc8765b1ad2024e57766304536a">◆ </a></span>xMCAL_AdcStop()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">IVEC_McalStatus_e xMCAL_AdcStop </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">ADC12_Regs *const </td>
|
||||
<td class="paramname"><em>adc_inst</em></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Stop ADC conversion of regular group. </p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">adc_inst</td><td>ADC handle </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="retval"><dt>Return values</dt><dd>
|
||||
<table class="retval">
|
||||
<tr><td class="paramname">IVEC</td><td>MCAL status </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a25ea8d77c5ec67434ece105386c7b874"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a25ea8d77c5ec67434ece105386c7b874">◆ </a></span>xMCAL_DmaDeInit()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">IVEC_McalStatus_e xMCAL_DmaDeInit </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">void </td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>De-Initialize the DMA to their default reset values. </p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">adc_inst</td><td>ADC handle </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="retval"><dt>Return values</dt><dd>
|
||||
<table class="retval">
|
||||
<tr><td class="paramname">IVEC</td><td>MCAL status </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a6bca37cb7ab71bb92d2ec567a7982003"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a6bca37cb7ab71bb92d2ec567a7982003">◆ </a></span>xMCAL_DmaInit()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">IVEC_McalStatus_e xMCAL_DmaInit </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">void </td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Initlization of DMA for ADC. </p>
|
||||
<dl class="section note"><dt>Note</dt><dd>Interruptions enabled in this function </dd></dl>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">adc_inst</td><td>ADC handle </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="retval"><dt>Return values</dt><dd>
|
||||
<table class="retval">
|
||||
<tr><td class="paramname">IVEC</td><td>MCAL status </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="af4186516cdf4ccad2e739b062d8e496e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#af4186516cdf4ccad2e739b062d8e496e">◆ </a></span>xMCAL_DmaStart()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">IVEC_McalStatus_e xMCAL_DmaStart </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const uint8_t </td>
|
||||
<td class="paramname"><em>u8channel</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">uint16_t * </td>
|
||||
<td class="paramname"><em>p_u16adcDma</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Enable DMA, start transfer from ADC to DMA of regular group. </p>
|
||||
<dl class="section note"><dt>Note</dt><dd>Interruptions enabled in this function: None. </dd></dl>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">u8Channel</td><td>use to pass the DMA channel </td></tr>
|
||||
<tr><td class="paramname">p_u16adcDma</td><td>use to get the ADC raw </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="retval"><dt>Return values</dt><dd>
|
||||
<table class="retval">
|
||||
<tr><td class="paramname">IVEC</td><td>MCAL status </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a86d92e7db5108dc91502d5a118f49864"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a86d92e7db5108dc91502d5a118f49864">◆ </a></span>xMCAL_DmaStop()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">IVEC_McalStatus_e xMCAL_DmaStop </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">void </td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Function use to set the DMA channel. </p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">u8Channel</td><td>use to pass the DMA channel </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="retval"><dt>Return values</dt><dd>
|
||||
<table class="retval">
|
||||
<tr><td class="paramname">IVEC</td><td>MCAL status </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="groupheader">Variable Documentation</h2>
|
||||
<a id="ae8bf595fdf07ae38cd281ee554b31e97"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae8bf595fdf07ae38cd281ee554b31e97">◆ </a></span>g_u32AdcInitFlag</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">volatile bool g_u32AdcInitFlag = 0</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>ADC initialization flag <br />
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a21c312fa56d5beb1ca9fae155d0a1609"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a21c312fa56d5beb1ca9fae155d0a1609">◆ </a></span>g_u32AdcStartFlag</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">volatile bool g_u32AdcStartFlag =0</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>ADC start - stop flag <br />
|
||||
</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a9eff7688a6f3ba4b0f1b28adc5c80a3c"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a9eff7688a6f3ba4b0f1b28adc5c80a3c">◆ </a></span>g_u32DmaFlag</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">volatile bool g_u32DmaFlag =0</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>DMA initialization flag </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a1038428a9d3b822427c438df06a8ec44"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a1038428a9d3b822427c438df06a8ec44">◆ </a></span>g_u32DmaStart</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">volatile bool g_u32DmaStart =0</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>DMA initialization flag </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="acf01d1195f672e52c0674823195322f0"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#acf01d1195f672e52c0674823195322f0">◆ </a></span>gADC12_1ClockConfig</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">const DL_ADC12_ClockConfig gADC12_1ClockConfig</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
|
||||
<div class="line"> .clockSel = DL_ADC12_CLOCK_SYSOSC,</div>
|
||||
<div class="line"> .divideRatio = DL_ADC12_CLOCK_DIVIDE_1,</div>
|
||||
<div class="line"> .freqRange = DL_ADC12_CLOCK_FREQ_RANGE_24_TO_32,</div>
|
||||
<div class="line">}</div>
|
||||
</div><!-- fragment -->
|
||||
<p>Configuration for ADC12_0 clock. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a55d4403e4654815d9b78943f6c1672b4"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a55d4403e4654815d9b78943f6c1672b4">◆ </a></span>gDMA_CH0Config</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">const DL_DMA_Config gDMA_CH0Config</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
|
||||
<div class="line"> .transferMode = DL_DMA_SINGLE_TRANSFER_MODE,</div>
|
||||
<div class="line"> .extendedMode = DL_DMA_NORMAL_MODE,</div>
|
||||
<div class="line"> .destIncrement = DL_DMA_ADDR_UNCHANGED,</div>
|
||||
<div class="line"> .srcIncrement = DL_DMA_ADDR_UNCHANGED,</div>
|
||||
<div class="line"> .destWidth = DL_DMA_WIDTH_WORD,</div>
|
||||
<div class="line"> .srcWidth = DL_DMA_WIDTH_WORD,</div>
|
||||
<div class="line"> .trigger = ADC12_1_INST_DMA_TRIGGER,</div>
|
||||
<div class="line"> .triggerType = DL_DMA_TRIGGER_TYPE_EXTERNAL,</div>
|
||||
<div class="line">}</div>
|
||||
</div><!-- fragment -->
|
||||
<p>Configuration for DMA. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.16
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,50 @@
|
|||
/*
|
||||
@licstart The following is the entire license notice for the
|
||||
JavaScript code in this file.
|
||||
|
||||
Copyright (C) 1997-2017 by Dimitri van Heesch
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
@licend The above is the entire license notice
|
||||
for the JavaScript code in this file
|
||||
*/
|
||||
function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
|
||||
function makeTree(data,relPath) {
|
||||
var result='';
|
||||
if ('children' in data) {
|
||||
result+='<ul>';
|
||||
for (var i in data.children) {
|
||||
result+='<li><a href="'+relPath+data.children[i].url+'">'+
|
||||
data.children[i].text+'</a>'+
|
||||
makeTree(data.children[i],relPath)+'</li>';
|
||||
}
|
||||
result+='</ul>';
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
$('#main-nav').append(makeTree(menudata,relPath));
|
||||
$('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
|
||||
if (searchEnabled) {
|
||||
if (serverSide) {
|
||||
$('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><div class="left"><form id="FSearchBox" action="'+relPath+searchPage+'" method="get"><img id="MSearchSelect" src="'+relPath+'search/mag.png" alt=""/><input type="text" id="MSearchField" name="query" value="'+search+'" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)"></form></div><div class="right"></div></div></li>');
|
||||
} else {
|
||||
$('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><span class="left"><img id="MSearchSelect" src="'+relPath+'search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/><input type="text" id="MSearchField" value="'+search+'" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/></span><span class="right"><a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="'+relPath+'search/close.png" alt=""/></a></span></div></li>');
|
||||
}
|
||||
}
|
||||
$('#main-menu').smartmenus();
|
||||
}
|
||||
/* @license-end */
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
/*
|
||||
@licstart The following is the entire license notice for the
|
||||
JavaScript code in this file.
|
||||
|
||||
Copyright (C) 1997-2019 by Dimitri van Heesch
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of version 2 of the GNU General Public License as published by
|
||||
the Free Software Foundation
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
@licend The above is the entire license notice
|
||||
for the JavaScript code in this file
|
||||
*/
|
||||
var menudata={children:[
|
||||
{text:"Main Page",url:"index.html"},
|
||||
{text:"Files",url:"files.html",children:[
|
||||
{text:"File List",url:"files.html"},
|
||||
{text:"Globals",url:"globals.html",children:[
|
||||
{text:"All",url:"globals.html",children:[
|
||||
{text:"_",url:"globals.html#index__5F"},
|
||||
{text:"a",url:"globals.html#index_a"},
|
||||
{text:"f",url:"globals.html#index_f"},
|
||||
{text:"g",url:"globals.html#index_g"},
|
||||
{text:"m",url:"globals.html#index_m"},
|
||||
{text:"t",url:"globals.html#index_t"},
|
||||
{text:"v",url:"globals.html#index_v"},
|
||||
{text:"x",url:"globals.html#index_x"}]},
|
||||
{text:"Functions",url:"globals_func.html",children:[
|
||||
{text:"_",url:"globals_func.html#index__5F"},
|
||||
{text:"a",url:"globals_func.html#index_a"},
|
||||
{text:"m",url:"globals_func.html#index_m"},
|
||||
{text:"t",url:"globals_func.html#index_t"},
|
||||
{text:"v",url:"globals_func.html#index_v"},
|
||||
{text:"x",url:"globals_func.html#index_x"}]},
|
||||
{text:"Variables",url:"globals_vars.html"}]}]}]}
|
||||
|
After Width: | Height: | Size: 153 B |
|
After Width: | Height: | Size: 95 B |
|
After Width: | Height: | Size: 98 B |
|
After Width: | Height: | Size: 123 B |
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_0.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
var searchData=
|
||||
[
|
||||
['_5fprv_5fadccallback_0',['_prv_adccallback',['../ivec__mcal__adc__dma_8c.html#a57beca8b8e3c29381f89c77272f32b68',1,'ivec_mcal_adc_dma.c']]],
|
||||
['_5fprv_5ftimacallback_1',['_prv_timAcallback',['../ivec__mcal__timer_8c.html#a9981e88dbc39b7bb02d463a9ea4f3fa4',1,'ivec_mcal_timer.c']]],
|
||||
['_5fprv_5ftimgcallback_2',['_prv_timGcallback',['../ivec__mcal__timer_8c.html#a39ed10ab2a6d4e159f8a9a7d4190fb7c',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_1.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
var searchData=
|
||||
[
|
||||
['adc1_5firqhandler_3',['ADC1_IRQHandler',['../ivec__mcal__adc__dma_8c.html#a55924a8071033769a12ad0e752f67c8b',1,'ivec_mcal_adc_dma.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_2.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
var searchData=
|
||||
[
|
||||
['f_5ffrequency_4',['f_frequency',['../ivec__mcal__timer_8c.html#a8f498d8164a8b5f1fe226ac7a1065223',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_3.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
var searchData=
|
||||
[
|
||||
['g_5fu32adcinitflag_5',['g_u32AdcInitFlag',['../ivec__mcal__adc__dma_8c.html#ae8bf595fdf07ae38cd281ee554b31e97',1,'ivec_mcal_adc_dma.c']]],
|
||||
['g_5fu32adcstartflag_6',['g_u32AdcStartFlag',['../ivec__mcal__adc__dma_8c.html#a21c312fa56d5beb1ca9fae155d0a1609',1,'ivec_mcal_adc_dma.c']]],
|
||||
['g_5fu32captureperiod_7',['g_u32CapturePeriod',['../ivec__mcal__timer_8c.html#a3364e3b26758d05e1b38b646f4054044',1,'ivec_mcal_timer.c']]],
|
||||
['g_5fu32capturevalue0_8',['g_u32CaptureValue0',['../ivec__mcal__timer_8c.html#a5085e6839b8d01a71d9a1864a6a69753',1,'ivec_mcal_timer.c']]],
|
||||
['g_5fu32capturevalue1_9',['g_u32CaptureValue1',['../ivec__mcal__timer_8c.html#a6c802071700ba3bf42eca5156386a8a9',1,'ivec_mcal_timer.c']]],
|
||||
['g_5fu32dmaflag_10',['g_u32DmaFlag',['../ivec__mcal__adc__dma_8c.html#a9eff7688a6f3ba4b0f1b28adc5c80a3c',1,'ivec_mcal_adc_dma.c']]],
|
||||
['g_5fu32dmastart_11',['g_u32DmaStart',['../ivec__mcal__adc__dma_8c.html#a1038428a9d3b822427c438df06a8ec44',1,'ivec_mcal_adc_dma.c']]],
|
||||
['g_5fu32inputcaputerflag_12',['g_u32InputCaputerflag',['../ivec__mcal__timer_8c.html#a2b584b8480730a5e8b81f41dabdc3c65',1,'ivec_mcal_timer.c']]],
|
||||
['g_5fu32loadvalue_13',['g_u32LoadValue',['../ivec__mcal__timer_8c.html#ac844ec204b29603b2535167b848a8450',1,'ivec_mcal_timer.c']]],
|
||||
['g_5fu32pwminitflag_14',['g_u32PwmInitflag',['../ivec__mcal__timer_8c.html#ae9f6b5d3e0f0c98e69d36aec59297b93',1,'ivec_mcal_timer.c']]],
|
||||
['g_5fu32pwmstartflag_15',['g_u32Pwmstartflag',['../ivec__mcal__timer_8c.html#a30c0b354b81726f2b556773926a2b8a4',1,'ivec_mcal_timer.c']]],
|
||||
['g_5fu32timercounterflag_16',['g_u32TimerCounterFlag',['../ivec__mcal__timer_8c.html#a68bd1e66940c9f90419de8112a61792b',1,'ivec_mcal_timer.c']]],
|
||||
['g_5fu32timerinitflag_17',['g_u32TimerInitFlag',['../ivec__mcal__timer_8c.html#ad293840e9710293a11e123f501d4953c',1,'ivec_mcal_timer.c']]],
|
||||
['gadc12_5f1clockconfig_18',['gADC12_1ClockConfig',['../ivec__mcal__adc__dma_8c.html#acf01d1195f672e52c0674823195322f0',1,'ivec_mcal_adc_dma.c']]],
|
||||
['gcapture_5f0captureconfig_19',['gCAPTURE_0CaptureConfig',['../ivec__mcal__timer_8c.html#af3bb7eed2ea009bbb2ef2fb6a5b2c03b',1,'ivec_mcal_timer.c']]],
|
||||
['gcapture_5f0clockconfig_20',['gCAPTURE_0ClockConfig',['../ivec__mcal__timer_8c.html#a4cb7aaac1ab4f32cf08bdad1bf1cae45',1,'ivec_mcal_timer.c']]],
|
||||
['gdma_5fch0config_21',['gDMA_CH0Config',['../ivec__mcal__adc__dma_8c.html#a55d4403e4654815d9b78943f6c1672b4',1,'ivec_mcal_adc_dma.c']]],
|
||||
['gpio_2ec_22',['gpio.c',['../gpio_8c.html',1,'']]],
|
||||
['gpioinitcounter_23',['GPIOInitCounter',['../gpio_8c.html#a9c374bc0a8da82f26002077648439d2e',1,'gpio.c']]],
|
||||
['gpwm_5f0clockconfig_24',['gPWM_0ClockConfig',['../ivec__mcal__timer_8c.html#a0ae32b282e1a0055a2bfb40dde156ee8',1,'ivec_mcal_timer.c']]],
|
||||
['gpwm_5f0config_25',['gPWM_0Config',['../ivec__mcal__timer_8c.html#a1d0ba15433c1c3eebee1f54eca6d8765',1,'ivec_mcal_timer.c']]],
|
||||
['gtimer_5f0clockconfig_26',['gTIMER_0ClockConfig',['../ivec__mcal__timer_8c.html#a315d979d68b79fc842574a8d5251f14d',1,'ivec_mcal_timer.c']]],
|
||||
['gtimer_5f0timerconfig_27',['gTIMER_0TimerConfig',['../ivec__mcal__timer_8c.html#a1f36f4fd8eca8231d01682c58870661b',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_4.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
var searchData=
|
||||
[
|
||||
['ivec_5fmcal_5fadc_5fdma_2ec_28',['ivec_mcal_adc_dma.c',['../ivec__mcal__adc__dma_8c.html',1,'']]],
|
||||
['ivec_5fmcal_5ftimer_2ec_29',['ivec_mcal_timer.c',['../ivec__mcal__timer_8c.html',1,'']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_5.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
var searchData=
|
||||
[
|
||||
['mcu_5fgpiodeinitmcal_30',['mcu_gpioDeInitMcal',['../gpio_8c.html#a0a0f2ebe87263ebaf7d2a5b82b3323f3',1,'gpio.c']]],
|
||||
['mcu_5fgpioinitallmcal_31',['mcu_gpioInitAllMcal',['../gpio_8c.html#ad175e9af1360c572a452f01a6810743f',1,'gpio.c']]],
|
||||
['mcu_5fgpioreadmcal_32',['mcu_gpioReadMcal',['../gpio_8c.html#ab06af00aff6dcb76b738d675fd006945',1,'gpio.c']]],
|
||||
['mcu_5fgpiotogglemcal_33',['mcu_gpioToggleMcal',['../gpio_8c.html#a6ac893a301d3f18eff66dc7a5a20dbd2',1,'gpio.c']]],
|
||||
['mcu_5fgpiowritemcal_34',['mcu_gpioWriteMcal',['../gpio_8c.html#a617cf0cf44f313c752e64938cc69f078',1,'gpio.c']]],
|
||||
['mcu_5fset_5fgpiodirectionmcal_35',['mcu_set_gpioDirectionMcal',['../gpio_8c.html#ac43adb1d6237423192f51fad6680cb86',1,'gpio.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_6.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
var searchData=
|
||||
[
|
||||
['tima0_5firqhandler_36',['TIMA0_IRQHandler',['../ivec__mcal__timer_8c.html#aceda73b51d2eabfba673bc0101cfd333',1,'ivec_mcal_timer.c']]],
|
||||
['timg0_5firqhandler_37',['TIMG0_IRQHandler',['../ivec__mcal__timer_8c.html#a793ba621e13e6300361d71aa960ff509',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_7.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
var searchData=
|
||||
[
|
||||
['uart_2ec_38',['uart.c',['../uart_8c.html',1,'']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_8.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
var searchData=
|
||||
[
|
||||
['vmcal_5fcalcfrequency_39',['vMCAL_Calcfrequency',['../ivec__mcal__timer_8c.html#aaaba6906df06a72eea1870b2fb93b344',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="all_9.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
var searchData=
|
||||
[
|
||||
['xmcal_5fadcdeinit_40',['xMCAL_AdcDeInit',['../ivec__mcal__adc__dma_8c.html#a368cb56303959284205ba88b9b01760b',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fadcinit_41',['xMCAL_AdcInit',['../ivec__mcal__adc__dma_8c.html#ac8cb58c0739bc24340af7b896c014384',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fadcstart_42',['xMCAL_AdcStart',['../ivec__mcal__adc__dma_8c.html#a434795b35e62fbcfb4861849a414c94c',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fadcstop_43',['xMCAL_AdcStop',['../ivec__mcal__adc__dma_8c.html#aa04addc8765b1ad2024e57766304536a',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fdmadeinit_44',['xMCAL_DmaDeInit',['../ivec__mcal__adc__dma_8c.html#a25ea8d77c5ec67434ece105386c7b874',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fdmainit_45',['xMCAL_DmaInit',['../ivec__mcal__adc__dma_8c.html#a6bca37cb7ab71bb92d2ec567a7982003',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fdmastart_46',['xMCAL_DmaStart',['../ivec__mcal__adc__dma_8c.html#af4186516cdf4ccad2e739b062d8e496e',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fdmastop_47',['xMCAL_DmaStop',['../ivec__mcal__adc__dma_8c.html#a86d92e7db5108dc91502d5a118f49864',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5finputcapturedeinit_48',['xMCAL_InputCaptureDeInit',['../ivec__mcal__timer_8c.html#abac50c1a2c1bf54f5667e3beec45f807',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5finputcaptureinit_49',['xMCAL_InputCaptureInit',['../ivec__mcal__timer_8c.html#a06d120975c4ecbd9172afae40c10c070',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5finputcapturestart_50',['xMCAL_InputCaptureStart',['../ivec__mcal__timer_8c.html#afaa8036c34656643f0f3c78418045558',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5finputcapturestop_51',['xMCAL_InputCaptureStop',['../ivec__mcal__timer_8c.html#a7880a0e54486cce5ae226497dce7f76d',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5fpwmdeinit_52',['xMCAL_PwmDeInit',['../ivec__mcal__timer_8c.html#ad6a8ab55481dcb0bd90bbbfe2619eb6f',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5fpwminit_53',['xMCAL_PwmInit',['../ivec__mcal__timer_8c.html#a873f0c0cb5202a2f6405e51d39351392',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5fpwmstart_54',['xMCAL_PwmStart',['../ivec__mcal__timer_8c.html#a49967c43fb1cf87442514b93e10ab5cb',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5fpwmstop_55',['xMCAL_PwmStop',['../ivec__mcal__timer_8c.html#a3b0ad75cdcd24c1d880a30c9beac3c9c',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimerdeinit_56',['xMCAL_TimerDeInit',['../ivec__mcal__timer_8c.html#a4bdb13bdf03682b629d3e7fc44b8dc10',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimergetcount_57',['xMCAL_TimergetCount',['../ivec__mcal__timer_8c.html#a257cd4ace5ba831d880a6e98ce9b105a',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimerinit_58',['xMCAL_TimerInit',['../ivec__mcal__timer_8c.html#ac505d1366e2daba130aa5de2d34e880b',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimersetloadvalue_59',['xMCAL_TimersetLoadValue',['../ivec__mcal__timer_8c.html#a92c540531f5d5cb9c4c1aa66dc55dd0b',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimerstartcounter_60',['xMCAL_TimerstartCounter',['../ivec__mcal__timer_8c.html#a05df50b9eac9dd77d022fc14fba6ff7b',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimerstopcounter_61',['xMCAL_TimerstopCounter',['../ivec__mcal__timer_8c.html#a14f98717c817a01bd6e5d7701ad969de',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
After Width: | Height: | Size: 273 B |
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="files_0.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
var searchData=
|
||||
[
|
||||
['gpio_2ec_62',['gpio.c',['../gpio_8c.html',1,'']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="files_1.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
var searchData=
|
||||
[
|
||||
['ivec_5fmcal_5fadc_5fdma_2ec_63',['ivec_mcal_adc_dma.c',['../ivec__mcal__adc__dma_8c.html',1,'']]],
|
||||
['ivec_5fmcal_5ftimer_2ec_64',['ivec_mcal_timer.c',['../ivec__mcal__timer_8c.html',1,'']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="files_2.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
var searchData=
|
||||
[
|
||||
['uart_2ec_65',['uart.c',['../uart_8c.html',1,'']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="functions_0.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
var searchData=
|
||||
[
|
||||
['_5fprv_5fadccallback_66',['_prv_adccallback',['../ivec__mcal__adc__dma_8c.html#a57beca8b8e3c29381f89c77272f32b68',1,'ivec_mcal_adc_dma.c']]],
|
||||
['_5fprv_5ftimacallback_67',['_prv_timAcallback',['../ivec__mcal__timer_8c.html#a9981e88dbc39b7bb02d463a9ea4f3fa4',1,'ivec_mcal_timer.c']]],
|
||||
['_5fprv_5ftimgcallback_68',['_prv_timGcallback',['../ivec__mcal__timer_8c.html#a39ed10ab2a6d4e159f8a9a7d4190fb7c',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="functions_1.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
var searchData=
|
||||
[
|
||||
['adc1_5firqhandler_69',['ADC1_IRQHandler',['../ivec__mcal__adc__dma_8c.html#a55924a8071033769a12ad0e752f67c8b',1,'ivec_mcal_adc_dma.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="functions_2.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
var searchData=
|
||||
[
|
||||
['mcu_5fgpiodeinitmcal_70',['mcu_gpioDeInitMcal',['../gpio_8c.html#a0a0f2ebe87263ebaf7d2a5b82b3323f3',1,'gpio.c']]],
|
||||
['mcu_5fgpioinitallmcal_71',['mcu_gpioInitAllMcal',['../gpio_8c.html#ad175e9af1360c572a452f01a6810743f',1,'gpio.c']]],
|
||||
['mcu_5fgpioreadmcal_72',['mcu_gpioReadMcal',['../gpio_8c.html#ab06af00aff6dcb76b738d675fd006945',1,'gpio.c']]],
|
||||
['mcu_5fgpiotogglemcal_73',['mcu_gpioToggleMcal',['../gpio_8c.html#a6ac893a301d3f18eff66dc7a5a20dbd2',1,'gpio.c']]],
|
||||
['mcu_5fgpiowritemcal_74',['mcu_gpioWriteMcal',['../gpio_8c.html#a617cf0cf44f313c752e64938cc69f078',1,'gpio.c']]],
|
||||
['mcu_5fset_5fgpiodirectionmcal_75',['mcu_set_gpioDirectionMcal',['../gpio_8c.html#ac43adb1d6237423192f51fad6680cb86',1,'gpio.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="functions_3.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
var searchData=
|
||||
[
|
||||
['tima0_5firqhandler_76',['TIMA0_IRQHandler',['../ivec__mcal__timer_8c.html#aceda73b51d2eabfba673bc0101cfd333',1,'ivec_mcal_timer.c']]],
|
||||
['timg0_5firqhandler_77',['TIMG0_IRQHandler',['../ivec__mcal__timer_8c.html#a793ba621e13e6300361d71aa960ff509',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="functions_4.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
var searchData=
|
||||
[
|
||||
['vmcal_5fcalcfrequency_78',['vMCAL_Calcfrequency',['../ivec__mcal__timer_8c.html#aaaba6906df06a72eea1870b2fb93b344',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta name="generator" content="Doxygen 1.8.16"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="functions_5.js"></script>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="Loading">Loading...</div>
|
||||
<div id="SRResults"></div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
createResults();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
<div class="SRStatus" id="Searching">Searching...</div>
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
<script type="text/javascript"><!--
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
document.getElementById("Loading").style.display="none";
|
||||
document.getElementById("NoMatches").style.display="none";
|
||||
var searchResults = new SearchResults("searchResults");
|
||||
searchResults.Search();
|
||||
/* @license-end */
|
||||
--></script>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
var searchData=
|
||||
[
|
||||
['xmcal_5fadcdeinit_79',['xMCAL_AdcDeInit',['../ivec__mcal__adc__dma_8c.html#a368cb56303959284205ba88b9b01760b',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fadcinit_80',['xMCAL_AdcInit',['../ivec__mcal__adc__dma_8c.html#ac8cb58c0739bc24340af7b896c014384',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fadcstart_81',['xMCAL_AdcStart',['../ivec__mcal__adc__dma_8c.html#a434795b35e62fbcfb4861849a414c94c',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fadcstop_82',['xMCAL_AdcStop',['../ivec__mcal__adc__dma_8c.html#aa04addc8765b1ad2024e57766304536a',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fdmadeinit_83',['xMCAL_DmaDeInit',['../ivec__mcal__adc__dma_8c.html#a25ea8d77c5ec67434ece105386c7b874',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fdmainit_84',['xMCAL_DmaInit',['../ivec__mcal__adc__dma_8c.html#a6bca37cb7ab71bb92d2ec567a7982003',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fdmastart_85',['xMCAL_DmaStart',['../ivec__mcal__adc__dma_8c.html#af4186516cdf4ccad2e739b062d8e496e',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5fdmastop_86',['xMCAL_DmaStop',['../ivec__mcal__adc__dma_8c.html#a86d92e7db5108dc91502d5a118f49864',1,'ivec_mcal_adc_dma.c']]],
|
||||
['xmcal_5finputcapturedeinit_87',['xMCAL_InputCaptureDeInit',['../ivec__mcal__timer_8c.html#abac50c1a2c1bf54f5667e3beec45f807',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5finputcaptureinit_88',['xMCAL_InputCaptureInit',['../ivec__mcal__timer_8c.html#a06d120975c4ecbd9172afae40c10c070',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5finputcapturestart_89',['xMCAL_InputCaptureStart',['../ivec__mcal__timer_8c.html#afaa8036c34656643f0f3c78418045558',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5finputcapturestop_90',['xMCAL_InputCaptureStop',['../ivec__mcal__timer_8c.html#a7880a0e54486cce5ae226497dce7f76d',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5fpwmdeinit_91',['xMCAL_PwmDeInit',['../ivec__mcal__timer_8c.html#ad6a8ab55481dcb0bd90bbbfe2619eb6f',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5fpwminit_92',['xMCAL_PwmInit',['../ivec__mcal__timer_8c.html#a873f0c0cb5202a2f6405e51d39351392',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5fpwmstart_93',['xMCAL_PwmStart',['../ivec__mcal__timer_8c.html#a49967c43fb1cf87442514b93e10ab5cb',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5fpwmstop_94',['xMCAL_PwmStop',['../ivec__mcal__timer_8c.html#a3b0ad75cdcd24c1d880a30c9beac3c9c',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimerdeinit_95',['xMCAL_TimerDeInit',['../ivec__mcal__timer_8c.html#a4bdb13bdf03682b629d3e7fc44b8dc10',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimergetcount_96',['xMCAL_TimergetCount',['../ivec__mcal__timer_8c.html#a257cd4ace5ba831d880a6e98ce9b105a',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimerinit_97',['xMCAL_TimerInit',['../ivec__mcal__timer_8c.html#ac505d1366e2daba130aa5de2d34e880b',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimersetloadvalue_98',['xMCAL_TimersetLoadValue',['../ivec__mcal__timer_8c.html#a92c540531f5d5cb9c4c1aa66dc55dd0b',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimerstartcounter_99',['xMCAL_TimerstartCounter',['../ivec__mcal__timer_8c.html#a05df50b9eac9dd77d022fc14fba6ff7b',1,'ivec_mcal_timer.c']]],
|
||||
['xmcal_5ftimerstopcounter_100',['xMCAL_TimerstopCounter',['../ivec__mcal__timer_8c.html#a14f98717c817a01bd6e5d7701ad969de',1,'ivec_mcal_timer.c']]]
|
||||
];
|
||||
|
After Width: | Height: | Size: 465 B |
|
|
@ -0,0 +1,12 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html><head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<link rel="stylesheet" type="text/css" href="search.css"/>
|
||||
<script type="text/javascript" src="search.js"></script>
|
||||
</head>
|
||||
<body class="SRPage">
|
||||
<div id="SRIndex">
|
||||
<div class="SRStatus" id="NoMatches">No Matches</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,271 @@
|
|||
/*---------------- Search Box */
|
||||
|
||||
#FSearchBox {
|
||||
float: left;
|
||||
}
|
||||
|
||||
#MSearchBox {
|
||||
white-space : nowrap;
|
||||
float: none;
|
||||
margin-top: 8px;
|
||||
right: 0px;
|
||||
width: 170px;
|
||||
height: 24px;
|
||||
z-index: 102;
|
||||
}
|
||||
|
||||
#MSearchBox .left
|
||||
{
|
||||
display:block;
|
||||
position:absolute;
|
||||
left:10px;
|
||||
width:20px;
|
||||
height:19px;
|
||||
background:url('search_l.png') no-repeat;
|
||||
background-position:right;
|
||||
}
|
||||
|
||||
#MSearchSelect {
|
||||
display:block;
|
||||
position:absolute;
|
||||
width:20px;
|
||||
height:19px;
|
||||
}
|
||||
|
||||
.left #MSearchSelect {
|
||||
left:4px;
|
||||
}
|
||||
|
||||
.right #MSearchSelect {
|
||||
right:5px;
|
||||
}
|
||||
|
||||
#MSearchField {
|
||||
display:block;
|
||||
position:absolute;
|
||||
height:19px;
|
||||
background:url('search_m.png') repeat-x;
|
||||
border:none;
|
||||
width:115px;
|
||||
margin-left:20px;
|
||||
padding-left:4px;
|
||||
color: #909090;
|
||||
outline: none;
|
||||
font: 9pt Arial, Verdana, sans-serif;
|
||||
-webkit-border-radius: 0px;
|
||||
}
|
||||
|
||||
#FSearchBox #MSearchField {
|
||||
margin-left:15px;
|
||||
}
|
||||
|
||||
#MSearchBox .right {
|
||||
display:block;
|
||||
position:absolute;
|
||||
right:10px;
|
||||
top:8px;
|
||||
width:20px;
|
||||
height:19px;
|
||||
background:url('search_r.png') no-repeat;
|
||||
background-position:left;
|
||||
}
|
||||
|
||||
#MSearchClose {
|
||||
display: none;
|
||||
position: absolute;
|
||||
top: 4px;
|
||||
background : none;
|
||||
border: none;
|
||||
margin: 0px 4px 0px 0px;
|
||||
padding: 0px 0px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.left #MSearchClose {
|
||||
left: 6px;
|
||||
}
|
||||
|
||||
.right #MSearchClose {
|
||||
right: 2px;
|
||||
}
|
||||
|
||||
.MSearchBoxActive #MSearchField {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
/*---------------- Search filter selection */
|
||||
|
||||
#MSearchSelectWindow {
|
||||
display: none;
|
||||
position: absolute;
|
||||
left: 0; top: 0;
|
||||
border: 1px solid #90A5CE;
|
||||
background-color: #F9FAFC;
|
||||
z-index: 10001;
|
||||
padding-top: 4px;
|
||||
padding-bottom: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
-webkit-border-top-left-radius: 4px;
|
||||
-webkit-border-top-right-radius: 4px;
|
||||
-webkit-border-bottom-left-radius: 4px;
|
||||
-webkit-border-bottom-right-radius: 4px;
|
||||
-webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
|
||||
.SelectItem {
|
||||
font: 8pt Arial, Verdana, sans-serif;
|
||||
padding-left: 2px;
|
||||
padding-right: 12px;
|
||||
border: 0px;
|
||||
}
|
||||
|
||||
span.SelectionMark {
|
||||
margin-right: 4px;
|
||||
font-family: monospace;
|
||||
outline-style: none;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a.SelectItem {
|
||||
display: block;
|
||||
outline-style: none;
|
||||
color: #000000;
|
||||
text-decoration: none;
|
||||
padding-left: 6px;
|
||||
padding-right: 12px;
|
||||
}
|
||||
|
||||
a.SelectItem:focus,
|
||||
a.SelectItem:active {
|
||||
color: #000000;
|
||||
outline-style: none;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a.SelectItem:hover {
|
||||
color: #FFFFFF;
|
||||
background-color: #3D578C;
|
||||
outline-style: none;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
display: block;
|
||||
}
|
||||
|
||||
/*---------------- Search results window */
|
||||
|
||||
iframe#MSearchResults {
|
||||
width: 60ex;
|
||||
height: 15em;
|
||||
}
|
||||
|
||||
#MSearchResultsWindow {
|
||||
display: none;
|
||||
position: absolute;
|
||||
left: 0; top: 0;
|
||||
border: 1px solid #000;
|
||||
background-color: #EEF1F7;
|
||||
z-index:10000;
|
||||
}
|
||||
|
||||
/* ----------------------------------- */
|
||||
|
||||
|
||||
#SRIndex {
|
||||
clear:both;
|
||||
padding-bottom: 15px;
|
||||
}
|
||||
|
||||
.SREntry {
|
||||
font-size: 10pt;
|
||||
padding-left: 1ex;
|
||||
}
|
||||
|
||||
.SRPage .SREntry {
|
||||
font-size: 8pt;
|
||||
padding: 1px 5px;
|
||||
}
|
||||
|
||||
body.SRPage {
|
||||
margin: 5px 2px;
|
||||
}
|
||||
|
||||
.SRChildren {
|
||||
padding-left: 3ex; padding-bottom: .5em
|
||||
}
|
||||
|
||||
.SRPage .SRChildren {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.SRSymbol {
|
||||
font-weight: bold;
|
||||
color: #425E97;
|
||||
font-family: Arial, Verdana, sans-serif;
|
||||
text-decoration: none;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
a.SRScope {
|
||||
display: block;
|
||||
color: #425E97;
|
||||
font-family: Arial, Verdana, sans-serif;
|
||||
text-decoration: none;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
a.SRSymbol:focus, a.SRSymbol:active,
|
||||
a.SRScope:focus, a.SRScope:active {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
span.SRScope {
|
||||
padding-left: 4px;
|
||||
}
|
||||
|
||||
.SRPage .SRStatus {
|
||||
padding: 2px 5px;
|
||||
font-size: 8pt;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.SRResult {
|
||||
display: none;
|
||||
}
|
||||
|
||||
DIV.searchresults {
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
/*---------------- External search page results */
|
||||
|
||||
.searchresult {
|
||||
background-color: #F0F3F8;
|
||||
}
|
||||
|
||||
.pages b {
|
||||
color: white;
|
||||
padding: 5px 5px 3px 5px;
|
||||
background-image: url("../tab_a.png");
|
||||
background-repeat: repeat-x;
|
||||
text-shadow: 0 1px 1px #000000;
|
||||
}
|
||||
|
||||
.pages {
|
||||
line-height: 17px;
|
||||
margin-left: 4px;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.hl {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#searchresults {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.searchpages {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,814 @@
|
|||
/*
|
||||
@licstart The following is the entire license notice for the
|
||||
JavaScript code in this file.
|
||||
|
||||
Copyright (C) 1997-2017 by Dimitri van Heesch
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
@licend The above is the entire license notice
|
||||
for the JavaScript code in this file
|
||||
*/
|
||||
function convertToId(search)
|
||||
{
|
||||
var result = '';
|
||||
for (i=0;i<search.length;i++)
|
||||
{
|
||||
var c = search.charAt(i);
|
||||
var cn = c.charCodeAt(0);
|
||||
if (c.match(/[a-z0-9\u0080-\uFFFF]/))
|
||||
{
|
||||
result+=c;
|
||||
}
|
||||
else if (cn<16)
|
||||
{
|
||||
result+="_0"+cn.toString(16);
|
||||
}
|
||||
else
|
||||
{
|
||||
result+="_"+cn.toString(16);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
function getXPos(item)
|
||||
{
|
||||
var x = 0;
|
||||
if (item.offsetWidth)
|
||||
{
|
||||
while (item && item!=document.body)
|
||||
{
|
||||
x += item.offsetLeft;
|
||||
item = item.offsetParent;
|
||||
}
|
||||
}
|
||||
return x;
|
||||
}
|
||||
|
||||
function getYPos(item)
|
||||
{
|
||||
var y = 0;
|
||||
if (item.offsetWidth)
|
||||
{
|
||||
while (item && item!=document.body)
|
||||
{
|
||||
y += item.offsetTop;
|
||||
item = item.offsetParent;
|
||||
}
|
||||
}
|
||||
return y;
|
||||
}
|
||||
|
||||
/* A class handling everything associated with the search panel.
|
||||
|
||||
Parameters:
|
||||
name - The name of the global variable that will be
|
||||
storing this instance. Is needed to be able to set timeouts.
|
||||
resultPath - path to use for external files
|
||||
*/
|
||||
function SearchBox(name, resultsPath, inFrame, label)
|
||||
{
|
||||
if (!name || !resultsPath) { alert("Missing parameters to SearchBox."); }
|
||||
|
||||
// ---------- Instance variables
|
||||
this.name = name;
|
||||
this.resultsPath = resultsPath;
|
||||
this.keyTimeout = 0;
|
||||
this.keyTimeoutLength = 500;
|
||||
this.closeSelectionTimeout = 300;
|
||||
this.lastSearchValue = "";
|
||||
this.lastResultsPage = "";
|
||||
this.hideTimeout = 0;
|
||||
this.searchIndex = 0;
|
||||
this.searchActive = false;
|
||||
this.insideFrame = inFrame;
|
||||
this.searchLabel = label;
|
||||
|
||||
// ----------- DOM Elements
|
||||
|
||||
this.DOMSearchField = function()
|
||||
{ return document.getElementById("MSearchField"); }
|
||||
|
||||
this.DOMSearchSelect = function()
|
||||
{ return document.getElementById("MSearchSelect"); }
|
||||
|
||||
this.DOMSearchSelectWindow = function()
|
||||
{ return document.getElementById("MSearchSelectWindow"); }
|
||||
|
||||
this.DOMPopupSearchResults = function()
|
||||
{ return document.getElementById("MSearchResults"); }
|
||||
|
||||
this.DOMPopupSearchResultsWindow = function()
|
||||
{ return document.getElementById("MSearchResultsWindow"); }
|
||||
|
||||
this.DOMSearchClose = function()
|
||||
{ return document.getElementById("MSearchClose"); }
|
||||
|
||||
this.DOMSearchBox = function()
|
||||
{ return document.getElementById("MSearchBox"); }
|
||||
|
||||
// ------------ Event Handlers
|
||||
|
||||
// Called when focus is added or removed from the search field.
|
||||
this.OnSearchFieldFocus = function(isActive)
|
||||
{
|
||||
this.Activate(isActive);
|
||||
}
|
||||
|
||||
this.OnSearchSelectShow = function()
|
||||
{
|
||||
var searchSelectWindow = this.DOMSearchSelectWindow();
|
||||
var searchField = this.DOMSearchSelect();
|
||||
|
||||
if (this.insideFrame)
|
||||
{
|
||||
var left = getXPos(searchField);
|
||||
var top = getYPos(searchField);
|
||||
left += searchField.offsetWidth + 6;
|
||||
top += searchField.offsetHeight;
|
||||
|
||||
// show search selection popup
|
||||
searchSelectWindow.style.display='block';
|
||||
left -= searchSelectWindow.offsetWidth;
|
||||
searchSelectWindow.style.left = left + 'px';
|
||||
searchSelectWindow.style.top = top + 'px';
|
||||
}
|
||||
else
|
||||
{
|
||||
var left = getXPos(searchField);
|
||||
var top = getYPos(searchField);
|
||||
top += searchField.offsetHeight;
|
||||
|
||||
// show search selection popup
|
||||
searchSelectWindow.style.display='block';
|
||||
searchSelectWindow.style.left = left + 'px';
|
||||
searchSelectWindow.style.top = top + 'px';
|
||||
}
|
||||
|
||||
// stop selection hide timer
|
||||
if (this.hideTimeout)
|
||||
{
|
||||
clearTimeout(this.hideTimeout);
|
||||
this.hideTimeout=0;
|
||||
}
|
||||
return false; // to avoid "image drag" default event
|
||||
}
|
||||
|
||||
this.OnSearchSelectHide = function()
|
||||
{
|
||||
this.hideTimeout = setTimeout(this.name +".CloseSelectionWindow()",
|
||||
this.closeSelectionTimeout);
|
||||
}
|
||||
|
||||
// Called when the content of the search field is changed.
|
||||
this.OnSearchFieldChange = function(evt)
|
||||
{
|
||||
if (this.keyTimeout) // kill running timer
|
||||
{
|
||||
clearTimeout(this.keyTimeout);
|
||||
this.keyTimeout = 0;
|
||||
}
|
||||
|
||||
var e = (evt) ? evt : window.event; // for IE
|
||||
if (e.keyCode==40 || e.keyCode==13)
|
||||
{
|
||||
if (e.shiftKey==1)
|
||||
{
|
||||
this.OnSearchSelectShow();
|
||||
var win=this.DOMSearchSelectWindow();
|
||||
for (i=0;i<win.childNodes.length;i++)
|
||||
{
|
||||
var child = win.childNodes[i]; // get span within a
|
||||
if (child.className=='SelectItem')
|
||||
{
|
||||
child.focus();
|
||||
return;
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if (window.frames.MSearchResults.searchResults)
|
||||
{
|
||||
var elem = window.frames.MSearchResults.searchResults.NavNext(0);
|
||||
if (elem) elem.focus();
|
||||
}
|
||||
}
|
||||
else if (e.keyCode==27) // Escape out of the search field
|
||||
{
|
||||
this.DOMSearchField().blur();
|
||||
this.DOMPopupSearchResultsWindow().style.display = 'none';
|
||||
this.DOMSearchClose().style.display = 'none';
|
||||
this.lastSearchValue = '';
|
||||
this.Activate(false);
|
||||
return;
|
||||
}
|
||||
|
||||
// strip whitespaces
|
||||
var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
|
||||
|
||||
if (searchValue != this.lastSearchValue) // search value has changed
|
||||
{
|
||||
if (searchValue != "") // non-empty search
|
||||
{
|
||||
// set timer for search update
|
||||
this.keyTimeout = setTimeout(this.name + '.Search()',
|
||||
this.keyTimeoutLength);
|
||||
}
|
||||
else // empty search field
|
||||
{
|
||||
this.DOMPopupSearchResultsWindow().style.display = 'none';
|
||||
this.DOMSearchClose().style.display = 'none';
|
||||
this.lastSearchValue = '';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.SelectItemCount = function(id)
|
||||
{
|
||||
var count=0;
|
||||
var win=this.DOMSearchSelectWindow();
|
||||
for (i=0;i<win.childNodes.length;i++)
|
||||
{
|
||||
var child = win.childNodes[i]; // get span within a
|
||||
if (child.className=='SelectItem')
|
||||
{
|
||||
count++;
|
||||
}
|
||||
}
|
||||
return count;
|
||||
}
|
||||
|
||||
this.SelectItemSet = function(id)
|
||||
{
|
||||
var i,j=0;
|
||||
var win=this.DOMSearchSelectWindow();
|
||||
for (i=0;i<win.childNodes.length;i++)
|
||||
{
|
||||
var child = win.childNodes[i]; // get span within a
|
||||
if (child.className=='SelectItem')
|
||||
{
|
||||
var node = child.firstChild;
|
||||
if (j==id)
|
||||
{
|
||||
node.innerHTML='•';
|
||||
}
|
||||
else
|
||||
{
|
||||
node.innerHTML=' ';
|
||||
}
|
||||
j++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Called when an search filter selection is made.
|
||||
// set item with index id as the active item
|
||||
this.OnSelectItem = function(id)
|
||||
{
|
||||
this.searchIndex = id;
|
||||
this.SelectItemSet(id);
|
||||
var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
|
||||
if (searchValue!="" && this.searchActive) // something was found -> do a search
|
||||
{
|
||||
this.Search();
|
||||
}
|
||||
}
|
||||
|
||||
this.OnSearchSelectKey = function(evt)
|
||||
{
|
||||
var e = (evt) ? evt : window.event; // for IE
|
||||
if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) // Down
|
||||
{
|
||||
this.searchIndex++;
|
||||
this.OnSelectItem(this.searchIndex);
|
||||
}
|
||||
else if (e.keyCode==38 && this.searchIndex>0) // Up
|
||||
{
|
||||
this.searchIndex--;
|
||||
this.OnSelectItem(this.searchIndex);
|
||||
}
|
||||
else if (e.keyCode==13 || e.keyCode==27)
|
||||
{
|
||||
this.OnSelectItem(this.searchIndex);
|
||||
this.CloseSelectionWindow();
|
||||
this.DOMSearchField().focus();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// --------- Actions
|
||||
|
||||
// Closes the results window.
|
||||
this.CloseResultsWindow = function()
|
||||
{
|
||||
this.DOMPopupSearchResultsWindow().style.display = 'none';
|
||||
this.DOMSearchClose().style.display = 'none';
|
||||
this.Activate(false);
|
||||
}
|
||||
|
||||
this.CloseSelectionWindow = function()
|
||||
{
|
||||
this.DOMSearchSelectWindow().style.display = 'none';
|
||||
}
|
||||
|
||||
// Performs a search.
|
||||
this.Search = function()
|
||||
{
|
||||
this.keyTimeout = 0;
|
||||
|
||||
// strip leading whitespace
|
||||
var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
|
||||
|
||||
var code = searchValue.toLowerCase().charCodeAt(0);
|
||||
var idxChar = searchValue.substr(0, 1).toLowerCase();
|
||||
if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair
|
||||
{
|
||||
idxChar = searchValue.substr(0, 2);
|
||||
}
|
||||
|
||||
var resultsPage;
|
||||
var resultsPageWithSearch;
|
||||
var hasResultsPage;
|
||||
|
||||
var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
|
||||
if (idx!=-1)
|
||||
{
|
||||
var hexCode=idx.toString(16);
|
||||
resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html';
|
||||
resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
|
||||
hasResultsPage = true;
|
||||
}
|
||||
else // nothing available for this search term
|
||||
{
|
||||
resultsPage = this.resultsPath + '/nomatches.html';
|
||||
resultsPageWithSearch = resultsPage;
|
||||
hasResultsPage = false;
|
||||
}
|
||||
|
||||
window.frames.MSearchResults.location = resultsPageWithSearch;
|
||||
var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
|
||||
|
||||
if (domPopupSearchResultsWindow.style.display!='block')
|
||||
{
|
||||
var domSearchBox = this.DOMSearchBox();
|
||||
this.DOMSearchClose().style.display = 'inline';
|
||||
if (this.insideFrame)
|
||||
{
|
||||
var domPopupSearchResults = this.DOMPopupSearchResults();
|
||||
domPopupSearchResultsWindow.style.position = 'relative';
|
||||
domPopupSearchResultsWindow.style.display = 'block';
|
||||
var width = document.body.clientWidth - 8; // the -8 is for IE :-(
|
||||
domPopupSearchResultsWindow.style.width = width + 'px';
|
||||
domPopupSearchResults.style.width = width + 'px';
|
||||
}
|
||||
else
|
||||
{
|
||||
var domPopupSearchResults = this.DOMPopupSearchResults();
|
||||
var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth;
|
||||
var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1;
|
||||
domPopupSearchResultsWindow.style.display = 'block';
|
||||
left -= domPopupSearchResults.offsetWidth;
|
||||
domPopupSearchResultsWindow.style.top = top + 'px';
|
||||
domPopupSearchResultsWindow.style.left = left + 'px';
|
||||
}
|
||||
}
|
||||
|
||||
this.lastSearchValue = searchValue;
|
||||
this.lastResultsPage = resultsPage;
|
||||
}
|
||||
|
||||
// -------- Activation Functions
|
||||
|
||||
// Activates or deactivates the search panel, resetting things to
|
||||
// their default values if necessary.
|
||||
this.Activate = function(isActive)
|
||||
{
|
||||
if (isActive || // open it
|
||||
this.DOMPopupSearchResultsWindow().style.display == 'block'
|
||||
)
|
||||
{
|
||||
this.DOMSearchBox().className = 'MSearchBoxActive';
|
||||
|
||||
var searchField = this.DOMSearchField();
|
||||
|
||||
if (searchField.value == this.searchLabel) // clear "Search" term upon entry
|
||||
{
|
||||
searchField.value = '';
|
||||
this.searchActive = true;
|
||||
}
|
||||
}
|
||||
else if (!isActive) // directly remove the panel
|
||||
{
|
||||
this.DOMSearchBox().className = 'MSearchBoxInactive';
|
||||
this.DOMSearchField().value = this.searchLabel;
|
||||
this.searchActive = false;
|
||||
this.lastSearchValue = ''
|
||||
this.lastResultsPage = '';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
// The class that handles everything on the search results page.
|
||||
function SearchResults(name)
|
||||
{
|
||||
// The number of matches from the last run of <Search()>.
|
||||
this.lastMatchCount = 0;
|
||||
this.lastKey = 0;
|
||||
this.repeatOn = false;
|
||||
|
||||
// Toggles the visibility of the passed element ID.
|
||||
this.FindChildElement = function(id)
|
||||
{
|
||||
var parentElement = document.getElementById(id);
|
||||
var element = parentElement.firstChild;
|
||||
|
||||
while (element && element!=parentElement)
|
||||
{
|
||||
if (element.nodeName == 'DIV' && element.className == 'SRChildren')
|
||||
{
|
||||
return element;
|
||||
}
|
||||
|
||||
if (element.nodeName == 'DIV' && element.hasChildNodes())
|
||||
{
|
||||
element = element.firstChild;
|
||||
}
|
||||
else if (element.nextSibling)
|
||||
{
|
||||
element = element.nextSibling;
|
||||
}
|
||||
else
|
||||
{
|
||||
do
|
||||
{
|
||||
element = element.parentNode;
|
||||
}
|
||||
while (element && element!=parentElement && !element.nextSibling);
|
||||
|
||||
if (element && element!=parentElement)
|
||||
{
|
||||
element = element.nextSibling;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.Toggle = function(id)
|
||||
{
|
||||
var element = this.FindChildElement(id);
|
||||
if (element)
|
||||
{
|
||||
if (element.style.display == 'block')
|
||||
{
|
||||
element.style.display = 'none';
|
||||
}
|
||||
else
|
||||
{
|
||||
element.style.display = 'block';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Searches for the passed string. If there is no parameter,
|
||||
// it takes it from the URL query.
|
||||
//
|
||||
// Always returns true, since other documents may try to call it
|
||||
// and that may or may not be possible.
|
||||
this.Search = function(search)
|
||||
{
|
||||
if (!search) // get search word from URL
|
||||
{
|
||||
search = window.location.search;
|
||||
search = search.substring(1); // Remove the leading '?'
|
||||
search = unescape(search);
|
||||
}
|
||||
|
||||
search = search.replace(/^ +/, ""); // strip leading spaces
|
||||
search = search.replace(/ +$/, ""); // strip trailing spaces
|
||||
search = search.toLowerCase();
|
||||
search = convertToId(search);
|
||||
|
||||
var resultRows = document.getElementsByTagName("div");
|
||||
var matches = 0;
|
||||
|
||||
var i = 0;
|
||||
while (i < resultRows.length)
|
||||
{
|
||||
var row = resultRows.item(i);
|
||||
if (row.className == "SRResult")
|
||||
{
|
||||
var rowMatchName = row.id.toLowerCase();
|
||||
rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
|
||||
|
||||
if (search.length<=rowMatchName.length &&
|
||||
rowMatchName.substr(0, search.length)==search)
|
||||
{
|
||||
row.style.display = 'block';
|
||||
matches++;
|
||||
}
|
||||
else
|
||||
{
|
||||
row.style.display = 'none';
|
||||
}
|
||||
}
|
||||
i++;
|
||||
}
|
||||
document.getElementById("Searching").style.display='none';
|
||||
if (matches == 0) // no results
|
||||
{
|
||||
document.getElementById("NoMatches").style.display='block';
|
||||
}
|
||||
else // at least one result
|
||||
{
|
||||
document.getElementById("NoMatches").style.display='none';
|
||||
}
|
||||
this.lastMatchCount = matches;
|
||||
return true;
|
||||
}
|
||||
|
||||
// return the first item with index index or higher that is visible
|
||||
this.NavNext = function(index)
|
||||
{
|
||||
var focusItem;
|
||||
while (1)
|
||||
{
|
||||
var focusName = 'Item'+index;
|
||||
focusItem = document.getElementById(focusName);
|
||||
if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
|
||||
{
|
||||
break;
|
||||
}
|
||||
else if (!focusItem) // last element
|
||||
{
|
||||
break;
|
||||
}
|
||||
focusItem=null;
|
||||
index++;
|
||||
}
|
||||
return focusItem;
|
||||
}
|
||||
|
||||
this.NavPrev = function(index)
|
||||
{
|
||||
var focusItem;
|
||||
while (1)
|
||||
{
|
||||
var focusName = 'Item'+index;
|
||||
focusItem = document.getElementById(focusName);
|
||||
if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
|
||||
{
|
||||
break;
|
||||
}
|
||||
else if (!focusItem) // last element
|
||||
{
|
||||
break;
|
||||
}
|
||||
focusItem=null;
|
||||
index--;
|
||||
}
|
||||
return focusItem;
|
||||
}
|
||||
|
||||
this.ProcessKeys = function(e)
|
||||
{
|
||||
if (e.type == "keydown")
|
||||
{
|
||||
this.repeatOn = false;
|
||||
this.lastKey = e.keyCode;
|
||||
}
|
||||
else if (e.type == "keypress")
|
||||
{
|
||||
if (!this.repeatOn)
|
||||
{
|
||||
if (this.lastKey) this.repeatOn = true;
|
||||
return false; // ignore first keypress after keydown
|
||||
}
|
||||
}
|
||||
else if (e.type == "keyup")
|
||||
{
|
||||
this.lastKey = 0;
|
||||
this.repeatOn = false;
|
||||
}
|
||||
return this.lastKey!=0;
|
||||
}
|
||||
|
||||
this.Nav = function(evt,itemIndex)
|
||||
{
|
||||
var e = (evt) ? evt : window.event; // for IE
|
||||
if (e.keyCode==13) return true;
|
||||
if (!this.ProcessKeys(e)) return false;
|
||||
|
||||
if (this.lastKey==38) // Up
|
||||
{
|
||||
var newIndex = itemIndex-1;
|
||||
var focusItem = this.NavPrev(newIndex);
|
||||
if (focusItem)
|
||||
{
|
||||
var child = this.FindChildElement(focusItem.parentNode.parentNode.id);
|
||||
if (child && child.style.display == 'block') // children visible
|
||||
{
|
||||
var n=0;
|
||||
var tmpElem;
|
||||
while (1) // search for last child
|
||||
{
|
||||
tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
|
||||
if (tmpElem)
|
||||
{
|
||||
focusItem = tmpElem;
|
||||
}
|
||||
else // found it!
|
||||
{
|
||||
break;
|
||||
}
|
||||
n++;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (focusItem)
|
||||
{
|
||||
focusItem.focus();
|
||||
}
|
||||
else // return focus to search field
|
||||
{
|
||||
parent.document.getElementById("MSearchField").focus();
|
||||
}
|
||||
}
|
||||
else if (this.lastKey==40) // Down
|
||||
{
|
||||
var newIndex = itemIndex+1;
|
||||
var focusItem;
|
||||
var item = document.getElementById('Item'+itemIndex);
|
||||
var elem = this.FindChildElement(item.parentNode.parentNode.id);
|
||||
if (elem && elem.style.display == 'block') // children visible
|
||||
{
|
||||
focusItem = document.getElementById('Item'+itemIndex+'_c0');
|
||||
}
|
||||
if (!focusItem) focusItem = this.NavNext(newIndex);
|
||||
if (focusItem) focusItem.focus();
|
||||
}
|
||||
else if (this.lastKey==39) // Right
|
||||
{
|
||||
var item = document.getElementById('Item'+itemIndex);
|
||||
var elem = this.FindChildElement(item.parentNode.parentNode.id);
|
||||
if (elem) elem.style.display = 'block';
|
||||
}
|
||||
else if (this.lastKey==37) // Left
|
||||
{
|
||||
var item = document.getElementById('Item'+itemIndex);
|
||||
var elem = this.FindChildElement(item.parentNode.parentNode.id);
|
||||
if (elem) elem.style.display = 'none';
|
||||
}
|
||||
else if (this.lastKey==27) // Escape
|
||||
{
|
||||
parent.searchBox.CloseResultsWindow();
|
||||
parent.document.getElementById("MSearchField").focus();
|
||||
}
|
||||
else if (this.lastKey==13) // Enter
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
this.NavChild = function(evt,itemIndex,childIndex)
|
||||
{
|
||||
var e = (evt) ? evt : window.event; // for IE
|
||||
if (e.keyCode==13) return true;
|
||||
if (!this.ProcessKeys(e)) return false;
|
||||
|
||||
if (this.lastKey==38) // Up
|
||||
{
|
||||
if (childIndex>0)
|
||||
{
|
||||
var newIndex = childIndex-1;
|
||||
document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
|
||||
}
|
||||
else // already at first child, jump to parent
|
||||
{
|
||||
document.getElementById('Item'+itemIndex).focus();
|
||||
}
|
||||
}
|
||||
else if (this.lastKey==40) // Down
|
||||
{
|
||||
var newIndex = childIndex+1;
|
||||
var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
|
||||
if (!elem) // last child, jump to parent next parent
|
||||
{
|
||||
elem = this.NavNext(itemIndex+1);
|
||||
}
|
||||
if (elem)
|
||||
{
|
||||
elem.focus();
|
||||
}
|
||||
}
|
||||
else if (this.lastKey==27) // Escape
|
||||
{
|
||||
parent.searchBox.CloseResultsWindow();
|
||||
parent.document.getElementById("MSearchField").focus();
|
||||
}
|
||||
else if (this.lastKey==13) // Enter
|
||||
{
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function setKeyActions(elem,action)
|
||||
{
|
||||
elem.setAttribute('onkeydown',action);
|
||||
elem.setAttribute('onkeypress',action);
|
||||
elem.setAttribute('onkeyup',action);
|
||||
}
|
||||
|
||||
function setClassAttr(elem,attr)
|
||||
{
|
||||
elem.setAttribute('class',attr);
|
||||
elem.setAttribute('className',attr);
|
||||
}
|
||||
|
||||
function createResults()
|
||||
{
|
||||
var results = document.getElementById("SRResults");
|
||||
for (var e=0; e<searchData.length; e++)
|
||||
{
|
||||
var id = searchData[e][0];
|
||||
var srResult = document.createElement('div');
|
||||
srResult.setAttribute('id','SR_'+id);
|
||||
setClassAttr(srResult,'SRResult');
|
||||
var srEntry = document.createElement('div');
|
||||
setClassAttr(srEntry,'SREntry');
|
||||
var srLink = document.createElement('a');
|
||||
srLink.setAttribute('id','Item'+e);
|
||||
setKeyActions(srLink,'return searchResults.Nav(event,'+e+')');
|
||||
setClassAttr(srLink,'SRSymbol');
|
||||
srLink.innerHTML = searchData[e][1][0];
|
||||
srEntry.appendChild(srLink);
|
||||
if (searchData[e][1].length==2) // single result
|
||||
{
|
||||
srLink.setAttribute('href',searchData[e][1][1][0]);
|
||||
if (searchData[e][1][1][1])
|
||||
{
|
||||
srLink.setAttribute('target','_parent');
|
||||
}
|
||||
var srScope = document.createElement('span');
|
||||
setClassAttr(srScope,'SRScope');
|
||||
srScope.innerHTML = searchData[e][1][1][2];
|
||||
srEntry.appendChild(srScope);
|
||||
}
|
||||
else // multiple results
|
||||
{
|
||||
srLink.setAttribute('href','javascript:searchResults.Toggle("SR_'+id+'")');
|
||||
var srChildren = document.createElement('div');
|
||||
setClassAttr(srChildren,'SRChildren');
|
||||
for (var c=0; c<searchData[e][1].length-1; c++)
|
||||
{
|
||||
var srChild = document.createElement('a');
|
||||
srChild.setAttribute('id','Item'+e+'_c'+c);
|
||||
setKeyActions(srChild,'return searchResults.NavChild(event,'+e+','+c+')');
|
||||
setClassAttr(srChild,'SRScope');
|
||||
srChild.setAttribute('href',searchData[e][1][c+1][0]);
|
||||
if (searchData[e][1][c+1][1])
|
||||
{
|
||||
srChild.setAttribute('target','_parent');
|
||||
}
|
||||
srChild.innerHTML = searchData[e][1][c+1][2];
|
||||
srChildren.appendChild(srChild);
|
||||
}
|
||||
srEntry.appendChild(srChildren);
|
||||
}
|
||||
srResult.appendChild(srEntry);
|
||||
results.appendChild(srResult);
|
||||
}
|
||||
}
|
||||
|
||||
function init_search()
|
||||
{
|
||||
var results = document.getElementById("MSearchSelectWindow");
|
||||
for (var key in indexSectionLabels)
|
||||
{
|
||||
var link = document.createElement('a');
|
||||
link.setAttribute('class','SelectItem');
|
||||
link.setAttribute('onclick','searchBox.OnSelectItem('+key+')');
|
||||
link.href='javascript:void(0)';
|
||||
link.innerHTML='<span class="SelectionMark"> </span>'+indexSectionLabels[key];
|
||||
results.appendChild(link);
|
||||
}
|
||||
searchBox.OnSelectItem(0);
|
||||
}
|
||||
/* @license-end */
|
||||
|
After Width: | Height: | Size: 567 B |
|
After Width: | Height: | Size: 158 B |
|
After Width: | Height: | Size: 553 B |