當前位置: 首頁>>代碼示例>>C++>>正文


C++ DMA_GetITStatus函數代碼示例

本文整理匯總了C++中DMA_GetITStatus函數的典型用法代碼示例。如果您正苦於以下問題:C++ DMA_GetITStatus函數的具體用法?C++ DMA_GetITStatus怎麽用?C++ DMA_GetITStatus使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了DMA_GetITStatus函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C++代碼示例。

示例1: DMA1_Channel3_IRQHandler

void DMA1_Channel3_IRQHandler(void)
{
	if(DMA_GetITStatus(DMA1_IT_TC3) != RESET)
	{
		DMA_ClearFlag(DMA1_IT_TC3);
		/* 處理激光模塊回傳的數據 */
		switch(laser.cmd_id)
		{
			case SINGLE_MEASURE:
				after_single_measure();
				break;
			case CIRCULAR_MEASURE:
				break;
			case SET_RANGE:
				after_set_range();
				break;
			case SET_FREQ:
				after_set_freq();
				break;
			case SET_RESOLUTION:
				after_set_resolution();
				break;
			default:
				break;
		}
		laser_irq_flag = 1;
		
	}
	
}
開發者ID:zhanglei8411,項目名稱:XYISensorTestSTM32,代碼行數:30,代碼來源:stm32f10x_it.c

示例2: DMA2_Stream0_IRQHandler

void DMA2_Stream0_IRQHandler(void){

	if (DMA_GetITStatus(DMA2_Stream0, DMA_IT_TCIF0))
	{
		DMA_ClearITPendingBit(DMA2_Stream0, DMA_IT_TCIF0);
		transfers++;
		if(transfers >= 100){
			GPIO_ToggleBits(GPIOD, GPIO_Pin_12);
			transfers = 0;
		}		
	}
	if (DMA_GetITStatus(DMA2_Stream0, DMA_IT_HTIF0))
	{
		DMA_ClearITPendingBit(DMA2_Stream0, DMA_IT_HTIF0);
	}
}
開發者ID:akerlund,項目名稱:Walknut,代碼行數:16,代碼來源:inits.c

示例3: DMA1_Channel6_IRQHandler

//USART2接收DMA中斷處理函數
void DMA1_Channel6_IRQHandler(void)
{
	OSIntEnter(); 
	
	if(DMA_GetITStatus(DMA1_IT_TC6)!=RESET)						//如果該DMA通道發生中斷請求
	{
		OS_ERR err;
		
		DMA_Cmd(DMA1_Channel6,DISABLE);							//關閉DMA1_Channel6
		DMA_ClearITPendingBit(DMA1_IT_TC6);						//清除DMA的中斷標誌
		
		if(U2R_BufferNum==1)
		{
			DMA1_Channel6->CMAR=(u32)USART2_Rx_Buffer2;		//將緩衝區的地址改為2號
			U2R_BufferNum=2;
			U2R_Buf1_Ok=true;								//將1號緩存區標誌位置為1,表示已滿可讀
			
		}
		else
		{
			DMA1_Channel6->CMAR=(u32)USART2_Rx_Buffer1;		//將緩衝區的地址改為1號
			U2R_BufferNum=1;	
			U2R_Buf2_Ok=true;								//將2號緩存區標誌位置為1,表示已滿可讀
			
		}
		OSTaskSemPost(&ZPH01_Task_TCB,OS_OPT_POST_NONE,&err);//釋放任務信號量
		USART_ITConfig(USART2,USART_IT_RXNE,ENABLE);		//使能串口2的接收中斷
	
	}
	
	OSIntExit();
}
開發者ID:xz1996,項目名稱:Stm32_uCOSIII,代碼行數:33,代碼來源:ZPH01.C

示例4: DMA1_Channel2_IRQHandler

void
DMA1_Channel2_IRQHandler()
{
    if (DMA_GetITStatus(DMA1_IT_TC2) == SET) {

        if (USART_GetFlagStatus(USART3, USART_FLAG_TXE) == SET) {
            if (usart_tx_dmafifo_out_idx == usart_tx_dmafifo_in_idx) {
                dma_running = 0;    // no more to send, shut down
                DMA_ITConfig(USART3_TX_DMA_CHANNEL, DMA_IT_TC, DISABLE);
                DMA_Cmd(USART3_TX_DMA_CHANNEL, DISABLE);
            } else {
                if (USART_GetFlagStatus(USART3, USART_FLAG_TXE) == RESET) {
                    debug_printf("DMACH2\r\n");
                    for (;;)
                        asm("nop"); // why am i here?
                }
                kick_dma_usart_tx(4);
            }
        } else {
            USART_ITConfig(USART3, USART_IT_TXE, ENABLE);
            dma_running = 3;    // indicate DMA TC occurred (but not yet USART TC)
        }

        DMA_ClearITPendingBit(DMA1_IT_GL2);
        //redundant DMA_ClearFlag(DMA1_FLAG_TC2);
        DMA_ClearFlag(USART3_TX_DMA_FLAG_GL);   // in example


    } // ...if (DMA_GetITStatus(DMA1_IT_TC2) == SET)
    else {
        asm("nop"); // why am i here?
    }
}
開發者ID:Chloe880810,項目名稱:OpenTag,代碼行數:33,代碼來源:debug_uart.c

示例5: Ethernet_IRQHandler

/**
  * @brief  This function handles DMA2 Stream1 Interrupt
  * @param  None
  * @retval None
  */
void Ethernet_IRQHandler(void)
{
  /* This DMA is used for transferring the DCMI Data */
  if(DMA_GetITStatus(DMA2_Stream1, DMA_IT_TCIF1) != RESET)
  {
    /* Mark buffer as filled */
    IPCAM_ImageBuffer.BufferStatus = BUFFER_FILLED;

    /* Clear interrupt pending bit */
    DMA_ClearITPendingBit(DMA2_Stream1, DMA_IT_TCIF1);
  }
  /* Half Transfer complete interrupt */
  else if (DMA_GetFlagStatus(DMA2_Stream1, DMA_FLAG_HTIF1) != RESET)
  {
    /* Clear the Interrupt flag */
    DMA_ClearFlag(DMA2_Stream1, DMA_FLAG_HTIF1);
  }
  /* FIFO Error interrupt */
  else if (DMA_GetFlagStatus(DMA2_Stream1, DMA_FLAG_FEIF1) != RESET)
  {
    /* Clear the Interrupt flag */
    DMA_ClearFlag(DMA2_Stream1, DMA_FLAG_FEIF1);
  }
  /* Tranfer error interrupt */
  else if (DMA_GetFlagStatus(DMA2_Stream1, DMA_FLAG_TEIF1) != RESET)
  {
    DCMI_ClearFlag(DCMI_FLAG_OVFRI);

    /* Clear interrupt pending bit */
    DMA_ClearITPendingBit(DMA2_Stream1, DMA_IT_TEIF1);

    /* Mark buffer as empty */
    IPCAM_ImageBuffer.BufferStatus = BUFFER_EMPTY;
  }
}
開發者ID:denisweir,項目名稱:STM32F40X,代碼行數:40,代碼來源:app_ethernet.c

示例6: IRQDmaTxHandler

void CmdUnit_t::IRQDmaTxHandler() {
    if(DMA_GetITStatus(DMA1_IT_TC2)) {
        DMA_ClearITPendingBit(DMA1_IT_GL2); // Clear CH2 IRQ global bit
        // Switch to next buffer if needed
        if(TxIndx != 0) IStartTx();
        else IDmaIsIdle = true;
    }
}
開發者ID:Kreyl,項目名稱:nute,代碼行數:8,代碼來源:kl_lib_f0.cpp

示例7: DMA1_Channel1_IRQHandler

void DMA1_Channel1_IRQHandler(void)	   
{  
  if(DMA_GetITStatus(DMA1_IT_TC1))
  {
    DMA_ClearITPendingBit(DMA1_IT_GL1);
    isr_evt_set(EVT_ADC_DONE, tid_conflict_monitor);
  }
}
開發者ID:dairui,項目名稱:traffic-phase-board,代碼行數:8,代碼來源:stm32f10x_it.c

示例8: DMA1_Channel6_IRQHandler

 void DMA1_Channel6_IRQHandler(void)
 {
     if(DMA_GetITStatus(DMA1_IT_TC6))
     {
         freeCir[2]+=DMA_BUFSIZE;
         DMA_ClearITPendingBit(DMA1_IT_TC6);
     }
 }
開發者ID:2cats,項目名稱:STM32,代碼行數:8,代碼來源:usart.cpp

示例9: madArchMem_IRQ_Handler

static void madArchMem_IRQ_Handler(void)
{
    if(SET == DMA_GetITStatus(ARCHM_DMA_TX_ITTC)) {
        DMA_Cmd(ARCHM_DMA_TX, DISABLE);
        madSemRelease(&mad_archm_waiter);
        DMA_ClearITPendingBit(ARCHM_DMA_TX_ITTC);
    }
}
開發者ID:long568,項目名稱:MadOS,代碼行數:8,代碼來源:ArchMemCpy.c

示例10: DMA1_Channel1_IRQHandler

void DMA1_Channel1_IRQHandler(void)
{
	if(DMA_GetITStatus(DMA1_IT_TC1))
	{
		defaultADCManager->isTransferDone=1;
		DMA_ClearITPendingBit(DMA1_IT_TC1);
	}
}
開發者ID:2cats,項目名稱:STM32,代碼行數:8,代碼來源:ADCManager.c

示例11: DMA1_Channel2_IRQHandler

void DMA1_Channel2_IRQHandler(void)     //spi 發送dma 中斷 
{
	if(DMA_GetITStatus(DMA1_IT_TC2)==SET)
	{
	  DMA_ClearITPendingBit(DMA1_IT_TC2);
	}

}
開發者ID:nevinxu,項目名稱:Repeater_Cube,代碼行數:8,代碼來源:cc3000spi.c

示例12: DMA1_Channel1_IRQHandler

/********************************************************************************************************
**函數信息 :DMA1_Channel1_IRQHandler()     
**功能描述 : DMA1通道1的中斷函數
**輸入參數 :無
**輸出參數 :無
********************************************************************************************************/
void DMA1_Channel1_IRQHandler()
{
	if(DMA_GetITStatus(DMA1_IT_TC1))
		{
			DMA_ClearITPendingBit(DMA1_IT_TC1);
			dma1Flag = 0x1;
		}
}
開發者ID:CherishFan,項目名稱:MT02_MCO,代碼行數:14,代碼來源:dma_test.c

示例13: DMA1_Channel4_IRQHandler

void DMA1_Channel4_IRQHandler(void)
{
    if(DMA_GetITStatus(DMA1_IT_TC4) == SET){
        DMA_ClearITPendingBit(DMA1_IT_TC4);
        DMA_Cmd(DMA1_Channel4, DISABLE);
        USART_DMACmd(USART1, USART_DMAReq_Tx, DISABLE);
        usart1_process.txBusy = 0;
        // Tx data success
    }
    if(DMA_GetITStatus(DMA1_IT_TE4) == SET){
        DMA_ClearITPendingBit(DMA1_IT_TE4);
        DMA_Cmd(DMA1_Channel4, DISABLE);
        USART_DMACmd(USART1, USART_DMAReq_Tx, DISABLE);
        usart1_process.txBusy = 0;
        // Tx data fail
    }
}
開發者ID:DeepinDream,項目名稱:etootle-flight,代碼行數:17,代碼來源:uart.c

示例14: DMA1_Stream4_IRQHandler

//DMA1_Stream4中斷服務函數
void DMA1_Stream4_IRQHandler(void)
{      
	if(DMA_GetITStatus(DMA1_Stream4,DMA_IT_TCIF4)==SET)////DMA1_Stream4,傳輸完成標誌
	{ 
		DMA_ClearITPendingBit(DMA1_Stream4,DMA_IT_TCIF4);
      	i2s_tx_callback();	//執行回調函數,讀取數據等操作在這裏麵處理  
	}   											 
}  
開發者ID:ShowerXu,項目名稱:Elink407Board,代碼行數:9,代碼來源:i2s.c

示例15: DMA2_Stream6_IRQHandler

/*USART RX - Stream*/
void DMA2_Stream6_IRQHandler(void){

	if (DMA_GetITStatus(DMA2_Stream6, DMA_IT_TCIF6) == SET)
	{		
		DMA_ClearITPendingBit(DMA2_Stream6, DMA_IT_TCIF6);
		//DMA_Cmd(DMA2_Stream6,DISABLE);
	}
}
開發者ID:akerlund,項目名稱:Walknut,代碼行數:9,代碼來源:main.c


注:本文中的DMA_GetITStatus函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。