📄 lib_at91rm9200_h.html
字号:
<font color=#B22222>//* \fn <b><a name="AT91F_PDC_IsNextRxEmpty">AT91F_PDC_IsNextRxEmpty</a></b></font>
<font color=#B22222>//* \brief Test <font color=#0000FF>if</font> the next transfer descriptor has been moved to the current td</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>int</font> <a href="#AT91F_PDC_IsNextRxEmpty">AT91F_PDC_IsNextRxEmpty</a> ( <font color=#B22222>// \<font color=#0000FF>return</font> <font color=#0000FF>return</font> 1 <font color=#0000FF>if</font> transfer is complete</font>
<a href="AT91RM9200_h.html#AT91PS_PDC">AT91PS_PDC</a> pPDC ) <font color=#B22222>// \arg pointer to a <a href="AT91RM9200_PDC.html#PDC">PDC</a> controller</font>
{
<font color=#0000FF>return</font> !(pPDC-><a href="AT91RM9200_PDC.html#PDC_RNCR">PDC_RNCR</a>);
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_PDC_Open">AT91F_PDC_Open</a></b></font>
<font color=#B22222>//* \brief Open <a href="AT91RM9200_PDC.html#PDC">PDC</a>: disable TX and RX reset transfer descriptors, re-enable RX and TX</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_PDC_Open">AT91F_PDC_Open</a> (
<a href="AT91RM9200_h.html#AT91PS_PDC">AT91PS_PDC</a> pPDC) <font color=#B22222>// \arg pointer to a <a href="AT91RM9200_PDC.html#PDC">PDC</a> controller</font>
{
<font color=#B22222>//* Disable the RX and TX <a href="AT91RM9200_PDC.html#PDC">PDC</a> transfer requests</font>
<a href="#AT91F_PDC_DisableRx">AT91F_PDC_DisableRx</a>(pPDC);
<a href="#AT91F_PDC_DisableTx">AT91F_PDC_DisableTx</a>(pPDC);
<font color=#B22222>//* Reset all Counter <font color=#0000FF>register</font> Next buffer first</font>
<a href="#AT91F_PDC_SetNextTx">AT91F_PDC_SetNextTx</a>(pPDC, (<font color=#0000FF>char</font> *) 0, 0);
<a href="#AT91F_PDC_SetNextRx">AT91F_PDC_SetNextRx</a>(pPDC, (<font color=#0000FF>char</font> *) 0, 0);
<a href="#AT91F_PDC_SetTx">AT91F_PDC_SetTx</a>(pPDC, (<font color=#0000FF>char</font> *) 0, 0);
<a href="#AT91F_PDC_SetRx">AT91F_PDC_SetRx</a>(pPDC, (<font color=#0000FF>char</font> *) 0, 0);
<font color=#B22222>//* Enable the RX and TX <a href="AT91RM9200_PDC.html#PDC">PDC</a> transfer requests</font>
<a href="#AT91F_PDC_EnableRx">AT91F_PDC_EnableRx</a>(pPDC);
<a href="#AT91F_PDC_EnableTx">AT91F_PDC_EnableTx</a>(pPDC);
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_PDC_Close">AT91F_PDC_Close</a></b></font>
<font color=#B22222>//* \brief Close <a href="AT91RM9200_PDC.html#PDC">PDC</a>: disable TX and RX reset transfer descriptors</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_PDC_Close">AT91F_PDC_Close</a> (
<a href="AT91RM9200_h.html#AT91PS_PDC">AT91PS_PDC</a> pPDC) <font color=#B22222>// \arg pointer to a <a href="AT91RM9200_PDC.html#PDC">PDC</a> controller</font>
{
<font color=#B22222>//* Disable the RX and TX <a href="AT91RM9200_PDC.html#PDC">PDC</a> transfer requests</font>
<a href="#AT91F_PDC_DisableRx">AT91F_PDC_DisableRx</a>(pPDC);
<a href="#AT91F_PDC_DisableTx">AT91F_PDC_DisableTx</a>(pPDC);
<font color=#B22222>//* Reset all Counter <font color=#0000FF>register</font> Next buffer first</font>
<a href="#AT91F_PDC_SetNextTx">AT91F_PDC_SetNextTx</a>(pPDC, (<font color=#0000FF>char</font> *) 0, 0);
<a href="#AT91F_PDC_SetNextRx">AT91F_PDC_SetNextRx</a>(pPDC, (<font color=#0000FF>char</font> *) 0, 0);
<a href="#AT91F_PDC_SetTx">AT91F_PDC_SetTx</a>(pPDC, (<font color=#0000FF>char</font> *) 0, 0);
<a href="#AT91F_PDC_SetRx">AT91F_PDC_SetRx</a>(pPDC, (<font color=#0000FF>char</font> *) 0, 0);
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_PDC_SendFrame">AT91F_PDC_SendFrame</a></b></font>
<font color=#B22222>//* \brief Close <a href="AT91RM9200_PDC.html#PDC">PDC</a>: disable TX and RX reset transfer descriptors</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_PDC_SendFrame">AT91F_PDC_SendFrame</a>(
<a href="AT91RM9200_h.html#AT91PS_PDC">AT91PS_PDC</a> pPDC,
<font color=#0000FF>char</font> *pBuffer,
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> szBuffer,
<font color=#0000FF>char</font> *pNextBuffer,
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> szNextBuffer )
{
<font color=#0000FF>if</font> (<a href="#AT91F_PDC_IsTxEmpty">AT91F_PDC_IsTxEmpty</a>(pPDC)) {
<font color=#B22222>//* Buffer and next buffer can be initialized</font>
<a href="#AT91F_PDC_SetTx">AT91F_PDC_SetTx</a>(pPDC, pBuffer, szBuffer);
<a href="#AT91F_PDC_SetNextTx">AT91F_PDC_SetNextTx</a>(pPDC, pNextBuffer, szNextBuffer);
<font color=#0000FF>return</font> 2;
}
<font color=#0000FF>else</font> <font color=#0000FF>if</font> (<a href="#AT91F_PDC_IsNextTxEmpty">AT91F_PDC_IsNextTxEmpty</a>(pPDC)) {
<font color=#B22222>//* Only one buffer can be initialized</font>
<a href="#AT91F_PDC_SetNextTx">AT91F_PDC_SetNextTx</a>(pPDC, pBuffer, szBuffer);
<font color=#0000FF>return</font> 1;
}
<font color=#0000FF>else</font> {
<font color=#B22222>//* All buffer are in use...</font>
<font color=#0000FF>return</font> 0;
}
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_PDC_ReceiveFrame">AT91F_PDC_ReceiveFrame</a></b></font>
<font color=#B22222>//* \brief Close <a href="AT91RM9200_PDC.html#PDC">PDC</a>: disable TX and RX reset transfer descriptors</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_PDC_ReceiveFrame">AT91F_PDC_ReceiveFrame</a> (
<a href="AT91RM9200_h.html#AT91PS_PDC">AT91PS_PDC</a> pPDC,
<font color=#0000FF>char</font> *pBuffer,
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> szBuffer,
<font color=#0000FF>char</font> *pNextBuffer,
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> szNextBuffer )
{
<font color=#0000FF>if</font> (<a href="#AT91F_PDC_IsRxEmpty">AT91F_PDC_IsRxEmpty</a>(pPDC)) {
<font color=#B22222>//* Buffer and next buffer can be initialized</font>
<a href="#AT91F_PDC_SetRx">AT91F_PDC_SetRx</a>(pPDC, pBuffer, szBuffer);
<a href="#AT91F_PDC_SetNextRx">AT91F_PDC_SetNextRx</a>(pPDC, pNextBuffer, szNextBuffer);
<font color=#0000FF>return</font> 2;
}
<font color=#0000FF>else</font> <font color=#0000FF>if</font> (<a href="#AT91F_PDC_IsNextRxEmpty">AT91F_PDC_IsNextRxEmpty</a>(pPDC)) {
<font color=#B22222>//* Only one buffer can be initialized</font>
<a href="#AT91F_PDC_SetNextRx">AT91F_PDC_SetNextRx</a>(pPDC, pBuffer, szBuffer);
<font color=#0000FF>return</font> 1;
}
<font color=#0000FF>else</font> {
<font color=#B22222>//* All buffer are in use...</font>
<font color=#0000FF>return</font> 0;
}
}
/* *****************************************************************************
SOFTWARE API FOR <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a>
***************************************************************************** */
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_DBGU_InterruptEnable">AT91F_DBGU_InterruptEnable</a></b></font>
<font color=#B22222>//* \brief Enable <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a> Interrupt</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_DBGU_InterruptEnable">AT91F_DBGU_InterruptEnable</a>(
<a href="AT91RM9200_h.html#AT91PS_DBGU">AT91PS_DBGU</a> pDbgu, <font color=#B22222>// \arg pointer to a <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> flag) <font color=#B22222>// \arg dbgu interrupt to be enabled</font>
{
pDbgu-><a href="AT91RM9200_DBGU.html#DBGU_IER">DBGU_IER</a> = flag;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_DBGU_InterruptDisable">AT91F_DBGU_InterruptDisable</a></b></font>
<font color=#B22222>//* \brief Disable <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a> Interrupt</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_DBGU_InterruptDisable">AT91F_DBGU_InterruptDisable</a>(
<a href="AT91RM9200_h.html#AT91PS_DBGU">AT91PS_DBGU</a> pDbgu, <font color=#B22222>// \arg pointer to a <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> flag) <font color=#B22222>// \arg dbgu interrupt to be disabled</font>
{
pDbgu-><a href="AT91RM9200_DBGU.html#DBGU_IDR">DBGU_IDR</a> = flag;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_DBGU_GetInterruptMaskStatus">AT91F_DBGU_GetInterruptMaskStatus</a></b></font>
<font color=#B22222>//* \brief Return <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a> Interrupt Mask Status</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_DBGU_GetInterruptMaskStatus">AT91F_DBGU_GetInterruptMaskStatus</a>( <font color=#B22222>// \<font color=#0000FF>return</font> <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a> Interrupt Mask Status</font>
<a href="AT91RM9200_h.html#AT91PS_DBGU">AT91PS_DBGU</a> pDbgu) <font color=#B22222>// \arg pointer to a <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a> controller</font>
{
<font color=#0000FF>return</font> pDbgu-><a href="AT91RM9200_DBGU.html#DBGU_IMR">DBGU_IMR</a>;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_DBGU_IsInterruptMasked">AT91F_DBGU_IsInterruptMasked</a></b></font>
<font color=#B22222>//* \brief Test <font color=#0000FF>if</font> <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a> Interrupt is Masked </font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>int</font> <a href="#AT91F_DBGU_IsInterruptMasked">AT91F_DBGU_IsInterruptMasked</a>(
<a href="AT91RM9200_h.html#AT91PS_DBGU">AT91PS_DBGU</a> pDbgu, <font color=#B22222>// \arg pointer to a <a href="AT91RM9200_DBGU.html#DBGU">DBGU</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> flag) <font color=#B22222>// \arg flag to be tested</font>
{
<font color=#0000FF>return</font> (<a href="#AT91F_DBGU_GetInterruptMaskStatus">AT91F_DBGU_GetInterruptMaskStatus</a>(pDbgu) & flag);
}
/* *****************************************************************************
SOFTWARE API FOR <a href="AT91RM9200_RTC.html#RTC">RTC</a>
***************************************************************************** */
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_RTC_InterruptEnable">AT91F_RTC_InterruptEnable</a></b></font>
<font color=#B22222>//* \brief Enable <a href="AT91RM9200_RTC.html#RTC">RTC</a> Interrupt</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_RTC_InterruptEnable">AT91F_RTC_InterruptEnable</a>(
<a href="AT91RM9200_h.html#AT91PS_RTC">AT91PS_RTC</a> pRtc, <font color=#B22222>// \arg pointer to a <a href="AT91RM9200_RTC.html#RTC">RTC</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> flag) <font color=#B22222>// \arg <a href="AT91RM9200_RTC.html#RTC">RTC</a> interrupt to be enabled</font>
{
pRtc-><a href="AT91RM9200_RTC.html#RTC_IER">RTC_IER</a> = flag;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -