1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3
4<head>
5<LINK rel="stylesheet" type="text/css" href="../../CSS/revolution.css">
6<title>AIStartDMA</title>
7<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
8<META name="GENERATOR" content="Microsoft FrontPage 5.0">
9<META http-equiv="Content-Style-Type" content="text/css">
10</head>
11
12<body>
13
14<h1 align="left">AIStartDMA</h1>
15
16
17<h2>C Specification</h2>
18
19<dl>
20<dd><pre><CODE>#include &lt;revolution.h&gt;</CODE></pre>
21  </dd>
22<dd><pre><CODE>void AIStartDMA (void);</CODE></pre>
23  </dd>
24</dl>
25
26<h2>Arguments</h2>
27
28<p>None.</p>
29
30<h2>Return Values</h2>
31
32<p>None.</p>
33
34<h2>Description</h2>
35
36<p>Based on parameters set by the <a href="AIInitDMA.html"><code>AIInitDMA</code></a> function that was called immediately before, the <code>AIStartDMA</code> function starts AI DMA. </p>
37
38<p>If the <code>AIStartDMA</code> function is called, the DMA start address and length are loaded into the internal register of the AI DMA controller, and data transfer to the AI FIFO starts. While DMA parameters are loaded into the internal register, an AI DMA interrupt (<code>AIDINT</code>) is generated. (In other words, the first <code>AIDINT</code> is generated immediately after the <code>AIStartDMA</code> function is called.) </p>
39
40<p>An <code>AIDINT</code> will also be generated if DMA parameters are loaded into the internal register or AI DMA transactions complete. </p>
41
42<p>Once AI DMA parameters are loaded into the internal register and the DMA transaction starts, before the DMA transaction completes, you must program the next DMA parameters using the <a href="AIInitDMA.html"><code>AIInitDMA</code></a> function. Otherwise, the next transaction will start using the AI DMA parameters from the previous transaction; using the same parameters may generate noise.</p>
43
44<p>An AI DMA interrupt callback function can be registered using the <a href="AIRegisterDMACallback.html"><code>AIRegisterDMACallback</code></a> function. You can program the parameters for the next AI DMA transaction at the appropriate time by calling the <a href="AIInitDMA.html"><code>AIInitDMA</code></a> function inside this callback. </p>
45
46<p>Once you call the  <code>AIStartDMA</code> function to start the AI DMA, you don't need to call this function again unless the <a href="AIStopDMA.html"><code>AIStopDMA</code></a> function is used to stop the DMA. Conversely, noise may be generated if the <code>AIStartDMA</code> function is called during an AI DMA transaction and a new transaction starts. </p>
47
48<h2>See Also</h2>
49
50<P>
51<a href="AIInitDMA.html"><code>AIInitDMA</code></a>, <a href="AIStopDMA.html"><code>AIStopDMA</code></a>, <a href="AIRegisterDMACallback.html"><code>AIRegisterDMACallback</code></a>
52</P>
53
54<H2>Revision History</H2>
55<P>2006/03/01 Initial version.</P>
56
57<hr>
58<P>CONFIDENTIAL</p>
59</BODY>
60</HTML>
61