📄 lib_at91m55800a_h.html
字号:
__inline <font color=#0000FF>void</font> <a href="#AT91F_PIO_EnableIt">AT91F_PIO_EnableIt</a> (
<a href="AT91M55800A_h.html#AT91PS_PIO">AT91PS_PIO</a> pPio, <font color=#B22222>// \arg pointer to a <a href="AT91M55800A_PIO.html#PIO">PIO</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> pin) <font color=#B22222>// \arg IT to be enabled</font>
{
<font color=#B22222>//* Write to the IER <font color=#0000FF>register</font></font>
pPio-><a href="AT91M55800A_PIO.html#PIO_IER">PIO_IER</a> = pin;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_PIO_DisableIt">AT91F_PIO_DisableIt</a></b></font>
<font color=#B22222>//* \brief Disable a <a href="AT91M55800A_PIO.html#PIO">PIO</a> pin IT</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_PIO_DisableIt">AT91F_PIO_DisableIt</a> (
<a href="AT91M55800A_h.html#AT91PS_PIO">AT91PS_PIO</a> pPio, <font color=#B22222>// \arg pointer to a <a href="AT91M55800A_PIO.html#PIO">PIO</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> pin) <font color=#B22222>// \arg IT to be disabled</font>
{
<font color=#B22222>//* Write to the IDR <font color=#0000FF>register</font></font>
pPio-><a href="AT91M55800A_PIO.html#PIO_IDR">PIO_IDR</a> = pin;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_PIO_PioPinItStatus">AT91F_PIO_PioPinItStatus</a></b></font>
<font color=#B22222>//* \brief Return the <a href="AT91M55800A_PIO.html#PIO">PIO</a> pin IT Enabled</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_PIO_PioPinItStatus">AT91F_PIO_PioPinItStatus</a> (
<a href="AT91M55800A_h.html#AT91PS_PIO">AT91PS_PIO</a> pPio) <font color=#B22222>// \arg pointer to a <a href="AT91M55800A_PIO.html#PIO">PIO</a> controller</font>
{
<font color=#B22222>//* Read to the <a href="AT91M55800A_PIO.html#PIO_IMR">PIO_IMR</a></font>
<font color=#0000FF>return</font> (pPio-><a href="AT91M55800A_PIO.html#PIO_IMR">PIO_IMR</a>) ;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_PIO_IsPioPinItPending">AT91F_PIO_IsPioPinItPending</a></b></font>
<font color=#B22222>//* \brief Test <font color=#0000FF>if</font> one or more <a href="AT91M55800A_PIO.html#PIO">PIO</a> pin IT are pending</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_PIO_IsPioPinItPending">AT91F_PIO_IsPioPinItPending</a> (
<a href="AT91M55800A_h.html#AT91PS_PIO">AT91PS_PIO</a> pPio) <font color=#B22222>// \arg pointer to a <a href="AT91M55800A_PIO.html#PIO">PIO</a> controller</font>
{
<font color=#0000FF>return</font> (pPio-><a href="AT91M55800A_PIO.html#PIO_ISR">PIO_ISR</a>);
}
/* *****************************************************************************
SOFTWARE API FOR <a href="AT91M55800A_SPI.html#SPI">SPI</a>
***************************************************************************** */
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_SPI_Open">AT91F_SPI_Open</a></b></font>
<font color=#B22222>//* \brief Open a <a href="AT91M55800A_SPI.html#SPI">SPI</a> Port</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_SPI_Open">AT91F_SPI_Open</a> (
<font color=#0000FF>const</font> <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> null) <font color=#B22222>// \arg</font>
{
/* NOT DEFINED AT THIS MOMENT */
<font color=#0000FF>return</font> ( 0 );
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_SPI_EnableIt">AT91F_SPI_EnableIt</a></b></font>
<font color=#B22222>//* \brief Enable <a href="AT91M55800A_SPI.html#SPI">SPI</a> IT</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_SPI_EnableIt">AT91F_SPI_EnableIt</a> (
<a href="AT91M55800A_h.html#AT91PS_SPI">AT91PS_SPI</a> pSPI, <font color=#B22222>// \arg pointer to a <a href="AT91M55800A_SPI.html#SPI">SPI</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> flag) <font color=#B22222>// \arg IT to be enabled</font>
{
<font color=#B22222>//* Write to the IER <font color=#0000FF>register</font></font>
pSPI-><a href="AT91M55800A_SPI.html#SPI_IER">SPI_IER</a> = flag;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_SPI_DisableIt">AT91F_SPI_DisableIt</a></b></font>
<font color=#B22222>//* \brief Disable <a href="AT91M55800A_SPI.html#SPI">SPI</a> IT</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_SPI_DisableIt">AT91F_SPI_DisableIt</a> (
<a href="AT91M55800A_h.html#AT91PS_SPI">AT91PS_SPI</a> pSPI, <font color=#B22222>// \arg pointer to a <a href="AT91M55800A_SPI.html#SPI">SPI</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> flag) <font color=#B22222>// \arg IT to be disabled</font>
{
<font color=#B22222>//* Write to the IER <font color=#0000FF>register</font></font>
pSPI-><a href="AT91M55800A_SPI.html#SPI_IDR">SPI_IDR</a> = flag;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_SPI_ReceiveFrame">AT91F_SPI_ReceiveFrame</a></b></font>
<font color=#B22222>//* \brief Return 1 <font color=#0000FF>if</font> <a href="AT91M55800A_PDC.html#PDC">PDC</a> has been initialized with Buffer, 0 <font color=#0000FF>if</font> <a href="AT91M55800A_PDC.html#PDC">PDC</a> is busy</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_SPI_ReceiveFrame">AT91F_SPI_ReceiveFrame</a> (
<a href="AT91M55800A_h.html#AT91PS_SPI">AT91PS_SPI</a> pSPI,
<font color=#0000FF>char</font> *pBuffer,
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> szBuffer)
{
<font color=#0000FF>return</font> <a href="#AT91F_PDC_ReceiveFrame">AT91F_PDC_ReceiveFrame</a>(
(<a href="AT91M55800A_h.html#AT91PS_PDC">AT91PS_PDC</a>) &(pSPI->SPI_RPR),
pBuffer,
szBuffer);
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_SPI_SendFrame">AT91F_SPI_SendFrame</a></b></font>
<font color=#B22222>//* \brief Return 1 <font color=#0000FF>if</font> <a href="AT91M55800A_PDC.html#PDC">PDC</a> has been initialized with Buffer, 0 <font color=#0000FF>if</font> <a href="AT91M55800A_PDC.html#PDC">PDC</a> is busy</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_SPI_SendFrame">AT91F_SPI_SendFrame</a>(
<a href="AT91M55800A_h.html#AT91PS_SPI">AT91PS_SPI</a> pSPI,
<font color=#0000FF>char</font> *pBuffer,
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> szBuffer )
{
<font color=#0000FF>return</font> <a href="#AT91F_PDC_SendFrame">AT91F_PDC_SendFrame</a>(
(<a href="AT91M55800A_h.html#AT91PS_PDC">AT91PS_PDC</a>) &(pSPI->SPI_RPR),
pBuffer,
szBuffer);
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_SPI_Baudrate">AT91F_SPI_Baudrate</a></b></font>
<font color=#B22222>//* \brief Caluculate baud_value according to the <font color=#0000FF>main</font> clock and the baud rate</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_SPI_Baudrate">AT91F_SPI_Baudrate</a> (
<font color=#0000FF>const</font> <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> main_clock, <font color=#B22222>// \arg peripheral clock</font>
<font color=#0000FF>const</font> <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> baud_rate) <font color=#B22222>// \arg <a href="AT91M55800A_SPI.html#SPI">SPI</a> baudrate</font>
{
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> baud_value;
<font color=#0000FF>if</font> (baud_rate == 0)
baud_value = 0;
<font color=#0000FF>else</font>
baud_value = ((main_clock * 10)/(baud_rate * 2));
<font color=#0000FF>if</font> ((baud_value % 10) >= 5)
baud_value = (baud_value / 10) + 1;
<font color=#0000FF>else</font>
baud_value /= 10;
<font color=#0000FF>return</font> baud_value;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_SPI_SetBaudrate">AT91F_SPI_SetBaudrate</a></b></font>
<font color=#B22222>//* \brief Set the baudrate according to the CPU clock</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_SPI_SetBaudrate">AT91F_SPI_SetBaudrate</a> (
<a href="AT91M55800A_h.html#AT91PS_SPI">AT91PS_SPI</a> pSPI, <font color=#B22222>// \arg pointer to a <a href="AT91M55800A_SPI.html#SPI">SPI</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> CS_number, <font color=#B22222>// Number of the chip select [0..3]</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> mainClock, <font color=#B22222>// \arg peripheral clock</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> speed) <font color=#B22222>// \arg <a href="AT91M55800A_SPI.html#SPI">SPI</a> baudrate</font>
{
<font color=#B22222>//* Define the baud rate divisor <font color=#0000FF>register</font></font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> register_value;
register_value = (pSPI-><a href="AT91M55800A_SPI.html#SPI_CSR">SPI_CSR</a>[CS_number] & ~<a href="AT91M55800A_h.html#AT91C_SPI_SCBR">AT91C_SPI_SCBR</a>); <font color=#B22222>//clear the field of the baud <font color=#0000FF>register</font></font>
register_value |= (<a href="#AT91F_SPI_Baudrate">AT91F_SPI_Baudrate</a>(mainClock, speed) << 8);
pSPI-><a href="AT91M55800A_SPI.html#SPI_CSR">SPI_CSR</a>[CS_number] = register_value;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_SPI_CfgCS">AT91F_SPI_CfgCS</a></b></font>
<font color=#B22222>//* \brief Set the parameters of a Chip Select</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_SPI_CfgCS">AT91F_SPI_CfgCS</a> (
<a href="AT91M55800A_h.html#AT91PS_SPI">AT91PS_SPI</a> pSPI, <font color=#B22222>// \arg pointer to a <a href="AT91M55800A_SPI.html#SPI">SPI</a> controller</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> CS_number, <font color=#B22222>// \arg Number of the chip select [0..3]</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> mainClock, <font color=#B22222>// \arg peripheral clock</font>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -