Datasheet
415
32117D–AVR-01/12
AT32UC3C
Figure 21-2. Descriptors in Memory
21.6.3 Adding Descriptors to a List
In order to add descriptors to a list, the following actions must be performed:
1. Check if there are free entries in the list for the desired channel. Any entry with the V bit
cleared is free. If no entries are free, wait until an entry becomes free.
2. Find the first free entry in the list. This can be done by scanning the descriptor list from
the entry pointed to by CDARx downto the first descriptor with the V bit cleared.
3. Update the free entry by writing the desired values to the correct memory locations.
4. Make sure the CHxM bit for the channel is one (channel is in Descriptor Mode), and
write a one to the CHxEN bit. Writing a one to CHxEN when the CHxEN bit is one has
no effect, so the user does not need to check the state of CHxEN before adding
descriptors to the list.
21.6.4 Interrupts in Descriptor Mode
Interrupt on transfer complete and bus error can be enabled as described in Section 21.4.5.
D0 RAR
D0 WAR
D0 CCR
UNUSED
D1 RAR
D1 WAR
D1 CCR
UNUSED
Dn RAR
Dn WAR
Dn CCR
UNUSED
DSAR
Growing Memory Addresses
Wrapping Addresses
Last bit set
Descriptor 0 Descriptor 1 Descriptor n