TOP Contributors

  1. MIKROE (2762 codes)
  2. Alcides Ramos (374 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (118 codes)
  5. Bugz Bensce (91 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (139264 times)
  2. FAT32 Library (71752 times)
  3. Network Ethernet Library (57128 times)
  4. USB Device Library (47431 times)
  5. Network WiFi Library (43092 times)
  6. FT800 Library (42408 times)
  7. GSM click (29835 times)
  8. mikroSDK (28098 times)
  9. PID Library (26886 times)
  10. microSD click (26198 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
Library

STM DMA Library

Rating:

15

Author: Richard Lowe

Last Updated: 2016-02-25

Package Version: 1.0.0.0

Category: Storage

Downloaded: 1874 times

Followed by: 3 users

License: MIT license  

This is the first of DMA functions that will be available for the ST line of ARM microcontrollers. The idea was born from a forum post. The idea worked so well I made it into a convenient MikroC library.

So far.... memory to memory transfers is what is functional

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "STM DMA Library" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "STM DMA Library" changes.

Do you want to report abuse regarding "STM DMA Library".

  • Information
  • Comments (0)
DOWNLOAD LINK RELATED COMPILER CONTAINS
mikroC PRO for ARM
  • lib
  • src
  • exa
  • hlp
  • hex
  • sch
  • pcb
  • doc

Library Blog

This library has proven to be useful to me so I thought I’d share it.

Born from a forum post: Memory to memory transfer I made it into a flexible library that I include in my projects.

At the moment it only includes memory to memory functionality but I am working on others.

Example:

Step 1.
You must initialize your library by first providing a channel and priority level

//Initialize memory to memory copy functions based on channel and priority
dma_mem_init( CHANNEL_1, DMA_HGH_PRIORITY );

Step 2.
Start the copy process by providing destination, source, and number of bytes to transfer (currently limited to 65k

dma_mem_cpy( dest, source, 2048 );

Step 3. (optional)
You can also check to see if your transfer is complete or if the controller is ready for another round with this:

Is_dma_mem_finished();


Requirements:
You will need to provide the ISR for the selected DMA stream and within it call:

dma_mem_complete();

For example: If you chose to use CHANNEL_1 on you initialization, you would need to provide the ISR for Stream1:

void transerDone_ISR() iv IVT_INT_DMA2_Stream1 ics ICS_AUTO {
dma_mem_complete();
}

In addition to that, you will need the Boolean library addition which can be found on libstock here: Boolean

ALSO FROM THIS AUTHOR

Webserver - Full Featured

5

Example of what can be done with the Ethernet library. Server serves both dynamic / static content, retrieves time from NTP servers, downloads files from remote servers. Requires: Ethernet Library, FAT32 Library, Standard Bool Library

[Learn More]

AVR Webserver

0

AVR Webserver: Dependencies - FAT32 library, Ethernet library Will allow you to load any size website, including images, css, and js files from SD media. This is my first version, but the example project included will give you a starting point.

[Learn More]

RTC 1307 Library

10

Makes easy addition of ds1307 RTC.

[Learn More]