dmatest.c

来自「Windows CE 6.0 BSP for the Beagle Board.」· C语言 代码 · 共 52 行

C
52
字号
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this sample source code is subject to the terms of the Microsoft
// license agreement under which you licensed this sample source code. If
// you did not accept the terms of the license agreement, you are not
// authorized to use this sample source code. For the terms of the license,
// please see the license agreement between you and Microsoft or, if applicable,
// see the LICENSE.RTF on your install media or the root of your tools installation.
// THE SAMPLE SOURCE CODE IS PROVIDED "AS IS", WITH NO WARRANTIES.
//
#include "h4dma.h"

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nShowCmd)
{
    uint sizeNeeded=0;
    DMACONTROLLER *pCont;
    uint err;
    HANDLE  hCont;
    uint chans;
    
    err = DMA_ControllerEnum(NULL,&sizeNeeded);
    if (err!=DMAERR_NOTENOUGHSPACE)
        return -1;
    pCont = (DMACONTROLLER *)malloc(sizeNeeded);
    if (pCont==NULL)
    {
        return -2;
    }
    err = DMA_ControllerEnum(pCont,&sizeNeeded);
    if (err)
    {
        return -3;
    }

    err = DMA_ControllerOpen(pCont->mSysId,&hCont);
    if (err)
        return -4;

    free(pCont);

    chans = 0;
    err = DMA_ControllerAcquireChannels(hCont,3,&chans);
    if (err)
        return -5;

    DMA_ControllerClose(hCont);

    return 0;    
}

⌨️ 快捷键说明

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