⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stm32f10x_dma.c

📁 stm32f10xx的中文译文例程
💻 C
📖 第 1 页 / 共 3 页
字号:
*                       - DMA1_FLAG_TE5: DMA1 通道5 传输错误标志.
*                       - DMA1_FLAG_GL6: DMA1 通道6 全局标志.
*                       - DMA1_FLAG_TC6: DMA1 通道6 传输结束标志.
*                       - DMA1_FLAG_HT6: DMA1 通道6 半传输标志.
*                       - DMA1_FLAG_TE6: DMA1 通道6 传输错误标志.
*                       - DMA1_FLAG_GL7: DMA1 通道7 全局标志.
*                       - DMA1_FLAG_TC7: DMA1 通道7 传输结束标志.
*                       - DMA1_FLAG_HT7: DMA1 通道7 半传输标志.
*                       - DMA1_FLAG_TE7: DMA1 通道7 传输错误标志.
*                       - DMA2_FLAG_GL1: DMA2 通道1 全局标志.
*                       - DMA2_FLAG_TC1: DMA2 通道1 传输结束标志.
*                       - DMA2_FLAG_HT1: DMA2 通道1 半传输标志.
*                       - DMA2_FLAG_TE1: DMA2 通道1 传输错误标志.
*                       - DMA2_FLAG_GL2: DMA2 通道2 全局标志.
*                       - DMA2_FLAG_TC2: DMA2 通道2 传输结束标志.
*                       - DMA2_FLAG_HT2: DMA2 通道2 半传输标志.
*                       - DMA2_FLAG_TE2: DMA2 通道2 传输错误标志.
*                       - DMA2_FLAG_GL3: DMA2 通道3 全局标志.
*                       - DMA2_FLAG_TC3: DMA2 通道3 传输结束标志.
*                       - DMA2_FLAG_HT3: DMA2 通道3 半传输标志.
*                       - DMA2_FLAG_TE3: DMA2 通道3 传输错误标志.
*                       - DMA2_FLAG_GL4: DMA2 通道4 全局标志.
*                       - DMA2_FLAG_TC4: DMA2 通道4 传输结束标志.
*                       - DMA2_FLAG_HT4: DMA2 通道4 半传输标志.
*                       - DMA2_FLAG_TE4: DMA2 通道4 传输错误标志.
*                       - DMA2_FLAG_GL5: DMA2 通道5 全局标志.
*                       - DMA2_FLAG_TC5: DMA2 通道5 传输结束标志.
*                       - DMA2_FLAG_HT5: DMA2 通道5 半传输标志.
*                       - DMA2_FLAG_TE5: DMA2 通道5 传输错误标志.
* 输出参数: 无
* 返回参数: 无
*******************************************************************************/
void DMA_ClearFlag(u32 DMA_FLAG)
{
  /* Check the parameters [检查参数]*/
  assert_param(IS_DMA_CLEAR_FLAG(DMA_FLAG));

  /* Calculate the used DMA [计算使用的DMA]*/
  if ((DMA_FLAG & FLAG_Mask) != (u32)RESET)
  {
    /* Clear the selected DMA flags [清除选择的DMA标志]*/
    DMA2->IFCR = DMA_FLAG;
  }
  else
  {
    /* Clear the selected DMA flags [清除选择的DMA标志]*/
    DMA1->IFCR = DMA_FLAG;
  }
}

/*******************************************************************************
* 函数名称: DMA_GetITStatus
* 功能描述: 检查特定的DMAy 通道x的中断是否被发生。
* 输入参数: DMA_IT:需要检查的DMA通道中断源。
*                    这个参数可以是下面的值之一:
*                       - DMA1_IT_GL1: DMA1 通道1 全局中断.
*                       - DMA1_IT_TC1: DMA1 通道1 传输完成中断.
*                       - DMA1_IT_HT1: DMA1 通道1 半传输中断.
*                       - DMA1_IT_TE1: DMA1 通道1 传输错误中断.
*                       - DMA1_IT_GL2: DMA1 通道2 全局中断.
*                       - DMA1_IT_TC2: DMA1 通道2 传输完成中断.
*                       - DMA1_IT_HT2: DMA1 通道2 半传输中断.
*                       - DMA1_IT_TE2: DMA1 通道2 传输错误中断.
*                       - DMA1_IT_GL3: DMA1 通道3 全局中断.
*                       - DMA1_IT_TC3: DMA1 通道3 传输完成中断.
*                       - DMA1_IT_HT3: DMA1 通道3 半传输中断.
*                       - DMA1_IT_TE3: DMA1 通道3 传输错误中断.
*                       - DMA1_IT_GL4: DMA1 通道4 全局中断.
*                       - DMA1_IT_TC4: DMA1 通道4 传输完成中断.
*                       - DMA1_IT_HT4: DMA1 通道4 半传输中断.
*                       - DMA1_IT_TE4: DMA1 通道4 传输错误中断.
*                       - DMA1_IT_GL5: DMA1 通道5 全局中断.
*                       - DMA1_IT_TC5: DMA1 通道5 传输完成中断.
*                       - DMA1_IT_HT5: DMA1 通道5 半传输中断.
*                       - DMA1_IT_TE5: DMA1 通道5 传输错误中断.
*                       - DMA1_IT_GL6: DMA1 通道6 全局中断.
*                       - DMA1_IT_TC6: DMA1 通道6 传输完成中断.
*                       - DMA1_IT_HT6: DMA1 通道6 半传输中断.
*                       - DMA1_IT_TE6: DMA1 通道6 传输错误中断.
*                       - DMA1_IT_GL7: DMA1 通道7 全局中断.
*                       - DMA1_IT_TC7: DMA1 通道7 传输完成中断.
*                       - DMA1_IT_HT7: DMA1 通道7 半传输中断.
*                       - DMA1_IT_TE7: DMA1 通道7 传输错误中断.
*                       - DMA2_IT_GL1: DMA2 通道1 全局中断.
*                       - DMA2_IT_TC1: DMA2 通道1 传输完成中断.
*                       - DMA2_IT_HT1: DMA2 通道1 半传输中断.
*                       - DMA2_IT_TE1: DMA2 通道1 传输错误中断.
*                       - DMA2_IT_GL2: DMA2 通道2 全局中断.
*                       - DMA2_IT_TC2: DMA2 通道2 传输完成中断.
*                       - DMA2_IT_HT2: DMA2 通道2 半传输中断.
*                       - DMA2_IT_TE2: DMA2 通道2 传输错误中断.
*                       - DMA2_IT_GL3: DMA2 通道3 全局中断.
*                       - DMA2_IT_TC3: DMA2 通道3 传输完成中断.
*                       - DMA2_IT_HT3: DMA2 通道3 半传输中断.
*                       - DMA2_IT_TE3: DMA2 通道3 传输错误中断.
*                       - DMA2_IT_GL4: DMA2 通道4 全局中断.
*                       - DMA2_IT_TC4: DMA2 通道4 传输完成中断.
*                       - DMA2_IT_HT4: DMA2 通道4 半传输中断.
*                       - DMA2_IT_TE4: DMA2 通道4 传输错误中断.
*                       - DMA2_IT_GL5: DMA2 通道5 全局中断.
*                       - DMA2_IT_TC5: DMA2 通道5 传输完成中断.
*                       - DMA2_IT_HT5: DMA2 通道5 半传输中断.
*                       - DMA2_IT_TE5: DMA2 通道5 传输错误中断.
* 输出参数: 无
* 返回参数: DMA_IT的新状态(SET或RESET).
*******************************************************************************/
ITStatus DMA_GetITStatus(u32 DMA_IT)
{
  ITStatus bitstatus = RESET;
  u32 tmpreg = 0;

  /* Check the parameters [检查参数]*/
  assert_param(IS_DMA_GET_IT(DMA_IT));

  /* Calculate the used DMA [计算使用的DMA]*/
  if ((DMA_IT & FLAG_Mask) != (u32)RESET)
  {
    /* Get DMA2 ISR register value [取得DMA2 ISR寄存器值]*/
    tmpreg = DMA2->ISR ;
  }
  else
  {
    /* Get DMA1 ISR register value [取得DMA1 ISR寄存器值]*/
    tmpreg = DMA1->ISR ;
  }

  /* Check the status of the specified DMA interrupt [检查指定的DMA中断状态]*/
  if ((tmpreg & DMA_IT) != (u32)RESET)
  {
    /* DMA_IT is set [置位DMA_IT]*/
    bitstatus = SET;
  }
  else
  {
    /* DMA_IT is reset [复位DMA_IT]*/
    bitstatus = RESET;
  }
  /* Return the DMA_IT status [返回DMA_IT的状态]*/
  return  bitstatus;
}

/*******************************************************************************
* 函数名称: DMA_ClearITPendingBit
* 功能描述: 清除 DMAy 通道x中断挂起位.
* 输入参数: DMA_IT:需要清除的DMA通道的挂起位。使用"|"运算符可以清除多个中断。
*                     这个参数可以是下面值的任意组合 (同一个 DMA) :
*                       - DMA1_IT_GL1: DMA1 通道1 全局中断.
*                       - DMA1_IT_TC1: DMA1 通道1 传输完成中断.
*                       - DMA1_IT_HT1: DMA1 通道1 半传输中断.
*                       - DMA1_IT_TE1: DMA1 通道1 传输错误中断.
*                       - DMA1_IT_GL2: DMA1 通道2 全局中断.
*                       - DMA1_IT_TC2: DMA1 通道2 传输完成中断.
*                       - DMA1_IT_HT2: DMA1 通道2 半传输中断.
*                       - DMA1_IT_TE2: DMA1 通道2 传输错误中断.
*                       - DMA1_IT_GL3: DMA1 通道3 全局中断.
*                       - DMA1_IT_TC3: DMA1 通道3 传输完成中断.
*                       - DMA1_IT_HT3: DMA1 通道3 半传输中断.
*                       - DMA1_IT_TE3: DMA1 通道3 传输错误中断.
*                       - DMA1_IT_GL4: DMA1 通道4 全局中断.
*                       - DMA1_IT_TC4: DMA1 通道4 传输完成中断.
*                       - DMA1_IT_HT4: DMA1 通道4 半传输中断.
*                       - DMA1_IT_TE4: DMA1 通道4 传输错误中断.
*                       - DMA1_IT_GL5: DMA1 通道5 全局中断.
*                       - DMA1_IT_TC5: DMA1 通道5 传输完成中断.
*                       - DMA1_IT_HT5: DMA1 通道5 半传输中断.
*                       - DMA1_IT_TE5: DMA1 通道5 传输错误中断.
*                       - DMA1_IT_GL6: DMA1 通道6 全局中断.
*                       - DMA1_IT_TC6: DMA1 通道6 传输完成中断.
*                       - DMA1_IT_HT6: DMA1 通道6 半传输中断.
*                       - DMA1_IT_TE6: DMA1 通道6 传输错误中断.
*                       - DMA1_IT_GL7: DMA1 通道7 全局中断.
*                       - DMA1_IT_TC7: DMA1 通道7 传输完成中断.
*                       - DMA1_IT_HT7: DMA1 通道7 半传输中断.
*                       - DMA1_IT_TE7: DMA1 通道7 传输错误中断.
*                       - DMA2_IT_GL1: DMA2 通道1 全局中断.
*                       - DMA2_IT_TC1: DMA2 通道1 传输完成中断.
*                       - DMA2_IT_HT1: DMA2 通道1 半传输中断.
*                       - DMA2_IT_TE1: DMA2 通道1 传输错误中断.
*                       - DMA2_IT_GL2: DMA2 通道2 全局中断.
*                       - DMA2_IT_TC2: DMA2 通道2 传输完成中断.
*                       - DMA2_IT_HT2: DMA2 通道2 半传输中断.
*                       - DMA2_IT_TE2: DMA2 通道2 传输错误中断.
*                       - DMA2_IT_GL3: DMA2 通道3 全局中断.
*                       - DMA2_IT_TC3: DMA2 通道3 传输完成中断.
*                       - DMA2_IT_HT3: DMA2 通道3 半传输中断.
*                       - DMA2_IT_TE3: DMA2 通道3 传输错误中断.
*                       - DMA2_IT_GL4: DMA2 通道4 全局中断.
*                       - DMA2_IT_TC4: DMA2 通道4 传输完成中断.
*                       - DMA2_IT_HT4: DMA2 通道4 半传输中断.
*                       - DMA2_IT_TE4: DMA2 通道4 传输错误中断.
*                       - DMA2_IT_GL5: DMA2 通道5 全局中断.
*                       - DMA2_IT_TC5: DMA2 通道5 传输完成中断.
*                       - DMA2_IT_HT5: DMA2 通道5 半传输中断.
*                       - DMA2_IT_TE5: DMA2 通道5 传输错误中断.
* 输出参数: 无
* 返回参数: 无
*******************************************************************************/
void DMA_ClearITPendingBit(u32 DMA_IT)
{
  /* Check the parameters [检查参数]*/
  assert_param(IS_DMA_CLEAR_IT(DMA_IT));

  /* Calculate the used DMA [计算使用的DMA]*/
  if ((DMA_IT & FLAG_Mask) != (u32)RESET)
  {
    /* Clear the selected DMA interrupt pending bits [清除选择的DMA中断挂起位]*/
    DMA2->IFCR = DMA_IT;
  }
  else
  {
    /* Clear the selected DMA interrupt pending bits [清除选择的DMA中断挂起位]*/
    DMA1->IFCR = DMA_IT;
  }
}

/******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -