MCUXpresso_LPC55S69/docs/MCUXpresso SDK API Referenc.../a00023.html

575 lines
35 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.5"/>
<title>MCUXpresso SDK API Reference Manual: PWM_Adapter</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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.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="projectlogo"><img alt="Logo" src="fs_logo.gif"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">MCUXpresso SDK API Reference Manual
&#160;<span id="projectnumber">Rev 2.15.000</span>
</div>
<div id="projectbrief">NXP Semiconductors</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>API&#160;Reference</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="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="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('a00023.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Pages</a></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="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">PWM_Adapter</div> </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:a00336"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#a00336">_hal_pwm_setup_config</a></td></tr>
<tr class="memdesc:a00336"><td class="mdescLeft">&#160;</td><td class="mdescRight">hal pwm configuration structure for hal pwm setting. <a href="a00023.html#a00336">More...</a><br/></td></tr>
<tr class="separator:a00336"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:gaefd7f7abd0d4651372aad08007e710a1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#gaefd7f7abd0d4651372aad08007e710a1">HAL_PWM_HANDLE_SIZE</a>&#160;&#160;&#160;(8U)</td></tr>
<tr class="memdesc:gaefd7f7abd0d4651372aad08007e710a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hal pwm handle size. <a href="#gaefd7f7abd0d4651372aad08007e710a1">More...</a><br/></td></tr>
<tr class="separator:gaefd7f7abd0d4651372aad08007e710a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6b3a9ae2466914232a8c23b3e48795b0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#ga6b3a9ae2466914232a8c23b3e48795b0">HAL_PWM_HANDLE_DEFINE</a>(name)&#160;&#160;&#160;uint32_t name[(<a class="el" href="a00023.html#gaefd7f7abd0d4651372aad08007e710a1">HAL_PWM_HANDLE_SIZE</a> + sizeof(uint32_t) - 1U) / sizeof(uint32_t)]</td></tr>
<tr class="memdesc:ga6b3a9ae2466914232a8c23b3e48795b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines the PMW handle. <a href="#ga6b3a9ae2466914232a8c23b3e48795b0">More...</a><br/></td></tr>
<tr class="separator:ga6b3a9ae2466914232a8c23b3e48795b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gacb61b8f5d1e19012423fece39201f3af"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="a00023.html#ga4635c590c7d46aeb33a7345f6b2c76d8">_hal_pwm_mode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#gacb61b8f5d1e19012423fece39201f3af">hal_pwm_mode_t</a></td></tr>
<tr class="memdesc:gacb61b8f5d1e19012423fece39201f3af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hal pwm mode. <a href="#gacb61b8f5d1e19012423fece39201f3af">More...</a><br/></td></tr>
<tr class="separator:gacb61b8f5d1e19012423fece39201f3af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1b7de6d9d8ede7346d92f2d6a42fcb5f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1b7de6d9d8ede7346d92f2d6a42fcb5f"></a>
typedef enum <a class="el" href="a00023.html#gaf444f83080013e16f7bbc3bd75f9f21f">_hal_pwm_level_select</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#ga1b7de6d9d8ede7346d92f2d6a42fcb5f">hal_pwm_level_select_t</a></td></tr>
<tr class="memdesc:ga1b7de6d9d8ede7346d92f2d6a42fcb5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">PWM output pulse level select: high-true, low-true or no output. <br/></td></tr>
<tr class="separator:ga1b7de6d9d8ede7346d92f2d6a42fcb5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa653b06e71f22f412f8e99c9551197ac"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="a00023.html#gac053d9c8219963b560047e1d64461592">_hal_pwm_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#gaa653b06e71f22f412f8e99c9551197ac">hal_pwm_status_t</a></td></tr>
<tr class="memdesc:gaa653b06e71f22f412f8e99c9551197ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hal pwm status. <a href="#gaa653b06e71f22f412f8e99c9551197ac">More...</a><br/></td></tr>
<tr class="separator:gaa653b06e71f22f412f8e99c9551197ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf1cb4a9c95a68cfd93abbfbfcc24ca24"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
<a class="el" href="a00023.html#a00336">_hal_pwm_setup_config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#gaf1cb4a9c95a68cfd93abbfbfcc24ca24">hal_pwm_setup_config_t</a></td></tr>
<tr class="memdesc:gaf1cb4a9c95a68cfd93abbfbfcc24ca24"><td class="mdescLeft">&#160;</td><td class="mdescRight">hal pwm configuration structure for hal pwm setting. <a href="#gaf1cb4a9c95a68cfd93abbfbfcc24ca24">More...</a><br/></td></tr>
<tr class="separator:gaf1cb4a9c95a68cfd93abbfbfcc24ca24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad8ddf4b9ed8e72c91ddef930ef6a3f20"><td class="memItemLeft" align="right" valign="top">typedef void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a></td></tr>
<tr class="memdesc:gad8ddf4b9ed8e72c91ddef930ef6a3f20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hal pwm handle. <a href="#gad8ddf4b9ed8e72c91ddef930ef6a3f20">More...</a><br/></td></tr>
<tr class="separator:gad8ddf4b9ed8e72c91ddef930ef6a3f20"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga4635c590c7d46aeb33a7345f6b2c76d8"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#ga4635c590c7d46aeb33a7345f6b2c76d8">_hal_pwm_mode</a> { <br/>
&#160;&#160;<a class="el" href="a00023.html#gga4635c590c7d46aeb33a7345f6b2c76d8a66d543160eec1c38aae8a8621eec1981">kHAL_EdgeAlignedPwm</a> = 0U,
<br/>
&#160;&#160;<a class="el" href="a00023.html#gga4635c590c7d46aeb33a7345f6b2c76d8a3d2f3c534b36265e4c38912f8af7bbcc">kHAL_CenterAlignedPwm</a>
<br/>
}</td></tr>
<tr class="memdesc:ga4635c590c7d46aeb33a7345f6b2c76d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hal pwm mode. <a href="a00023.html#ga4635c590c7d46aeb33a7345f6b2c76d8">More...</a><br/></td></tr>
<tr class="separator:ga4635c590c7d46aeb33a7345f6b2c76d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf444f83080013e16f7bbc3bd75f9f21f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#gaf444f83080013e16f7bbc3bd75f9f21f">_hal_pwm_level_select</a> { <br/>
&#160;&#160;<a class="el" href="a00023.html#ggaf444f83080013e16f7bbc3bd75f9f21fad3c5010fb05ea75ebb42502ab54665cb">kHAL_PwmNoPwmSignal</a> = 0U,
<br/>
&#160;&#160;<a class="el" href="a00023.html#ggaf444f83080013e16f7bbc3bd75f9f21facf74d5fe78c1a96e8c15892cb2cd4e23">kHAL_PwmLowTrue</a>,
<br/>
&#160;&#160;<a class="el" href="a00023.html#ggaf444f83080013e16f7bbc3bd75f9f21faaf19a902de61c0b2a259d01c417e4956">kHAL_PwmHighTrue</a>
<br/>
}</td></tr>
<tr class="memdesc:gaf444f83080013e16f7bbc3bd75f9f21f"><td class="mdescLeft">&#160;</td><td class="mdescRight">PWM output pulse level select: high-true, low-true or no output. <a href="a00023.html#gaf444f83080013e16f7bbc3bd75f9f21f">More...</a><br/></td></tr>
<tr class="separator:gaf444f83080013e16f7bbc3bd75f9f21f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac053d9c8219963b560047e1d64461592"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#gac053d9c8219963b560047e1d64461592">_hal_pwm_status</a> { <br/>
&#160;&#160;<a class="el" href="a00023.html#ggac053d9c8219963b560047e1d64461592a91616627a0baaf7170f873085501d946">kStatus_HAL_PwmSuccess</a> = kStatus_Success,
<br/>
&#160;&#160;<a class="el" href="a00023.html#ggac053d9c8219963b560047e1d64461592a1eafc23a90e5f6d4bf2cccb5fe6305dd">kStatus_HAL_PwmFail</a> = MAKE_STATUS(kStatusGroup_HAL_PWM, 1),
<br/>
&#160;&#160;<a class="el" href="a00023.html#ggac053d9c8219963b560047e1d64461592a216bb0e74410c6ce59af4ca50eefbf9f">kStatus_HAL_PwmNotSupport</a> = MAKE_STATUS(kStatusGroup_HAL_PWM, 2),
<br/>
&#160;&#160;<a class="el" href="a00023.html#ggac053d9c8219963b560047e1d64461592ab1ab9bc742bde7e8ec37d45867621eb8">kStatus_HAL_PwmOutOfRanger</a> = MAKE_STATUS(kStatusGroup_HAL_PWM, 3)
<br/>
}</td></tr>
<tr class="memdesc:gac053d9c8219963b560047e1d64461592"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hal pwm status. <a href="a00023.html#gac053d9c8219963b560047e1d64461592">More...</a><br/></td></tr>
<tr class="separator:gac053d9c8219963b560047e1d64461592"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga11c1e49dcdfbd25316321db4cc0a3676"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00023.html#gaa653b06e71f22f412f8e99c9551197ac">hal_pwm_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#ga11c1e49dcdfbd25316321db4cc0a3676">HAL_PwmInit</a> (<a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a> halPwmHandle, uint8_t instance, uint32_t srcClock_Hz)</td></tr>
<tr class="memdesc:ga11c1e49dcdfbd25316321db4cc0a3676"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the pwm adapter module for a pwm basic operation. <a href="#ga11c1e49dcdfbd25316321db4cc0a3676">More...</a><br/></td></tr>
<tr class="separator:ga11c1e49dcdfbd25316321db4cc0a3676"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaf1ea89270f3b82f329899f078668b0d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#gaaf1ea89270f3b82f329899f078668b0d">HAL_PwmDeinit</a> (<a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a> halPwmHandle)</td></tr>
<tr class="memdesc:gaaf1ea89270f3b82f329899f078668b0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">DeInitilizate the pwm adapter module. <a href="#gaaf1ea89270f3b82f329899f078668b0d">More...</a><br/></td></tr>
<tr class="separator:gaaf1ea89270f3b82f329899f078668b0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga203a38ec44aaef105aefa0d05b499039"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00023.html#gaa653b06e71f22f412f8e99c9551197ac">hal_pwm_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#ga203a38ec44aaef105aefa0d05b499039">HAL_PwmSetupPwm</a> (<a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a> halPwmHandle, uint8_t channel, <a class="el" href="a00023.html#gaf1cb4a9c95a68cfd93abbfbfcc24ca24">hal_pwm_setup_config_t</a> *setupConfig)</td></tr>
<tr class="memdesc:ga203a38ec44aaef105aefa0d05b499039"><td class="mdescLeft">&#160;</td><td class="mdescRight">setup pwm. <a href="#ga203a38ec44aaef105aefa0d05b499039">More...</a><br/></td></tr>
<tr class="separator:ga203a38ec44aaef105aefa0d05b499039"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9097d3eb28d32fb1e7a00dbdce1e8118"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00023.html#gaa653b06e71f22f412f8e99c9551197ac">hal_pwm_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#ga9097d3eb28d32fb1e7a00dbdce1e8118">HAL_PwmUpdateDutycycle</a> (<a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a> halPwmHandle, uint8_t channel, <a class="el" href="a00023.html#gacb61b8f5d1e19012423fece39201f3af">hal_pwm_mode_t</a> mode, uint8_t dutyCyclePercent)</td></tr>
<tr class="memdesc:ga9097d3eb28d32fb1e7a00dbdce1e8118"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update duty cycle of pwm. <a href="#ga9097d3eb28d32fb1e7a00dbdce1e8118">More...</a><br/></td></tr>
<tr class="separator:ga9097d3eb28d32fb1e7a00dbdce1e8118"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><h2 class="groupheader">Data Structure Documentation</h2>
<a name="a00336" id="a00336"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct _hal_pwm_setup_config</td>
</tr>
</table>
</div><div class="memdoc">
<div class="textblock"></div><table class="memberdecls">
<tr><td colspan="2"><h3>Data Fields</h3></td></tr>
<tr class="memitem:a61c7b6b526521bf2ef3d6b825c815496"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a61c7b6b526521bf2ef3d6b825c815496"></a>
<a class="el" href="a00023.html#ga1b7de6d9d8ede7346d92f2d6a42fcb5f">hal_pwm_level_select_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#a61c7b6b526521bf2ef3d6b825c815496">level</a></td></tr>
<tr class="memdesc:a61c7b6b526521bf2ef3d6b825c815496"><td class="mdescLeft">&#160;</td><td class="mdescRight">PWM output pulse level select. <br/></td></tr>
<tr class="separator:a61c7b6b526521bf2ef3d6b825c815496"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e84c939943787469f41487796bd9294"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7e84c939943787469f41487796bd9294"></a>
<a class="el" href="a00023.html#gacb61b8f5d1e19012423fece39201f3af">hal_pwm_mode_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#a7e84c939943787469f41487796bd9294">mode</a></td></tr>
<tr class="memdesc:a7e84c939943787469f41487796bd9294"><td class="mdescLeft">&#160;</td><td class="mdescRight">PWM mode select. <br/></td></tr>
<tr class="separator:a7e84c939943787469f41487796bd9294"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab15265e7c5465c34b5e834f70805396b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab15265e7c5465c34b5e834f70805396b"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#ab15265e7c5465c34b5e834f70805396b">pwmFreq_Hz</a></td></tr>
<tr class="memdesc:ab15265e7c5465c34b5e834f70805396b"><td class="mdescLeft">&#160;</td><td class="mdescRight">PWM frequency. <br/></td></tr>
<tr class="separator:ab15265e7c5465c34b5e834f70805396b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4cda7b7f340b9e3c7c777ff072b0172"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac4cda7b7f340b9e3c7c777ff072b0172"></a>
uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#ac4cda7b7f340b9e3c7c777ff072b0172">dutyCyclePercent</a></td></tr>
<tr class="memdesc:ac4cda7b7f340b9e3c7c777ff072b0172"><td class="mdescLeft">&#160;</td><td class="mdescRight">PWM duty cycle percent. <br/></td></tr>
<tr class="separator:ac4cda7b7f340b9e3c7c777ff072b0172"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="gaefd7f7abd0d4651372aad08007e710a1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HAL_PWM_HANDLE_SIZE&#160;&#160;&#160;(8U)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ga6b3a9ae2466914232a8c23b3e48795b0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define HAL_PWM_HANDLE_DEFINE</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">name</td><td>)</td>
<td>&#160;&#160;&#160;uint32_t name[(<a class="el" href="a00023.html#gaefd7f7abd0d4651372aad08007e710a1">HAL_PWM_HANDLE_SIZE</a> + sizeof(uint32_t) - 1U) / sizeof(uint32_t)]</td>
</tr>
</table>
</div><div class="memdoc">
<p>This macro is used to define a 4 byte aligned PWM handle. Then use "(hal_pwm_handle_t)name" to get the PWM handle.</p>
<p>The macro should be global and could be optional. You could also define PWM handle by yourself.</p>
<p>This is an example, </p>
<div class="fragment"><div class="line">* <a class="code" href="a00023.html#ga6b3a9ae2466914232a8c23b3e48795b0">HAL_PWM_HANDLE_DEFINE</a>(pwmHandle);</div>
<div class="line">* </div>
</div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>The name string of the PMW handle. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="gacb61b8f5d1e19012423fece39201f3af"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="a00023.html#ga4635c590c7d46aeb33a7345f6b2c76d8">_hal_pwm_mode</a> <a class="el" href="a00023.html#gacb61b8f5d1e19012423fece39201f3af">hal_pwm_mode_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gaa653b06e71f22f412f8e99c9551197ac"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef enum <a class="el" href="a00023.html#gac053d9c8219963b560047e1d64461592">_hal_pwm_status</a> <a class="el" href="a00023.html#gaa653b06e71f22f412f8e99c9551197ac">hal_pwm_status_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gaf1cb4a9c95a68cfd93abbfbfcc24ca24"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="a00023.html#a00336">_hal_pwm_setup_config</a> <a class="el" href="a00023.html#gaf1cb4a9c95a68cfd93abbfbfcc24ca24">hal_pwm_setup_config_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="gad8ddf4b9ed8e72c91ddef930ef6a3f20"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef void* <a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="ga4635c590c7d46aeb33a7345f6b2c76d8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00023.html#ga4635c590c7d46aeb33a7345f6b2c76d8">_hal_pwm_mode</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga4635c590c7d46aeb33a7345f6b2c76d8a66d543160eec1c38aae8a8621eec1981"></a>kHAL_EdgeAlignedPwm</em>&nbsp;</td><td class="fielddoc">
<p>Edge aligned PWM. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="gga4635c590c7d46aeb33a7345f6b2c76d8a3d2f3c534b36265e4c38912f8af7bbcc"></a>kHAL_CenterAlignedPwm</em>&nbsp;</td><td class="fielddoc">
<p>Center aligned PWM. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gaf444f83080013e16f7bbc3bd75f9f21f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00023.html#gaf444f83080013e16f7bbc3bd75f9f21f">_hal_pwm_level_select</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggaf444f83080013e16f7bbc3bd75f9f21fad3c5010fb05ea75ebb42502ab54665cb"></a>kHAL_PwmNoPwmSignal</em>&nbsp;</td><td class="fielddoc">
<p>No PWM output on pin. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf444f83080013e16f7bbc3bd75f9f21facf74d5fe78c1a96e8c15892cb2cd4e23"></a>kHAL_PwmLowTrue</em>&nbsp;</td><td class="fielddoc">
<p>Low true pulses. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggaf444f83080013e16f7bbc3bd75f9f21faaf19a902de61c0b2a259d01c417e4956"></a>kHAL_PwmHighTrue</em>&nbsp;</td><td class="fielddoc">
<p>High true pulses. </p>
</td></tr>
</table>
</div>
</div>
<a class="anchor" id="gac053d9c8219963b560047e1d64461592"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="a00023.html#gac053d9c8219963b560047e1d64461592">_hal_pwm_status</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ggac053d9c8219963b560047e1d64461592a91616627a0baaf7170f873085501d946"></a>kStatus_HAL_PwmSuccess</em>&nbsp;</td><td class="fielddoc">
<p>Success. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggac053d9c8219963b560047e1d64461592a1eafc23a90e5f6d4bf2cccb5fe6305dd"></a>kStatus_HAL_PwmFail</em>&nbsp;</td><td class="fielddoc">
<p>Failure. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggac053d9c8219963b560047e1d64461592a216bb0e74410c6ce59af4ca50eefbf9f"></a>kStatus_HAL_PwmNotSupport</em>&nbsp;</td><td class="fielddoc">
<p>Not support. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ggac053d9c8219963b560047e1d64461592ab1ab9bc742bde7e8ec37d45867621eb8"></a>kStatus_HAL_PwmOutOfRanger</em>&nbsp;</td><td class="fielddoc">
<p>Pwm is Out Of Ranger. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga11c1e49dcdfbd25316321db4cc0a3676"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00023.html#gaa653b06e71f22f412f8e99c9551197ac">hal_pwm_status_t</a> HAL_PwmInit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a>&#160;</td>
<td class="paramname"><em>halPwmHandle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>instance</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>srcClock_Hz</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section note"><dt>Note</dt><dd>This API should be called at the beginning of the application using the pwm adapter.</dd></dl>
<p>Example below shows how to use this API to configure the PWM. </p>
<div class="fragment"><div class="line">* <a class="code" href="a00023.html#ga6b3a9ae2466914232a8c23b3e48795b0">HAL_PWM_HANDLE_DEFINE</a>(pwmHandle);</div>
<div class="line">* <a class="code" href="a00023.html#ga11c1e49dcdfbd25316321db4cc0a3676">HAL_PwmInit</a>((<a class="code" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a>)pwmHandle, BOARD_PWM_INSTANCE, BOARD_PWM_SOURCE_CLOCK);</div>
<div class="line">* </div>
</div><!-- fragment --><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">halPwmHandle</td><td>Hal pwm adapter handle, the handle buffer with size <a class="el" href="a00023.html#gaefd7f7abd0d4651372aad08007e710a1" title="Hal pwm handle size. ">HAL_PWM_HANDLE_SIZE</a> should be allocated at upper level The handle should be 4 byte aligned, because unaligned access doesn't be supported on some devices. You can define the handle in the following two ways: <a class="el" href="a00023.html#ga6b3a9ae2466914232a8c23b3e48795b0" title="Defines the PMW handle. ">HAL_PWM_HANDLE_DEFINE(halPwmHandle)</a>; or uint32_t halPwmHandle[((HAL_PWM_HANDLE_SIZE + sizeof(uint32_t) - 1U) / sizeof(uint32_t))]; </td></tr>
<tr><td class="paramname">instance</td><td>The instance index of the hardware PWM. For example, if FTM is used as the PWM hardware, 0 should be set to "instance" to use FTM0; 2 should be set to "instance" to use FTM2 detail information please refer to the SOC corresponding RM. Invalid instance value will cause initialization failure. </td></tr>
<tr><td class="paramname">srcClock_Hz</td><td>Frequency of source clock of the pwm module </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_HAL_PwmSuccess</td><td>pwm initialization succeed </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="gaaf1ea89270f3b82f329899f078668b0d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void HAL_PwmDeinit </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a>&#160;</td>
<td class="paramname"><em>halPwmHandle</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section note"><dt>Note</dt><dd>This API should be called when not using the pwm adapter driver anymore.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">halPwmHandle</td><td>Hal pwm adapter handle </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga203a38ec44aaef105aefa0d05b499039"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00023.html#gaa653b06e71f22f412f8e99c9551197ac">hal_pwm_status_t</a> HAL_PwmSetupPwm </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a>&#160;</td>
<td class="paramname"><em>halPwmHandle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>channel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00023.html#gaf1cb4a9c95a68cfd93abbfbfcc24ca24">hal_pwm_setup_config_t</a> *&#160;</td>
<td class="paramname"><em>setupConfig</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section note"><dt>Note</dt><dd>This API should be called when setup the pwm.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">halPwmHandle</td><td>Hal pwm adapter handle </td></tr>
<tr><td class="paramname">channel</td><td>Channel of pwm </td></tr>
<tr><td class="paramname">setupConfig</td><td>A pointer to the HAL pwm setup configuration structure </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_HAL_PwmSuccess</td><td>pwm setup succeed </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ga9097d3eb28d32fb1e7a00dbdce1e8118"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="a00023.html#gaa653b06e71f22f412f8e99c9551197ac">hal_pwm_status_t</a> HAL_PwmUpdateDutycycle </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00023.html#gad8ddf4b9ed8e72c91ddef930ef6a3f20">hal_pwm_handle_t</a>&#160;</td>
<td class="paramname"><em>halPwmHandle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>channel</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="a00023.html#gacb61b8f5d1e19012423fece39201f3af">hal_pwm_mode_t</a>&#160;</td>
<td class="paramname"><em>mode</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>dutyCyclePercent</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section note"><dt>Note</dt><dd>This API should be called when need update duty cycle.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">halPwmHandle</td><td>Hal pwm adapter handle </td></tr>
<tr><td class="paramname">channel</td><td>Channel of pwm </td></tr>
<tr><td class="paramname">mode</td><td>PWM mode select </td></tr>
<tr><td class="paramname">dutyCyclePercent</td><td>PWM duty cycle percent </td></tr>
</table>
</dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
<table class="retval">
<tr><td class="paramname">kStatus_HAL_PwmSuccess</td><td>pwm Update duty cycle succeed </td></tr>
</table>
</dd>
</dl>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.5-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul class="foot">
<li class="footer">&copy; 2016 NXP Semiconductors. All rights reserved.
</li>
</ul>
</div>
</body>
</html>