📄 lib_at91sam9261_h.html
字号:
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_MATRIX_DisableSM_On_CS3">AT91F_MATRIX_DisableSM_On_CS3</a></b></font>
<font color=#B22222>//* \brief Disable the Chip Select 3 <font color=#0000FF>for</font> CF Controller</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_MATRIX_DisableSM_On_CS3">AT91F_MATRIX_DisableSM_On_CS3</a> (
<a href="AT91SAM9261_h.html#AT91PS_MATRIX">AT91PS_MATRIX</a> pMATRIX) <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_MATRIX.html#MATRIX">MATRIX</a> registers</font>
{
pMATRIX-><a href="AT91SAM9261_MATRIX.html#MATRIX_EBICSA">MATRIX_EBICSA</a> &= ~<a href="AT91SAM9261_h.html#AT91C_MATRIX_CS3A_SM">AT91C_MATRIX_CS3A_SM</a>;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_MATRIX_EnableCF_On_CS4">AT91F_MATRIX_EnableCF_On_CS4</a></b></font>
<font color=#B22222>//* \brief Enable the Chip Select 4 <font color=#0000FF>for</font> CF Controller</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_MATRIX_EnableCF_On_CS4">AT91F_MATRIX_EnableCF_On_CS4</a> (
<a href="AT91SAM9261_h.html#AT91PS_MATRIX">AT91PS_MATRIX</a> pMATRIX) <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_MATRIX.html#MATRIX">MATRIX</a> registers</font>
{
pMATRIX-><a href="AT91SAM9261_MATRIX.html#MATRIX_EBICSA">MATRIX_EBICSA</a> |= <a href="AT91SAM9261_h.html#AT91C_MATRIX_CS4A_CF">AT91C_MATRIX_CS4A_CF</a>;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_MATRIX_DisableCF_On_CS4">AT91F_MATRIX_DisableCF_On_CS4</a></b></font>
<font color=#B22222>//* \brief Disable the Chip Select 4 <font color=#0000FF>for</font> CF Controller</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_MATRIX_DisableCF_On_CS4">AT91F_MATRIX_DisableCF_On_CS4</a> (
<a href="AT91SAM9261_h.html#AT91PS_MATRIX">AT91PS_MATRIX</a> pMATRIX) <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_MATRIX.html#MATRIX">MATRIX</a> registers</font>
{
pMATRIX-><a href="AT91SAM9261_MATRIX.html#MATRIX_EBICSA">MATRIX_EBICSA</a> &= ~<a href="AT91SAM9261_h.html#AT91C_MATRIX_CS4A_CF">AT91C_MATRIX_CS4A_CF</a>;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_MATRIX_EnableCF_On_CS5">AT91F_MATRIX_EnableCF_On_CS5</a></b></font>
<font color=#B22222>//* \brief Enable the Chip Select 5 <font color=#0000FF>for</font> CF Controller</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_MATRIX_EnableCF_On_CS5">AT91F_MATRIX_EnableCF_On_CS5</a> (
<a href="AT91SAM9261_h.html#AT91PS_MATRIX">AT91PS_MATRIX</a> pMATRIX) <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_MATRIX.html#MATRIX">MATRIX</a> registers</font>
{
pMATRIX-><a href="AT91SAM9261_MATRIX.html#MATRIX_EBICSA">MATRIX_EBICSA</a> |= <a href="AT91SAM9261_h.html#AT91C_MATRIX_CS5A_CF">AT91C_MATRIX_CS5A_CF</a>;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_MATRIX_DisableCF_On_CS5">AT91F_MATRIX_DisableCF_On_CS5</a></b></font>
<font color=#B22222>//* \brief Disable the Chip Select 5 <font color=#0000FF>for</font> CF Controller</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_MATRIX_DisableCF_On_CS5">AT91F_MATRIX_DisableCF_On_CS5</a> (
<a href="AT91SAM9261_h.html#AT91PS_MATRIX">AT91PS_MATRIX</a> pMATRIX) <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_MATRIX.html#MATRIX">MATRIX</a> registers</font>
{
pMATRIX-><a href="AT91SAM9261_MATRIX.html#MATRIX_EBICSA">MATRIX_EBICSA</a> &= ~<a href="AT91SAM9261_h.html#AT91C_MATRIX_CS5A_CF">AT91C_MATRIX_CS5A_CF</a>;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_MATRIX_EnableEBIPULLUP">AT91F_MATRIX_EnableEBIPULLUP</a></b></font>
<font color=#B22222>//* \brief Enable the EBI PULLUP</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_MATRIX_EnableEBIPULLUP">AT91F_MATRIX_EnableEBIPULLUP</a> (
<a href="AT91SAM9261_h.html#AT91PS_MATRIX">AT91PS_MATRIX</a> pMATRIX) <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_MATRIX.html#MATRIX">MATRIX</a> registers</font>
{
pMATRIX-><a href="AT91SAM9261_MATRIX.html#MATRIX_EBICSA">MATRIX_EBICSA</a> |= <a href="AT91SAM9261_h.html#AT91C_MATRIX_DBPUC">AT91C_MATRIX_DBPUC</a>;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_MATRIX_DisableEBIPULLUP">AT91F_MATRIX_DisableEBIPULLUP</a></b></font>
<font color=#B22222>//* \brief Disable the EBI PULLUP</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_MATRIX_DisableEBIPULLUP">AT91F_MATRIX_DisableEBIPULLUP</a> (
<a href="AT91SAM9261_h.html#AT91PS_MATRIX">AT91PS_MATRIX</a> pMATRIX) <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_MATRIX.html#MATRIX">MATRIX</a> registers</font>
{
pMATRIX-><a href="AT91SAM9261_MATRIX.html#MATRIX_EBICSA">MATRIX_EBICSA</a> &= ~<a href="AT91SAM9261_h.html#AT91C_MATRIX_DBPUC">AT91C_MATRIX_DBPUC</a>;
}
/* *****************************************************************************
SOFTWARE API FOR <a href="AT91SAM9261_AIC.html#AIC">AIC</a>
***************************************************************************** */
<font color=#008200>#define</font> AT91C_AIC_BRANCH_OPCODE ((<font color=#0000FF>void</font> (*) ()) 0xE51FFF20) <font color=#B22222>// ldr, pc, [pc, #-&F20]</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_AIC_ConfigureIt">AT91F_AIC_ConfigureIt</a></b></font>
<font color=#B22222>//* \brief Interrupt Handler Initialization</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> <a href="#AT91F_AIC_ConfigureIt">AT91F_AIC_ConfigureIt</a> (
<a href="AT91SAM9261_h.html#AT91PS_AIC">AT91PS_AIC</a> pAic, <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_AIC.html#AIC">AIC</a> registers</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> irq_id, <font color=#B22222>// \arg interrupt number to initialize</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> priority, <font color=#B22222>// \arg priority to give to the interrupt</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> src_type, <font color=#B22222>// \arg activation and sense of activation</font>
<font color=#0000FF>void</font> (*newHandler) (<font color=#0000FF>void</font>) ) <font color=#B22222>// \arg address of the interrupt handler</font>
{
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> oldHandler;
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> mask ;
oldHandler = pAic-><a href="AT91SAM9261_AIC.html#AIC_SVR">AIC_SVR</a>[irq_id];
mask = 0x1 << irq_id ;
<font color=#B22222>//* Disable the interrupt on the interrupt controller</font>
pAic-><a href="AT91SAM9261_AIC.html#AIC_IDCR">AIC_IDCR</a> = mask ;
<font color=#B22222>//* Save the interrupt handler routine pointer and the interrupt priority</font>
pAic-><a href="AT91SAM9261_AIC.html#AIC_SVR">AIC_SVR</a>[irq_id] = (<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font>) newHandler ;
<font color=#B22222>//* Store the Source Mode Register</font>
pAic-><a href="AT91SAM9261_AIC.html#AIC_SMR">AIC_SMR</a>[irq_id] = src_type | priority ;
<font color=#B22222>//* Clear the interrupt on the interrupt controller</font>
pAic-><a href="AT91SAM9261_AIC.html#AIC_ICCR">AIC_ICCR</a> = mask ;
<font color=#0000FF>return</font> oldHandler;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_AIC_EnableIt">AT91F_AIC_EnableIt</a></b></font>
<font color=#B22222>//* \brief Enable corresponding IT number</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_AIC_EnableIt">AT91F_AIC_EnableIt</a> (
<a href="AT91SAM9261_h.html#AT91PS_AIC">AT91PS_AIC</a> pAic, <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_AIC.html#AIC">AIC</a> registers</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> irq_id ) <font color=#B22222>// \arg interrupt number to initialize</font>
{
<font color=#B22222>//* Enable the interrupt on the interrupt controller</font>
pAic-><a href="AT91SAM9261_AIC.html#AIC_IECR">AIC_IECR</a> = 0x1 << irq_id ;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_AIC_DisableIt">AT91F_AIC_DisableIt</a></b></font>
<font color=#B22222>//* \brief Disable corresponding IT number</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_AIC_DisableIt">AT91F_AIC_DisableIt</a> (
<a href="AT91SAM9261_h.html#AT91PS_AIC">AT91PS_AIC</a> pAic, <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_AIC.html#AIC">AIC</a> registers</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> irq_id ) <font color=#B22222>// \arg interrupt number to initialize</font>
{
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> mask = 0x1 << irq_id;
<font color=#B22222>//* Disable the interrupt on the interrupt controller</font>
pAic-><a href="AT91SAM9261_AIC.html#AIC_IDCR">AIC_IDCR</a> = mask ;
<font color=#B22222>//* Clear the interrupt on the Interrupt Controller ( <font color=#0000FF>if</font> one is pending )</font>
pAic-><a href="AT91SAM9261_AIC.html#AIC_ICCR">AIC_ICCR</a> = mask ;
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_AIC_ClearIt">AT91F_AIC_ClearIt</a></b></font>
<font color=#B22222>//* \brief Clear corresponding IT number</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_AIC_ClearIt">AT91F_AIC_ClearIt</a> (
<a href="AT91SAM9261_h.html#AT91PS_AIC">AT91PS_AIC</a> pAic, <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_AIC.html#AIC">AIC</a> registers</font>
<font color=#0000FF>unsigned</font> <font color=#0000FF>int</font> irq_id) <font color=#B22222>// \arg interrupt number to initialize</font>
{
<font color=#B22222>//* Clear the interrupt on the Interrupt Controller ( <font color=#0000FF>if</font> one is pending )</font>
pAic-><a href="AT91SAM9261_AIC.html#AIC_ICCR">AIC_ICCR</a> = (0x1 << irq_id);
}
<font color=#B22222>//*----------------------------------------------------------------------------</font>
<font color=#B22222>//* \fn <b><a name="AT91F_AIC_AcknowledgeIt">AT91F_AIC_AcknowledgeIt</a></b></font>
<font color=#B22222>//* \brief Acknowledge corresponding IT number</font>
<font color=#B22222>//*----------------------------------------------------------------------------</font>
__inline <font color=#0000FF>void</font> <a href="#AT91F_AIC_AcknowledgeIt">AT91F_AIC_AcknowledgeIt</a> (
<a href="AT91SAM9261_h.html#AT91PS_AIC">AT91PS_AIC</a> pAic) <font color=#B22222>// \arg pointer to the <a href="AT91SAM9261_AIC.html#AIC">AIC</a> registers</font>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -