新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 淺談STM32的DMA模塊的使用

        淺談STM32的DMA模塊的使用

        作者: 時間:2016-11-28 來源:網絡 收藏
        下面就以我的一個實例來和大家一起學習。這個實例仿真是成功的,我使用的是IAR Embedded Workbench IDE(v4.42)和Manley Mini-kit評估板+ST-Link II來調試,是一個USART+ADC+DMA的例子。

        首先,按照相關的資料提示,建立好項目路徑、拷貝庫文件和相關必要的文件,并建立一個新工程;還有就是設置好IAR IDE的相關設置。一切準備就緒后就開始修改相關的文檔:

        本文引用地址:http://www.104case.com/article/201611/322982.htm

        conf.h文檔的修改是根據應用中有啟用的相關功能Module。如下圖:

        ADC模塊的啟用設置:

        DMA模塊的啟用設置:

        USART模塊啟用的設置:

        其他的如flash、GPIO、RCC、NVIC、HSE等就不一一舉例,因為這些幾乎每個工程都要用到。

        再回頭看看我的main.c文檔,

        下圖是相關的私有定義

        USART的配制如下(9600,8,N,1):

        DMA的配置如下:

        ADC的配置如下圖(采用了2路A/D多通道的ADC模式):

        給各個模塊配置的時鐘使能如下圖;在此想羅嗦一句就是在這個位置的設置我沒有給DMA配置時鐘,造成DMA功能無法正常使用,也就是前面所有說的與我原先的編程風格有較大的變化的原因,想說一句:在項目中所使用的所有功能模塊都要在此配置時鐘才能正常工作。

        GPIO的配置

        如果有開中斷子程序,請在在NVIC中配置,還可以定義每個中斷子程序的優先級別,由于我的工程沒有用到,在此就不羅嗦了。


        上一頁 1 2 下一頁

        關鍵詞: STM32DMA模

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 天镇县| 长沙市| 龙川县| 漾濞| 会宁县| 遂川县| 房产| 新建县| 文昌市| 江川县| 东海县| 乐平市| 鹤壁市| 潜山县| 温州市| 伊金霍洛旗| 高碑店市| 石家庄市| 乌海市| 阳曲县| 巴楚县| 上林县| 蓝山县| 广饶县| 峡江县| 晋州市| 汉阴县| 汉川市| 靖宇县| 三台县| 田阳县| 探索| 荣昌县| 财经| 奉化市| 绥宁县| 阿合奇县| 洪江市| 西乡县| 故城县| 商都县|